From b958214db832b5ee8849017efa18e7aca4007bd1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vincent=20Fran=C3=A7oise?= Date: Thu, 11 Feb 2016 18:26:44 +0100 Subject: [PATCH] Ceilometer client instantiation fixup A problem was found during manual integration tests which were failing because we couldn't instantiate the ceilometer client when trying to execute an action plan using the 'basic_consolidation' strategy. This patchset fixes the problem with an update of the related tests Change-Id: I2b1f1dcc16fd8dfbf508c4d5661c1fce194254e4 Closes-Bug: #1544652 --- watcher/common/clients.py | 4 ++-- watcher/tests/common/test_clients.py | 3 +++ 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/watcher/common/clients.py b/watcher/common/clients.py index 1b0189ed8..4865d3d5c 100644 --- a/watcher/common/clients.py +++ b/watcher/common/clients.py @@ -141,8 +141,8 @@ class OpenStackClients(object): ceilometerclient_version = self._get_client_option('ceilometer', 'api_version') - self._ceilometer = ceclient.Client(ceilometerclient_version, - session=self.session) + self._ceilometer = ceclient.get_client(ceilometerclient_version, + session=self.session) return self._ceilometer @exception.wrap_keystone_exception diff --git a/watcher/tests/common/test_clients.py b/watcher/tests/common/test_clients.py index 82a394c3d..78b2a9006 100644 --- a/watcher/tests/common/test_clients.py +++ b/watcher/tests/common/test_clients.py @@ -187,6 +187,7 @@ class TestClients(base.BaseTestCase): osc.ceilometer() mock_call.assert_called_once_with( cfg.CONF.ceilometer_client.api_version, + None, session=mock_session) @mock.patch.object(clients.OpenStackClients, 'session') @@ -194,6 +195,7 @@ class TestClients(base.BaseTestCase): def test_clients_ceilometer_diff_vers(self, mock_get_alarm_client, mock_session): '''ceilometerclient currently only has one version (v2)''' + mock_get_alarm_client.return_value = [mock.Mock(), mock.Mock()] cfg.CONF.set_override('api_version', '2', group='ceilometer_client') osc = clients.OpenStackClients() @@ -206,6 +208,7 @@ class TestClients(base.BaseTestCase): @mock.patch.object(ceclient_v2.Client, '_get_alarm_client') def test_clients_ceilometer_cached(self, mock_get_alarm_client, mock_session): + mock_get_alarm_client.return_value = [mock.Mock(), mock.Mock()] osc = clients.OpenStackClients() osc._ceilometer = None ceilometer = osc.ceilometer()