diff options
author | Micah <micah@leap.se> | 2016-07-12 16:46:03 -0400 |
---|---|---|
committer | Micah <micah@leap.se> | 2016-07-12 16:46:03 -0400 |
commit | d8ecd5d2f933c40f2413a58e6324558d0e689b6a (patch) | |
tree | d2e25c12e7b67afc8e9496896b4e6bf6229010dd /puppet/modules/ruby/manifests/init.pp | |
parent | 10c80c65126cd84e6010495d30cb921d245f0d33 (diff) |
git subrepo clone https://leap.se/git/puppet_ruby puppet/modules/ruby
subrepo:
subdir: "puppet/modules/ruby"
merged: "9ccd853"
upstream:
origin: "https://leap.se/git/puppet_ruby"
branch: "master"
commit: "9ccd853"
git-subrepo:
version: "0.3.0"
origin: "https://github.com/ingydotnet/git-subrepo"
commit: "1e79595"
Change-Id: I8f8437218403894682afbadd714f2e4efb72f018
Diffstat (limited to 'puppet/modules/ruby/manifests/init.pp')
-rw-r--r-- | puppet/modules/ruby/manifests/init.pp | 72 |
1 files changed, 72 insertions, 0 deletions
diff --git a/puppet/modules/ruby/manifests/init.pp b/puppet/modules/ruby/manifests/init.pp new file mode 100644 index 00000000..8d8ae48e --- /dev/null +++ b/puppet/modules/ruby/manifests/init.pp @@ -0,0 +1,72 @@ +# Class: ruby +# +# This class installs Ruby +# +# Parameters: +# +# version: (default installed) +# Set the version of Ruby to install +# +# Sample Usage: +# +# For a standard install using the latest ruby, simply do: +# +# class { 'ruby': } +# +# On Debian this is equivilant to +# $ apt-get install ruby +# +# To install a specific version of ruby, simply do: +# +# class { 'ruby': +# ruby_version => '1.8.7', +# } +# +# Supported versions: 1.8, 1.8.7, 1.9, 1.9.1, 1.9.3 +# +# To install the development files, you can do: +# +# class { 'ruby': install_dev => true } + +class ruby ( + $ruby_version = '', + $version = 'installed', + $install_dev = false +) +{ + + case $::operatingsystem { + 'redhat', 'suse': { + $ruby_package='ruby' + $ruby_dev='ruby-devel' + } + 'debian', 'ubuntu': { + case $ruby_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.3' + $ruby_dev = [ 'ruby-dev', 'rake' ] + } + default: { + $ruby_package = 'ruby' + $ruby_dev = [ 'ruby-dev', 'rake' ] + } + } + } + } + + package{ $ruby_package: + ensure => $version, + } + + if $install_dev { + ensure_packages($ruby_dev) + } +} |