Skip to content

Commit c70e8e3

Browse files
authored
Merge pull request #34 from dkorn/create_group_dampening
Add support for creating group trigger dampenings in Hawkular Alerts
2 parents bbe6b32 + 2f62dd5 commit c70e8e3

2 files changed

Lines changed: 21 additions & 0 deletions

File tree

hawkular/alerts.py

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -206,3 +206,13 @@ def list_dampenings(self, trigger_id):
206206
url = self._service_url(['triggers', trigger_id, 'dampenings'])
207207
data = self._get(url)
208208
return Dampening.list_to_object_list(data)
209+
210+
def create_group_dampening(self, group_id, dampening):
211+
"""
212+
Create a new group dampening
213+
:param group_id: Group Trigger id attached to dampening
214+
:return: Group Dampening created
215+
"""
216+
data = self._serialize_object(dampening)
217+
url = self._service_url(['triggers', 'groups', group_id, 'dampenings'])
218+
return Dampening(self._post(url, data))

tests/test_alerts.py

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -216,6 +216,11 @@ def test_create_groups(self):
216216
m1.member_name = 'Member One'
217217
m1.data_id_map = {'my-metric-id': 'my-metric-id-member1'}
218218

219+
dampening = Dampening()
220+
dampening.dampening_id = 'a-group-dampening'
221+
dampening.trigger_mode = TriggerMode.FIRING
222+
dampening.type = DampeningType.STRICT
223+
219224
tc = self.client.create_group_trigger(t)
220225
self.assertEqual(tc.type, TriggerType.GROUP)
221226
gcc = self.client.create_group_conditions(t.id, TriggerMode.FIRING, gc)
@@ -225,6 +230,12 @@ def test_create_groups(self):
225230
gm = self.client.get_group_members('a-group-trigger')
226231
self.assertEqual(len(gm), 1)
227232
self.assertEqual(gm[0].id, 'member1')
233+
self.client.create_group_dampening('a-group-trigger', dampening)
234+
gt = self.client.get_trigger('a-group-trigger', full=True)
235+
gd = gt.dampenings
236+
self.assertEqual(len(gd), 1)
237+
self.assertEqual(gd[0].trigger_mode, 'FIRING')
238+
self.assertEqual(gd[0].type, 'STRICT')
228239

229240
# Update group trigger
230241
t.enabled = True

0 commit comments

Comments
 (0)