('watch rule removed?', str(ex)))
return
- def run_alarm_action(actions):
+ def run_alarm_action(actions, details):
for action in actions:
- action()
+ action(details=details)
stk = parser.Stack.load(stack_context, stack=stack)
for res in stk:
rule = watchrule.WatchRule.load(stack_context, watch=wr)
actions = rule.evaluate()
if actions:
- self._start_in_thread(sid, run_alarm_action, actions)
+ self._start_in_thread(sid, run_alarm_action, actions,
+ rule.get_details())
@request_context
def create_watch_data(self, cnxt, watch_name, stats_data):
return []
return self.run_rule()
+ def get_details(self):
+ return {'alarm': self.name,
+ 'state': self.state}
+
def run_rule(self):
new_state = self.get_alarm_state()
actions = self.rule_actions(new_state)
if (stack.action != stack.DELETE
and stack.status == stack.COMPLETE):
for a in self.rule[self.ACTION_MAP[new_state]]:
- actions.append(stack[a].alarm)
+ actions.append(stack[a].signal)
else:
logger.warning("Could not process watch state %s for stack" %
new_state)
self.m.ReplayAll()
up_policy = self.create_scaling_policy(t, stack,
'WebServerScaleUpPolicy')
- up_policy.alarm()
+ up_policy.signal()
self.assertEqual('WebServerGroup-0,WebServerGroup-1',
rsrc.resource_id)
self.m.ReplayAll()
down_policy = self.create_scaling_policy(t, stack,
'WebServerScaleDownPolicy')
- down_policy.alarm()
+ down_policy.signal()
self.assertEqual('WebServerGroup-0', rsrc.resource_id)
rsrc.delete()
self.m.ReplayAll()
up_policy = self.create_scaling_policy(t, stack,
'WebServerScaleUpPolicy')
- up_policy.alarm()
+ up_policy.signal()
self.assertEqual('WebServerGroup-0,WebServerGroup-1',
rsrc.resource_id)
).AndReturn(previous_meta)
self.m.ReplayAll()
- up_policy.alarm()
+ up_policy.signal()
self.assertEqual('WebServerGroup-0,WebServerGroup-1',
rsrc.resource_id)
self.m.ReplayAll()
up_policy = self.create_scaling_policy(t, stack,
'WebServerScaleUpPolicy')
- up_policy.alarm()
+ up_policy.signal()
self.assertEqual('WebServerGroup-0,WebServerGroup-1',
rsrc.resource_id)
self._stub_create(1)
self.m.ReplayAll()
- up_policy.alarm()
+ up_policy.signal()
self.assertEqual('WebServerGroup-0,WebServerGroup-1,WebServerGroup-2',
rsrc.resource_id)
self.m.ReplayAll()
up_policy = self.create_scaling_policy(t, stack,
'WebServerScaleUpPolicy')
- up_policy.alarm()
+ up_policy.signal()
self.assertEqual('WebServerGroup-0,WebServerGroup-1',
rsrc.resource_id)
self._stub_create(1)
self.m.ReplayAll()
- up_policy.alarm()
+ up_policy.signal()
self.assertEqual('WebServerGroup-0,WebServerGroup-1,WebServerGroup-2',
rsrc.resource_id)
self.m.ReplayAll()
up_policy = self.create_scaling_policy(t, stack,
'WebServerScaleUpPolicy')
- up_policy.alarm()
+ up_policy.signal()
self.assertEqual('WebServerGroup-0,WebServerGroup-1',
rsrc.resource_id)
self._stub_create(1)
self.m.ReplayAll()
- up_policy.alarm()
+ up_policy.signal()
self.assertEqual('WebServerGroup-0,WebServerGroup-1,WebServerGroup-2',
rsrc.resource_id)
self.m.ReplayAll()
# Trigger alarm
- up_policy.alarm()
+ up_policy.signal()
self.assertEqual('WebServerGroup-0,WebServerGroup-1',
rsrc.resource_id)
self.m.ReplayAll()
# Trigger alarm
- up_policy.alarm()
+ up_policy.signal()
self.assertEqual('WebServerGroup-0,WebServerGroup-1,'
'WebServerGroup-2,WebServerGroup-3',
rsrc.resource_id)
self.wr.store()
class DummyAction(object):
- alarm = "dummyfoo"
+ signal = "dummyfoo"
dummy_action = DummyAction()
self.m.StubOutWithMock(parser.Stack, '__getitem__')
watch_name="OverrideAlarm",
state=state)
self.assertEqual(state, result[engine_api.WATCH_STATE_VALUE])
- self.assertEqual([DummyAction.alarm],
+ self.assertEqual([DummyAction.signal],
self.eng.stg[self.stack.id].threads)
self.m.VerifyAll()