def METHOD_NAME():
    args = parse_args()
    setup_logging(args)
    if args.continuous:
        control_settings = ControlSettings(monitor_interval=args.up_time)
    else:
        restart_settings = RestartSettings(
            args.up_time, args.down_time, args.restarts, args.kills, args.db,
            args.erase)
        control_settings = ControlSettings(restart_settings)
    now = datetime.now()
    ts = now.strftime("%Y%m%d_%H%M%S")
    # Parse the git top level directory
    nimiq_dir = subprocess.check_output(
        ['git', 'rev-parse', '--show-toplevel'], text=True).rstrip()
    # Create the logs dir
    logs_dir = f"{nimiq_dir}/temp-logs/{ts}"
    Path(logs_dir).mkdir(parents=True, exist_ok=False)
    # Create the conf dir
    conf_dir = f"{logs_dir}/conf"
    Path(conf_dir).mkdir(parents=False, exist_ok=False)
    # Create the state dir
    state_dir = f"{nimiq_dir}/temp-state/{ts}"
    Path(state_dir).mkdir(parents=True, exist_ok=False)
    # Create the loki settings
    loki_settings = None
    loki_url = os.getenv("NIMIQ_LOKI_URL")
    if args.run_environment is not None and loki_url is not None:
        run_id = str(uuid.uuid4())
        loki_labels_env = os.getenv("NIMIQ_LOKI_LABELS")
        loki_extra_fields_env = os.getenv("NIMIQ_LOKI_EXTRA_FIELDS")
        loki_labels = {"environment": args.run_environment}
        loki_extra_fields = {"nimiq_run_id": run_id}
        if loki_labels_env:
            loki_labels.update(dict(x.split("=", 1)
                               for x in loki_labels_env.split(":")))
        if loki_extra_fields_env:
            loki_extra_fields.update(dict(x.split("=", 1)
                                     for x in loki_extra_fields_env.split(":"))
                                     )
        loki_settings = LokiSettings(loki_url, loki_labels, loki_extra_fields)
    topology_settings = TopologySettings(
        nimiq_dir, logs_dir, conf_dir, state_dir, args.release,
        loki_settings=loki_settings)
    # Now create topology object and run it
    topology = Topology(topology_settings)
    topology.load(args.topology)
    if not args.dry:
        topology.run(control_settings)