in hostfactory/host_provider/src/cyclecloud_provider.py [0:0]
def _retry_termination_requests(self):
with self.terminate_json as terminate_requests:
machines_to_terminate = []
try:
for termination_id in terminate_requests:
termination = terminate_requests[termination_id]
if not termination.get("terminated"):
for machine_id, name in termination["machines"].items():
machines_to_terminate.append({"machineId": machine_id, "name": name})
if machines_to_terminate:
logger.info("Attempting termination of nodes %s", machines_to_terminate)
self.cluster.shutdown_nodes(machines_to_terminate)
for termination_id in terminate_requests:
termination = terminate_requests[termination_id]
termination["terminated"] = True
termination["lastUpdateTime"] = calendar.timegm(self.clock())
except Exception:
logger.exception("Could not terminate nodes with ids %s. Will retry", machines_to_terminate)