code: def main(args):
      """Build experiment and execute hunt command"""
      args["root"] = None
      args["leafs"] = []
      # TODO: simplify when parameter parsing is refactored
      experiment = experiment_builder.build_from_args(args)
  
      if args["init_only"]:
          return
  
      config = experiment_builder.get_cmd_config(args)
      worker_config = orion.core.config.worker.to_dict()
      if config.get("worker"):
          worker_config.update(config.get("worker"))
  
      # If EVC is not enabled, we force Consumer to ignore code changes.
      if not config["branching"].get(
          "enable", orion.core.config.evc.enable
      ):
          ignore_code_changes = True
      else:
          ignore_code_changes = config["branching"].get(
              "ignore_code_changes"
          )
  
      with sigterm_as_interrupt():
          workon(
              experiment,
              ignore_code_changes=ignore_code_changes,
              **worker_config,
          )
  
file_path: orion/src/orion/core/cli/hunt.py
imports: from __future__ import annotations
  import logging
  import orion.core
  from orion.client.experiment import ExperimentClient
  from orion.core.cli import base
  from orion.core.cli import evc
  from orion.core.io import experiment_builder
  from orion.core.utils import sigterm_as_interrupt
  from orion.core.utils.exceptions import BrokenExperiment, InexecutableUserScript, MissingResultFile
  from orion.core.utils.format_terminal import format_stats
  from orion.core.worker.consumer import Consumer
label_desc: Use image node_id 4 for calling a global function with example usage: main(args) without return types