def configure_node_resources_scalelib()

in hostfactory/host_provider/src/cluster.py [0:0]


    def configure_node_resources_scalelib(self, use_weighted_templates=False, vm_types=None):
        if not vm_types:
            vm_types = {}

        # if true, do new slot based allocation with weighting
        # if false, use vm_size/node based allocation
        if use_weighted_templates:
            self.logger.debug("Using weighted templates")
            self.node_mgr.add_default_resource(selection={}, resource_name="template_id", default_value="node.nodearray")
            self.logger.debug("Current weightings: %s", ", ".join([f"{x}={y}" for x,y in vm_types.items()]))
            for vm_size, weight in vm_types.items():
                self.node_mgr.add_default_resource(selection={"node.vm_size": vm_size},
                                                   resource_name="weight",
                                                   default_value=weight)
        else:    
            self.node_mgr.add_default_resource(selection={}, resource_name="template_id", 
                                               default_value=lambda node: "{node.nodearray + node.vm_size.replace('_', '')}".lower())
            self.node_mgr.add_default_resource(selection={}, resource_name="weight", default_value=1)