From e1d3c37ba58ace9bbdd00911b2e47c645f7f18b7 Mon Sep 17 00:00:00 2001 From: James Shubin Date: Tue, 29 Apr 2014 04:09:05 -0400 Subject: Add Debian/Ubuntu specific packaging changes. --- data/tree/Debian.yaml | 4 +++- manifests/api.pp | 21 ++++++++++++--------- manifests/mount.pp | 12 ++++++++---- manifests/mount/base.pp | 15 ++++++++++++--- manifests/server.pp | 5 ++++- 5 files changed, 39 insertions(+), 18 deletions(-) diff --git a/data/tree/Debian.yaml b/data/tree/Debian.yaml index 67818ac..a6be355 100644 --- a/data/tree/Debian.yaml +++ b/data/tree/Debian.yaml @@ -1,4 +1,6 @@ # gluster/data/tree/Debian.yaml --- - +gluster::params::package_glusterfs: 'glusterfs-client' +gluster::params::package_glusterfs_api: '' # doesn't exist +gluster::params::package_glusterfs_fuse: '' # doesn't exist # vim: ts=8 diff --git a/manifests/api.pp b/manifests/api.pp index 1954e0b..3f73baa 100644 --- a/manifests/api.pp +++ b/manifests/api.pp @@ -26,15 +26,18 @@ class gluster::api( default => "gluster-${version}", } - package { "${::gluster::params::package_glusterfs_api}": - ensure => "${version}" ? { - '' => present, - default => "${version}", - }, - require => $repo ? { - false => undef, - default => Gluster::Repo["${rname}"], - }, + # certain packages don't exist on certain operating systems + if "${::gluster::params::package_glusterfs_api}" != '' { + package { "${::gluster::params::package_glusterfs_api}": + ensure => "${version}" ? { + '' => present, + default => "${version}", + }, + require => $repo ? { + false => undef, + default => Gluster::Repo["${rname}"], + }, + } } } diff --git a/manifests/mount.pp b/manifests/mount.pp index 4e28576..2e842b1 100644 --- a/manifests/mount.pp +++ b/manifests/mount.pp @@ -142,6 +142,13 @@ define gluster::mount( alias => "${short_name}", # don't allow duplicates name's } + $packages = "${::gluster::params::package_glusterfs_fuse}" ? { + '' => ["${::gluster::params::package_glusterfs}"], + default => [ + "${::gluster::params::package_glusterfs}", + "${::gluster::params::package_glusterfs_fuse}", + ], + } # Mount Options: # * backupvolfile-server=server-name # * fetch-attempts=N (where N is number of attempts) @@ -163,10 +170,7 @@ define gluster::mount( dump => '0', # fs_freq: 0 to skip file system dumps pass => '0', # fs_passno: 0 to skip fsck on boot require => [ - Package[ - ["${::gluster::params::package_glusterfs}", - "${::gluster::params::package_glusterfs_fuse}"] - ], + Package[$packages], File["${long_name}"], # the mountpoint Exec['gluster-fuse'], # ensure fuse is loaded! ], diff --git a/manifests/mount/base.pp b/manifests/mount/base.pp index 5e48c10..38bdd85 100644 --- a/manifests/mount/base.pp +++ b/manifests/mount/base.pp @@ -37,13 +37,22 @@ class gluster::mount::base( ensure_resource('gluster::repo', "${rname}", $params) } - package { ["${::gluster::params::package_glusterfs}", - "${::gluster::params::package_glusterfs_fuse}"]: + $packages = "${::gluster::params::package_glusterfs_fuse}" ? { + '' => ["${::gluster::params::package_glusterfs}"], + default => [ + "${::gluster::params::package_glusterfs}", + "${::gluster::params::package_glusterfs_fuse}", + ], + } + package { $packages: ensure => "${version}" ? { '' => present, default => "${version}", }, - before => Package["${::gluster::params::package_glusterfs_api}"], + before => "${::gluster::params::package_glusterfs_api}" ? { + '' => undef, + default => Package["${::gluster::params::package_glusterfs_api}"], + }, require => $repo ? { false => undef, default => Gluster::Repo["${rname}"], diff --git a/manifests/server.pp b/manifests/server.pp index b186b4d..2b15d5e 100644 --- a/manifests/server.pp +++ b/manifests/server.pp @@ -67,7 +67,10 @@ class gluster::server( '' => present, default => "${version}", }, - before => Package["${::gluster::params::package_glusterfs_api}"], + before => "${::gluster::params::package_glusterfs_api}" ? { + '' => undef, + default => Package["${::gluster::params::package_glusterfs_api}"], + }, require => $repo ? { false => undef, default => Gluster::Repo["${rname}"], -- cgit