pyslurmutils.client.rest.base.SlurmBaseRestClient#
- class pyslurmutils.client.rest.base.SlurmBaseRestClient(url='', user_name='', token='', api_version='', renewal_url='', parameters=None, log_directory=None, std_split=False, request_options=None, use_env_credentials=True, export_slurm_env_vars=True)[source]#
Bases:
objectLow-level SLURM API to submit, cancel and monitor jobs. This class does not contain any job-related state.
- Parameters:
url (
str)user_name (
str)token (
str)api_version (
str)renewal_url (
str)parameters (
Optional[dict])log_directory (
Optional[str])std_split (
Optional[bool])request_options (
Optional[dict])use_env_credentials (
bool)export_slurm_env_vars (
bool)
- cancel_job(job_id, request_options=None)[source]#
- Parameters:
job_id (
int)request_options (
Optional[dict])
- Return type:
None
- clean_job_artifacts(job_id, job_properties=None, request_options=None)[source]#
- Parameters:
job_id (
int)job_properties (
Optional[BaseModel])request_options (
Optional[dict])
- Return type:
None
- clean_job_artifacts_context(job_id, job_properties=None, request_options=None)[source]#
- Parameters:
job_id (
int)job_properties (
Optional[BaseModel])request_options (
Optional[dict])
- Return type:
Generator[None,None,None]
- get_all_job_properties(raise_on_error=True, request_options=None, filter=None, update_time=None, all_users=False)[source]#
- Parameters:
request_options (
Optional[dict])filter (
Optional[dict])update_time (
Optional[datetime])all_users (
bool)
- Return type:
List[BaseModel]
- get_full_status(job_id, request_options=None)[source]#
- Parameters:
job_id (
int)request_options (
Optional[dict])
- Return type:
dict
- get_job_properties(job_id, raise_on_error=True, request_options=None)[source]#
- Parameters:
job_id (
int)request_options (
Optional[dict])
- Return type:
Optional[BaseModel]
- get_status(job_id, request_options=None)[source]#
- Parameters:
job_id (
int)request_options (
Optional[dict])
- Return type:
str
- is_finished(job_id)[source]#
Returns True when the job is completely finished.
- Parameters:
job_id (
int)- Return type:
bool
- is_finishing(job_id, request_options=None)[source]#
Returns True when the job is finished by Slurm is still finalizing.
- Parameters:
job_id (
int)request_options (
Optional[dict])
- Return type:
bool
- log_stdout_stderr(job_id, logger=None, level=20, request_options=None, **log_options)[source]#
- Parameters:
job_id (
int)logger (
Optional[Logger])level (
int)request_options (
Optional[dict])
- Return type:
None
- print_stdout_stderr(job_id, request_options=None)[source]#
- Parameters:
job_id (
int)request_options (
Optional[dict])
- Return type:
None
- redirect_stdout_stderr(job_id, request_options=None)[source]#
Redirect logs files to the local root logger within this context.
- Parameters:
job_id (
int)request_options (
Optional[dict])
- Return type:
Generator[None,None,None]
- request(method, path, request_options=None, raise_on_error=True)[source]#
- Parameters:
method (
str)path (
str)request_options (
Optional[dict])raise_on_error (
bool)
- Return type:
Optional[BaseModel]
- server_has_api(request_options=None)[source]#
- Parameters:
request_options (
Optional[dict])- Return type:
Union[bool,str,List[str]]
- submit_job(script, parameters=None, metadata=None, request_options=None)[source]#
Returns the SLURM job ID
- Parameters:
script (
str)parameters (
Optional[dict])metadata (
Union[str,dict,None])request_options (
Optional[dict])
- Return type:
int
- wait_finished(job_id, **kw)[source]#
Wait until a job is finished and return the state.
- Parameters:
job_id (
int)- Return type:
str