ParslJob¶
- class lsst.ctrl.bps.parsl.ParslJob(generic: GenericWorkflowJob, config: BpsConfig, file_paths: dict[str, str])¶
- Bases: - object- Job to execute with parsl. - Parameters:
 - Methods Summary - evaluate_command_line(command)- Evaluate the bash command-line. - get_command_line([allow_stage])- Get the bash command-line to run to execute this job. - get_future(app, inputs[, command_prefix, ...])- Get the parsl app future for the job. - Return what resources are required for executing this job. - Run the command locally. - Methods Documentation - evaluate_command_line(command: str) str¶
- Evaluate the bash command-line. - BPS provides a command-line with symbolic names for BPS variables, environment variables and files. Here, we replace those symbolic names with the actual values, to provide a concrete command that can be executed. - In replacing file paths, we are implicitly assuming that we are working on a shared file system, i.e., that workers can see the butler directory, and that files do not need to be staged to the worker. 
 - get_future(app: BashApp, inputs: list[concurrent.futures._base.Future], command_prefix: str | None = None, add_resources: bool = False) Future | None¶
- Get the parsl app future for the job. - This effectively queues the job for execution by a worker, subject to dependencies. - Parameters:
- appcallable
- A parsl bash_app decorator to use. 
- inputslist of Future
- Dependencies to be satisfied before executing this job. 
- command_prefixstr, optional
- Bash commands to execute before the job command, e.g., for setting the environment. 
- add_resourcesbool
- Add resource specification when submitting the job? This is only appropriate for the - WorkQueueexecutor; other executors will raise an exception.
 
- Returns:
 
 - run_local()¶
- Run the command locally. - This is intended to support jobs that should not be done by a worker.