pysqa.utils.basic.BasisQueueAdapter#
- class pysqa.utils.basic.BasisQueueAdapter(config: dict, directory: str = '~/.queues', execute_command: callable = <function execute_command>)[source]#
Bases:
object
The goal of the QueueAdapter class is to make submitting to a queue system as easy as starting another sub process locally.
- Parameters:
config (dict)
directory (str) – directory containing the queue.yaml files as well as corresponding jinja2 templates for the individual queues.
execute_command (funct)
- .. attribute:: config
QueueAdapter configuration read from the queue.yaml file.
- .. attribute:: queue_list
List of available queues
- .. attribute:: queue_view
Pandas DataFrame representation of the available queues, read from queue.yaml.
- .. attribute:: queues
Queues available for auto completion QueueAdapter().queues.<queue name> returns the queue name.
- __init__(config: dict, directory: str = '~/.queues', execute_command: callable = <function execute_command>)[source]#
Methods
__init__
(config[, directory, execute_command])check_queue_parameters
(queue[, cores, ...])- param queue:
convert_path_to_remote
(path)delete_job
(process_id)- param process_id:
enable_reservation
(process_id)- param process_id:
get_job_from_remote
(working_directory)Get the results of the calculation - this is necessary when the calculation was executed on a remote host.
get_queue_status
([user])- param user:
get_status_of_job
(process_id)- param process_id:
get_status_of_jobs
(process_id_lst)- param process_id_lst list[int]:
- rtype:
pandas.DataFrame
submit_job
([queue, job_name, ...])- param queue:
transfer_file
(file[, transfer_back, ...])Attributes
Returns: dict:
Returns: list:
Returns: pandas.DataFrame:
queues
remote_flag
ssh_delete_file_on_remote
- check_queue_parameters(queue: str, cores: int = 1, run_time_max: int | None = None, memory_max: int | None = None, active_queue: dict | None = None) list [source]#
- Parameters:
queue (str/None)
cores (int)
run_time_max (int/None)
memory_max (int/None)
active_queue (dict)
- Returns:
[cores, run_time_max, memory_max]
- Return type:
list
- property config#
Returns: dict:
- get_job_from_remote(working_directory: str)[source]#
Get the results of the calculation - this is necessary when the calculation was executed on a remote host.
- get_queue_status(user: str | None = None) DataFrame [source]#
- Parameters:
user (str)
- Return type:
pandas.DataFrame
- get_status_of_job(process_id: int) str [source]#
- Parameters:
process_id
- Returns:
[‘running’, ‘pending’, ‘error’]
- Return type:
str
- get_status_of_jobs(process_id_lst: list[int]) list[str] [source]#
- Parameters:
list[int] (process_id_lst)
- Returns:
[‘running’, ‘pending’, ‘error’, …]
- Return type:
list[str]
- property queue_list: list#
Returns: list:
- property queue_view: DataFrame#
Returns: pandas.DataFrame:
- submit_job(queue: str | None = None, job_name: str | None = None, working_directory: str | None = None, cores: int | None = None, memory_max: int | None = None, run_time_max: int | None = None, dependency_list: list[str] | None = None, command: str | None = None, **kwargs) int [source]#
- Parameters:
queue (str/None)
job_name (str/None)
working_directory (str/None)
cores (int/None)
memory_max (int/None)
run_time_max (int/None)
(list[str]/None (dependency_list)
command (str/None)
- Return type:
int