From 510a7b1a02f61f17a105872d3475794d5b04a258 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Igor=20Gali=C4=87?= Date: Fri, 10 Apr 2015 16:42:14 +0200 Subject: [PATCH 1/3] replace Modulefile with metadata.json --- ChangeLog | 3 +++ Modulefile | 8 -------- metadata.json | 26 ++++++++++++++++++++++++++ 3 files changed, 29 insertions(+), 8 deletions(-) delete mode 100644 Modulefile create mode 100644 metadata.json diff --git a/ChangeLog b/ChangeLog index 229ef3b..914d2cb 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,6 @@ +2015-04-10 - 0.0.4 +* replace Modulefile with metadata.json + 2013-05-24 - 0.0.3 * Update README and use markdown. * Change to 2-space indent. diff --git a/Modulefile b/Modulefile deleted file mode 100644 index 4f58683..0000000 --- a/Modulefile +++ /dev/null @@ -1,8 +0,0 @@ -name 'thias-glusterfs' -version '0.0.3' -source 'git://github.com/thias/puppet-glusterfs' -author 'Matthias Saou' -license 'Apache 2.0' -summary 'GlusterFS module' -description "Install, enable and configure GlusterFS servers and clients." -project_page 'https://github.com/thias/puppet-glusterfs' diff --git a/metadata.json b/metadata.json new file mode 100644 index 0000000..0aa0c1c --- /dev/null +++ b/metadata.json @@ -0,0 +1,26 @@ +{ + "name": "thias-glusterfs", + "version": "0.0.4", + "author": "Matthias Saou", + "summary": "GlusterFS module", + "description": "Install, enable and configure GlusterFS servers and clients", + "license": "Apache-2.0", + "source": "https://github.com/thias/puppet-glusterfs", + "project_page": "https://github.com/thias/puppet-glusterfs", + "issues_url": "https://github.com/thias/puppet-glusterfs/issues", + "dependencies": [], + "operatingsystem_support": [ + { + "operatingsystem": "Ubuntu" + }, + { + "operatingsystem": "Debian" + }, + { + "operatingsystem": "RedHat" + }, + { + "operatingsystem": "CentOS" + } + ] +} From d6b2dcd7d658c25818b388f78e40b459aadb98b1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Igor=20Gali=C4=87?= Date: Fri, 10 Apr 2015 16:50:07 +0200 Subject: [PATCH 2/3] param-etrize glusterfs service name we use the params pattern here, while at the same time making service_name overwritable as parameter. n.b.: we could/should do this for all other parameters. --- manifests/params.pp | 12 ++++++++++++ manifests/server.pp | 8 +++++--- 2 files changed, 17 insertions(+), 3 deletions(-) create mode 100644 manifests/params.pp diff --git a/manifests/params.pp b/manifests/params.pp new file mode 100644 index 0000000..e436f29 --- /dev/null +++ b/manifests/params.pp @@ -0,0 +1,12 @@ +# Set default values here that are different accross OSes +class glusterfs::params { + + case $::osfamily { + 'Debian': { + $service_name = 'glusterfs-server' + } + default, 'RedHat': { + $service_name = 'glusterd' + } + } +} diff --git a/manifests/server.pp b/manifests/server.pp index 1aad37e..f8c89bd 100644 --- a/manifests/server.pp +++ b/manifests/server.pp @@ -15,15 +15,17 @@ # } # class glusterfs::server ( - $peers = [] -) { + $peers = [], + $service_name = $::glusterfs::params::service_name, +) inherits glusterfs::params { # Main package and service it provides package { 'glusterfs-server': ensure => installed } service { 'glusterd': - enable => true, ensure => running, + enable => true, hasstatus => true, + name => $service_name, require => Package['glusterfs-server'], } From 6855931a48ea43a750e8a543473eb0e08c7d6481 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Igor=20Gali=C4=87?= Date: Fri, 10 Apr 2015 16:57:07 +0200 Subject: [PATCH 3/3] param-etrize glusterfs client package name again we expose the client package name through as class parameter, determining the value through glusterfs::params. --- manifests/client.pp | 9 +++++++-- manifests/params.pp | 6 ++++-- 2 files changed, 11 insertions(+), 4 deletions(-) diff --git a/manifests/client.pp b/manifests/client.pp index 1088e1e..c8d0eb9 100644 --- a/manifests/client.pp +++ b/manifests/client.pp @@ -2,9 +2,14 @@ # # GlusterFS client. See glusterfs::mount instead. # -class glusterfs::client { +class glusterfs::client ( + $client_package_name = $::glusterfs::params::client_package_name, +) inherits glusterfs::params { - package { 'glusterfs-fuse': ensure => installed } + package { 'glusterfs-fuse': + ensure => installed, + name => $client_package_name, + } } diff --git a/manifests/params.pp b/manifests/params.pp index e436f29..959dddb 100644 --- a/manifests/params.pp +++ b/manifests/params.pp @@ -3,10 +3,12 @@ case $::osfamily { 'Debian': { - $service_name = 'glusterfs-server' + $service_name = 'glusterfs-server' + $client_package_name = 'glusterfs-client' } default, 'RedHat': { - $service_name = 'glusterd' + $service_name = 'glusterd' + $client_package_name = 'glusterfs-fuse' } } }