def _set_ice_compute_resources_to_down()

in src/slurm_plugin/clustermgtd.py [0:0]


    def _set_ice_compute_resources_to_down(self, compute_resource_nodes_map: Dict[str, Dict[str, List[SlurmNode]]]):
        """Set powered_down nodes which belong to insufficient capacity compute resources to down."""
        if not self._insufficient_capacity_compute_resources:
            return
        nodes_to_down = {}
        for queue_name, compute_resources in self._insufficient_capacity_compute_resources.items():
            for compute_resource, event in compute_resources.items():
                nodes = compute_resource_nodes_map.get(queue_name, {}).get(compute_resource, [])
                for node in nodes:
                    if node.is_power() and not node.is_nodeaddr_set():
                        error_code = event.error_code
                        nodes_to_down.setdefault(error_code, []).append(node.name)
        if nodes_to_down:
            for error_code, node_list in nodes_to_down.items():
                set_nodes_down(
                    node_list,
                    reason=f"(Code:{error_code})Temporarily disabling node due to insufficient capacity",
                )