diff options
author | Micah Anderson <micah@riseup.net> | 2012-11-13 12:12:16 -0500 |
---|---|---|
committer | Micah Anderson <micah@riseup.net> | 2012-11-13 12:12:16 -0500 |
commit | dbd5f5000382e622c8e252d67a7dcbd3e937d348 (patch) | |
tree | 7c263e7d5986845654fa32dd5cf3bb38c9a2ca8f /manifests/params.pp | |
parent | 21acba1137726ac72d3bef00aefc605edbfe5ea0 (diff) |
setup parameterized class to enable versioned installation of ruby package on different operating system
Diffstat (limited to 'manifests/params.pp')
-rw-r--r-- | manifests/params.pp | 48 |
1 files changed, 48 insertions, 0 deletions
diff --git a/manifests/params.pp b/manifests/params.pp new file mode 100644 index 0000000..f388408 --- /dev/null +++ b/manifests/params.pp @@ -0,0 +1,48 @@ +# Class: ruby::params +# +# This class handles the Ruby module parameters +# +# Parameters: +# $ruby_dev = the name of the Ruby development libraries +# +# Actions: +# +# Requires: +# +# Sample Usage: +# +class ruby::params { + + $version = 'installed' + $ruby_package = 'ruby' + + case $::osfamily { + 'redhat', 'suse': { + $ruby_dev='ruby-devel' + } + 'debian': { + case $version { + '1.8', '1.8.7': { + $ruby_package = 'ruby1.8' + $ruby_dev = [ 'ruby1.8-dev', 'rake' ] + } + '1.9.1': { + $ruby_package = 'ruby1.9.1' + $ruby_dev = [ 'ruby1.9.1-dev', 'rake' ] + } + '1.9', '1.9.3': { + $ruby_package = 'ruby1.9' + $ruby_dev = [ 'ruby-dev', 'rake' ] + } + default: { + $ruby_package = 'ruby' + $ruby_dev = [ 'ruby-dev', 'rake' ] + } + } + } + default: { + fail("Unsupported OS family: ${::osfamily}") + } + } +} + |