pyslurmutils.client.rest.base.SlurmBaseRestClient#
- class pyslurmutils.client.rest.base.SlurmBaseRestClient(url='', user_name='', token='', api_version='', parameters=None, log_directory=None, std_split=False, request_options=None)[source]#
Bases:
object
Low-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
)parameters (
Optional
[dict
])log_directory (
Optional
[str
])std_split (
Optional
[bool
])request_options (
Optional
[dict
])
- 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