in src/slurm_plugin/clustermgtd.py [0:0]
def _update_static_nodes_in_replacement(self, slurm_nodes):
"""Update self.static_nodes_in_replacement by removing nodes that finished replacement and is up."""
nodename_to_slurm_nodes_map = {node.name: node for node in slurm_nodes}
nodes_still_in_replacement = set()
for nodename in self._static_nodes_in_replacement:
node = nodename_to_slurm_nodes_map.get(nodename)
# Remove nodename from static_nodes_in_replacement if node is no longer an active node or node is up
if node and not node.is_up():
nodes_still_in_replacement.add(nodename)
self._static_nodes_in_replacement = nodes_still_in_replacement
for node in slurm_nodes:
node.is_static_nodes_in_replacement = node.name in self._static_nodes_in_replacement
node._is_being_replaced = self._is_node_being_replaced(node)
node._is_replacement_timeout = self._is_node_replacement_timeout(node)