Skip to content

Commit f506d63

Browse files
authored
Support for Slurm 23.02.X (#277)
1 parent 3b89325 commit f506d63

File tree

10 files changed

+229
-155
lines changed

10 files changed

+229
-155
lines changed

README.md

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ PySlurm is the Python client library for the [Slurm](https://slurm.schedmd.com)
1212
* [Python](https://www.python.org) - >= 3.6
1313
* [Cython](https://cython.org) - >= 0.29.30 but < 3.0
1414

15-
This PySlurm branch is for the Slurm Major-Release 22.05
15+
This PySlurm branch is for the Slurm Major-Release 23.02
1616

1717
## Installation
1818

@@ -24,8 +24,8 @@ the corresponding paths to the necessary files.
2424
You can specify these Paths with environment variables (recommended), for example:
2525

2626
```shell
27-
export SLURM_INCLUDE_DIR=/opt/slurm/22.05/include
28-
export SLURM_LIB_DIR=/opt/slurm/22.05/lib
27+
export SLURM_INCLUDE_DIR=/opt/slurm/23.02/include
28+
export SLURM_LIB_DIR=/opt/slurm/23.02/lib
2929
```
3030

3131
Then you can proceed to install PySlurm, for example by cloning the Repository:
@@ -44,9 +44,9 @@ Also see `python setup.py --help`
4444

4545
PySlurm's versioning scheme follows the official Slurm versioning. The first
4646
two numbers (MAJOR.MINOR) always correspond to Slurms Major-Release, for example
47-
`22.05`. The last number (MICRO) is however not tied in any way to Slurms
48-
MICRO version. For example, any PySlurm 22.05.X version should work with any
49-
Slurm 22.05.X release.
47+
`23.02`. The last number (MICRO) is however not tied in any way to Slurms
48+
MICRO version. For example, any PySlurm 23.02.X version should work with any
49+
Slurm 23.02.X release.
5050

5151
## Documentation
5252

pyslurm/__version__.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
__version__ = "22.5.1"
1+
__version__ = "23.2.0"

pyslurm/pydefines/slurm_defines.pxi

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -157,7 +157,6 @@ PRIVATE_DATA_USAGE = slurm.PRIVATE_DATA_USAGE
157157
PRIVATE_DATA_USERS = slurm.PRIVATE_DATA_USERS
158158
PRIVATE_DATA_ACCOUNTS = slurm.PRIVATE_DATA_ACCOUNTS
159159
PRIVATE_DATA_RESERVATIONS = slurm.PRIVATE_DATA_RESERVATIONS
160-
PRIVATE_CLOUD_NODES = slurm.PRIVATE_CLOUD_NODES
161160
PRIVATE_DATA_EVENTS = slurm.PRIVATE_DATA_EVENTS
162161

163162
PRIORITY_RESET_NONE = slurm.PRIORITY_RESET_NONE
@@ -329,7 +328,6 @@ DEBUG_FLAG_POWER = slurm.DEBUG_FLAG_POWER
329328
DEBUG_FLAG_TIME_CRAY = slurm.DEBUG_FLAG_TIME_CRAY
330329
DEBUG_FLAG_DB_ARCHIVE = slurm.DEBUG_FLAG_DB_ARCHIVE
331330
DEBUG_FLAG_DB_TRES = slurm.DEBUG_FLAG_DB_TRES
332-
DEBUG_FLAG_ESEARCH = slurm.DEBUG_FLAG_ESEARCH
333331
DEBUG_FLAG_NODE_FEATURES = slurm.DEBUG_FLAG_NODE_FEATURES
334332
DEBUG_FLAG_FEDR = slurm.DEBUG_FLAG_FEDR
335333
DEBUG_FLAG_HETJOB = slurm.DEBUG_FLAG_HETJOB

pyslurm/pydefines/slurm_enums.pxi

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -52,8 +52,6 @@ WAIT_QOS_THRES = slurm.WAIT_QOS_THRES
5252
WAIT_QOS_JOB_LIMIT = slurm.WAIT_QOS_JOB_LIMIT
5353
WAIT_QOS_RESOURCE_LIMIT = slurm.WAIT_QOS_RESOURCE_LIMIT
5454
WAIT_QOS_TIME_LIMIT = slurm.WAIT_QOS_TIME_LIMIT
55-
WAIT_BLOCK_MAX_ERR = slurm.WAIT_BLOCK_MAX_ERR
56-
WAIT_BLOCK_D_ACTION = slurm.WAIT_BLOCK_D_ACTION
5755
WAIT_CLEANING = slurm.WAIT_CLEANING
5856
WAIT_PROLOG = slurm.WAIT_PROLOG
5957
WAIT_QOS = slurm.WAIT_QOS
@@ -260,11 +258,7 @@ SWITCH_PLUGIN_CRAY = slurm.SWITCH_PLUGIN_CRAY
260258

261259
# enum select_jobdata_type
262260

263-
SELECT_JOBDATA_PAGG_ID = slurm.SELECT_JOBDATA_PAGG_ID
264-
SELECT_JOBDATA_PTR = slurm.SELECT_JOBDATA_PTR
265-
SELECT_JOBDATA_CLEANING = slurm.SELECT_JOBDATA_CLEANING
266261
SELECT_JOBDATA_NETWORK = slurm.SELECT_JOBDATA_NETWORK
267-
SELECT_JOBDATA_RELEASED = slurm.SELECT_JOBDATA_RELEASED
268262

269263
# end enum select_jobdata_type
270264

pyslurm/pydefines/slurm_errno_enums.pxi

Lines changed: 0 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -56,8 +56,6 @@ ESLURM_NOT_SUPPORTED = slurm.ESLURM_NOT_SUPPORTED
5656
ESLURM_DISABLED = slurm.ESLURM_DISABLED
5757
ESLURM_DEPENDENCY = slurm.ESLURM_DEPENDENCY
5858
ESLURM_BATCH_ONLY = slurm.ESLURM_BATCH_ONLY
59-
ESLURM_TASKDIST_ARBITRARY_UNSUPPORTED = slurm.ESLURM_TASKDIST_ARBITRARY_UNSUPPORTED
60-
ESLURM_TASKDIST_REQUIRES_OVERCOMMIT = slurm.ESLURM_TASKDIST_REQUIRES_OVERCOMMIT
6159
ESLURM_JOB_HELD = slurm.ESLURM_JOB_HELD
6260
ESLURM_INVALID_CRED_TYPE_CHANGE = slurm.ESLURM_INVALID_CRED_TYPE_CHANGE
6361
ESLURM_INVALID_TASK_MEMORY = slurm.ESLURM_INVALID_TASK_MEMORY
@@ -79,9 +77,6 @@ ESLURM_PORTS_BUSY = slurm.ESLURM_PORTS_BUSY
7977
ESLURM_PORTS_INVALID = slurm.ESLURM_PORTS_INVALID
8078
ESLURM_PROLOG_RUNNING = slurm.ESLURM_PROLOG_RUNNING
8179
ESLURM_NO_STEPS = slurm.ESLURM_NO_STEPS
82-
ESLURM_INVALID_BLOCK_STATE = slurm.ESLURM_INVALID_BLOCK_STATE
83-
ESLURM_INVALID_BLOCK_LAYOUT = slurm.ESLURM_INVALID_BLOCK_LAYOUT
84-
ESLURM_INVALID_BLOCK_NAME = slurm.ESLURM_INVALID_BLOCK_NAME
8580
ESLURM_INVALID_QOS = slurm.ESLURM_INVALID_QOS
8681
ESLURM_QOS_PREEMPTION_LOOP = slurm.ESLURM_QOS_PREEMPTION_LOOP
8782
ESLURM_NODE_NOT_AVAIL = slurm.ESLURM_NODE_NOT_AVAIL
@@ -141,53 +136,31 @@ ESLURM_INVALID_TIME_MIN_LIMIT = slurm.ESLURM_INVALID_TIME_MIN_LIMIT
141136
ESLURM_DEFER = slurm.ESLURM_DEFER
142137
ESLURM_CONFIGLESS_DISABLED = slurm.ESLURM_CONFIGLESS_DISABLED
143138
ESLURM_ENVIRONMENT_MISSING = slurm.ESLURM_ENVIRONMENT_MISSING
144-
ESLURMD_PIPE_ERROR_ON_TASK_SPAWN = slurm.ESLURMD_PIPE_ERROR_ON_TASK_SPAWN
145139
ESLURMD_KILL_TASK_FAILED = slurm.ESLURMD_KILL_TASK_FAILED
146140
ESLURMD_KILL_JOB_ALREADY_COMPLETE = slurm.ESLURMD_KILL_JOB_ALREADY_COMPLETE
147141
ESLURMD_INVALID_ACCT_FREQ = slurm.ESLURMD_INVALID_ACCT_FREQ
148142
ESLURMD_INVALID_JOB_CREDENTIAL = slurm.ESLURMD_INVALID_JOB_CREDENTIAL
149-
ESLURMD_UID_NOT_FOUND = slurm.ESLURMD_UID_NOT_FOUND
150-
ESLURMD_GID_NOT_FOUND = slurm.ESLURMD_GID_NOT_FOUND
151143
ESLURMD_CREDENTIAL_EXPIRED = slurm.ESLURMD_CREDENTIAL_EXPIRED
152144
ESLURMD_CREDENTIAL_REVOKED = slurm.ESLURMD_CREDENTIAL_REVOKED
153145
ESLURMD_CREDENTIAL_REPLAYED = slurm.ESLURMD_CREDENTIAL_REPLAYED
154146
ESLURMD_CREATE_BATCH_DIR_ERROR = slurm.ESLURMD_CREATE_BATCH_DIR_ERROR
155-
ESLURMD_MODIFY_BATCH_DIR_ERROR = slurm.ESLURMD_MODIFY_BATCH_DIR_ERROR
156-
ESLURMD_CREATE_BATCH_SCRIPT_ERROR = slurm.ESLURMD_CREATE_BATCH_SCRIPT_ERROR
157-
ESLURMD_MODIFY_BATCH_SCRIPT_ERROR = slurm.ESLURMD_MODIFY_BATCH_SCRIPT_ERROR
158147
ESLURMD_SETUP_ENVIRONMENT_ERROR = slurm.ESLURMD_SETUP_ENVIRONMENT_ERROR
159-
ESLURMD_SHARED_MEMORY_ERROR = slurm.ESLURMD_SHARED_MEMORY_ERROR
160148
ESLURMD_SET_UID_OR_GID_ERROR = slurm.ESLURMD_SET_UID_OR_GID_ERROR
161-
ESLURMD_SET_SID_ERROR = slurm.ESLURMD_SET_SID_ERROR
162-
ESLURMD_CANNOT_SPAWN_IO_THREAD = slurm.ESLURMD_CANNOT_SPAWN_IO_THREAD
163-
ESLURMD_FORK_FAILED = slurm.ESLURMD_FORK_FAILED
164149
ESLURMD_EXECVE_FAILED = slurm.ESLURMD_EXECVE_FAILED
165150
ESLURMD_IO_ERROR = slurm.ESLURMD_IO_ERROR
166151
ESLURMD_PROLOG_FAILED = slurm.ESLURMD_PROLOG_FAILED
167152
ESLURMD_EPILOG_FAILED = slurm.ESLURMD_EPILOG_FAILED
168-
ESLURMD_SESSION_KILLED = slurm.ESLURMD_SESSION_KILLED
169153
ESLURMD_TOOMANYSTEPS = slurm.ESLURMD_TOOMANYSTEPS
170154
ESLURMD_STEP_EXISTS = slurm.ESLURMD_STEP_EXISTS
171155
ESLURMD_JOB_NOTRUNNING = slurm.ESLURMD_JOB_NOTRUNNING
172156
ESLURMD_STEP_SUSPENDED = slurm.ESLURMD_STEP_SUSPENDED
173157
ESLURMD_STEP_NOTSUSPENDED = slurm.ESLURMD_STEP_NOTSUSPENDED
174158
ESLURMD_INVALID_SOCKET_NAME_LEN = slurm.ESLURMD_INVALID_SOCKET_NAME_LEN
175-
ESCRIPT_CHDIR_FAILED = slurm.ESCRIPT_CHDIR_FAILED
176-
ESCRIPT_OPEN_OUTPUT_FAILED = slurm.ESCRIPT_OPEN_OUTPUT_FAILED
177-
ESCRIPT_NON_ZERO_RETURN = slurm.ESCRIPT_NON_ZERO_RETURN
178-
SLURM_PROTOCOL_SOCKET_IMPL_ZERO_RECV_LENGTH = slurm.SLURM_PROTOCOL_SOCKET_IMPL_ZERO_RECV_LENGTH
179-
SLURM_PROTOCOL_SOCKET_IMPL_NEGATIVE_RECV_LENGTH = slurm.SLURM_PROTOCOL_SOCKET_IMPL_NEGATIVE_RECV_LENGTH
180-
SLURM_PROTOCOL_SOCKET_IMPL_NOT_ALL_DATA_SENT = slurm.SLURM_PROTOCOL_SOCKET_IMPL_NOT_ALL_DATA_SENT
181159
ESLURM_PROTOCOL_INCOMPLETE_PACKET = slurm.ESLURM_PROTOCOL_INCOMPLETE_PACKET
182160
SLURM_PROTOCOL_SOCKET_IMPL_TIMEOUT = slurm.SLURM_PROTOCOL_SOCKET_IMPL_TIMEOUT
183161
SLURM_PROTOCOL_SOCKET_ZERO_BYTES_SENT = slurm.SLURM_PROTOCOL_SOCKET_ZERO_BYTES_SENT
184162
ESLURM_AUTH_CRED_INVALID = slurm.ESLURM_AUTH_CRED_INVALID
185-
ESLURM_AUTH_FOPEN_ERROR = slurm.ESLURM_AUTH_FOPEN_ERROR
186-
ESLURM_AUTH_NET_ERROR = slurm.ESLURM_AUTH_NET_ERROR
187-
ESLURM_AUTH_UNABLE_TO_SIGN = slurm.ESLURM_AUTH_UNABLE_TO_SIGN
188163
ESLURM_AUTH_BADARG = slurm.ESLURM_AUTH_BADARG
189-
ESLURM_AUTH_MEMORY = slurm.ESLURM_AUTH_MEMORY
190-
ESLURM_AUTH_INVALID = slurm.ESLURM_AUTH_INVALID
191164
ESLURM_AUTH_UNPACK = slurm.ESLURM_AUTH_UNPACK
192165
ESLURM_DB_CONNECTION = slurm.ESLURM_DB_CONNECTION
193166
ESLURM_JOBS_RUNNING_ON_ASSOC = slurm.ESLURM_JOBS_RUNNING_ON_ASSOC

pyslurm/pydefines/slurmdb_defines.pxi

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -60,7 +60,6 @@ SLURMDB_FS_USE_PARENT = slurm.SLURMDB_FS_USE_PARENT
6060
SLURMDB_CLASSIFIED_FLAG = slurm.SLURMDB_CLASSIFIED_FLAG
6161
SLURMDB_CLASS_BASE = slurm.SLURMDB_CLASS_BASE
6262

63-
CLUSTER_FLAG_A1 = slurm.CLUSTER_FLAG_A1
6463
CLUSTER_FLAG_A2 = slurm.CLUSTER_FLAG_A2
6564
CLUSTER_FLAG_A3 = slurm.CLUSTER_FLAG_A3
6665
CLUSTER_FLAG_A4 = slurm.CLUSTER_FLAG_A4

pyslurm/pyslurm.pyx

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -641,8 +641,6 @@ cdef class config:
641641
Ctl_dict['keep_alive_time'] = slurm.int16orNone(self.__Config_ptr.keepalive_time)
642642
Ctl_dict['kill_on_bad_exit'] = bool(self.__Config_ptr.kill_on_bad_exit)
643643
Ctl_dict['kill_wait'] = self.__Config_ptr.kill_wait
644-
Ctl_dict['launch_params'] = slurm.stringOrNone(self.__Config_ptr.launch_type, '')
645-
Ctl_dict['launch_type'] = slurm.stringOrNone(self.__Config_ptr.launch_type, '')
646644
Ctl_dict['licenses'] = __get_licenses(self.__Config_ptr.licenses)
647645
Ctl_dict['log_fmt'] = self.__Config_ptr.log_fmt
648646
Ctl_dict['mail_domain'] = slurm.stringOrNone(self.__Config_ptr.mail_domain, '')
@@ -738,7 +736,6 @@ cdef class config:
738736
# TODO: slurmctld_host
739737
Ctl_dict['slurmctld_logfile'] = slurm.stringOrNone(self.__Config_ptr.slurmctld_logfile, '')
740738
Ctl_dict['slurmctld_pidfile'] = slurm.stringOrNone(self.__Config_ptr.slurmctld_pidfile, '')
741-
Ctl_dict['slurmctld_plugstack'] = slurm.stringOrNone(self.__Config_ptr.slurmctld_plugstack, '')
742739
Ctl_dict['slurmctld_port'] = self.__Config_ptr.slurmctld_port
743740
Ctl_dict['slurmctld_port_count'] = self.__Config_ptr.slurmctld_port_count
744741
Ctl_dict['slurmctld_primary_off_prog'] = slurm.stringOrNone(self.__Config_ptr.slurmctld_primary_off_prog, '')
@@ -6297,9 +6294,6 @@ cdef inline list debug_flags2str(uint64_t debug_flags):
62976294
if (debug_flags & DEBUG_FLAG_DB_WCKEY):
62986295
debugFlags.append('DB_WCKey')
62996296
6300-
if (debug_flags & DEBUG_FLAG_ESEARCH):
6301-
debugFlags.append('Elasticsearch')
6302-
63036297
if (debug_flags & DEBUG_FLAG_ENERGY):
63046298
debugFlags.append('Energy')
63056299

0 commit comments

Comments
 (0)