Puppet Class: mesos::install
- Defined in:
- manifests/install.pp
Overview
Class: mesos::install
This class manages Mesos package installation.
Parameters:
- ensure
-
‘present’ for installing any version of Mesos
-
'latest' or e.g. '0.15' for specific version
Sample Usage: is not meant for standalone usage, class is required by ‘mesos::master’ and ‘mesos::slave’
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 |
# File 'manifests/install.pp', line 12
class mesos::install(
String $ensure = 'present',
Optional[Variant[String,Hash]] $repo_source = undef,
Boolean $manage_python = false,
String $python_package = 'python',
Boolean $remove_package_services = false,
) {
# 'ensure_packages' requires puppetlabs/stdlib
#
# linux containers are now implemented natively
# with usage of cgroups, requires kernel >= 2.6.24
#
# Python is required for web GUI (mesos could be build without GUI)
if $manage_python {
ensure_resource('package', [$python_package],
{'ensure' => 'present', 'require' => Package['mesos']}
)
}
class {'mesos::repo':
source => $repo_source,
}
# a debian (or other binary package) must be available,
# see https://github.com/deric/mesos-deb-packaging
# for Debian packaging
package { 'mesos':
ensure => $ensure,
require => Class['mesos::repo']
}
if ($remove_package_services and $::osfamily == 'redhat' and $::operatingsystemmajrelease == '6') {
file { [
'/etc/init/mesos-master.conf', '/etc/init/mesos-slave.conf'
]:
ensure => absent,
require => Package['mesos'],
}
}
}
|