Tolerate temporary Heat API issues

Closes-Bug: PROD-36050
Change-Id: I11cc2dc43971ba634cf1725f021ec6462846177e
diff --git a/tcp_tests/managers/envmanager_heat.py b/tcp_tests/managers/envmanager_heat.py
index 30c4850..1d5c852 100644
--- a/tcp_tests/managers/envmanager_heat.py
+++ b/tcp_tests/managers/envmanager_heat.py
@@ -345,6 +345,16 @@
                 if wait_for_delete is True:
                     return
                 raise ex
+            except heat_exceptions.HTTPException as ex:
+                # tolerate HTTP timeouts from Heat
+                if ex.code == 504:
+                    raise exceptions.EnvironmentWrongStatus(
+                        self.__config.hardware.heat_stack_name,
+                        status,
+                        "Heat API Temporary Unavailable"
+                    )
+                else:
+                    raise ex
             if st == status:
                 return
             elif st in BAD_STACK_STATUSES: