Source code for pyslurmutils.client.rest.api.v0_0_42

# This file is automatically generated.
# DO NOT MODIFY THIS FILE MANUALLY.

from __future__ import annotations

from typing import Any
from typing import Dict
from typing import List
from typing import Optional

from pydantic import BaseModel
from pydantic import Field


[docs] class CronEntryLine(BaseModel): start: Optional[int] = Field(None, title="Start of this entry in file") end: Optional[int] = Field(None, title="End of this entry in file")
[docs] class DeleteBodySlurmJobJobid(BaseModel): pass
[docs] class DeletePathSlurmJobJobid(BaseModel): job_id: str = Field(..., title="Job Id")
[docs] class DeleteQuerySlurmJobJobid(BaseModel): signal: Optional[str] = Field(None, title="Signal")
[docs] class Float64NoValStruct(BaseModel): set: Optional[bool] = Field( None, title="True if number has been set; False if number is unset" ) infinite: Optional[bool] = Field( None, title='True if number has been set to infinite; "set" and "number" will be ignored', ) number: Optional[float] = Field( None, title='If "set" is True the number will be set with value; otherwise ignore number contents', )
[docs] class GetBodySlurmJobJobid(BaseModel): pass
[docs] class GetBodySlurmJobs(BaseModel): pass
[docs] class GetPathSlurmJobJobid(BaseModel): job_id: str = Field(..., title="Job Id")
[docs] class GetPathSlurmJobs(BaseModel): pass
[docs] class GetQuerySlurmJobJobid(BaseModel): update_time: Optional[str] = Field(None, title="Update Time")
[docs] class GetQuerySlurmJobs(BaseModel): update_time: Optional[str] = Field(None, title="Update Time")
[docs] class JobInfoPower(BaseModel): flags: Optional[List[Dict[str, Any]]] = Field(None, title="Flags")
[docs] class JobResCore(BaseModel): index: Optional[int] = Field(None, title="Core index") status: Optional[List[str]] = Field(None, title="Core status")
[docs] class JobResNodeCpus(BaseModel): count: Optional[int] = Field(None, title="Total number of CPUs assigned to job") used: Optional[int] = Field(None, title="Total number of CPUs used by job")
[docs] class JobResNodeMemory(BaseModel): used: Optional[int] = Field(None, title="Total memory (MiB) used by job") allocated: Optional[int] = Field(None, title="Total memory (MiB) allocated to job")
[docs] class JobResSocket(BaseModel): index: Optional[int] = Field(None, title="Core index") cores: Optional[List[JobResCore]] = Field(None, title="Core in socket")
[docs] class KillJobsRespJobError(BaseModel): string: Optional[str] = Field(None, title="String error encountered signaling job") code: Optional[int] = Field(None, title="Numeric error encountered signaling job") message: Optional[str] = Field(None, title="Error message why signaling job failed")
[docs] class KillJobsRespJobFederation(BaseModel): sibling: Optional[str] = Field( None, title="Name of federation sibling (may be empty for non-federation)" )
[docs] class OpenapiError(BaseModel): description: Optional[str] = Field(None, title="Long form error description") error_number: Optional[int] = Field(None, title="Slurm numeric error identifier") error: Optional[str] = Field(None, title="Short form error description") source: Optional[str] = Field( None, title="Source of error or where error was first detected" )
[docs] class OpenapiMetaClient(BaseModel): source: Optional[str] = Field(None, title="Client source description") user: Optional[str] = Field(None, title="Client user (if known)") group: Optional[str] = Field(None, title="Client group (if known)")
[docs] class OpenapiMetaPlugin(BaseModel): type: Optional[str] = Field(None, title="Slurm plugin type (if applicable)") name: Optional[str] = Field(None, title="Slurm plugin name (if applicable)") data_parser: Optional[str] = Field(None, title="Slurm data_parser plugin") accounting_storage: Optional[str] = Field(None, title="Slurm accounting plugin")
[docs] class OpenapiMetaSlurmVersion(BaseModel): major: Optional[str] = Field(None, title="Slurm release major version") micro: Optional[str] = Field(None, title="Slurm release micro version") minor: Optional[str] = Field(None, title="Slurm release minor version")
[docs] class OpenapiWarning(BaseModel): description: Optional[str] = Field(None, title="Long form warning description") source: Optional[str] = Field( None, title="Source of warning or where warning was first detected" )
[docs] class PartPrio(BaseModel): partition: Optional[str] = Field(None, title="Partition name") priority: Optional[int] = Field( None, title="Prospective job priority if it runs in this partition" )
[docs] class PostPathSlurmJobSubmit(BaseModel): pass
[docs] class PostQuerySlurmJobSubmit(BaseModel): pass
[docs] class Uint16NoValStruct(BaseModel): set: Optional[bool] = Field( None, title="True if number has been set; False if number is unset" ) infinite: Optional[bool] = Field( None, title='True if number has been set to infinite; "set" and "number" will be ignored', ) number: Optional[int] = Field( None, title='If "set" is True the number will be set with value; otherwise ignore number contents', )
[docs] class Uint32NoValStruct(BaseModel): set: Optional[bool] = Field( None, title="True if number has been set; False if number is unset" ) infinite: Optional[bool] = Field( None, title='True if number has been set to infinite; "set" and "number" will be ignored', ) number: Optional[int] = Field( None, title='If "set" is True the number will be set with value; otherwise ignore number contents', )
[docs] class Uint64NoValStruct(BaseModel): set: Optional[bool] = Field( None, title="True if number has been set; False if number is unset" ) infinite: Optional[bool] = Field( None, title='True if number has been set to infinite; "set" and "number" will be ignored', ) number: Optional[int] = Field( None, title='If "set" is True the number will be set with value; otherwise ignore number contents', )
[docs] class CronEntry(BaseModel): flags: Optional[List[str]] = Field(None, title="Flags") minute: Optional[str] = Field( None, title="Ranged string specifying eligible minute values (e.g. 0-10,50)" ) hour: Optional[str] = Field( None, title="Ranged string specifying eligible hour values (e.g. 0-5,23)" ) day_of_month: Optional[str] = Field( None, title="Ranged string specifying eligible day of month values (e.g. 0-10,29)", ) month: Optional[str] = Field( None, title="Ranged string specifying eligible month values (e.g. 0-5,12)" ) day_of_week: Optional[str] = Field( None, title="Ranged string specifying eligible day of week values (e.g.0-3,7)" ) specification: Optional[str] = Field( None, title="Complete time specification (* means valid for all allowed values) - minute hour day_of_month month day_of_week", ) command: Optional[str] = Field(None, title="Command to run") line: Optional[CronEntryLine] = Field(None, title="Cron entry line")
[docs] class JobDescMsgRlimits(BaseModel): cpu: Optional[Uint64NoValStruct] = Field( None, title="Per-process CPU limit, in seconds" ) fsize: Optional[Uint64NoValStruct] = Field( None, title="Largest file that can be created, in bytes" ) data: Optional[Uint64NoValStruct] = Field( None, title="Maximum size of data segment, in bytes" ) stack: Optional[Uint64NoValStruct] = Field( None, title="Maximum size of stack segment, in bytes" ) core: Optional[Uint64NoValStruct] = Field( None, title="Largest core file that can be created, in bytes" ) rss: Optional[Uint64NoValStruct] = Field( None, title="Largest resident set size, in bytes. This affects swapping; processes that are exceeding their resident set size will be more likely to have physical memory taken from them", ) nproc: Optional[Uint64NoValStruct] = Field(None, title="Number of processes") nofile: Optional[Uint64NoValStruct] = Field(None, title="Number of open files") memlock: Optional[Uint64NoValStruct] = Field( None, title="Locked-in-memory address space" ) as_: Optional[Uint64NoValStruct] = Field( None, alias="as", title="Address space limit" )
[docs] class JobResNode(BaseModel): index: Optional[int] = Field(None, title="Node index") name: Optional[str] = Field(None, title="Node name") cpus: Optional[JobResNodeCpus] = Field(None, title="Job res node cpus") memory: Optional[JobResNodeMemory] = Field(None, title="Job res node memory") sockets: Optional[List[JobResSocket]] = Field( None, title="Socket allocations in node" )
[docs] class JobResNodes(BaseModel): count: Optional[int] = Field(None, title="Number of allocated nodes") select_type: Optional[List[str]] = Field( None, title="Node scheduling selection method" ) list: Optional[str] = Field(None, title="Node(s) allocated to the job") whole: Optional[bool] = Field(None, title="Whether whole nodes were allocated") allocation: Optional[List[JobResNode]] = Field( None, title="Allocated node resources" )
[docs] class KillJobsRespJob(BaseModel): error: Optional[KillJobsRespJobError] = Field( None, title="Kill jobs resp job error" ) step_id: Optional[str] = Field(None, title="Job or Step ID that signaling failed") job_id: Optional[Uint32NoValStruct] = Field( None, title="Job ID that signaling failed" ) federation: Optional[KillJobsRespJobFederation] = Field( None, title="Kill jobs resp job federation" )
[docs] class OpenapiMetaSlurm(BaseModel): version: Optional[OpenapiMetaSlurmVersion] = Field( None, title="Openapi meta slurm version" ) release: Optional[str] = Field(None, title="Slurm release string") cluster: Optional[str] = Field(None, title="Slurm cluster name")
[docs] class ProcessExitCodeVerboseSignal(BaseModel): id: Optional[Uint16NoValStruct] = Field( None, title="Signal sent to process (numeric)" ) name: Optional[str] = Field(None, title="Signal sent to process (name)")
[docs] class JobDescMsg(BaseModel): account: Optional[str] = Field(None, title="Account associated with the job") account_gather_frequency: Optional[str] = Field( None, title="Job accounting and profiling sampling intervals in seconds" ) admin_comment: Optional[str] = Field( None, title="Arbitrary comment made by administrator" ) allocation_node_list: Optional[str] = Field( None, title="Local node making the resource allocation" ) allocation_node_port: Optional[int] = Field( None, title="Port to send allocation confirmation to" ) argv: Optional[List[str]] = Field( None, title="Arguments to the script. Note: The slurmstepd always overrides argv[0] with the path to the created script file. If this option is used, argv[0] should be a throwaway value.", ) array: Optional[str] = Field(None, title="Job array index value specification") batch_features: Optional[str] = Field( None, title="Features required for batch script's node" ) begin_time: Optional[Uint64NoValStruct] = Field( None, title="Defer the allocation of the job until the specified time (UNIX timestamp)", ) flags: Optional[List[str]] = Field(None, title="Job flags") burst_buffer: Optional[str] = Field(None, title="Burst buffer specifications") clusters: Optional[str] = Field( None, title="Clusters that a federated job can run on" ) cluster_constraint: Optional[str] = Field( None, title="Required features that a federated cluster must have to have a sibling job submitted to it", ) comment: Optional[str] = Field(None, title="Arbitrary comment made by user") contiguous: Optional[bool] = Field( None, title="True if job requires contiguous nodes" ) container: Optional[str] = Field( None, title="Absolute path to OCI container bundle" ) container_id: Optional[str] = Field(None, title="OCI container ID") core_specification: Optional[int] = Field(None, title="Specialized core count") thread_specification: Optional[int] = Field(None, title="Specialized thread count") cpu_binding: Optional[str] = Field( None, title="Method for binding tasks to allocated CPUs" ) cpu_binding_flags: Optional[List[str]] = Field(None, title="Flags for CPU binding") cpu_frequency: Optional[str] = Field( None, title="Requested CPU frequency range <p1>[-p2][:p3]" ) cpus_per_tres: Optional[str] = Field( None, title="Semicolon delimited list of TRES=# values values indicating how many CPUs should be allocated for each specified TRES (currently only used for gres/gpu)", ) crontab: Optional[CronEntry] = Field(None, title="Specification for scrontab job") deadline: Optional[int] = Field( None, title="Latest time that the job may start (UNIX timestamp)" ) delay_boot: Optional[int] = Field( None, title="Number of seconds after job eligible start that nodes will be rebooted to satisfy feature specification", ) dependency: Optional[str] = Field( None, title="Other jobs that must meet certain criteria before this job can start", ) end_time: Optional[int] = Field(None, title="Expected end time (UNIX timestamp)") environment: Optional[List[str]] = Field( None, title="Environment variables to be set for the job" ) rlimits: Optional[JobDescMsgRlimits] = Field(None, title="Job desc msg rlimits") excluded_nodes: Optional[List[str]] = Field( None, title="Comma separated list of nodes that may not be used" ) extra: Optional[str] = Field( None, title="Arbitrary string used for node filtering if extra constraints are enabled", ) constraints: Optional[str] = Field( None, title="Comma separated list of features that are required" ) group_id: Optional[str] = Field( None, title="Group ID of the user that owns the job" ) hetjob_group: Optional[int] = Field( None, title="Unique sequence number applied to this component of the heterogeneous job", ) immediate: Optional[bool] = Field( None, title="If true, exit if resources are not available within the time period specified", ) job_id: Optional[int] = Field(None, title="Job ID") kill_on_node_fail: Optional[bool] = Field( None, title="If true, kill job on node failure" ) licenses: Optional[str] = Field(None, title="License(s) required by the job") mail_type: Optional[List[str]] = Field(None, title="Mail event type(s)") mail_user: Optional[str] = Field(None, title="User to receive email notifications") mcs_label: Optional[str] = Field( None, title="Multi-Category Security label on the job" ) memory_binding: Optional[str] = Field(None, title="Binding map for map/mask_cpu") memory_binding_type: Optional[List[str]] = Field( None, title="Method for binding tasks to memory" ) memory_per_tres: Optional[str] = Field( None, title="Semicolon delimited list of TRES=# values indicating how much memory in megabytes should be allocated for each specified TRES (currently only used for gres/gpu)", ) name: Optional[str] = Field(None, title="Job name") network: Optional[str] = Field(None, title="Network specs for job step") nice: Optional[int] = Field(None, title="Requested job priority change") tasks: Optional[int] = Field(None, title="Number of tasks") oom_kill_step: Optional[int] = Field( None, title="Kill whole step in case of OOM in one of the tasks" ) open_mode: Optional[List[str]] = Field( None, title="Open mode used for stdout and stderr files" ) reserve_ports: Optional[int] = Field( None, title="Port to send various notification msg to" ) overcommit: Optional[bool] = Field(None, title="Overcommit resources") partition: Optional[str] = Field(None, title="Partition assigned to the job") distribution_plane_size: Optional[Uint16NoValStruct] = Field( None, title="Plane size specification when distribution specifies plane" ) power_flags: Optional[List[Dict[str, Any]]] = Field(None, title="Power Flags") prefer: Optional[str] = Field( None, title="Comma separated list of features that are preferred but not required", ) hold: Optional[bool] = Field(None, title="Hold (true) or release (false) job") priority: Optional[Uint32NoValStruct] = Field( None, title="Request specific job priority" ) profile: Optional[List[str]] = Field( None, title="Profile used by the acct_gather_profile plugin" ) qos: Optional[str] = Field(None, title="Quality of Service assigned to the job") reboot: Optional[bool] = Field(None, title="Node reboot requested before start") required_nodes: Optional[List[str]] = Field( None, title="Comma separated list of required nodes" ) requeue: Optional[bool] = Field( None, title="Determines whether the job may be requeued" ) reservation: Optional[str] = Field(None, title="Name of reservation to use") script: Optional[str] = Field( None, title="Job batch script; only the first component in a HetJob is populated or honored", ) shared: Optional[List[str]] = Field( None, title="How the job can share resources with other jobs, if at all" ) site_factor: Optional[int] = Field(None, title="Site-specific priority factor") spank_environment: Optional[List[str]] = Field( None, title="Environment variables for job prolog/epilog scripts as set by SPANK plugins", ) distribution: Optional[str] = Field(None, title="Layout") time_limit: Optional[Uint32NoValStruct] = Field( None, title="Maximum run time in minutes" ) time_minimum: Optional[Uint32NoValStruct] = Field( None, title="Minimum run time in minutes" ) tres_bind: Optional[str] = Field(None, title="Task to TRES binding directives") tres_freq: Optional[str] = Field(None, title="TRES frequency directives") tres_per_job: Optional[str] = Field( None, title="Comma separated list of TRES=# values to be allocated for every job", ) tres_per_node: Optional[str] = Field( None, title="Comma separated list of TRES=# values to be allocated for every node", ) tres_per_socket: Optional[str] = Field( None, title="Comma separated list of TRES=# values to be allocated for every socket", ) tres_per_task: Optional[str] = Field( None, title="Comma separated list of TRES=# values to be allocated for every task", ) user_id: Optional[str] = Field(None, title="User ID that owns the job") wait_all_nodes: Optional[bool] = Field( None, title="If true, wait to start until after all nodes have booted" ) kill_warning_flags: Optional[List[str]] = Field( None, title="Flags related to job signals" ) kill_warning_signal: Optional[str] = Field( None, title='Signal to send when approaching end time (e.g. "10" or "USR1")' ) kill_warning_delay: Optional[Uint16NoValStruct] = Field( None, title="Number of seconds before end time to send the warning signal" ) current_working_directory: Optional[str] = Field( None, title="Working directory to use for the job" ) cpus_per_task: Optional[int] = Field( None, title="Number of CPUs required by each task" ) minimum_cpus: Optional[int] = Field(None, title="Minimum number of CPUs required") maximum_cpus: Optional[int] = Field(None, title="Maximum number of CPUs required") nodes: Optional[str] = Field( None, title="Node count range specification (e.g. 1-15:4)" ) minimum_nodes: Optional[int] = Field(None, title="Minimum node count") maximum_nodes: Optional[int] = Field(None, title="Maximum node count") minimum_boards_per_node: Optional[int] = Field( None, title="Boards per node required" ) minimum_sockets_per_board: Optional[int] = Field( None, title="Sockets per board required" ) sockets_per_node: Optional[int] = Field(None, title="Sockets per node required") threads_per_core: Optional[int] = Field(None, title="Threads per core required") tasks_per_node: Optional[int] = Field( None, title="Number of tasks to invoke on each node" ) tasks_per_socket: Optional[int] = Field( None, title="Number of tasks to invoke on each socket" ) tasks_per_core: Optional[int] = Field( None, title="Number of tasks to invoke on each core" ) tasks_per_board: Optional[int] = Field( None, title="Number of tasks to invoke on each board" ) ntasks_per_tres: Optional[int] = Field( None, title="Number of tasks that can access each GPU" ) minimum_cpus_per_node: Optional[int] = Field( None, title="Minimum number of CPUs per node" ) memory_per_cpu: Optional[Uint64NoValStruct] = Field( None, title="Minimum memory in megabytes per allocated CPU" ) memory_per_node: Optional[Uint64NoValStruct] = Field( None, title="Minimum memory in megabytes per allocated node" ) temporary_disk_per_node: Optional[int] = Field( None, title="Minimum tmp disk space required per node" ) selinux_context: Optional[str] = Field(None, title="SELinux context") required_switches: Optional[Uint32NoValStruct] = Field( None, title="Maximum number of switches" ) segment_size: Optional[Uint16NoValStruct] = Field( None, title="Segment size for topology/block" ) standard_error: Optional[str] = Field(None, title="Path to stderr file") standard_input: Optional[str] = Field(None, title="Path to stdin file") standard_output: Optional[str] = Field(None, title="Path to stdout file") wait_for_switch: Optional[int] = Field( None, title="Maximum time to wait for switches in seconds" ) wckey: Optional[str] = Field(None, title="Workload characterization key") x11: Optional[List[str]] = Field(None, title="X11 forwarding options") x11_magic_cookie: Optional[str] = Field( None, title="Magic cookie for X11 forwarding" ) x11_target_host: Optional[str] = Field( None, title="Hostname or UNIX socket if x11_target_port=0" ) x11_target_port: Optional[int] = Field(None, title="TCP port")
[docs] class JobRes(BaseModel): select_type: Optional[List[str]] = Field( None, title="Scheduler consumable resource selection type" ) nodes: Optional[JobResNodes] = Field(None, title="Job res nodes") cpus: Optional[int] = Field(None, title="Number of allocated CPUs") threads_per_core: Optional[Uint16NoValStruct] = Field( None, title="Number of processor threads per CPU core" )
[docs] class JobSubmitReq(BaseModel): script: Optional[str] = Field( None, title="Deprecated; Populate script field in jobs[0] or job" ) jobs: Optional[List[JobDescMsg]] = Field(None, title="HetJob description") job: Optional[JobDescMsg] = Field(None, title="Job description")
[docs] class OpenapiMeta(BaseModel): plugin: Optional[OpenapiMetaPlugin] = Field(None, title="Openapi meta plugin") client: Optional[OpenapiMetaClient] = Field(None, title="Openapi meta client") command: Optional[List[str]] = Field(None, title="CLI command (if applicable)") slurm: Optional[OpenapiMetaSlurm] = Field(None, title="Openapi meta slurm")
[docs] class PostBodySlurmJobSubmit(BaseModel): content: Optional[JobSubmitReq] = Field(None, title="Job submit req")
[docs] class ProcessExitCodeVerbose(BaseModel): status: Optional[List[str]] = Field(None, title="Status given by return code") return_code: Optional[Uint32NoValStruct] = Field( None, title="Process return code (numeric)" ) signal: Optional[ProcessExitCodeVerboseSignal] = Field( None, title="Process exit code verbose signal" )
[docs] class JobInfo(BaseModel): account: Optional[str] = Field(None, title="Account associated with the job") accrue_time: Optional[Uint64NoValStruct] = Field( None, title="When the job started accruing age priority (UNIX timestamp)" ) admin_comment: Optional[str] = Field( None, title="Arbitrary comment made by administrator" ) allocating_node: Optional[str] = Field( None, title="Local node making the resource allocation" ) array_job_id: Optional[Uint32NoValStruct] = Field( None, title="Job ID of job array, or 0 if N/A" ) array_task_id: Optional[Uint32NoValStruct] = Field( None, title="Task ID of this task in job array" ) array_max_tasks: Optional[Uint32NoValStruct] = Field( None, title="Maximum number of simultaneously running array tasks, 0 if no limit", ) array_task_string: Optional[str] = Field( None, title="String expression of task IDs in this record" ) association_id: Optional[int] = Field( None, title="Unique identifier for the association" ) batch_features: Optional[str] = Field( None, title="Features required for batch script's node" ) batch_flag: Optional[bool] = Field(None, title="True if batch job") batch_host: Optional[str] = Field(None, title="Name of host running batch script") flags: Optional[List[str]] = Field(None, title="Job flags") burst_buffer: Optional[str] = Field(None, title="Burst buffer specifications") burst_buffer_state: Optional[str] = Field(None, title="Burst buffer state details") cluster: Optional[str] = Field(None, title="Cluster name") cluster_features: Optional[str] = Field( None, title="List of required cluster features" ) command: Optional[str] = Field(None, title="Executed command") comment: Optional[str] = Field(None, title="Arbitrary comment") container: Optional[str] = Field( None, title="Absolute path to OCI container bundle" ) container_id: Optional[str] = Field(None, title="OCI container ID") contiguous: Optional[bool] = Field( None, title="True if job requires contiguous nodes" ) core_spec: Optional[int] = Field(None, title="Specialized core count") thread_spec: Optional[int] = Field(None, title="Specialized thread count") cores_per_socket: Optional[Uint16NoValStruct] = Field( None, title="Cores per socket required" ) billable_tres: Optional[Float64NoValStruct] = Field(None, title="Billable TRES") cpus_per_task: Optional[Uint16NoValStruct] = Field( None, title="Number of CPUs required by each task" ) cpu_frequency_minimum: Optional[Uint32NoValStruct] = Field( None, title="Minimum CPU frequency" ) cpu_frequency_maximum: Optional[Uint32NoValStruct] = Field( None, title="Maximum CPU frequency" ) cpu_frequency_governor: Optional[Uint32NoValStruct] = Field( None, title="CPU frequency governor" ) cpus_per_tres: Optional[str] = Field( None, title="Semicolon delimited list of TRES=# values indicating how many CPUs should be allocated for each specified TRES (currently only used for gres/gpu)", ) cron: Optional[str] = Field(None, title="Time specification for scrontab job") deadline: Optional[Uint64NoValStruct] = Field( None, title="Latest time that the job may start (UNIX timestamp)" ) delay_boot: Optional[Uint32NoValStruct] = Field( None, title="Number of seconds after job eligible start that nodes will be rebooted to satisfy feature specification", ) dependency: Optional[str] = Field( None, title="Other jobs that must meet certain criteria before this job can start", ) derived_exit_code: Optional[ProcessExitCodeVerbose] = Field( None, title="Highest exit code of all job steps" ) eligible_time: Optional[Uint64NoValStruct] = Field( None, title="Time when the job became eligible to run (UNIX timestamp)" ) end_time: Optional[Uint64NoValStruct] = Field( None, title="End time, real or expected (UNIX timestamp)" ) excluded_nodes: Optional[str] = Field( None, title="Comma separated list of nodes that may not be used" ) exit_code: Optional[ProcessExitCodeVerbose] = Field( None, title="Exit code of the job" ) extra: Optional[str] = Field( None, title="Arbitrary string used for node filtering if extra constraints are enabled", ) failed_node: Optional[str] = Field( None, title="Name of node that caused job failure" ) features: Optional[str] = Field( None, title="Comma separated list of features that are required" ) federation_origin: Optional[str] = Field( None, title="Origin cluster's name (when using federation)" ) federation_siblings_active: Optional[str] = Field( None, title="Active sibling job names" ) federation_siblings_viable: Optional[str] = Field( None, title="Viable sibling job names" ) gres_detail: Optional[List[str]] = Field( None, title="List of GRES index and counts allocated per node" ) group_id: Optional[int] = Field( None, title="Group ID of the user that owns the job" ) group_name: Optional[str] = Field( None, title="Group name of the user that owns the job" ) het_job_id: Optional[Uint32NoValStruct] = Field( None, title="Heterogeneous job ID, if applicable" ) het_job_id_set: Optional[str] = Field( None, title="Job ID range for all heterogeneous job components" ) het_job_offset: Optional[Uint32NoValStruct] = Field( None, title="Unique sequence number applied to this component of the heterogeneous job", ) job_id: Optional[int] = Field(None, title="Job ID") job_resources: Optional[JobRes] = Field(None, title="Resources used by the job") job_size_str: Optional[List[str]] = Field( None, title="Number of nodes (in a range) required for this job" ) job_state: Optional[List[str]] = Field(None, title="Current state") last_sched_evaluation: Optional[Uint64NoValStruct] = Field( None, title="Last time job was evaluated for scheduling (UNIX timestamp)" ) licenses: Optional[str] = Field(None, title="License(s) required by the job") mail_type: Optional[List[str]] = Field(None, title="Mail event type(s)") mail_user: Optional[str] = Field(None, title="User to receive email notifications") max_cpus: Optional[Uint32NoValStruct] = Field( None, title="Maximum number of CPUs usable by the job" ) max_nodes: Optional[Uint32NoValStruct] = Field( None, title="Maximum number of nodes usable by the job" ) mcs_label: Optional[str] = Field( None, title="Multi-Category Security label on the job" ) memory_per_tres: Optional[str] = Field( None, title="Semicolon delimited list of TRES=# values indicating how much memory in megabytes should be allocated for each specified TRES (currently only used for gres/gpu)", ) name: Optional[str] = Field(None, title="Job name") network: Optional[str] = Field(None, title="Network specs for the job") nodes: Optional[str] = Field(None, title="Node(s) allocated to the job") nice: Optional[int] = Field(None, title="Requested job priority change") tasks_per_core: Optional[Uint16NoValStruct] = Field( None, title="Number of tasks invoked on each core" ) tasks_per_tres: Optional[Uint16NoValStruct] = Field( None, title="Number of tasks that can assess each GPU" ) tasks_per_node: Optional[Uint16NoValStruct] = Field( None, title="Number of tasks invoked on each node" ) tasks_per_socket: Optional[Uint16NoValStruct] = Field( None, title="Number of tasks invoked on each socket" ) tasks_per_board: Optional[Uint16NoValStruct] = Field( None, title="Number of tasks invoked on each board" ) cpus: Optional[Uint32NoValStruct] = Field( None, title="Minimum number of CPUs required" ) node_count: Optional[Uint32NoValStruct] = Field( None, title="Minimum number of nodes required" ) tasks: Optional[Uint32NoValStruct] = Field(None, title="Number of tasks") partition: Optional[str] = Field(None, title="Partition assigned to the job") prefer: Optional[str] = Field( None, title="Feature(s) the job requested but that are not required" ) memory_per_cpu: Optional[Uint64NoValStruct] = Field( None, title="Minimum memory in megabytes per allocated CPU" ) memory_per_node: Optional[Uint64NoValStruct] = Field( None, title="Minimum memory in megabytes per allocated node" ) minimum_cpus_per_node: Optional[Uint16NoValStruct] = Field( None, title="Minimum number of CPUs per node" ) minimum_tmp_disk_per_node: Optional[Uint32NoValStruct] = Field( None, title="Minimum tmp disk space required per node" ) power: Optional[JobInfoPower] = Field(None, title="Job info power") preempt_time: Optional[Uint64NoValStruct] = Field( None, title="Time job received preemption signal (UNIX timestamp)" ) preemptable_time: Optional[Uint64NoValStruct] = Field( None, title="Time job becomes eligible for preemption (UNIX timestamp)" ) pre_sus_time: Optional[Uint64NoValStruct] = Field( None, title="Total run time prior to last suspend in seconds" ) hold: Optional[bool] = Field(None, title="Hold (true) or release (false) job") priority: Optional[Uint32NoValStruct] = Field( None, title="Request specific job priority" ) priority_by_partition: Optional[List[PartPrio]] = Field( None, title="Prospective job priority in each partition that may be used by this job", ) profile: Optional[List[str]] = Field( None, title="Profile used by the acct_gather_profile plugin" ) qos: Optional[str] = Field( None, title="Quality of Service assigned to the job, if pending the QOS requested", ) reboot: Optional[bool] = Field(None, title="Node reboot requested before start") required_nodes: Optional[str] = Field( None, title="Comma separated list of required nodes" ) required_switches: Optional[int] = Field(None, title="Maximum number of switches") requeue: Optional[bool] = Field( None, title="Determines whether the job may be requeued" ) resize_time: Optional[Uint64NoValStruct] = Field( None, title="Time of last size change (UNIX timestamp)" ) restart_cnt: Optional[int] = Field(None, title="Number of job restarts") resv_name: Optional[str] = Field(None, title="Name of reservation to use") scheduled_nodes: Optional[str] = Field( None, title="List of nodes scheduled to be used for the job" ) selinux_context: Optional[str] = Field(None, title="SELinux context") shared: Optional[List[str]] = Field( None, title="How the job can share resources with other jobs, if at all" ) sockets_per_board: Optional[int] = Field( None, title="Number of sockets per board required" ) sockets_per_node: Optional[Uint16NoValStruct] = Field( None, title="Number of sockets per node required" ) start_time: Optional[Uint64NoValStruct] = Field( None, title="Time execution began, or is expected to begin (UNIX timestamp)" ) state_description: Optional[str] = Field( None, title="Optional details for state_reason" ) state_reason: Optional[str] = Field( None, title="Reason for current Pending or Failed state" ) standard_error: Optional[str] = Field(None, title="Path to stderr file") standard_input: Optional[str] = Field(None, title="Path to stdin file") standard_output: Optional[str] = Field(None, title="Path to stdout file") submit_time: Optional[Uint64NoValStruct] = Field( None, title="Time when the job was submitted (UNIX timestamp)" ) suspend_time: Optional[Uint64NoValStruct] = Field( None, title="Time the job was last suspended or resumed (UNIX timestamp)" ) system_comment: Optional[str] = Field( None, title="Arbitrary comment from slurmctld" ) time_limit: Optional[Uint32NoValStruct] = Field( None, title="Maximum run time in minutes" ) time_minimum: Optional[Uint32NoValStruct] = Field( None, title="Minimum run time in minutes" ) threads_per_core: Optional[Uint16NoValStruct] = Field( None, title="Number of processor threads per CPU core required" ) tres_bind: Optional[str] = Field(None, title="Task to TRES binding directives") tres_freq: Optional[str] = Field(None, title="TRES frequency directives") tres_per_job: Optional[str] = Field( None, title="Comma separated list of TRES=# values to be allocated per job" ) tres_per_node: Optional[str] = Field( None, title="Comma separated list of TRES=# values to be allocated per node" ) tres_per_socket: Optional[str] = Field( None, title="Comma separated list of TRES=# values to be allocated per socket" ) tres_per_task: Optional[str] = Field( None, title="Comma separated list of TRES=# values to be allocated per task" ) tres_req_str: Optional[str] = Field(None, title="TRES requested by the job") tres_alloc_str: Optional[str] = Field(None, title="TRES used by the job") user_id: Optional[int] = Field(None, title="User ID that owns the job") user_name: Optional[str] = Field(None, title="User name that owns the job") maximum_switch_wait_time: Optional[int] = Field( None, title="Maximum time to wait for switches in seconds" ) wckey: Optional[str] = Field(None, title="Workload characterization key") current_working_directory: Optional[str] = Field( None, title="Working directory to use for the job" )
[docs] class OpenapiJobInfoResp(BaseModel): jobs: Optional[List[JobInfo]] = Field(None, title="List of jobs") last_backfill: Optional[Uint64NoValStruct] = Field( None, title="Time of last backfill scheduler run (UNIX timestamp)" ) last_update: Optional[Uint64NoValStruct] = Field( None, title="Time of last job change (UNIX timestamp)" ) meta: Optional[OpenapiMeta] = Field(None, title="Slurm meta values") errors: Optional[List[OpenapiError]] = Field(None, title="Query errors") warnings: Optional[List[OpenapiWarning]] = Field(None, title="Query warnings")
[docs] class OpenapiJobSubmitResponse(BaseModel): job_id: Optional[int] = Field(None, title="submitted Job ID") step_id: Optional[str] = Field(None, title="submitted Step ID") job_submit_user_msg: Optional[str] = Field( None, title="Job submission user message" ) meta: Optional[OpenapiMeta] = Field(None, title="Slurm meta values") errors: Optional[List[OpenapiError]] = Field(None, title="Query errors") warnings: Optional[List[OpenapiWarning]] = Field(None, title="Query warnings")
[docs] class OpenapiKillJobResp(BaseModel): status: Optional[List[KillJobsRespJob]] = Field( None, title="resultant status of signal request" ) meta: Optional[OpenapiMeta] = Field(None, title="Slurm meta values") errors: Optional[List[OpenapiError]] = Field(None, title="Query errors") warnings: Optional[List[OpenapiWarning]] = Field(None, title="Query warnings")
[docs] class PostResponse200SlurmJobSubmit(BaseModel): content: OpenapiJobSubmitResponse = Field(..., title="Openapi job submit response")
[docs] class PostResponseDefaultSlurmJobSubmit(BaseModel): content: OpenapiJobSubmitResponse = Field(..., title="Openapi job submit response")
[docs] class DeleteResponse200SlurmJobJobid(BaseModel): content: OpenapiKillJobResp = Field(..., title="Openapi kill job resp")
[docs] class DeleteResponseDefaultSlurmJobJobid(BaseModel): content: OpenapiKillJobResp = Field(..., title="Openapi kill job resp")
[docs] class GetResponse200SlurmJobJobid(BaseModel): content: OpenapiJobInfoResp = Field(..., title="Openapi job info resp")
[docs] class GetResponse200SlurmJobs(BaseModel): content: OpenapiJobInfoResp = Field(..., title="Openapi job info resp")
[docs] class GetResponseDefaultSlurmJobJobid(BaseModel): content: OpenapiJobInfoResp = Field(..., title="Openapi job info resp")
[docs] class GetResponseDefaultSlurmJobs(BaseModel): content: OpenapiJobInfoResp = Field(..., title="Openapi job info resp")
[docs] class AllModels(BaseModel): model0: PostPathSlurmJobSubmit = Field( ..., title="POST /slurm/v0.0.42/job/submit: path parameters" ) model1: PostQuerySlurmJobSubmit = Field( ..., title="POST /slurm/v0.0.42/job/submit: query parameters" ) model2: Uint64NoValStruct = Field( ..., title="Defer the allocation of the job until the specified time (UNIX timestamp)", ) model3: CronEntryLine = Field(..., title="Cron entry line") model4: CronEntry = Field(..., title="Specification for scrontab job") model5: JobDescMsgRlimits = Field(..., title="Job desc msg rlimits") model6: Uint16NoValStruct = Field( ..., title="Plane size specification when distribution specifies plane" ) model7: Uint32NoValStruct = Field(..., title="Request specific job priority") model8: JobDescMsg = Field(..., title="Job desc msg") model9: JobSubmitReq = Field(..., title="Job submit req") model10: PostBodySlurmJobSubmit = Field(..., title="Job description") model11: OpenapiMetaPlugin = Field(..., title="Openapi meta plugin") model12: OpenapiMetaClient = Field(..., title="Openapi meta client") model13: OpenapiMetaSlurmVersion = Field(..., title="Openapi meta slurm version") model14: OpenapiMetaSlurm = Field(..., title="Openapi meta slurm") model15: OpenapiMeta = Field(..., title="Slurm meta values") model16: OpenapiError = Field(..., title="Openapi error") model17: OpenapiWarning = Field(..., title="Openapi warning") model18: OpenapiJobSubmitResponse = Field(..., title="Openapi job submit response") model19: PostResponse200SlurmJobSubmit = Field(..., title="job submission response") model20: PostResponseDefaultSlurmJobSubmit = Field( ..., title="job submission response" ) model21: GetPathSlurmJobJobid = Field( ..., title="GET /slurm/v0.0.42/job/{job_id}: path parameters" ) model22: GetQuerySlurmJobJobid = Field( ..., title="GET /slurm/v0.0.42/job/{job_id}: query parameters" ) model23: GetBodySlurmJobJobid = Field( ..., title="GET /slurm/v0.0.42/job/{job_id}: body" ) model24: Float64NoValStruct = Field(..., title="Billable TRES") model25: ProcessExitCodeVerboseSignal = Field( ..., title="Process exit code verbose signal" ) model26: ProcessExitCodeVerbose = Field( ..., title="Highest exit code of all job steps" ) model27: JobResNodeCpus = Field(..., title="Job res node cpus") model28: JobResNodeMemory = Field(..., title="Job res node memory") model29: JobResCore = Field(..., title="Job res core") model30: JobResSocket = Field(..., title="Job res socket") model31: JobResNode = Field(..., title="Job resources for a node") model32: JobResNodes = Field(..., title="Job res nodes") model33: JobRes = Field(..., title="Resources used by the job") model34: JobInfoPower = Field(..., title="Job info power") model35: PartPrio = Field(..., title="Part prio") model36: JobInfo = Field(..., title="Job info") model37: OpenapiJobInfoResp = Field(..., title="Openapi job info resp") model38: GetResponse200SlurmJobJobid = Field(..., title="job(s) information") model39: GetResponseDefaultSlurmJobJobid = Field(..., title="job(s) information") model40: DeletePathSlurmJobJobid = Field( ..., title="DELETE /slurm/v0.0.42/job/{job_id}: path parameters" ) model41: DeleteQuerySlurmJobJobid = Field( ..., title="DELETE /slurm/v0.0.42/job/{job_id}: query parameters" ) model42: DeleteBodySlurmJobJobid = Field( ..., title="DELETE /slurm/v0.0.42/job/{job_id}: body" ) model43: KillJobsRespJobError = Field(..., title="Kill jobs resp job error") model44: KillJobsRespJobFederation = Field( ..., title="Kill jobs resp job federation" ) model45: KillJobsRespJob = Field(..., title="List of jobs signal responses") model46: OpenapiKillJobResp = Field(..., title="Openapi kill job resp") model47: DeleteResponse200SlurmJobJobid = Field(..., title="job signal result") model48: DeleteResponseDefaultSlurmJobJobid = Field(..., title="job signal result") model49: GetPathSlurmJobs = Field( ..., title="GET /slurm/v0.0.42/jobs: path parameters" ) model50: GetQuerySlurmJobs = Field( ..., title="GET /slurm/v0.0.42/jobs: query parameters" ) model51: GetBodySlurmJobs = Field(..., title="GET /slurm/v0.0.42/jobs: body") model52: GetResponse200SlurmJobs = Field(..., title="job(s) information") model53: GetResponseDefaultSlurmJobs = Field(..., title="job(s) information")