From: Zane Bitter Date: Fri, 13 Apr 2012 15:58:23 +0000 (+0200) Subject: Allow listing of all events X-Git-Tag: 2014.1~2025 X-Git-Url: https://review.fuel-infra.org/gitweb?a=commitdiff_plain;h=5c69b6087aa647260dcb87a2ed3936f9eb7b6a47;p=openstack-build%2Fheat-build.git Allow listing of all events Make filtering by StackName optional. Signed-off-by: Zane Bitter --- diff --git a/bin/heat b/bin/heat index f33a81f1..381f63e0 100755 --- a/bin/heat +++ b/bin/heat @@ -201,9 +201,7 @@ def stack_events_list(options, arguments): try: parameters['StackName'] = arguments.pop(0) except IndexError: - print "Please specify the stack name " - print "as the first argument" - return FAILURE + pass c = get_client(options) result = c.list_stack_events(**parameters) diff --git a/heat/api/v1/stacks.py b/heat/api/v1/stacks.py index af46670d..af2023b4 100644 --- a/heat/api/v1/stacks.py +++ b/heat/api/v1/stacks.py @@ -175,9 +175,10 @@ class StackController(object): Returns the following information for all stacks: """ con = context.get_admin_context() + stack_name = req.params.get('StackName', None) stack_list = rpc.call(con, 'engine', {'method': 'list_events', - 'args': {'stack_name': req.params['StackName']}}) + 'args': {'stack_name': stack_name}}) res = {'DescribeStackEventsResult': {'StackEvents': [] } } summaries = res['DescribeStackEventsResult']['StackEvents'] diff --git a/heat/engine/manager.py b/heat/engine/manager.py index 9ea41612..d3f81d25 100644 --- a/heat/engine/manager.py +++ b/heat/engine/manager.py @@ -123,8 +123,12 @@ class EngineManager(manager.Manager): return None def list_events(self, context, stack_name): - st = db_api.stack_get(None, stack_name) - events = db_api.event_get_all_by_stack(None, st.id) + if stack_name is not None: + st = db_api.stack_get(None, stack_name) + events = db_api.event_get_all_by_stack(None, st.id) + else: + events = db_api.event_get_all(None) + def parse_event(e): s = e.stack # TODO Missing LogicalResourceId, PhysicalResourceId, ResourceType,