From 75aa8b12d2811f9083e3448a97efdfb586293ea5 Mon Sep 17 00:00:00 2001 From: Zane Bitter Date: Fri, 7 Jul 2017 18:44:13 -0400 Subject: [PATCH] Fix ResourceActionNotSupported errors in log In 37ef66970510972af54ce6835ec234f3e30a0a88 (in Kilo) we made signalling a resource asynchronous because things like e.g. scaling an autoscaling group were too slow to do synchronously (bug 1394095). However, for resources that don't have a handle_signal() method at all, this means that if a signal other than one handled by Heat (e.g. to clear a hook) is received then the user won't be notified of the error. There will instead be an error message in the logs warning of an unhandled exception in a thread. (Previously, similar problems occurred if the user was attempting to clear a hook and some error occurred. This has since been fixed as bug 1472515, in Liberty.) If there's no handle_signal() method defined, then calling Resource.signal() is quick (i.e. it's only going to clear a hook, or raise an error). So handle this case synchronously. This ensures that any error is reported to the user and not in the log. Change-Id: I917b4c7d4ab2cde46148197a3a232d5dc70f63d7 Related-Bug: #1472515 --- api/gabbits/resources.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/api/gabbits/resources.yaml b/api/gabbits/resources.yaml index 164f4cb..41da444 100644 --- a/api/gabbits/resources.yaml +++ b/api/gabbits/resources.yaml @@ -82,7 +82,7 @@ tests: - name: signal resource POST: $LAST_URL/signal - status: 200 + status: 400 - name: delete stack with resources DELETE: /stacks/$ENVIRON['PREFIX']-rsrcstack