Use get_password method to obtain qpid password

Currently, qpid's password is stored in an attribute in the common
cookbook.  This change causes the password to be looked up via
get_password method, which is how we obtain the rabbitmq password.

Change-Id: I7afe9a0a069c6527ced4df7f094c31c1ca4acec4
Implements: blueprint use-data-bag-for-qpid-password
This commit is contained in:
Matt Thompson 2014-03-06 11:11:13 +00:00
parent bad82e472a
commit 45fc85eef1
4 changed files with 17 additions and 11 deletions

View File

@ -33,8 +33,12 @@ platform['common_packages'].each do |pkg|
package pkg
end
if node['openstack']['mq']['metering']['service_type'] == 'rabbitmq'
rabbit_pass = get_password 'user', node['openstack']['mq']['metering']['rabbit']['userid']
mq_service_type = node['openstack']['mq']['metering']['service_type']
if mq_service_type == 'rabbitmq'
mq_password = get_password 'user', node['openstack']['mq']['metering']['rabbit']['userid']
elsif mq_service_type == 'qpid'
mq_password = get_password 'user', node['openstack']['mq']['metering']['qpid']['username']
end
db_user = node['openstack']['db']['metering']['username']
@ -73,7 +77,8 @@ template node['openstack']['metering']['conf'] do
image_endpoint: image_endpoint,
identity_endpoint: identity_endpoint,
identity_admin_endpoint: identity_admin_endpoint,
rabbit_pass: rabbit_pass,
mq_service_type: mq_service_type,
mq_password: mq_password,
service_pass: service_pass,
service_tenant_name: service_tenant,
service_user: service_user

View File

@ -42,7 +42,7 @@ describe 'openstack-metering::common' do
context 'with rabbitmq default' do
[/^rabbit_userid = guest$/,
/^rabbit_password = rabbit-pass$/,
/^rabbit_password = mq-pass$/,
/^rabbit_port = 5672$/,
/^rabbit_host = 127.0.0.1$/,
/^rabbit_virtual_host = \/$/,
@ -61,13 +61,14 @@ describe 'openstack-metering::common' do
context 'with qpid enabled' do
before do
@chef_run.node.set['openstack']['mq']['metering']['service_type'] = 'qpid'
@chef_run.node.set['openstack']['mq']['metering']['qpid']['username'] = 'guest'
@chef_run.converge 'openstack-metering::common'
end
[/^qpid_hostname=127.0.0.1$/,
/^qpid_port=5672$/,
/^qpid_username=$/,
/^qpid_password=$/,
/^qpid_username=guest$/,
/^qpid_password=mq-pass$/,
/^qpid_sasl_mechanisms=$/,
/^qpid_reconnect=true$/,
/^qpid_reconnect_timeout=0$/,

View File

@ -31,7 +31,7 @@ def metering_stubs # rubocop:disable MethodLength
.and_return('')
::Chef::Recipe.any_instance.stub(:get_password)
.with('user', 'guest')
.and_return('rabbit-pass')
.and_return('mq-pass')
::Chef::Recipe.any_instance.stub(:secret)
.with('secrets', 'openstack_identity_bootstrap_token')
.and_return('bootstrap-token')

View File

@ -15,10 +15,10 @@ log_config = /etc/openstack/logging.conf
<% end %>
notification_topics = notifications,glance_notifications
<% if node["openstack"]["mq"]["metering"]["service_type"] == "rabbitmq" %>
<% if @mq_service_type == "rabbitmq" %>
##### RABBITMQ #####
rabbit_userid = <%= node["openstack"]["mq"]["metering"]["rabbit"]["userid"] %>
rabbit_password = <%= @rabbit_pass %>
rabbit_password = <%= @mq_password %>
rabbit_port = <%= node["openstack"]["mq"]["metering"]["rabbit"]["port"] %>
rabbit_host = <%= node["openstack"]["mq"]["metering"]["rabbit"]["host"] %>
rabbit_virtual_host = <%= node["openstack"]["mq"]["metering"]["rabbit"]["vhost"] %>
@ -27,13 +27,13 @@ rpc_backend = ceilometer.openstack.common.rpc.impl_kombu
<% end %>
<% if node["openstack"]["mq"]["metering"]["service_type"] == "qpid" %>
<% if @mq_service_type == "qpid" %>
##### QPID #####
rpc_backend=ceilometer.openstack.common.rpc.impl_qpid
qpid_hostname=<%= node["openstack"]["mq"]["metering"]["qpid"]["host"] %>
qpid_port=<%= node["openstack"]["mq"]["metering"]["qpid"]["port"] %>
qpid_password=<%= node["openstack"]["mq"]["metering"]["qpid"]["password"] %>
qpid_password=<%= @mq_password %>
qpid_username=<%= node["openstack"]["mq"]["metering"]["qpid"]["username"] %>
qpid_sasl_mechanisms=<%= node["openstack"]["mq"]["metering"]["qpid"]["sasl_mechanisms"] %>
qpid_reconnect=<%= node["openstack"]["mq"]["metering"]["qpid"]["reconnect"] %>