phpservermon/puphpet/puppet/modules/mongodb/manifests/params.pp

94 lines
3.5 KiB
Puppet

# PRIVATE CLASS: do not use directly
class mongodb::params inherits mongodb::globals {
$ensure = true
$service_status = $service_status
$ensure_client = true
# Amazon Linux's OS Family is 'Linux', operating system 'Amazon'.
case $::osfamily {
'RedHat', 'Linux': {
if $mongodb::globals::manage_package_repo {
$user = pick($user, 'mongod')
$group = pick($group, 'mongod')
if $::mongodb::globals::version {
$server_package_name = "mongodb-org-server-${::mongodb::globals::version}"
$client_package_name = "mongodb-org-${::mongodb::globals::version}"
} else {
$server_package_name = 'mongodb-org-server'
$client_package_name = 'mongodb-org'
}
$service_name = pick($service_name, 'mongod')
$config = '/etc/mongod.conf'
$dbpath = '/var/lib/mongo'
$logpath = '/var/log/mongodb/mongod.log'
$pidfilepath = '/var/run/mongodb/mongod.pid'
$bind_ip = pick($bind_ip, ['127.0.0.1'])
$fork = true
} else {
# RedHat/CentOS doesn't come with a prepacked mongodb
# so we assume that you are using EPEL repository.
$user = pick($user, 'mongodb')
$group = pick($group, 'mongodb')
$server_package_name = pick($server_package_name, 'mongodb-server')
$client_package_name = pick($client_package_name, 'mongodb')
$service_name = pick($service_name, 'mongod')
$config = '/etc/mongodb.conf'
$dbpath = '/var/lib/mongodb'
$logpath = '/var/log/mongodb/mongodb.log'
$bind_ip = pick($bind_ip, ['127.0.0.1'])
$pidfilepath = '/var/run/mongodb/mongodb.pid'
$fork = true
$journal = true
}
}
'Debian': {
if $mongodb::globals::manage_package_repo {
$user = pick($user, 'mongodb')
$group = pick($group, 'mongodb')
if $::mongodb::globals::version {
$server_package_name = "mongodb-10gen=${::mongodb::globals::version}"
} else {
$server_package_name = 'mongodb-10gen'
}
$service_name = 'mongodb'
$config = '/etc/mongodb.conf'
$dbpath = '/var/lib/mongodb'
$logpath = '/var/log/mongodb/mongodb.log'
$bind_ip = ['127.0.0.1']
} else {
# although we are living in a free world,
# I would not recommend to use the prepacked
# mongodb server on Ubuntu 12.04 or Debian 6/7,
# because its really outdated
$user = pick($user, 'mongodb')
$group = pick($group, 'mongodb')
$server_package_name = pick($server_package_name, 'mongodb-server')
$client_package_name = pick($client_package_name, 'mongodb')
$service_name = pick($service_name, 'mongodb')
$config = '/etc/mongodb.conf'
$dbpath = '/var/lib/mongodb'
$logpath = '/var/log/mongodb/mongodb.log'
$bind_ip = pick($bind_ip, ['127.0.0.1'])
$pidfilepath = undef
}
# avoid using fork because of the init scripts design
$fork = undef
}
default: {
fail("Osfamily ${::osfamily} and ${::operatingsystem} is not supported")
}
}
case $::operatingsystem {
'Ubuntu': {
$service_provider = pick($service_provider, 'upstart')
}
default: {
$service_provider = undef
}
}
}