diff options
Diffstat (limited to 'ceilometerclient/v2/alarms.py')
-rw-r--r-- | ceilometerclient/v2/alarms.py | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/ceilometerclient/v2/alarms.py b/ceilometerclient/v2/alarms.py index 341cbb7..694b5c0 100644 --- a/ceilometerclient/v2/alarms.py +++ b/ceilometerclient/v2/alarms.py @@ -84,6 +84,7 @@ class AlarmManager(base.Manager): return self._list(self._path(alarm_id), expect_single=True)[0] except IndexError: return None + except exc.HTTPNotFound: # When we try to get deleted alarm HTTPNotFound occurs # or when alarm doesn't exists this exception don't must @@ -156,7 +157,10 @@ class AlarmManager(base.Manager): def update(self, alarm_id, **kwargs): self._compat_legacy_alarm_kwargs(kwargs) - updated = self.get(alarm_id).to_dict() + alarm = self.get(alarm_id) + if alarm is None: + raise exc.CommandError('Alarm not found: %s' % alarm_id) + updated = alarm.to_dict() updated['time_constraints'] = self._merge_time_constraints( updated.get('time_constraints', []), kwargs) kwargs = dict((k, v) for k, v in kwargs.items() |