pyslurmutils.client.rest.script.SlurmScriptRestClient#
- class pyslurmutils.client.rest.script.SlurmScriptRestClient(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:
SlurmBaseRestClientSLURM API to submit, cancel and monitor scripts. 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)#
- Parameters:
job_id (
int)request_options (
Optional[dict])
- Return type:
None
- clean_job_artifacts(job_id, job_properties=None, request_options=None)#
- 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)#
- Parameters:
job_id (
int)job_properties (
Optional[BaseModel])request_options (
Optional[dict])
- Return type:
Generator[None,None,None]
- delete(path, **kwargs)#
- Parameters:
path (
str)- Return type:
Optional[BaseModel]
- get(path, **kwargs)#
- Parameters:
path (
str)- Return type:
Optional[BaseModel]
- get_all_job_properties(raise_on_error=True, request_options=None, filter=None, update_time=None, all_users=False)#
- 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)#
- Parameters:
job_id (
int)request_options (
Optional[dict])
- Return type:
dict
- get_job_properties(job_id, raise_on_error=True, request_options=None)#
- Parameters:
job_id (
int)request_options (
Optional[dict])
- Return type:
Optional[BaseModel]
- get_status(job_id, request_options=None)#
- Parameters:
job_id (
int)request_options (
Optional[dict])
- Return type:
str
- is_finished(job_id)#
Returns True when the job is completely finished.
- Parameters:
job_id (
int)- Return type:
bool
- is_finishing(job_id, request_options=None)#
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)#
- Parameters:
job_id (
int)logger (
Optional[Logger])level (
int)request_options (
Optional[dict])
- Return type:
None
- post(path, **kwargs)#
- Parameters:
path (
str)- Return type:
Optional[BaseModel]
- print_stdout_stderr(job_id, request_options=None)#
- Parameters:
job_id (
int)request_options (
Optional[dict])
- Return type:
None
- redirect_stdout_stderr(job_id, request_options=None)#
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)#
- Parameters:
method (
str)path (
str)request_options (
Optional[dict])raise_on_error (
bool)
- Return type:
Optional[BaseModel]
- server_has_api(request_options=None)#
- Parameters:
request_options (
Optional[dict])- Return type:
Union[bool,str,List[str]]
- submit_job(script, parameters=None, metadata=None, request_options=None)#
Returns the SLURM job ID
- Parameters:
script (
str)parameters (
Optional[dict])metadata (
Union[str,dict,None])request_options (
Optional[dict])
- Return type:
int
- submit_script(script, parameters=None, metadata=None, request_options=None)[source]#
Submit a script. Assume it is a bash script in the absence of a shebang.
- Parameters:
script (
Union[str,Sequence[str]])parameters (
Optional[dict])metadata (
Union[str,dict,None])request_options (
Optional[dict])
- Return type:
int
- wait_finished(job_id, **kw)#
Wait until a job is finished and return the state.
- Parameters:
job_id (
int)- Return type:
str
- wait_finishing(job_id, **kw)#
Wait until a job is finished or in the process of finishing and return the state.
- Parameters:
job_id (
int)- Return type:
str
- wait_states(job_id, states, progress=False, timeout=None, period=0.5)#
Wait until a job state is reached and return the state.
- Parameters:
job_id (
int)states (
Tuple[str,...])progress (
bool)timeout (
Optional[float])period (
float)
- Return type:
str