Use get_client when creating ceilometer client instance

The existing rally usage to get the ceilometer Client doesn't
set the SSL verify/insecure params. This fix changes it to use
get_client() to setup SSL params correctly.

Change-Id: I3811573ee9bf2ca6e35c8d363a1149e58fb22e53
Closes-bug: #1430527
This commit is contained in:
Srinivas Sakhamuri 2015-03-10 21:13:49 +00:00
parent a7c6eb9040
commit edc7e7d6ec
2 changed files with 10 additions and 9 deletions

@ -234,12 +234,13 @@ class Clients(object):
# python-ceilometerclient requires auth_token to be a callable
auth_token = lambda: kc.auth_token
client = ceilometer.Client(version,
endpoint=metering_api_url,
token=auth_token,
timeout=CONF.openstack_client_http_timeout,
insecure=CONF.https_insecure,
cacert=CONF.https_cacert)
client = ceilometer.get_client(
version,
os_endpoint=metering_api_url,
token=auth_token,
timeout=CONF.openstack_client_http_timeout,
insecure=CONF.https_insecure,
cacert=CONF.https_cacert)
return client
@cached

@ -178,7 +178,7 @@ class OSClientsTestCase(test.TestCase):
def test_ceilometer(self):
with mock.patch("rally.osclients.ceilometer") as mock_ceilometer:
fake_ceilometer = fakes.FakeCeilometerClient()
mock_ceilometer.Client = mock.MagicMock(
mock_ceilometer.get_client = mock.MagicMock(
return_value=fake_ceilometer)
self.assertNotIn("ceilometer", self.clients.cache)
client = self.clients.ceilometer()
@ -187,11 +187,11 @@ class OSClientsTestCase(test.TestCase):
service_type="metering",
endpoint_type=consts.EndpointType.PUBLIC,
region_name=self.endpoint.region_name)
kw = {"endpoint": self.service_catalog.url_for.return_value,
kw = {"os_endpoint": self.service_catalog.url_for.return_value,
"token": self.fake_keystone.auth_token,
"timeout": cfg.CONF.openstack_client_http_timeout,
"insecure": False, "cacert": None}
mock_ceilometer.Client.assert_called_once_with("2", **kw)
mock_ceilometer.get_client.assert_called_once_with("2", **kw)
self.assertEqual(fake_ceilometer,
self.clients.cache["ceilometer"])