jobman.engines package

Submodules

jobman.engines.base_bash_engine module

class jobman.engines.base_bash_engine.BaseBashEngine(key=None, process_runner=None, logger=None, debug=None, cfg=None, scratch_dir=None, build_batch_jobdir_fn=None)[source]

Bases: jobman.engines.base_engine.BaseEngine

DEFAULT_STD_LOG_FILE_NAMES = {'stdout': 'stdout', 'stderr': 'stderr'}
ENGINE_ENTRYPOINT_TPL = 'JOBMAN.ENTRYPOINT.sh'

jobman.engines.base_engine module

class jobman.engines.base_engine.BaseEngine(key=None, process_runner=None, logger=None, debug=None, cfg=None, scratch_dir=None, build_batch_jobdir_fn=None)[source]

Bases: object

CHECKPOINT_FILE_NAMES = {'completed': 'JOBMAN-COMPLETED', 'failed': 'JOBMAN-FAILED'}
exception CfgItemResolutionError(msg=None, key=None, spec=None, *args, **kwargs)[source]

Bases: Exception

DEFAULT_JOB_ENTRYPOINT_NAME = 'job.sh'
class JOB_STATUSES

Bases: object

CLAIMED = 'CLAIMED'
COMPLETED = 'COMPLETED'
EXECUTED = 'EXECUTED'
FAILED = 'FAILED'
PENDING = 'PENDING'
RUNNING = 'RUNNING'
UNKNOWN = 'UNKNOWN'
exception SubmissionError[source]

Bases: Exception

build_batch_jobdir(batch_job=None, subjobs=None, dest=None, extra_cfgs=None)[source]
default_build_batch_jobdir(*args, **kwargs)[source]
generate_default_process_runner()[source]
get_keyed_states(keyed_metas=None)[source]
initialize()[source]
resolve_cfg_item(key=None, spec=None, cfgs=None)[source]
resolve_job_cfg_specs(job=None, extra_cfgs=None)[source]
submit_batch_job(batch_job=None, subjobs=None, extra_cfgs=None)[source]
submit_job(job=None, extra_cfgs=None)[source]
tick()[source]

jobman.engines.inbox_engine module

class jobman.engines.inbox_engine.InboxEngine(db_uri=None, root_dir=None, transfer_fn=<function move>, sync_fn=None, throttling_specs=None, **kwargs)[source]

Bases: jobman.engines.base_engine.BaseEngine

get_keyed_states(keyed_metas=None)[source]
submit_job(job=None, extra_cfgs=None)[source]
tick()[source]

jobman.engines.local_engine module

class jobman.engines.local_engine.LocalEngine(*args, db_uri=None, initialize=True, cache_ttl=1, dao=None, **kwargs)[source]

Bases: jobman.engines.base_bash_engine.BaseBashEngine

get_keyed_states(keyed_metas=None)[source]
initialize()[source]
submit_job(job=None, extra_cfgs=None)[source]
tick()[source]

jobman.engines.slurm_engine module

class jobman.engines.slurm_engine.SlurmEngine(*args, slurm_commands=None, **kwargs)[source]

Bases: jobman.engines.base_bash_engine.BaseBashEngine

DEFAULT_SLURM_COMMANDS = {'sacct': 'sacct', 'sbatch': 'sbatch', 'scontrol': 'scontrol'}
SLURM_STATES_TO_ENGINE_JOB_STATUSES = {'RUNNING': {'COMPLETING', 'PENDING', 'RUNNING', 'CONFIGURING'}, 'EXECUTED': {'COMPLETED'}, 'FAILED': {'FAILED', 'CANCELLED', 'TIMEOUT', 'BOOT_FAIL', 'NODE_FAIL', 'PREEMPTED'}}
get_all_slurm_jobs_via_scontrol()[source]
get_keyed_states(keyed_metas=None)[source]
get_slurm_job_via_scontrol(job_id=None)[source]
get_slurm_jobs_by_id(job_ids=None)[source]
get_slurm_jobs_via_sacct(job_ids=None)[source]
get_slurm_jobs_via_scontrol(job_ids=None)[source]
parse_sacct_line(sacct_line=None, fields=None)[source]
parse_sacct_stdout(sacct_stdout=None)[source]
parse_sbatch_stdout(sbatch_stdout=None)[source]
parse_scontrol_line(scontrol_line=None)[source]
slurm_job_to_engine_state(slurm_job=None)[source]
slurm_job_to_status(slurm_job=None)[source]
split_sacct_line(sacct_line=None)[source]
submit_job(job=None, extra_cfgs=None)[source]