2012-11-22 10:45:10 -08:00
|
|
|
# == Class: jeepyb
|
|
|
|
#
|
|
|
|
class jeepyb (
|
2013-07-21 21:08:11 -07:00
|
|
|
$git_source_repo = 'https://git.openstack.org/openstack-infra/jeepyb',
|
2015-04-06 12:10:18 -07:00
|
|
|
$git_revision = 'master',
|
2012-11-22 10:45:10 -08:00
|
|
|
) {
|
2013-05-09 03:28:11 +00:00
|
|
|
case $::osfamily {
|
|
|
|
'Debian': {
|
2016-06-09 16:20:59 +02:00
|
|
|
$jeepyb_packages = [
|
|
|
|
'gcc',
|
|
|
|
'libxml2-dev',
|
|
|
|
'libxslt1-dev',
|
|
|
|
'libffi-dev',
|
|
|
|
'libssl-dev'
|
|
|
|
]
|
|
|
|
|
|
|
|
@package { $jeepyb_packages:
|
|
|
|
ensure => present,
|
2016-06-08 09:39:33 +02:00
|
|
|
}
|
2016-06-09 16:20:59 +02:00
|
|
|
|
|
|
|
realize (
|
|
|
|
Package['gcc'],
|
|
|
|
Package['libxml2-dev'],
|
|
|
|
Package['libxslt1-dev'],
|
|
|
|
Package['libffi-dev'],
|
|
|
|
Package['libssl-dev'],
|
|
|
|
)
|
|
|
|
|
2017-09-19 12:07:43 -05:00
|
|
|
$remove_packages = [
|
|
|
|
'python-paramiko',
|
|
|
|
]
|
|
|
|
|
|
|
|
package { $remove_packages:
|
|
|
|
ensure => absent,
|
|
|
|
}
|
2013-05-09 03:28:11 +00:00
|
|
|
}
|
|
|
|
'RedHat': {
|
2016-06-09 16:20:59 +02:00
|
|
|
$jeepyb_packages = [
|
|
|
|
'gcc',
|
|
|
|
'libxml2-devel',
|
|
|
|
'libxslt-devel',
|
|
|
|
'libffi-devel',
|
|
|
|
'openssl-devel'
|
|
|
|
]
|
|
|
|
|
|
|
|
@package { $jeepyb_packages:
|
|
|
|
ensure => present,
|
2016-06-08 09:39:33 +02:00
|
|
|
}
|
2016-06-09 16:20:59 +02:00
|
|
|
|
|
|
|
realize (
|
|
|
|
Package['gcc'],
|
|
|
|
Package['libxml2-devel'],
|
|
|
|
Package['libxslt-devel'],
|
|
|
|
Package['libffi-devel'],
|
|
|
|
Package['openssl-devel'],
|
|
|
|
)
|
|
|
|
|
2017-09-19 12:07:43 -05:00
|
|
|
$remove_packages = [
|
|
|
|
'python-paramiko',
|
|
|
|
]
|
|
|
|
|
|
|
|
package { $remove_packages:
|
|
|
|
ensure => absent,
|
|
|
|
}
|
2013-05-09 03:28:11 +00:00
|
|
|
}
|
|
|
|
default: {
|
|
|
|
fail("Unsupported osfamily: ${::osfamily} The 'jeepyb' module only supports osfamily Debian or RedHat.")
|
2012-11-22 10:45:10 -08:00
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
vcsrepo { '/opt/jeepyb':
|
|
|
|
ensure => latest,
|
|
|
|
provider => git,
|
2015-04-06 12:10:18 -07:00
|
|
|
revision => $git_revision,
|
2012-11-22 10:45:10 -08:00
|
|
|
source => $git_source_repo,
|
|
|
|
}
|
|
|
|
|
|
|
|
exec { 'install_jeepyb' :
|
2015-11-13 11:01:34 -05:00
|
|
|
command => 'pip install -U /opt/jeepyb',
|
2013-10-10 14:17:16 -04:00
|
|
|
path => '/usr/local/bin:/usr/bin:/bin/',
|
2012-11-22 10:45:10 -08:00
|
|
|
refreshonly => true,
|
2017-09-19 12:07:43 -05:00
|
|
|
subscribe => [Vcsrepo['/opt/jeepyb'], Package[$remove_packages]],
|
2014-02-09 13:23:50 -05:00
|
|
|
logoutput => true,
|
2017-09-19 12:07:43 -05:00
|
|
|
require => [Package[$jeepyb_packages], Package[$remove_packages]]
|
2012-11-22 10:45:10 -08:00
|
|
|
}
|
|
|
|
}
|