easybuild.tools.job.backend module¶
Abstract interface for submitting jobs and related utilities.
Authors:
- Riccardo Murri (University of Zurich)
- Kenneth Hoste (Ghent University)
-
class
easybuild.tools.job.backend.JobBackend¶ Bases:
object-
complete()¶ Complete a bulk job submission.
Releases any jobs that were possibly queued since the last init() call.
No more job submissions should be attempted after complete() has been called, until a init() is invoked again.
-
init()¶ Initialise the job backend, to start a bulk job submission.
Jobs may be queued and only actually submitted when complete() is called.
-
make_job(script, name, env_vars=None, hours=None, cores=None)¶ Create and return a Job object with the given parameters.
See the
Jobconstructor for an explanation of what the arguments are.
-
queue(job, dependencies=frozenset())¶ Add a job to the queue.
If second optional argument dependencies is given, it must be a sequence of jobs that must be successfully terminated before the new job can run.
Note that actual submission may be delayed until complete() is called.
-
-
easybuild.tools.job.backend.avail_job_backends(check_usable=True)¶ Return all known job execution backends.
-
easybuild.tools.job.backend.job_backend()¶ Return interface to job server, or None if none is available.