libmuscle.manager.qcgpj_instantiator module

class libmuscle.manager.qcgpj_instantiator.QCGPJInstantiator(resources: Queue, requests: Queue, results: Queue, log_records: Queue, run_dir: Path)[source]

Bases: Process

Background process for interacting with the QCG-PJ executor.

run() None[source]

Entry point for the process.

class libmuscle.manager.qcgpj_instantiator.StateTracker[source]

Bases: object

Tracks processes and their state.

This keeps a list of running processes and their state. It receives callbacks from QCG-PJ when the state of a job changes, and updates the list accordingly.

processes

Dict mapping instance names to Process objects.

job_executing(job_iteration: SchedulingIteration) None[source]

Called by Executor when a job has started to run.

Parameters:

job_iteration – The job iteration that has started

job_finished(job_iteration: SchedulingIteration, allocation: Allocation, exit_code: int, error_msg: str, canceled: bool) None[source]

Called by executor when a job has finished.

Parameters:
  • job_iteration – The job iteration that has finished

  • allocation – The allocation it ran on

  • exit_code – Its exit code

  • error_msg – Its error message

  • canceled – Whether it was canceled