Puppet Class: redmine::install
- Defined in:
- manifests/install.pp
Overview
Class redmine::install
2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 |
# File 'manifests/install.pp', line 2
class redmine::install {
# Install dependencies
$generic_packages = [ 'make', 'gcc' ]
$debian_packages = [ 'libmysql++-dev', 'libmysqlclient-dev', 'libmagickcore-dev', 'libmagickwand-dev', 'ruby-dev', 'libpq-dev', 'imagemagick' ]
$redhat_packages = [ 'postgresql-devel', 'sqlite-devel', 'ImageMagick-devel', 'ruby-devel', $::redmine::params::mysql_devel ]
case $::osfamily {
'Debian': { $packages = concat($generic_packages, $debian_packages) }
'RedHat': { $packages = concat($generic_packages, $redhat_packages) }
default: { $packages = concat($generic_packages, $redhat_packages) }
}
ensure_packages($packages)
case $redmine::database_adapter {
'postgresql' : {
$without_gems = 'development test sqlite mysql'
}
default: {
$without_gems = 'development test sqlite postgresql'
}
}
Exec {
cwd => '/usr/src',
path => [ '/bin/', '/sbin/' , '/usr/bin/', '/usr/sbin/', '/usr/local/bin/' ]
}
package { 'bundler':
ensure => present,
provider => gem
} ->
exec { 'bundle_redmine':
command => "bundle install --gemfile ${redmine::install_dir}/Gemfile --without ${without_gems}",
creates => "${redmine::install_dir}/Gemfile.lock",
require => [ Package['bundler'], Package['make'], Package['gcc'], Package[$packages] ],
notify => Exec['rails_migrations'],
}
exec { 'bundle_update':
cwd => $redmine::install_dir,
command => 'bundle update',
refreshonly => true,
subscribe => Vcsrepo['redmine_source'],
notify => Exec['rails_migrations'],
require => Exec['bundle_redmine'],
}
}
|