def collect_handler()

in src/hpcadvisor/__main__.py [0:0]


def collect_handler(args):
    name = args.name
    userinput_file = args.userinput
    cleardeployment = args.cleardeployment
    cleartasks = args.cleartasks
    keeppools = args.keeppools
    reusepools = args.reusepools

    from hpcadvisor import main_cli, utils
    from hpcadvisor.task_selection_policy import get_policy_class

    userinput = utils.get_userinput_from_file(userinput_file)

    if "taskselector" in userinput:
        policy_name = userinput["taskselector"].get("policy", "sequential")
        paralleltasks = userinput["taskselector"].get("paralleltasks", 1)
        selector_config = {"paralleltasks": paralleltasks}
        policy = get_policy_class(policy_name, selector_config)
    else:
        policy = None

    collector_config = {
        "cleardeployment": cleardeployment,
        "cleartasks": cleartasks,
        "keeppools": keeppools,
        "reusepools": reusepools,
        "policy": policy,
    }

    main_cli.main_collect_data(name, userinput_file, collector_config)