import json
[docs]
def add_main_arguments(parser):
parser.add_argument(
"FILES",
nargs="*",
help="Bliss data filenames or EWOKS .json files",
default=[""],
)
parser.add_argument(
"-d",
"--detector",
dest="detectors",
nargs="+",
help="Name of the Lima detector which data to process",
default=None,
)
parser.add_argument(
"-n",
"--scan",
dest="scans",
nargs="+",
help="Number of scan to process",
default=None,
)
parser.add_argument(
"--subscan",
dest="subscans",
help="Number of subscan to process. Default is 1",
default=None,
)
parser.add_argument(
"-t",
"--tag",
dest="tag",
help="Tag to add to the external output filename and nexus process name",
default=None,
type=str,
)
parser.add_argument(
"-o",
"--output",
dest="output_filename",
help="Output filename where the integrated data is linked",
)
parser.add_argument(
"-f",
"--external",
dest="external_output_filename",
help="External output filename where the integrated data is stored",
)
parser.add_argument(
"--r",
"--output-root",
dest="output_root",
help="Root directory for the output files",
default=None,
)
parser.add_argument(
"--unique",
dest="save_separate_files",
action="store_false",
help="Save every processed scan in the same file",
default=None,
)
[docs]
def add_celery_parameters(parser):
parser.add_argument(
"-q",
"--queue",
dest="queue",
default=None,
help="Name of worker queue to submit the job",
)
parser.add_argument(
"--local",
dest="local_execution",
action="store_true",
help="Run the job locally",
default=None,
)
parser.add_argument(
"--beacon-host",
dest="beacon_host",
help="Host of the beacon server to connect to",
default=None,
)
parser.add_argument(
"--no-submit",
dest="submit",
action="store_false",
help="Do not submit anything",
default=None,
)
[docs]
def add_slurm_parameters(parser):
parser.add_argument(
"--slurm",
dest="slurm_client",
action="store_true",
help="Run the job on a SLURM cluster",
default=None,
)
parser.add_argument(
"--slurm-options",
dest="slurm_options",
help="General slurm options",
default=None,
type=json.loads,
)
parser.add_argument(
"--slurm-job-parameters",
dest="slurm_job_parameters",
help="Slurm job parameters: nodes, cpus, memory, etc.",
default=None,
type=json.loads,
)