Puppet Class: ruby::compile
- Defined in:
- manifests/compile.pp
Overview
Class: ruby::compile
This class installs ruby compiling it from upstream source
5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 |
# File 'manifests/compile.pp', line 5
class ruby::compile {
$packages_list = $::operatingsystem ? {
/(?i:Debian|Ubuntu|Mint)/ => 'build-essential unzip vim git-core curl bison openssl libreadline6 libreadline6-dev zlib1g zlib1g-dev libssl-dev libyaml-dev libxml2-dev libxslt-dev autoconf libc6-dev ncurses-dev libcurl4-openssl-dev libopenssl-ruby apache2-prefork-dev libapr1-dev libaprutil1-dev libx11-dev libffi-dev tcl-dev tk-dev',
default => '',
}
puppi::install_packages { 'ruby_compile_prerequisites':
packages => $packages_list ,
timeout => 3600,
}
$short_versions=split($ruby::version, '[.]')
$short_version="${short_versions[0]}.${short_versions[1]}"
puppi::netinstall { 'ruby_source':
url => "http://ftp.ruby-lang.org/pub/ruby/${short_version}/ruby-${ruby::version}.zip",
destination_dir => '/var/tmp',
extracted_dir => "ruby-${ruby::version}",
postextract_command => 'sh configure && make && make test && make install',
require => Puppi::Install_packages['ruby_compile_prerequisites'],
}
}
|