pysqa.base.core.QueueAdapterCore#

class pysqa.base.core.QueueAdapterCore(queue_type: str, execute_command: ~typing.Callable = <function execute_command>)[source]#

Bases: QueueAdapterAbstractClass

The goal of the QueueAdapter class is to make submitting to a queue system as easy as starting another sub process locally.

Parameters:
  • queue_type (str) – Type of the queuing system in capital letters

  • execute_command (funct) – Function to execute commands.

__init__(queue_type: str, execute_command: ~typing.Callable = <function execute_command>)[source]#

Methods

__init__(queue_type[, execute_command])

delete_job(process_id)

Delete a job.

enable_reservation(process_id)

Enable reservation for a process.

get_queue_status([user])

Get the status of the queue.

get_status_of_job(process_id)

Get the status of a job.

get_status_of_jobs(process_id_lst)

Get the status of multiple jobs.

get_status_of_my_jobs()

Get the status of the user's jobs.

submit_job([queue, job_name, ...])

Submit a job to the queue.

delete_job(process_id: int) str | None[source]#

Delete a job.

Parameters:

process_id (int) – The process ID.

Returns:

The result of the delete job command.

Return type:

str

enable_reservation(process_id: int)[source]#

Enable reservation for a process.

Parameters:

process_id (int) – The process ID.

Returns:

The result of the enable reservation command.

Return type:

str

get_queue_status(user: str | None = None) DataFrame | None[source]#

Get the status of the queue.

Parameters:

user (str) – The user to filter the queue status for.

Returns:

The queue status.

Return type:

pandas.DataFrame

get_status_of_job(process_id: int) str | None[source]#

Get the status of a job.

Parameters:

process_id (int) – The process ID.

Returns:

The status of the job.results_lst.append(df_selected.values[0])

Return type:

str

get_status_of_jobs(process_id_lst: list[int]) list[str][source]#

Get the status of multiple jobs.

Parameters:

process_id_lst (list[int]) – List of process IDs.

Returns:

List of job statuses.

Return type:

list[str]

get_status_of_my_jobs() DataFrame[source]#

Get the status of the user’s jobs.

Returns:

The status of the user’s jobs.

Return type:

pandas.DataFrame

submit_job(queue: str | None = None, job_name: str = 'pysqa', working_directory: str | None = None, cores: int = 1, memory_max: int | str | None = None, run_time_max: int | None = None, dependency_list: list[int] | None = None, command: str = '', submission_template: str | Template | None = None, **kwargs) int | None[source]#

Submit a job to the queue.

Parameters:
  • queue (str/None) – The queue to submit the job to.

  • job_name (str/None) – The name of the job.

  • working_directory (str/None) – The working directory for the job.

  • cores (int/None) – The number of cores required for the job.

  • memory_max (int/None) – The maximum memory required for the job.

  • run_time_max (int/None) – The maximum run time for the job.

  • dependency_list (list[str]/None) – List of job dependencies.

  • command (str) – The command to execute for the job.

Returns:

The job ID.

Return type:

int