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)