def main():
    args = parse_args()
    try:
        run_module = importlib.import_module(f'{args.run}')
    except ImportError:
        try:
            run_module = importlib.import_module(f'multi_sample_factory.runner.runs.{args.run}')
        except ImportError:
            log.error('Could not import the run module')
            return ExperimentStatus.FAILURE
    run_description = run_module.RUN_DESCRIPTION
    run_description.experiment_suffix = args.experiment_suffix
    if (args.runner == 'processes'):
        from multi_sample_factory.runner.run_processes import run
        run(run_description, args)
    elif (args.runner == 'slurm'):
        from multi_sample_factory.runner.run_slurm import run_slurm
        run_slurm(run_description, args)
    elif (args.runner == 'ngc'):
        from multi_sample_factory.runner.run_ngc import run_ngc
        run_ngc(run_description, args)
    return ExperimentStatus.SUCCESS
def main():
    args = parse_args()
    try:
        run_module = importlib.import_module(f'{args.run}')
    except ImportError:
        try:
            run_module = importlib.import_module(f'multi_sample_factory.runner.runs.{args.run}')
        except ImportError:
            log.error('Could not import the run module')
            return ExperimentStatus.FAILURE
    run_description = run_module.RUN_DESCRIPTION
    run_description.experiment_suffix = args.experiment_suffix
    if (args.runner == 'processes'):
        from multi_sample_factory.runner.run_processes import run
        run(run_description, args)
    elif (args.runner == 'slurm'):
        from multi_sample_factory.runner.run_slurm import run_slurm
        run_slurm(run_description, args)
    elif (args.runner == 'ngc'):
        from multi_sample_factory.runner.run_ngc import run_ngc
        run_ngc(run_description, args)
    return ExperimentStatus.SUCCESS