diff options
-rw-r--r-- | files/gemrc | 3 | ||||
-rw-r--r-- | manifests/gpgme.pp | 34 | ||||
-rw-r--r-- | manifests/highline.pp | 8 | ||||
-rw-r--r-- | manifests/init.pp | 13 | ||||
-rw-r--r-- | manifests/ya2yaml.pp | 7 |
5 files changed, 58 insertions, 7 deletions
diff --git a/files/gemrc b/files/gemrc new file mode 100644 index 0000000..040f20b --- /dev/null +++ b/files/gemrc @@ -0,0 +1,3 @@ +--- +:sources: +- https://rubygems.org/ diff --git a/manifests/gpgme.pp b/manifests/gpgme.pp index b72b196..e9b04a9 100644 --- a/manifests/gpgme.pp +++ b/manifests/gpgme.pp @@ -1,9 +1,35 @@ class rubygems::gpgme{ - require rubygems::devel - require gpg::gpgme::devel + case $::operatingsystem { + debian,ubuntu: { + case $::lsbdistcodename { + 'lenny','squeeze': { + # install gpgme as gem, as the squeeze deb-package is too old + # for i.e. gpg module + $provider = 'gem' + $packagename = 'ruby-gpgme' + } + default: { + # don't need to install gpgme as gem, debian package works + # fine with the gpg module + $provider = 'apt' + $packagename = 'libgpgme-ruby' + } + } + } + default: { + $provider = 'gem' + $packagename = 'ruby-gpgme' + } + } + + if $provider == 'gem' { + require rubygems::devel + require gpg::gpgme::devel + } package{'ruby-gpgme': - ensure => present, - provider => gem, + ensure => present, + provider => $provider, + name => $packagename } } diff --git a/manifests/highline.pp b/manifests/highline.pp index b8eaa90..e9da09a 100644 --- a/manifests/highline.pp +++ b/manifests/highline.pp @@ -3,4 +3,12 @@ class rubygems::highline { package{'rubygem-highline': ensure => present, } + + case $::operatingsystem { + debian,ubuntu: { + Package['rubygem-highline']{ + name => 'ruby-highline' + } + } + } } diff --git a/manifests/init.pp b/manifests/init.pp index 40308cb..0b6198d 100644 --- a/manifests/init.pp +++ b/manifests/init.pp @@ -7,9 +7,9 @@ # Marcel Härry haerry+puppet(at)puzzle.ch # Simon Josi josi+puppet(at)puzzle.ch # -# This program is free software; you can redistribute -# it and/or modify it under the terms of the GNU -# General Public License version 3 as published by +# This program is free software; you can redistribute +# it and/or modify it under the terms of the GNU +# General Public License version 3 as published by # the Free Software Foundation. # @@ -21,4 +21,11 @@ class rubygems { ensure => installed, } } + file { '/etc/gemrc': + source => [ 'puppet:///modules/site_rubygems/gemrc', + 'puppet:///modules/rubygems/gemrc' ], + mode => '0644', + owner => 'root', + group => 'root', + } } diff --git a/manifests/ya2yaml.pp b/manifests/ya2yaml.pp new file mode 100644 index 0000000..7df362d --- /dev/null +++ b/manifests/ya2yaml.pp @@ -0,0 +1,7 @@ +class rubygems::ya2yaml { + require rubygems + package{'ya2yaml': + ensure => present, + provider => gem, + } +} |