Files
0f617ce27a99260ee03627b1fbde461a687718dc
puppet-oslo /manifests /messaging /rabbit.pp

234 lines
11 KiB
ObjectPascal
Raw Normal View History

#Configureoslo_messaging_rabbitoptions
#
#ThisresourceconfiguresOslomessagingresourcesforanOpenStackservice.
#===Parameters:
#
#(optional)Definequeuesas"durable"torabbitmq.(booleanvalue)
#Defaultsto$::os_service_default
#
#(Optional)SSLversiontouse(validonlyifSSLenabled).'
#andTLSv1_2maybeavailableonsomedistributions.(stringvalue)
#Defaultsto$::os_service_default
#[*kombu_ssl_keyfile*]
#Defaultsto$::os_service_default
#[*kombu_ssl_certfile*]
#Defaultsto$::os_service_default
#[*kombu_ssl_ca_certs*]
#(stringvalue)
#Defaultsto$::os_service_default
#[*kombu_reconnect_delay*]
#toanAMQPconsumercancelnotification.(floatingpointvalue)
#Defaultsto$::os_service_default
#[*kombu_missing_consumer_retry_timeout*]
#itsreplies.Thisvalueshouldnotbelongerthanrpc_response_timeout.
#(integervalue)
#Defaultsto$::os_service_default
#[*kombu_failover_strategy*]
#wearecurrentlyconnectedtobecomesunavailable.Takeseffectonlyif
#morethanoneRabbitMQnodeisprovidedinconfig.(stringvalue)
#Defaultsto$::os_service_default
#
#[*kombu_compression*]
#(optional)Possiblevaluesare:gzip,bz2.Ifnotsetcompressionwillnot
#beused.Thisoptionmaynotbeavailableinfutureversions.EXPERIMENTAL.
#(stringvalue)
#Defaultsto$::os_service_default
#[*rabbit_host*]
#(Optional)TheRabbitMQbrokeraddresswhereasinglenodeisused.
#Defaultsto$::os_service_default
#[*rabbit_port*]
#(Optional)TheRabbitMQbrokerportwhereasinglenodeisused.
#Defaultsto$::os_service_default
#[*rabbit_hosts*]
#Defaultsto$::os_service_default
#[*rabbit_use_ssl*]
#Defaultsto$::os_service_default
#[*rabbit_userid*]
#Defaultsto$::os_service_default
#[*rabbit_password*]
#Defaultsto$::os_service_default
#[*rabbit_login_method*]
#Defaultsto$::os_service_default
#[*rabbit_virtual_host*]
#Defaultsto$::os_service_default
#[*rabbit_retry_interval*]
#(Optional)HowfrequentlytoretryconnectingwithRabbitMQ.
#Defaultsto$::os_service_default
#[*rabbit_retry_backoff*]
#toRabbitMQ.(integervalue)
#Defaultsto$::os_service_default
#[*rabbit_interval_max*]
#Defaultsto$::os_service_default
#[*rabbit_max_retries*]
#Defaultsto$::os_service_default
#[*rabbit_ha_queues*]
#option,youmustwipetheRabbitMQdatabase.(booleanvalue)
#Defaultsto$::os_service_default
#[*rabbit_transient_queues_ttl*]
#(Optional)Positiveintegerrepresentingdurationinsecondsfor
#queueTTL(x-expires).Queueswhichareunusedfortheduration
#oftheTTLareautomaticallydeleted.
#[*heartbeat_timeout_threshold*]
#(Optional)NumberofsecondsafterwhichtheRabbitbrokeris
#considereddownifheartbeat'skeep-alivefails
#Defaultsto$::os_service_default
#[*heartbeat_rate*]
#(Optional)Howoftentimesduringtheheartbeat_timeout_threshold
#Defaultsto$::os_service_default
$kombu_ssl_keyfile=$::os_service_default,
$kombu_ssl_certfile=$::os_service_default,
$kombu_ssl_ca_certs=$::os_service_default,
$kombu_reconnect_delay=$::os_service_default,
$kombu_missing_consumer_retry_timeout=$::os_service_default,
$kombu_failover_strategy=$::os_service_default,
$rabbit_port=$::os_service_default,
$rabbit_hosts=$::os_service_default,
$rabbit_use_ssl=$::os_service_default,
$rabbit_userid=$::os_service_default,
$rabbit_password=$::os_service_default,
$rabbit_login_method=$::os_service_default,
$rabbit_virtual_host=$::os_service_default,
$rabbit_retry_interval=$::os_service_default,
$rabbit_retry_backoff=$::os_service_default,
$rabbit_interval_max=$::os_service_default,
$rabbit_max_retries=$::os_service_default,
$rabbit_ha_queues=$::os_service_default,
$rabbit_transient_queues_ttl=$::os_service_default,
$heartbeat_timeout_threshold=$::os_service_default,
$heartbeat_rate=$::os_service_default,
if!is_service_default($kombu_ssl_ca_certs)and($kombu_ssl_ca_certs){
fail('The kombu_ssl_ca_certs parameter requires rabbit_use_ssl to be set to true')
}
if!is_service_default($kombu_ssl_certfile)and($kombu_ssl_certfile){
fail('The kombu_ssl_certfile parameter requires rabbit_use_ssl to be set to true')
}
if!is_service_default($kombu_ssl_keyfile)and($kombu_ssl_keyfile){
fail('The kombu_ssl_keyfile parameter requires rabbit_use_ssl to be set to true')
}
if!is_service_default($kombu_ssl_version)and($kombu_ssl_version){
fail('The kombu_ssl_version parameter requires rabbit_use_ssl to be set to true')
}
fail('Unsupported Kombu compression. Possible values are gzip and bz2')
}
warning("Theoslo_messagingrabbit_host,rabbit_hosts,rabbit_port,rabbit_userid,\
rabbit_password,rabbit_virtual_hostparametershavebeendeprecatedbythe\
[DEFAULT]\transport_url.Pleaseuseoslo::messaging::default::transport_urlinstead.")
}
$rabbit_ha_queues_orig=true
}else{
$rabbit_ha_queues_orig=$rabbit_ha_queues
}
#Donotsetrabbit_portandrabbit_host
$rabbit_host_orig=$::os_service_default
$rabbit_port_orig=$rabbit_port
$rabbit_host_orig=$rabbit_host
$rabbit_ha_queues_orig=$rabbit_ha_queues
$rabbit_hosts_orig=$::os_service_default
$rabbit_options={ 'oslo_messaging_rabbit/amqp_durable_queues' => { value => $amqp_durable_queues },
'oslo_messaging_rabbit/heartbeat_rate'=>{ value => $heartbeat_rate },
'oslo_messaging_rabbit/heartbeat_timeout_threshold'=>{ value => $heartbeat_timeout_threshold },
'oslo_messaging_rabbit/kombu_compression'=>{ value => $kombu_compression },
'oslo_messaging_rabbit/kombu_failover_strategy'=>{ value => $kombu_failover_strategy },
'oslo_messaging_rabbit/kombu_missing_consumer_retry_timeout'=>{ value => $kombu_missing_consumer_retry_timeout },
'oslo_messaging_rabbit/kombu_reconnect_delay'=>{ value => $kombu_reconnect_delay },
'oslo_messaging_rabbit/rabbit_interval_max'=>{ value => $rabbit_interval_max },
'oslo_messaging_rabbit/rabbit_login_method'=>{ value => $rabbit_login_method },
'oslo_messaging_rabbit/rabbit_max_retries'=>{ value => $rabbit_max_retries },
'oslo_messaging_rabbit/rabbit_password'=>{ value => $rabbit_password, secret => true },
'oslo_messaging_rabbit/rabbit_retry_backoff'=>{ value => $rabbit_retry_backoff },
'oslo_messaging_rabbit/rabbit_retry_interval'=>{ value => $rabbit_retry_interval },
'oslo_messaging_rabbit/rabbit_transient_queues_ttl'=>{ value => $rabbit_transient_queues_ttl },
'oslo_messaging_rabbit/rabbit_use_ssl'=>{ value => $rabbit_use_ssl },
'oslo_messaging_rabbit/rabbit_userid'=>{ value => $rabbit_userid },
'oslo_messaging_rabbit/rabbit_virtual_host'=>{ value => $rabbit_virtual_host },
'oslo_messaging_rabbit/rabbit_hosts'=>{ value => $rabbit_hosts_orig },
'oslo_messaging_rabbit/rabbit_port'=>{ value => $rabbit_port_orig },
'oslo_messaging_rabbit/rabbit_host'=>{ value => $rabbit_host_orig },
'oslo_messaging_rabbit/rabbit_ha_queues'=>{ value => $rabbit_ha_queues_orig },
'oslo_messaging_rabbit/kombu_ssl_ca_certs'=>{ value => $kombu_ssl_ca_certs },
'oslo_messaging_rabbit/kombu_ssl_certfile'=>{ value => $kombu_ssl_certfile },
'oslo_messaging_rabbit/kombu_ssl_keyfile'=>{ value => $kombu_ssl_keyfile },
'oslo_messaging_rabbit/kombu_ssl_version'=>{ value => $kombu_ssl_version },
'DEFAULT/rpc_backend'=>{ value => 'rabbit' },
}
create_resources($name,$rabbit_options)