Improve RPC installation and configuration

Add parameters to configure:
- Rabbit userid
- Rabbit virtual host
- Qpid username
- Qpid realm

Add facts for:
- Rabbit password
- Qpid password
This commit is contained in:
Florian Haas 2013-07-07 17:48:23 +00:00
parent 021e50b8f4
commit 504044473a
3 changed files with 32 additions and 12 deletions

View File

@ -22,9 +22,10 @@ class kickstack (
$debug = $kickstack::params::debug, $debug = $kickstack::params::debug,
$database = $kickstack::params::database, $database = $kickstack::params::database,
$rpc = $kickstack::params::rpc, $rpc = $kickstack::params::rpc,
$rabbit_user = $kickstack::params::rabbit_user, $rabbit_userid = $kickstack::params::rabbit_userid,
$rabbit_virtual_host = $kickstack::params::rabbit_virtual_host, $rabbit_virtual_host = $kickstack::params::rabbit_virtual_host,
$qpid_username = $kickstack::params::qpid_username, $qpid_username = $kickstack::params::qpid_username,
$qpid_realm = $kickstack::params::qpid_realm,
$keystone_region = $kickstack::params::keystone_region, $keystone_region = $kickstack::params::keystone_region,
$keystone_public_suffix = $kickstack::params::keystone_public_suffix, $keystone_public_suffix = $kickstack::params::keystone_public_suffix,
$keystone_admin_suffix = $kickstack::params::keystone_admin_suffix, $keystone_admin_suffix = $kickstack::params::keystone_admin_suffix,

View File

@ -41,19 +41,16 @@ class kickstack::params {
$rpc = pick(getvar("::${variable_prefix}rpc"), 'rabbitmq') $rpc = pick(getvar("::${variable_prefix}rpc"), 'rabbitmq')
# RabbitMQ user name: # RabbitMQ user name:
$rabbit_user = getvar("::${variable_prefix}rabbit_user") $rabbit_userid = pick(getvar("::${variable_prefix}rabbit_userid"),'guest')
# RabbitMQ password:
$rabbit_password = getvar("::${variable_prefix}rabbit_password")
# RabbitMQ virtual host # RabbitMQ virtual host
$rabbit_virtual_host = getvar("::${variable_prefix}rabbit_virtual_host") $rabbit_virtual_host = pick(getvar("::${variable_prefix}rabbit_virtual_host"),'/')
# Qpid user name: # Qpid user name:
$qpid_username = getvar("::${variable_prefix}qpid_username") $qpid_username = pick(getvar("::${variable_prefix}qpid_username"),'guest')
# Qpid password: # Qpid realm:
$qpid_password = getvar("::${variable_prefix}qpid_password") $qpid_realm = getvar("::${variable_prefix}qpid_realm")
# The Keystone region to manage # The Keystone region to manage
$keystone_region = pick(getvar("::${variable_prefix}keystone_region"), 'kickstack') $keystone_region = pick(getvar("::${variable_prefix}keystone_region"), 'kickstack')

View File

@ -3,23 +3,45 @@ class kickstack::rpc inherits kickstack {
'rabbitmq': { 'rabbitmq': {
Class['nova::rabbitmq'] -> Exportfact::Export<| tag == 'rabbit' |> Class['nova::rabbitmq'] -> Exportfact::Export<| tag == 'rabbit' |>
class { 'nova::rabbitmq': } $rabbit_password = pick(getvar("${::kickstack::fact_prefix}rabbit_password"),pwgen())
class { 'nova::rabbitmq':
userid => "$::kickstack::rabbit_userid",
password => "$rabbit_password",
virtual_host => "$::kickstack::rabbit_virtual_host"
}
kickstack::exportfact::export { "rabbit_host": kickstack::exportfact::export { "rabbit_host":
value => "$hostname", value => "$hostname",
tag => "rabbit" tag => "rabbit"
} }
kickstack::exportfact::export { "rabbit_password":
value => "$rabbit_password",
tag => "rabbit"
}
} }
'qpid': { 'qpid': {
Class['nova::qpid'] -> Exportfact::Export<| tag == 'qpid' |> Class['nova::qpid'] -> Exportfact::Export<| tag == 'qpid' |>
class { 'nova::qpid': } $qpid_password = pick(getvar("${::kickstack::fact_prefix}qpid_password"),pwgen())
class { 'nova::qpid':
user => "$::kickstack_qpid_username",
password => "$qpid_password",
realm => "$::kickstack_qpid_realm"
}
kickstack::exportfact::export { "qpid_hostname": kickstack::exportfact::export { "qpid_hostname":
value => "$hostname", value => "$hostname",
tag => "qpid" tag => "qpid"
} }
kickstack::exportfact::export { "qpid_password":
value => "$qpid_password",
tag => "qpid"
}
} }
default: { default: {
warn("Unsupported RPC server type: ${rpc_server}") warn("Unsupported RPC server type: ${rpc_server}")