From 1ebc77bc04cac3ceb889a889e2266adaaccc5b06 Mon Sep 17 00:00:00 2001 From: Zane Bitter Date: Mon, 12 Aug 2013 11:12:33 +0200 Subject: [PATCH] Fail fast if Resource action methods are missing If a resource is not actually a Resource with create(), delete() &c. methods then something has gone horribly, horribly wrong. This is not a priority for handling gracefully at runtime. Change-Id: Iafce8e4a222677fc590bb579654e195dc4252a9e --- heat/engine/parser.py | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) diff --git a/heat/engine/parser.py b/heat/engine/parser.py index 8d29dfe4..5cebd4dc 100644 --- a/heat/engine/parser.py +++ b/heat/engine/parser.py @@ -333,13 +333,9 @@ class Stack(object): def resource_action(r): # Find e.g resource.create and call it action_l = action.lower() - handle = getattr(r, '%s' % action_l, None) - if callable(handle): - return handle() - else: - raise exception.ResourceFailure( - AttributeError(_('Resource action %s not found') % - action_l), r) + handle = getattr(r, '%s' % action_l) + + return handle() action_task = scheduler.DependencyTaskGroup(self.dependencies, resource_action, -- 2.45.2