jobspec#

class JobSpec(name: str, commands: list[str], nodes: int | None = None, cpus: int | None = None, gpus: int | None = None, time_limit: float = 1500.0, env: ~typing.Mapping[str, str | None] = <factory>, output: str | None = None, error: str | None = None, workspace: ~pathlib.Path = <factory>, submit_args: list[str] = <factory>, extensions: dict[str, ~typing.Any] = <factory>, dependencies: list[str] = <factory>)#

Bases: object

Declarative description of a single job submission. Scheduler- and backend-agnostic.

Each job may have multiple sequential commands, e.g. a setup command followed by a compute command.

name: str#
commands: list[str]#
nodes: int | None = None#
cpus: int | None = None#
gpus: int | None = None#
time_limit: float = 1500.0#
env: Mapping[str, str | None]#
output: str | None = None#
error: str | None = None#
workspace: Path#
submit_args: list[str]#
extensions: dict[str, Any]#
dependencies: list[str]#
with_dependencies(dependencies: list[str]) JobSpec#
with_updates(**kwargs) JobSpec#