Job execution and submission#

Modules managing the execution and submission of jobs to computing clusters. This is mostly used for small productions during the validation or verification phase.

Interface to workload managers to run jobs on a compute node.

exception job_execution.job_manager.JobExecutionError[source]#

Job execution error.

class job_execution.job_manager.JobManager(test=False)[source]#

Job manager for submitting jobs to a compute node.

Expects that jobs can be described by shell scripts.

Parameters:
testbool

Testing mode without sub submission.

submit(run_script=None, run_out_file=None, log_file=None)[source]#

Submit a job described by a shell script.

Parameters:
run_script: str

Shell script describing the job to be submitted.

run_out_file: str or Path

Redirect output/error/job stream to this file (out,err,job suffix).

log_file: str or Path

The log file of the actual simulator (CORSIKA or sim_telarray). Provided in order to print the log excerpt in case of run time error.

submit_local(log_file)[source]#

Run a job script on the command line.

Parameters:
log_file: str or Path

The log file of the actual simulator (CORSIKA or sim_telarray). Provided in order to print the log excerpt in case of run time error.

Returns:
int

Return code of the executed script

HT Condor script generator for simulation production.

job_execution.htcondor_script_generator.generate_submission_script(args_dict)[source]#

Generate the HT Condor submission script.

Parameters:
args_dict: dict

Arguments dictionary.