From 714978792e1d4fe8de0ddab44a2156dc799196d5 Mon Sep 17 00:00:00 2001 From: ZhongShengping Date: Mon, 7 Aug 2017 13:49:33 +0800 Subject: [PATCH] Deprecate oslo.messaging rpc_backend option parameter Oslo.messaging uses the transport_url to represent the rpc and notification messaging driver to use and its full configuration. The rpc_backend configuration option is deprecated for removal and should not gate oslo.messaging driver configuration options. This patch: * deprecate rpc_backend * remove conditional check * update spec tests * add release note Change-Id: I0ba609ca5c311b52635efd3c3364a258fd197d5f Closes-Bug: #1708976 --- manifests/init.pp | 94 +++++++++---------- ...pc_backend_parameter-a671397f2235d98e.yaml | 4 + spec/classes/congress_init_spec.rb | 46 ++++----- 3 files changed, 67 insertions(+), 77 deletions(-) create mode 100644 releasenotes/notes/deprecate_rpc_backend_parameter-a671397f2235d98e.yaml diff --git a/manifests/init.pp b/manifests/init.pp index cc73925..f2247cc 100644 --- a/manifests/init.pp +++ b/manifests/init.pp @@ -5,10 +5,6 @@ # # === Parameters # -# [*rpc_backend*] -# (Optional) Use these options to configure the RabbitMQ message system. -# Defaults to 'rabbit' -# # [*default_transport_url*] # (optional) Connection url for oslo messaging backend. An example rabbit url # would be, rabbit://user:pass@host:port/virtual_host @@ -201,6 +197,10 @@ # (Optional) Ensure state for package. # Defaults to present. # +# [*rpc_backend*] +# (Optional) Use these options to configure the RabbitMQ message system. +# Defaults to 'rabbit' +# # == Authors # # Dan Radez @@ -210,7 +210,6 @@ # Copyright 2016 Red Hat Inc, unless otherwise noted. # class congress( - $rpc_backend = 'rabbit', $default_transport_url = $::os_service_default, $rpc_response_timeout = $::os_service_default, $control_exchange = $::os_service_default, @@ -255,6 +254,7 @@ class congress( $rabbit_virtual_host = $::os_service_default, $rabbit_userid = $::os_service_default, $rabbit_password = $::os_service_default, + $rpc_backend = 'rabbit', ) inherits congress::params { include ::congress::deps @@ -265,10 +265,10 @@ class congress( !is_service_default($rabbit_password) or !is_service_default($rabbit_port) or !is_service_default($rabbit_userid) or - !is_service_default($rabbit_virtual_host) { + $rpc_backend or !is_service_default($rabbit_virtual_host) { warning("congress::rabbit_host, congress::rabbit_hosts, congress::rabbit_password, \ -congress::rabbit_port, congress::rabbit_userid and congress::rabbit_virtual_host are \ -deprecated. Please use congress::default_transport_url instead.") +congress::rabbit_port, congress::rabbit_userid and congress::rabbit_virtual_host and \ +congress::rpc_backend are deprecated. Please use congress::default_transport_url instead.") } package { 'congress-common': @@ -285,47 +285,43 @@ deprecated. Please use congress::default_transport_url instead.") include ::congress::db::sync } - if $rpc_backend == 'rabbit' { - oslo::messaging::rabbit {'congress_config': - rabbit_password => $rabbit_password, - rabbit_userid => $rabbit_userid, - rabbit_virtual_host => $rabbit_virtual_host, - rabbit_use_ssl => $rabbit_use_ssl, - heartbeat_timeout_threshold => $rabbit_heartbeat_timeout_threshold, - heartbeat_rate => $rabbit_heartbeat_rate, - kombu_reconnect_delay => $kombu_reconnect_delay, - amqp_durable_queues => $amqp_durable_queues, - kombu_compression => $kombu_compression, - kombu_ssl_ca_certs => $kombu_ssl_ca_certs, - kombu_ssl_certfile => $kombu_ssl_certfile, - kombu_ssl_keyfile => $kombu_ssl_keyfile, - kombu_ssl_version => $kombu_ssl_version, - rabbit_hosts => $rabbit_hosts, - rabbit_host => $rabbit_host, - rabbit_port => $rabbit_port, - rabbit_ha_queues => $rabbit_ha_queues, - } - } elsif $rpc_backend == 'amqp' { - oslo::messaging::amqp { 'congress_config': - server_request_prefix => $amqp_server_request_prefix, - broadcast_prefix => $amqp_broadcast_prefix, - group_request_prefix => $amqp_group_request_prefix, - container_name => $amqp_container_name, - idle_timeout => $amqp_idle_timeout, - trace => $amqp_trace, - ssl_ca_file => $amqp_ssl_ca_file, - ssl_cert_file => $amqp_ssl_cert_file, - ssl_key_file => $amqp_ssl_key_file, - ssl_key_password => $amqp_ssl_key_password, - allow_insecure_clients => $amqp_allow_insecure_clients, - sasl_mechanisms => $amqp_sasl_mechanisms, - sasl_config_dir => $amqp_sasl_config_dir, - sasl_config_name => $amqp_sasl_config_name, - username => $amqp_username, - password => $amqp_password, - } - } else { - congress_config { 'DEFAULT/rpc_backend': value => $rpc_backend } + oslo::messaging::rabbit {'congress_config': + rabbit_password => $rabbit_password, + rabbit_userid => $rabbit_userid, + rabbit_virtual_host => $rabbit_virtual_host, + rabbit_use_ssl => $rabbit_use_ssl, + heartbeat_timeout_threshold => $rabbit_heartbeat_timeout_threshold, + heartbeat_rate => $rabbit_heartbeat_rate, + kombu_reconnect_delay => $kombu_reconnect_delay, + amqp_durable_queues => $amqp_durable_queues, + kombu_compression => $kombu_compression, + kombu_ssl_ca_certs => $kombu_ssl_ca_certs, + kombu_ssl_certfile => $kombu_ssl_certfile, + kombu_ssl_keyfile => $kombu_ssl_keyfile, + kombu_ssl_version => $kombu_ssl_version, + rabbit_hosts => $rabbit_hosts, + rabbit_host => $rabbit_host, + rabbit_port => $rabbit_port, + rabbit_ha_queues => $rabbit_ha_queues, + } + + oslo::messaging::amqp { 'congress_config': + server_request_prefix => $amqp_server_request_prefix, + broadcast_prefix => $amqp_broadcast_prefix, + group_request_prefix => $amqp_group_request_prefix, + container_name => $amqp_container_name, + idle_timeout => $amqp_idle_timeout, + trace => $amqp_trace, + ssl_ca_file => $amqp_ssl_ca_file, + ssl_cert_file => $amqp_ssl_cert_file, + ssl_key_file => $amqp_ssl_key_file, + ssl_key_password => $amqp_ssl_key_password, + allow_insecure_clients => $amqp_allow_insecure_clients, + sasl_mechanisms => $amqp_sasl_mechanisms, + sasl_config_dir => $amqp_sasl_config_dir, + sasl_config_name => $amqp_sasl_config_name, + username => $amqp_username, + password => $amqp_password, } oslo::messaging::default { 'congress_config': diff --git a/releasenotes/notes/deprecate_rpc_backend_parameter-a671397f2235d98e.yaml b/releasenotes/notes/deprecate_rpc_backend_parameter-a671397f2235d98e.yaml new file mode 100644 index 0000000..000db4f --- /dev/null +++ b/releasenotes/notes/deprecate_rpc_backend_parameter-a671397f2235d98e.yaml @@ -0,0 +1,4 @@ +--- +deprecations: + - congress::rpc_backend is deprecated and will be removed in a future + release. Please use congress::default_transport_url instead. diff --git a/spec/classes/congress_init_spec.rb b/spec/classes/congress_init_spec.rb index b2fec13..c58e563 100644 --- a/spec/classes/congress_init_spec.rb +++ b/spec/classes/congress_init_spec.rb @@ -23,7 +23,6 @@ describe 'congress' do )} it 'configures rabbit' do - is_expected.to contain_congress_config('DEFAULT/rpc_backend').with_value('rabbit') is_expected.to contain_congress_config('DEFAULT/transport_url').with_value('') is_expected.to contain_congress_config('DEFAULT/rpc_response_timeout').with_value('') is_expected.to contain_congress_config('DEFAULT/control_exchange').with_value('') @@ -57,7 +56,6 @@ describe 'congress' do end it 'configures rabbit' do - is_expected.to contain_congress_config('DEFAULT/rpc_backend').with_value('rabbit') is_expected.to contain_congress_config('oslo_messaging_rabbit/rabbit_host').with_value('rabbit') is_expected.to contain_congress_config('oslo_messaging_rabbit/rabbit_password').with_value('password').with_secret(true) is_expected.to contain_congress_config('oslo_messaging_rabbit/rabbit_port').with_value('5673') @@ -245,39 +243,31 @@ describe 'congress' do end end - context 'with amqp rpc_backend' do - let :params do - { - :rpc_backend => 'amqp' - } - end + context 'with amqp default parameters' do - context 'with default parameters' do - it 'configures amqp' do - is_expected.to contain_congress_config('oslo_messaging_amqp/server_request_prefix').with_value('') - is_expected.to contain_congress_config('oslo_messaging_amqp/broadcast_prefix').with_value('') - is_expected.to contain_congress_config('oslo_messaging_amqp/group_request_prefix').with_value('') - is_expected.to contain_congress_config('oslo_messaging_amqp/container_name').with_value('') - is_expected.to contain_congress_config('oslo_messaging_amqp/idle_timeout').with_value('') - is_expected.to contain_congress_config('oslo_messaging_amqp/trace').with_value('') - is_expected.to contain_congress_config('oslo_messaging_amqp/ssl_ca_file').with_value('') - is_expected.to contain_congress_config('oslo_messaging_amqp/ssl_cert_file').with_value('') - is_expected.to contain_congress_config('oslo_messaging_amqp/ssl_key_file').with_value('') - is_expected.to contain_congress_config('oslo_messaging_amqp/ssl_key_password').with_value('') - is_expected.to contain_congress_config('oslo_messaging_amqp/allow_insecure_clients').with_value('') - is_expected.to contain_congress_config('oslo_messaging_amqp/sasl_mechanisms').with_value('') - is_expected.to contain_congress_config('oslo_messaging_amqp/sasl_config_dir').with_value('') - is_expected.to contain_congress_config('oslo_messaging_amqp/sasl_config_name').with_value('') - is_expected.to contain_congress_config('oslo_messaging_amqp/username').with_value('') - is_expected.to contain_congress_config('oslo_messaging_amqp/password').with_value('') - end + it 'configures amqp' do + is_expected.to contain_congress_config('oslo_messaging_amqp/server_request_prefix').with_value('') + is_expected.to contain_congress_config('oslo_messaging_amqp/broadcast_prefix').with_value('') + is_expected.to contain_congress_config('oslo_messaging_amqp/group_request_prefix').with_value('') + is_expected.to contain_congress_config('oslo_messaging_amqp/container_name').with_value('') + is_expected.to contain_congress_config('oslo_messaging_amqp/idle_timeout').with_value('') + is_expected.to contain_congress_config('oslo_messaging_amqp/trace').with_value('') + is_expected.to contain_congress_config('oslo_messaging_amqp/ssl_ca_file').with_value('') + is_expected.to contain_congress_config('oslo_messaging_amqp/ssl_cert_file').with_value('') + is_expected.to contain_congress_config('oslo_messaging_amqp/ssl_key_file').with_value('') + is_expected.to contain_congress_config('oslo_messaging_amqp/ssl_key_password').with_value('') + is_expected.to contain_congress_config('oslo_messaging_amqp/allow_insecure_clients').with_value('') + is_expected.to contain_congress_config('oslo_messaging_amqp/sasl_mechanisms').with_value('') + is_expected.to contain_congress_config('oslo_messaging_amqp/sasl_config_dir').with_value('') + is_expected.to contain_congress_config('oslo_messaging_amqp/sasl_config_name').with_value('') + is_expected.to contain_congress_config('oslo_messaging_amqp/username').with_value('') + is_expected.to contain_congress_config('oslo_messaging_amqp/password').with_value('') end end context 'with overriden amqp parameters' do let :params do { - :rpc_backend => 'amqp', :amqp_idle_timeout => '60', :amqp_trace => true, :amqp_ssl_ca_file => '/etc/ca.cert',