
This adds defined anchor points for external modules to hook into the software install, config and service dependency chain. This allows external modules to manage software installation (virtualenv, containers, etc) and service management (pacemaker) without needing rely on resources that may change or be renamed. Change-Id: I2b5707a0fe3dd72a56bbf1d840b4197bfa3012db
56 lines
1.5 KiB
Puppet
56 lines
1.5 KiB
Puppet
# == Class designate::central
|
|
#
|
|
# Configure designate central service
|
|
#
|
|
# == Parameters
|
|
#
|
|
# [*package_ensure*]
|
|
# (optional) The state of the package
|
|
# Defaults to 'present'
|
|
#
|
|
# [*central_package_name*]
|
|
# (optional) Name of the package containing central resources
|
|
# Defaults to central_package_name from designate::params
|
|
#
|
|
# [*enabled*]
|
|
# (optional) Whether to enable services.
|
|
# Defaults to true
|
|
#
|
|
# [*service_ensure*]
|
|
# (optional) Whether the designate central service will be running.
|
|
# Defaults to 'running'
|
|
#
|
|
# [*backend_driver*]
|
|
# (optional) Driver used for backend communication (fake, rpc, bind9, powerdns)
|
|
# Defaults to 'bind9'
|
|
#
|
|
class designate::central (
|
|
$package_ensure = present,
|
|
$central_package_name = undef,
|
|
$enabled = true,
|
|
$service_ensure = 'running',
|
|
$backend_driver = 'bind9',
|
|
) {
|
|
include ::designate::params
|
|
|
|
package { 'designate-central':
|
|
ensure => $package_ensure,
|
|
name => pick($central_package_name, $::designate::params::central_package_name),
|
|
tag => ['openstack', 'designate-package'],
|
|
}
|
|
|
|
service { 'designate-central':
|
|
ensure => $service_ensure,
|
|
name => $::designate::params::central_service_name,
|
|
enable => $enabled,
|
|
hasstatus => true,
|
|
hasrestart => true,
|
|
require => Class['::designate::db'],
|
|
tag => ['openstack', 'designate-service'],
|
|
}
|
|
|
|
designate_config {
|
|
'service:central/backend_driver' : value => $backend_driver;
|
|
}
|
|
}
|