Pavilion Job Objects¶
Table of Contents
pavilion.jobs module¶
Jobs encapsulate a scheduler job, tying together everything used to start said job, the job id, and the tests being run in that job.
-
class
pavilion.jobs.
Job
(path: pathlib.Path)¶ Bases:
object
Encapsulate a scheduler job.
-
INFO_FN
= 'info'¶
-
KICKOFF_FN
= 'kickoff'¶
-
KICKOFF_LOG_FN
= 'kickoff.log'¶
-
NODE_INFO_FN
= 'node_info.pkl'¶
-
SCHED_LOG_FN
= 'sched.log'¶
-
TESTS_DIR
= 'tests'¶
-
get_test_id_pairs
() → List[NewType.<locals>.new_type]¶ Return the test objects for each test that’s part of this job. Only tests that still exist are returned.
-
info
¶ Return (and load, if necessary), the job id.
-
load_sched_data
() → NewType.<locals>.new_type¶ Load the scheduler data that was saved from the kickoff time.
-
classmethod
new
(pav_cfg, tests: list, kickoff_fn: str = None)¶ Create a new job directory, and return the Job instance.
-
safe_delete
(force: bool = False)¶ Delete the job directory, but only if all related tests are deleted.
Parameters: force – Delete the job directory regardless of the existence of tests.
-
save_node_data
(nodes: NewType.<locals>.new_type)¶ Save node information (from kickoff time) for the given test.
-
set_kickoff
(kickoff_name: str = None)¶ Set the name for the kickoff script to the one given, This will also create a symlink to this file via the default kickoff name.
If no name is given, then the name will be the default, and the actual file result in the link location.
-
-
exception
pavilion.jobs.
JobError
¶ Bases:
RuntimeError
Raised when there’s a problem with a Job directory.
-
pavilion.jobs.
JobInfo
(x)¶ Scheduler defined job info dict. Keys are dependent on the specific scheduler plugin. All data added should be json serializable.