From f16a0f64a3454145d22ce794054879edfd53a8ef Mon Sep 17 00:00:00 2001 From: Clint Byrum Date: Fri, 4 Jul 2014 10:18:51 -0700 Subject: [PATCH] Revert "Update waitcondition API to use signal RPC interface" This reverts commit f2f2697c9d8f926869f93f34c0a6df0df7cba20a. This and/or the previous commit are causing Metadata to return blank after signals are processed. Change-Id: I1c8b3f18e63d9c74b00b27fc32c5d5746faa8235 Partial-Bug: #1337772 --- heat/api/cfn/v1/__init__.py | 2 +- heat/api/cfn/v1/signal.py | 14 ++++++++++++++ 2 files changed, 15 insertions(+), 1 deletion(-) diff --git a/heat/api/cfn/v1/__init__.py b/heat/api/cfn/v1/__init__.py index 96007a5dac..83582f1529 100644 --- a/heat/api/cfn/v1/__init__.py +++ b/heat/api/cfn/v1/__init__.py @@ -72,7 +72,7 @@ class API(wsgi.Router): signal_controller = signal.create_resource(conf) mapper.connect('/waitcondition/{arn:.*}', controller=signal_controller, - action='signal', + action='update_waitcondition', conditions=dict(method=['PUT'])) mapper.connect('/signal/{arn:.*}', controller=signal_controller, diff --git a/heat/api/cfn/v1/signal.py b/heat/api/cfn/v1/signal.py index eda8572810..a83b475171 100644 --- a/heat/api/cfn/v1/signal.py +++ b/heat/api/cfn/v1/signal.py @@ -22,6 +22,20 @@ class SignalController(object): self.options = options self.rpc_client = rpc_client.EngineClient() + def update_waitcondition(self, req, body, arn): + con = req.context + identity = identifier.ResourceIdentifier.from_arn(arn) + try: + md = self.rpc_client.metadata_update( + con, + stack_identity=dict(identity.stack()), + resource_name=identity.resource_name, + metadata=body) + except Exception as ex: + return exception.map_remote_error(ex) + + return {'resource': identity.resource_name, 'metadata': md} + def signal(self, req, arn, body=None): con = req.context identity = identifier.ResourceIdentifier.from_arn(arn)