in pbspro/src/pbspro/driver.py [0:0]
def handle_post_delete(self, nodes: List[Node]) -> List[Node]:
ret = []
for node in nodes:
if not node.hostname:
continue
try:
self.pbscmd.qmgr("list", "node", node.hostname)
except CalledProcessError as e:
if "Server has no node list" in str(e) or node.state == "Failed":
ret.append(node)
continue
logging.error(
"Could not list node with hostname %s - %s", node.hostname, e
)
continue
try:
self.pbscmd.qmgr("delete", "node", node.hostname)
node.metadata["pbs_state"] = "deleted"
ret.append(node)
except CalledProcessError as e:
logging.error(
"Could not remove %s from cluster: %s. Will retry next cycle.",
node,
e,
)
return ret