Sets repeat_action to True in OpenStack alarm creation
Alarms created in OpenStack will be configured to retrigger actions
during each evaluation cycle if they are still in alarm state.
Signed-off-by: Benjamin Diaz <bdiaz@whitestack.com>
diff --git a/osm_mon/plugins/OpenStack/Aodh/alarming.py b/osm_mon/plugins/OpenStack/Aodh/alarming.py
index 15751f2..b71700e 100644
--- a/osm_mon/plugins/OpenStack/Aodh/alarming.py
+++ b/osm_mon/plugins/OpenStack/Aodh/alarming.py
@@ -357,7 +357,8 @@
'severity': SEVERITIES[severity],
'type': 'gnocchi_resources_threshold',
'gnocchi_resources_threshold_rule': rule,
- 'alarm_actions': [cfg.OS_NOTIFIER_URI], }, sort_keys=True)
+ 'alarm_actions': [cfg.OS_NOTIFIER_URI],
+ 'repeat_actions': True}, sort_keys=True)
return payload
def get_alarm_state(self, endpoint, auth_token, alarm_id):
diff --git a/osm_mon/test/OpenStack/unit/test_alarming.py b/osm_mon/test/OpenStack/unit/test_alarming.py
index 8c3841a..7368f13 100644
--- a/osm_mon/test/OpenStack/unit/test_alarming.py
+++ b/osm_mon/test/OpenStack/unit/test_alarming.py
@@ -95,7 +95,7 @@
"granularity": "300", "metric": "disk.write.requests",
"aggregation_method": "mean", "threshold": 60,
"resource_id": "my_r_id"},
- "alarm_actions": ["http://localhost:8662"], "state": "ok", "type": "gnocchi_resources_threshold",
+ "alarm_actions": ["http://localhost:8662"], "repeat_actions": True, "state": "ok", "type": "gnocchi_resources_threshold",
"severity": "critical"}
perf_req.assert_called_with(
"alarm_endpoint/v2/alarms/", auth_token,
@@ -235,7 +235,8 @@
"severity": "low",
"state": "ok",
"type": "gnocchi_resources_threshold",
- "alarm_actions": ["http://localhost:8662"]})
+ "alarm_actions": ["http://localhost:8662"],
+ "repeat_actions": True})
@mock.patch.object(Config, "instance")
@mock.patch.object(Common, "perform_request")
@@ -264,7 +265,8 @@
"severity": "low",
"state": "alarm",
"type": "gnocchi_resources_threshold",
- "alarm_actions": ["http://localhost:8662"]})
+ "alarm_actions": ["http://localhost:8662"],
+ "repeat_actions": True})
def test_check_invalid_payload(self):
"""Test the check payload function for an invalid payload."""