diff --git a/heat/engine/resources/openstack/ceilometer/alarm.py b/heat/engine/resources/openstack/ceilometer/alarm.py index 80f6eeb9bf..f311e32446 100644 --- a/heat/engine/resources/openstack/ceilometer/alarm.py +++ b/heat/engine/resources/openstack/ceilometer/alarm.py @@ -261,7 +261,7 @@ class CeilometerAlarm(resource.Resource): props = self.cfn_to_ceilometer(self.stack, self.properties) props['name'] = self.physical_resource_name() - alarm = self.ceilometer().alarms.create(**props) + alarm = self.client().alarms.create(**props) self.resource_id_set(alarm.alarm_id) # the watchrule below is for backwards compatibility. @@ -280,18 +280,18 @@ class CeilometerAlarm(resource.Resource): kwargs = {'alarm_id': self.resource_id} kwargs.update(self.properties) kwargs.update(prop_diff) - alarms_client = self.ceilometer().alarms + alarms_client = self.client().alarms alarms_client.update(**self.cfn_to_ceilometer(self.stack, kwargs)) def handle_suspend(self): if self.resource_id is not None: - self.ceilometer().alarms.update(alarm_id=self.resource_id, - enabled=False) + self.client().alarms.update(alarm_id=self.resource_id, + enabled=False) def handle_resume(self): if self.resource_id is not None: - self.ceilometer().alarms.update(alarm_id=self.resource_id, - enabled=True) + self.client().alarms.update(alarm_id=self.resource_id, + enabled=True) def handle_delete(self): try: @@ -303,14 +303,14 @@ class CeilometerAlarm(resource.Resource): if self.resource_id is not None: try: - self.ceilometer().alarms.delete(self.resource_id) + self.client().alarms.delete(self.resource_id) except Exception as ex: self.client_plugin().ignore_not_found(ex) def handle_check(self): watch_name = self.physical_resource_name() watchrule.WatchRule.load(self.context, watch_name=watch_name) - self.ceilometer().alarms.get(self.resource_id) + self.client().alarms.get(self.resource_id) class BaseCeilometerAlarm(resource.Resource): @@ -321,7 +321,7 @@ class BaseCeilometerAlarm(resource.Resource): self.properties) properties['name'] = self.physical_resource_name() properties['type'] = self.ceilometer_alarm_type - alarm = self.ceilometer().alarms.create( + alarm = self.client().alarms.create( **self._reformat_properties(properties)) self.resource_id_set(alarm.alarm_id) @@ -339,26 +339,26 @@ class BaseCeilometerAlarm(resource.Resource): if prop_diff: kwargs = {'alarm_id': self.resource_id} kwargs.update(prop_diff) - alarms_client = self.ceilometer().alarms + alarms_client = self.client().alarms alarms_client.update(**self._reformat_properties( actions_to_urls(self.stack, kwargs))) def handle_suspend(self): - self.ceilometer().alarms.update( + self.client().alarms.update( alarm_id=self.resource_id, enabled=False) def handle_resume(self): - self.ceilometer().alarms.update( + self.client().alarms.update( alarm_id=self.resource_id, enabled=True) def handle_delete(self): try: - self.ceilometer().alarms.delete(self.resource_id) + self.client().alarms.delete(self.resource_id) except Exception as ex: self.client_plugin().ignore_not_found(ex) def handle_check(self): - self.ceilometer().alarms.get(self.resource_id) + self.client().alarms.get(self.resource_id) class CombinationAlarm(BaseCeilometerAlarm): diff --git a/heat/tests/ceilometer/test_ceilometer_alarm.py b/heat/tests/ceilometer/test_ceilometer_alarm.py index 64fe0fcb42..02fa94719b 100644 --- a/heat/tests/ceilometer/test_ceilometer_alarm.py +++ b/heat/tests/ceilometer/test_ceilometer_alarm.py @@ -126,9 +126,8 @@ class CeilometerAlarmTest(common.HeatTestCase): disable_rollback=True) stack.store() - self.m.StubOutWithMock(alarm.CeilometerAlarm, 'ceilometer') - alarm.CeilometerAlarm.ceilometer().MultipleTimes().AndReturn( - self.fa) + self.m.StubOutWithMock(ceilometer.CeilometerClientPlugin, '_create') + ceilometer.CeilometerClientPlugin._create().AndReturn(self.fa) al = copy.deepcopy(temp['Resources']['MEMAlarmHigh']['Properties']) al['description'] = mox.IgnoreArg() @@ -434,9 +433,9 @@ class CeilometerAlarmTest(common.HeatTestCase): snippet = template_format.parse(not_string_alarm_template) self.stack = utils.parse_stack(snippet) res = self.stack['MEMAlarmHigh'] - res.ceilometer = mock.Mock() + res.client = mock.Mock() mock_alarm = mock.Mock(enabled=True, state='ok') - res.ceilometer().alarms.get.return_value = mock_alarm + res.client().alarms.get.return_value = mock_alarm return res @mock.patch.object(alarm.watchrule.WatchRule, 'load') @@ -459,7 +458,7 @@ class CeilometerAlarmTest(common.HeatTestCase): @mock.patch.object(alarm.watchrule.WatchRule, 'load') def test_check_alarm_failure(self, mock_load): res = self._prepare_check_resource() - res.ceilometer().alarms.get.side_effect = Exception('Boom') + res.client().alarms.get.side_effect = Exception('Boom') self.assertRaises(exception.ResourceFailure, scheduler.TaskRunner(res.check)) @@ -589,9 +588,9 @@ class CombinationAlarmTest(common.HeatTestCase): snippet = template_format.parse(combination_alarm_template) self.stack = utils.parse_stack(snippet) res = self.stack['CombinAlarm'] - res.ceilometer = mock.Mock() + res.client = mock.Mock() mock_alarm = mock.Mock(enabled=True, state='ok') - res.ceilometer().alarms.get.return_value = mock_alarm + res.client().alarms.get.return_value = mock_alarm return res def test_check(self): @@ -601,7 +600,7 @@ class CombinationAlarmTest(common.HeatTestCase): def test_check_failure(self): res = self._prepare_check_resource() - res.ceilometer().alarms.get.side_effect = Exception('Boom') + res.client().alarms.get.side_effect = Exception('Boom') self.assertRaises(exception.ResourceFailure, scheduler.TaskRunner(res.check)) diff --git a/heat/tests/ceilometer/test_gnocchi_alarm.py b/heat/tests/ceilometer/test_gnocchi_alarm.py index ab09911909..de0bc58544 100644 --- a/heat/tests/ceilometer/test_gnocchi_alarm.py +++ b/heat/tests/ceilometer/test_gnocchi_alarm.py @@ -145,9 +145,9 @@ class GnocchiResourcesAlarmTest(common.HeatTestCase): snippet = template_format.parse(gnocchi_resources_alarm_template) self.stack = utils.parse_stack(snippet) res = self.stack['GnoResAlarm'] - res.ceilometer = mock.Mock() + res.client = mock.Mock() mock_alarm = mock.Mock(enabled=True, state='ok') - res.ceilometer().alarms.get.return_value = mock_alarm + res.client().alarms.get.return_value = mock_alarm return res def test_create(self): @@ -216,7 +216,7 @@ class GnocchiResourcesAlarmTest(common.HeatTestCase): def test_check_failure(self): res = self._prepare_check_resource() - res.ceilometer().alarms.get.side_effect = Exception('Boom') + res.client().alarms.get.side_effect = Exception('Boom') self.assertRaises(exception.ResourceFailure, scheduler.TaskRunner(res.check)) @@ -284,9 +284,9 @@ class GnocchiAggregationByMetricsAlarmTest(GnocchiResourcesAlarmTest): gnocchi_aggregation_by_metrics_alarm_template) self.stack = utils.parse_stack(snippet) res = self.stack['GnoAggregationByMetricsAlarm'] - res.ceilometer = mock.Mock() + res.client = mock.Mock() mock_alarm = mock.Mock(enabled=True, state='ok') - res.ceilometer().alarms.get.return_value = mock_alarm + res.client().alarms.get.return_value = mock_alarm return res @@ -349,7 +349,7 @@ class GnocchiAggregationByResourcesAlarmTest(GnocchiResourcesAlarmTest): gnocchi_aggregation_by_resources_alarm_template) self.stack = utils.parse_stack(snippet) res = self.stack['GnoAggregationByResourcesAlarm'] - res.ceilometer = mock.Mock() + res.client = mock.Mock() mock_alarm = mock.Mock(enabled=True, state='ok') - res.ceilometer().alarms.get.return_value = mock_alarm + res.client().alarms.get.return_value = mock_alarm return res