It protects vs exceptions raised by shade when cleaning stacks.
Traceback (most recent call last):
File "/usr/lib/python2.7/site-packages/functest/opnfv_tests/vnf/ims/heat_ims.py", line 226, in clean
self.cloud.delete_stack(self.stack.id, wait=True)
File "/usr/lib/python2.7/site-packages/shade/openstackcloud.py", line 1416, in delete_stack
marker=marker)
File "/usr/lib/python2.7/site-packages/shade/_heat/event_utils.py", line 90, in poll_for_events
stack_status = stack['stack_status']
TypeError: 'NoneType' object has no attribute '__getitem__'
Change-Id: I1a0ed0cd669d5234ca1ff3b6bbc9d1b13f14b02f
Signed-off-by: Cédric Ollivier <cedric.ollivier@orange.com>
try:
if self.stack:
self.cloud.delete_stack(self.stack.id, wait=True)
try:
if self.stack:
self.cloud.delete_stack(self.stack.id, wait=True)
+ except TypeError:
+ # shade raises TypeError exceptions when checking stack status
+ pass
except Exception: # pylint: disable=broad-except
self.__logger.exception("Cannot clean stack ressources")
super(HeatIms, self).clean()
except Exception: # pylint: disable=broad-except
self.__logger.exception("Cannot clean stack ressources")
super(HeatIms, self).clean()