GenericWorkflowJob

class lsst.ctrl.bps.GenericWorkflowJob(name: str)

Bases: object

Information about a job that may be needed by various workflow management services.

Attributes Summary

abort_on_value

Job exit value for signals to abort the entire workflow.

abort_return_value

Exit value to use when aborting the entire workflow.

accounting_group

Name of the accounting group to use.

accounting_user

Name of the user to use for accounting purposes.

arguments

Command line arguments for job.

attrs

Key/value pairs of job attributes (for WMS that have attributes in addition to commands).

category

WMS-facing label of job within single workflow (e.g., can be used for throttling jobs within a single workflow).

cmdvals

Values for variables in cmdline when using lazy command line creation.

compute_cloud

Key to look up cloud-specific information for running the job.

compute_site

Key to look up site-specific information for running the job.

concurrency_limit

Names of concurrency limits that the WMS plugin can appropriately translate to limit the number of this job across all running workflows.

environment

Environment variable names and values to be explicitly set inside job.

executable

Executable for job.

label

Primary user-facing label for job.

mail_to

Comma separated list of email addresses for emailing job status.

memory_multiplier

Memory growth rate between retries.

name

Name of job.

number_of_retries

Number of times to automatically retry a failed job.

post_cmdline

Command line to be executed after job executes.

pre_cmdline

Command line to be executed prior to executing job.

preemptible

The flag indicating whether the job can be preempted.

priority

Initial priority of job in WMS-format.

profile

Nested dictionary of WMS-specific key/value pairs with primary key being WMS key (e.g., pegasus, condor, panda).

quanta_counts

Counts of quanta per task label in job.

queue

Name of queue to use.

request_cpus

Max number of cpus that the job is expected to need.

request_disk

Max amount of job scratch disk (in MB) that the job is expected to need.

request_memory

Max memory (in MB) that the job is expected to need.

request_memory_max

Max memory (in MB) that the job should ever use.

request_walltime

Max amount of time (in seconds) that the job is expected to need.

retry_unless_exit

Exit code for job that means to not automatically retry.

tags

Other key/value pairs for job that user may want to use as a filter.

when_to_mail

WMS-specific terminology for when to email job status.

Attributes Documentation

abort_on_value: Optional[int]

Job exit value for signals to abort the entire workflow.

abort_return_value: Optional[int]

Exit value to use when aborting the entire workflow.

accounting_group: Optional[str]

Name of the accounting group to use.

accounting_user: Optional[str]

Name of the user to use for accounting purposes.

arguments: Optional[str]

Command line arguments for job.

attrs: Optional[dict]

Key/value pairs of job attributes (for WMS that have attributes in addition to commands).

category: Optional[str]

WMS-facing label of job within single workflow (e.g., can be used for throttling jobs within a single workflow).

cmdvals: Optional[dict]

Values for variables in cmdline when using lazy command line creation.

compute_cloud: Optional[str]

Key to look up cloud-specific information for running the job.

compute_site: Optional[str]

Key to look up site-specific information for running the job.

concurrency_limit: Optional[str]

Names of concurrency limits that the WMS plugin can appropriately translate to limit the number of this job across all running workflows.

environment: Optional[dict]

Environment variable names and values to be explicitly set inside job.

executable: Optional[GenericWorkflowExec]

Executable for job.

label: Optional[str]

Primary user-facing label for job. Does not need to be unique and may be used for summary reports.

mail_to: Optional[str]

Comma separated list of email addresses for emailing job status.

memory_multiplier: Optional[float]

Memory growth rate between retries.

name: str

Name of job. Must be unique within workflow.

number_of_retries: Optional[int]

Number of times to automatically retry a failed job.

post_cmdline: Optional[str]

Command line to be executed after job executes.

Should be executed regardless of exit status.

pre_cmdline: Optional[str]

Command line to be executed prior to executing job.

preemptible: Optional[bool]

The flag indicating whether the job can be preempted.

priority: Optional[str]

Initial priority of job in WMS-format.

profile: Optional[dict]

Nested dictionary of WMS-specific key/value pairs with primary key being WMS key (e.g., pegasus, condor, panda).

quanta_counts: Optional[Counter]

Counts of quanta per task label in job.

queue: Optional[str]

Name of queue to use. Different WMS can translate this concept differently.

request_cpus: Optional[int]

Max number of cpus that the job is expected to need.

request_disk: Optional[int]

Max amount of job scratch disk (in MB) that the job is expected to need.

request_memory: Optional[int]

Max memory (in MB) that the job is expected to need.

request_memory_max: Optional[int]

Max memory (in MB) that the job should ever use.

request_walltime: Optional[str]

Max amount of time (in seconds) that the job is expected to need.

retry_unless_exit: Optional[int]

Exit code for job that means to not automatically retry.

tags: Optional[dict]

Other key/value pairs for job that user may want to use as a filter.

when_to_mail: Optional[str]

WMS-specific terminology for when to email job status.