Ensure service_credentials use service_host

Ammendment to commit fa77346 to ensure service_credentials use
service_host and port. Also fix amulet tests.

Change-Id: Iccdec87b4885ab67465034577f9498f79c958dc4
Related-Bug: #1624173
This commit is contained in:
Edward Hope-Morley 2016-10-10 11:09:50 +01:00
parent 846a75bee5
commit 4d0af8bbf7
3 changed files with 41 additions and 28 deletions

View File

@ -13,9 +13,9 @@ logdir = /var/log/ceilometer
interface = internal
{% endif -%}
{% if auth_host -%}
{% if service_host -%}
[service_credentials]
os_auth_url = {{ auth_protocol }}://{{ auth_host }}:{{ auth_port }}/v2.0
os_auth_url = {{ service_protocol }}://{{ service_host }}:{{ service_port }}/v2.0
os_tenant_name = {{ admin_tenant_name }}
os_username = {{ admin_user }}
os_password = {{ admin_password }}

View File

@ -13,14 +13,14 @@ logdir = /var/log/ceilometer
interface = internal
{% endif -%}
{% if auth_host -%}
{% if service_host -%}
[service_credentials]
auth_url = {{ auth_protocol }}://{{ auth_host }}:{{ auth_port }}
auth_url = {{ service_protocol }}://{{ service_host }}:{{ service_port }}
project_name = {{ admin_tenant_name }}
username = {{ admin_user }}
password = {{ admin_password }}
project_domain_id = default
user_domain_id = default
project_domain_name = default
user_domain_name = default
auth_type = password
{% endif -%}

View File

@ -485,37 +485,50 @@ class CeiloAgentBasicDeployment(OpenStackAmuletDeployment):
def test_300_ceilometer_config(self):
"""Verify the data in the ceilometer config file."""
u.log.debug('Checking ceilometer config file data...')
unit = self.ceil_sentry
unit = self.ceil_agent_sentry
ks_rel = self.keystone_sentry.relation('identity-service',
'ceilometer:identity-service')
auth_uri = '%s://%s:%s/' % (ks_rel['service_protocol'],
ks_rel['service_host'],
ks_rel['service_port'])
db_relation = self.mongodb_sentry.relation('database',
'ceilometer:shared-db')
db_conn = 'mongodb://%s:%s/ceilometer' % (db_relation['hostname'],
db_relation['port'])
conf = '/etc/ceilometer/ceilometer.conf'
expected = {
'DEFAULT': {
'verbose': 'False',
'debug': 'False',
'use_syslog': 'False',
},
'api': {
'port': '8767',
},
'service_credentials': {
'os_auth_url': auth_uri + 'v2.0',
'os_tenant_name': 'services',
'os_username': 'ceilometer',
'os_password': ks_rel['service_password'],
},
'database': {
'connection': db_conn,
},
}
}
if self._get_openstack_release() < self.trusty_mitaka:
expected['DEFAULT'].update({'rabbit_userid': 'ceilometer',
'rabbit_virtual_host': 'openstack',
'rabbit_password': u.not_null,
'rabbit_host': u.valid_ip})
auth_uri = '%s://%s:%s/v2.0' % (ks_rel['service_protocol'],
ks_rel['service_host'],
ks_rel['service_port'])
expected['service_credentials'] = {'os_auth_url': auth_uri,
'os_tenant_name': 'services',
'os_username': 'ceilometer',
'os_password':
ks_rel['service_password']}
else:
expected['oslo_messaging_rabbit'] = {'rabbit_userid': 'ceilometer',
'rabbit_virtual_host':
'openstack',
'rabbit_password': u.not_null,
'rabbit_host': u.valid_ip}
auth_uri = '%s://%s:%s' % (ks_rel['service_protocol'],
ks_rel['service_host'],
ks_rel['service_port'])
# NOTE(dosaboy): os_ prefix is deprecated and no longer used as
# of Mitaka.
expected['service_credentials'] = {'auth_url': auth_uri,
'project_name': 'services',
'project_domain_name':
'default',
'user_domain_name': 'default',
'username': 'ceilometer',
'password':
ks_rel['service_password']}
for section, pairs in expected.iteritems():
ret = u.validate_config_data(unit, conf, section, pairs)
if ret: