job:create#
Create a new job.
Every value is passed as an option. If you omit an option required to create the job, you will be prompted for that option. Pass --no-interaction to suppress the prompts, in which case you must pass every required option at the command line.
Usage
horizon job:create [options]
Examples
# Run CONVERGE on a VM-AMD node with 30 cores and 132 GB of memory
horizon job:create --no-interaction --name="My job" --project="Default Project" \
--storage="My file system" --storage-path="cases/case1" --app="converge" \
--app-version="6.0.1" --node="VM-AMD" --flex-cores=30 --flex-memory=132 \
--time-limit=10
# Run CONVERGE on 5 BM-INTEL-ICELAKE-36 nodes from a space, keeping only .out and .log files
horizon job:create --no-interaction --name="My job" --project="Default Project" \
--storage-type="space" --storage="My Space" --storage-path="/my/case/dir/" \
--app="converge" --app-version="6.0.1" --node="BM-INTEL-ICELAKE-36" --nodes-count=5 \
--time-limit=24 --output-includes="*.out,*.log"
# Create a job from a horizon.json file in the current working directory
horizon job:create --horizon
# Write horizon.json for the options given, without submitting the job
horizon job:create --dump --name="My job" --project="Default Project"
Options
This command supports the general CLI options in addition to those listed below.
--app=APPThe application to run (default:
converge). Run application:list for the available applications and their versions.--app-args=APP_ARGSCommand-line arguments to pass to the application (example:
--app-args="-u check_inputs").--app-version=APP_VERSIONThe application version to run, in MAJOR.MINOR.PATCH format.
--batch=BATCH_IDAdd the job to the batch with the specified BATCH_ID (example:
--batch="pyi2zub057rp").--cli=CLIRaw command-line arguments to pass to the run script. Refer to Advanced Options > Custom Commands to Run Instead of Default Snippet.
--compressCompress output files before they are uploaded to the space. Applies only if the job files are stored in a space.
--cores-per-node=CORES_PER_NODEThe number of cores per node. CORES_PER_NODE can range from 1 to the total number of cores per node for the selected node type.
--coupling=COUPLINGThe coupled application to run alongside the primary application (example:
--coupling="gtsuite").--coupling-args=COUPLING_ARGSCommand-line arguments to pass to the coupled application.
--coupling-license=COUPLING_LICENSEThe license server for the coupled application, in
port@hostnameformat.--coupling-version=COUPLING_VERSIONThe version of the coupled application.
--dump, -DWrite a horizon.json file for the given options and exit without submitting the job.
--executable=EXECUTABLEFile name (including extension) of a custom executable that you have uploaded to the case directory.
--flex-cores=FLEX_CORESThe number of cores that will be allocated to the virtual machine. Applies only to VM node types.
--flex-memory=FLEX_MEMORYThe amount of memory (in GB) that will be allocated to the virtual machine. Applies only to VM node types.
--horizon, -HUse the horizon.json file in the current directory for input. All other options are ignored except
--project, which overrides the project recorded in the file.--interactiveRun the job in interactive mode.
--license-server=LICENSE_SERVERCustom license server to use for a self-hosted license, in
port@hostnameformat.--license-type=LICENSE_TYPEThe type of license that will be used to run the job. LICENSE_TYPE can be
on-demand(default),horizon-hosted, orself-hosted.--name=NAMEThe name of the job.
--no-stop-if-stuckDo NOT stop the job automatically if it becomes stuck. Use this option to override the default behavior described under
--stop-if-stuck.--node=NODEID or name of the node type that will be used to run the job. Run node:list for a list of available node types.
--nodes-count=NODES_COUNTThe number of nodes to allocate to the job (default: 1). Applies only to node types that support multi-node jobs.
--output-excludes=OUTPUT_EXCLUDESDo NOT save output files with paths matching the pattern(s) specified in OUTPUT_EXCLUDES (example:
--output-excludes="*.h5"). Applies only if the job files are stored in a space. Refer to Output > Exclude Output for details.--output-includes=OUTPUT_INCLUDESSave ONLY the output files with paths matching the pattern(s) specified in OUTPUT_INCLUDES (example:
--output-includes="*.out,*.log"). Applies only if the job files are stored in a space. Refer to Output > Include Output for details.--project=PROJECTID or name of the project to associate with the job. Run project:list for a list of project names and IDs.
--stop-if-stuckStop the job automatically if it becomes stuck. This is the default behavior, so you need this option only if you want to state it explicitly. If you do not want to stop the job automatically if it becomes stuck, pass
--no-stop-if-stuckinstead.--storage=STORAGEID or name of the file system or space containing the input files. Run filesystem:list or space:list for a list of names and IDs.
--storage-path=STORAGE_PATHThe path to the directory that contains the input files (e.g.,
cases/case1).--storage-type=STORAGE_TYPEThe type of storage used for the input files:
filesystem(default) orspace.--time-limit=TIME_LIMITThe maximum number of hours that the application can run before it is stopped automatically.
--time-limit-queue=TIME_LIMIT_QUEUEThe maximum queue time for the job in hours (default: 24, maximum: 168).