Add support for latest puppetlabs-rabbitmq

This patch adds a new paramter to the rabbitmq class
that allows a user to specify the class name. This allows
selection of 'rabbitmq::server' - the old name, or 'rabbitmq' -
the new name changed during the recent rewrite of the
puppetlabs-rabbitmq module.

Change-Id: I58c65d9f0eaa48aee49899c8850482c08320b003
This commit is contained in:
Michael Chapman
2014-02-28 02:50:26 +11:00
parent 324bd9a325
commit 55d7b22d34

View File

@@ -29,17 +29,24 @@
# (optional) Whether to enable the Rabbit service
# Defaults to false
#
# [*rabbitmq_class*]
# (optional) The rabbitmq puppet class to depend on,
# which is dependent on the puppet-rabbitmq version.
# Use the default for 1.x, use 'rabbitmq' for 3.x
# Defaults to 'rabbitmq::server'
#
class nova::rabbitmq(
$userid ='guest',
$password ='guest',
$port ='5672',
$virtual_host ='/',
$cluster_disk_nodes = false,
$enabled = true
$enabled = true,
$rabbitmq_class = 'rabbitmq::server'
) {
# only configure nova after the queue is up
Class['rabbitmq::service'] -> Anchor<| title == 'nova-start' |>
Class[$rabbitmq_class] -> Anchor<| title == 'nova-start' |>
if ($enabled) {
if $userid == 'guest' {
@@ -50,7 +57,7 @@ class nova::rabbitmq(
admin => true,
password => $password,
provider => 'rabbitmqctl',
require => Class['rabbitmq::server'],
require => Class[$rabbitmq_class],
}
# I need to figure out the appropriate permissions
rabbitmq_user_permissions { "${userid}@${virtual_host}":
@@ -66,7 +73,7 @@ class nova::rabbitmq(
}
if $cluster_disk_nodes {
class { 'rabbitmq::server':
class { $rabbitmq_class:
service_ensure => $service_ensure,
port => $port,
delete_guest_user => $delete_guest_user,
@@ -75,7 +82,7 @@ class nova::rabbitmq(
wipe_db_on_cookie_change => true,
}
} else {
class { 'rabbitmq::server':
class { $rabbitmq_class:
service_ensure => $service_ensure,
port => $port,
delete_guest_user => $delete_guest_user,
@@ -85,7 +92,7 @@ class nova::rabbitmq(
if ($enabled) {
rabbitmq_vhost { $virtual_host:
provider => 'rabbitmqctl',
require => Class['rabbitmq::server'],
require => Class[$rabbitmq_class],
}
}
}