SHA256
1
0
forked from pool/slurm

Compare commits

...

15 Commits

Author SHA256 Message Date
Dominique Leuenberger
8a2be70840 Accepting request 1238577 from network:cluster
* `slurmrestd` - Remove deprecated fields from the following
     `.result` from `POST /slurm/v0.0.42/job/submit`.  
     `.job_id`, `.step_id`, `.job_submit_user_msg` from `POST /slurm/v0.0.42/job/{job_id}`.  
     `.job.exclusive`, `.jobs[].exclusive` to `POST /slurm/v0.0.42/job/submit`.  
     `.jobs[].exclusive` from `GET /slurm/v0.0.42/job/{job_id}`.  
     `.jobs[].exclusive` from `GET /slurm/v0.0.42/jobs`.  
     `.job.oversubscribe`, `.jobs[].oversubscribe` to `POST /slurm/v0.0.42/job/submit`.  
     `.jobs[].oversubscribe` from `GET /slurm/v0.0.42/job/{job_id}`.  
     `.jobs[].oversubscribe` from `GET /slurm/v0.0.42/jobs`.  
     `DELETE /slurm/v0.0.40/jobs`  
     `DELETE /slurm/v0.0.41/jobs`  
     `DELETE /slurm/v0.0.42/jobs`  
    allocation is granted.
    `job|socket|task` or `cpus|mem` per GRES.
    node update whereas previously only single nodes could be
    updated through `/node/<nodename>` endpoint:
    `POST /slurm/v0.0.42/nodes`
    partition as this is a cluster-wide option.
    `REQUEST_NODE_INFO RPC`.
    the db server is not reachable.
    (`.jobs[].priority_by_partition`) to JSON and YAML output.
    connection` error if the error was the result of an
    authentication failure.
    errors with the `SLURM_PROTOCOL_AUTHENTICATION_ERROR` error
    code.
    of `Unspecified error` if querying the following endpoints
    fails:  
    `GET /slurm/v0.0.40/diag/`  
    `GET /slurm/v0.0.41/diag/`  
    `GET /slurm/v0.0.42/diag/` (forwarded request 1238576 from eeich)

OBS-URL: https://build.opensuse.org/request/show/1238577
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/slurm?expand=0&rev=111
2025-01-18 12:18:25 +00:00
247a29f2a0 * slurmrestd - Remove deprecated fields from the following
`.result` from `POST /slurm/v0.0.42/job/submit`.  
     `.job_id`, `.step_id`, `.job_submit_user_msg` from `POST /slurm/v0.0.42/job/{job_id}`.  
     `.job.exclusive`, `.jobs[].exclusive` to `POST /slurm/v0.0.42/job/submit`.  
     `.jobs[].exclusive` from `GET /slurm/v0.0.42/job/{job_id}`.  
     `.jobs[].exclusive` from `GET /slurm/v0.0.42/jobs`.  
     `.job.oversubscribe`, `.jobs[].oversubscribe` to `POST /slurm/v0.0.42/job/submit`.  
     `.jobs[].oversubscribe` from `GET /slurm/v0.0.42/job/{job_id}`.  
     `.jobs[].oversubscribe` from `GET /slurm/v0.0.42/jobs`.  
     `DELETE /slurm/v0.0.40/jobs`  
     `DELETE /slurm/v0.0.41/jobs`  
     `DELETE /slurm/v0.0.42/jobs`  
    allocation is granted.
    `job|socket|task` or `cpus|mem` per GRES.
    node update whereas previously only single nodes could be
    updated through `/node/<nodename>` endpoint:
    `POST /slurm/v0.0.42/nodes`
    partition as this is a cluster-wide option.
    `REQUEST_NODE_INFO RPC`.
    the db server is not reachable.
    (`.jobs[].priority_by_partition`) to JSON and YAML output.
    connection` error if the error was the result of an
    authentication failure.
    errors with the `SLURM_PROTOCOL_AUTHENTICATION_ERROR` error
    code.
    of `Unspecified error` if querying the following endpoints
    fails:  
    `GET /slurm/v0.0.40/diag/`  
    `GET /slurm/v0.0.41/diag/`  
    `GET /slurm/v0.0.42/diag/`

OBS-URL: https://build.opensuse.org/package/show/network:cluster/slurm?expand=0&rev=307
2025-01-17 21:14:19 +00:00
3a3588a812 - Make test suite package work on SLE-12.
OBS-URL: https://build.opensuse.org/package/show/network:cluster/slurm?expand=0&rev=306
2025-01-17 20:34:50 +00:00
Ana Guerrero
3b4d2235f3 Accepting request 1236247 from network:cluster
- Fix testsuite:
  Cater for erroneous: `#include </src/[slurm_internal_header]>`
  statements. (forwarded request 1236246 from eeich)

OBS-URL: https://build.opensuse.org/request/show/1236247
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/slurm?expand=0&rev=110
2025-01-12 10:14:54 +00:00
bf43fd9d06 - Fix testsuite:
Cater for erroneous: `#include </src/[slurm_internal_header]>`
  statements.

OBS-URL: https://build.opensuse.org/package/show/network:cluster/slurm?expand=0&rev=304
2025-01-09 15:43:36 +00:00
Ana Guerrero
e8b6930a42 Accepting request 1235784 from network:cluster
- Update to version 24.11
  * `slurmctld` - Reject arbitrary distribution jobs that do not
    specifying a task count.
  * Fix backwards compatibility of the `RESPONSE_JOB_INFO RPC`
    (used by `squeue`, `scontrol show job`, etc.) with Slurm clients
    version 24.05 and below. This was a regression in 24.11.0rc1.
  * Do not let `slurmctld`/`slurmd` start if there are more nodes
    defined in `slurm.conf` than the maximum supported amount
    (64k nodes).
  * `slurmctld` - Set job's exit code to 1 when a job fails with
    state `JOB_NODE_FAIL`. This fixes `sbatch --wait` not being able
    to exit with error code when a job fails for this reason in
    some cases.
  * Fix certain reservation updates requested from 23.02 clients.
  * `slurmrestd` - Fix populating non-required object fields of
    objects as `{}` in JSON/YAML instead of `null` causing compiled
    OpenAPI clients to reject the response to
    `GET /slurm/v0.0.40/jobs` due to validation failure of
    `.jobs[].job_resources`.
  * Fix issue where older versions of Slurm talking to a 24.11 dbd
    could loose step accounting.
  * Fix minor memory leaks.
  * Fix bad memory reference when `xstrchr` fails to find char.
  * Remove duplicate checks for a data structure.
  * Fix race condition in `stepmgr` step completion handling.
  * `slurm.spec` - add ability to specify patches to apply on the
    command line.
  * `slurm.spec` - add ability to supply extra version information.
  * Fix 24.11 HA issues.
  * Fix requeued jobs keeping their priority until the decay thread (forwarded request 1235783 from eeich)

OBS-URL: https://build.opensuse.org/request/show/1235784
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/slurm?expand=0&rev=109
2025-01-09 14:07:22 +00:00
626fb47a3b - Update to version 24.11
* `slurmctld` - Reject arbitrary distribution jobs that do not
    specifying a task count.
  * Fix backwards compatibility of the `RESPONSE_JOB_INFO RPC`
    (used by `squeue`, `scontrol show job`, etc.) with Slurm clients
    version 24.05 and below. This was a regression in 24.11.0rc1.
  * Do not let `slurmctld`/`slurmd` start if there are more nodes
    defined in `slurm.conf` than the maximum supported amount
    (64k nodes).
  * `slurmctld` - Set job's exit code to 1 when a job fails with
    state `JOB_NODE_FAIL`. This fixes `sbatch --wait` not being able
    to exit with error code when a job fails for this reason in
    some cases.
  * Fix certain reservation updates requested from 23.02 clients.
  * `slurmrestd` - Fix populating non-required object fields of
    objects as `{}` in JSON/YAML instead of `null` causing compiled
    OpenAPI clients to reject the response to
    `GET /slurm/v0.0.40/jobs` due to validation failure of
    `.jobs[].job_resources`.
  * Fix issue where older versions of Slurm talking to a 24.11 dbd
    could loose step accounting.
  * Fix minor memory leaks.
  * Fix bad memory reference when `xstrchr` fails to find char.
  * Remove duplicate checks for a data structure.
  * Fix race condition in `stepmgr` step completion handling.
  * `slurm.spec` - add ability to specify patches to apply on the
    command line.
  * `slurm.spec` - add ability to supply extra version information.
  * Fix 24.11 HA issues.
  * Fix requeued jobs keeping their priority until the decay thread

OBS-URL: https://build.opensuse.org/package/show/network:cluster/slurm?expand=0&rev=302
2025-01-08 06:03:29 +00:00
Dominique Leuenberger
17d576bce0 Accepting request 1220076 from network:cluster
- Update to version 24.05.4 & fix for CVE-2024-48936.
  * Fix generic int sort functions.
  * Fix user look up using possible unrealized uid in the dbd.
  * `slurmrestd` - Fix regressions that allowed `slurmrestd` to
    be run as SlurmUser when `SlurmUser` was not root.
  * mpi/pmix fix race conditions with het jobs at step start/end
    which could make srun to hang.
  * Fix not showing some `SelectTypeParameters` in `scontrol show
    config`.
  * Avoid assert when dumping removed certain fields in JSON/YAML.
  * Improve how shards are scheduled with affinity in mind.
  * Fix `MaxJobsAccruePU` not being respected when `MaxJobsAccruePA`
    is set in the same QOS.
  * Prevent backfill from planning jobs that use overlapping
    resources for the same time slot if the job's time limit is
    less than `bf_resolution`.
  * Fix memory leak when requesting typed gres and
    `--[cpus|mem]-per-gpu`.
  * Prevent backfill from breaking out due to "system state
    changed" every 30 seconds if reservations use `REPLACE` or
   `REPLACE_DOWN` flags.
  * `slurmrestd` - Make sure that scheduler_unset parameter defaults
    to true even when the following flags are also set:
    `show_duplicates`, `skip_steps`, `disable_truncate_usage_time`,
    `run_away_jobs`, `whole_hetjob`, `disable_whole_hetjob`,
    `disable_wait_for_result`, `usage_time_as_submit_time`,
    `show_batch_script`, and or `show_job_environment`. Additionaly,
    always make sure show_duplicates and
    `disable_truncate_usage_time` default to true when the following
    flags are also set: `scheduler_unset`, `scheduled_on_submit`, (forwarded request 1220075 from eeich)

OBS-URL: https://build.opensuse.org/request/show/1220076
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/slurm?expand=0&rev=108
2024-11-01 20:07:50 +00:00
b1107f7a34 - Update to version 24.05.4 & fix for CVE-2024-48936.
* Fix generic int sort functions.
  * Fix user look up using possible unrealized uid in the dbd.
  * `slurmrestd` - Fix regressions that allowed `slurmrestd` to
    be run as SlurmUser when `SlurmUser` was not root.
  * mpi/pmix fix race conditions with het jobs at step start/end
    which could make srun to hang.
  * Fix not showing some `SelectTypeParameters` in `scontrol show
    config`.
  * Avoid assert when dumping removed certain fields in JSON/YAML.
  * Improve how shards are scheduled with affinity in mind.
  * Fix `MaxJobsAccruePU` not being respected when `MaxJobsAccruePA`
    is set in the same QOS.
  * Prevent backfill from planning jobs that use overlapping
    resources for the same time slot if the job's time limit is
    less than `bf_resolution`.
  * Fix memory leak when requesting typed gres and
    `--[cpus|mem]-per-gpu`.
  * Prevent backfill from breaking out due to "system state
    changed" every 30 seconds if reservations use `REPLACE` or
   `REPLACE_DOWN` flags.
  * `slurmrestd` - Make sure that scheduler_unset parameter defaults
    to true even when the following flags are also set:
    `show_duplicates`, `skip_steps`, `disable_truncate_usage_time`,
    `run_away_jobs`, `whole_hetjob`, `disable_whole_hetjob`,
    `disable_wait_for_result`, `usage_time_as_submit_time`,
    `show_batch_script`, and or `show_job_environment`. Additionaly,
    always make sure show_duplicates and
    `disable_truncate_usage_time` default to true when the following
    flags are also set: `scheduler_unset`, `scheduled_on_submit`,

OBS-URL: https://build.opensuse.org/package/show/network:cluster/slurm?expand=0&rev=300
2024-11-01 13:22:34 +00:00
Ana Guerrero
3133935d61 Accepting request 1217321 from network:cluster
- Add %(?%sysusers_requires} to slurm-config.
  This fixes issues when building against Slurm. (forwarded request 1217300 from eeich)

OBS-URL: https://build.opensuse.org/request/show/1217321
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/slurm?expand=0&rev=107
2024-10-24 13:42:28 +00:00
427f09ad29 - Add %(?%sysusers_requires} to slurm-config.
This fixes issues when building against Slurm.

OBS-URL: https://build.opensuse.org/package/show/network:cluster/slurm?expand=0&rev=298
2024-10-23 09:42:56 +00:00
Ana Guerrero
de9dc95156 Accepting request 1208086 from network:cluster
- Update to version 24.05.3
  * `data_parser/v0.0.40` - Added field descriptions.
  * `slurmrestd` - Avoid creating new slurmdbd connection per request
    to `* /slurm/slurmctld/*/*` endpoints.
  * Fix compilation issue with `switch/hpe_slingshot` plugin.
  * Fix gres per task allocation with threads-per-core.
  * `data_parser/v0.0.41` - Added field descriptions.
  * `slurmrestd` - Change back generated OpenAPI schema for
    `DELETE /slurm/v0.0.40/jobs/` to `RequestBody` instead of using
    parameters for request. `slurmrestd` will continue accept endpoint
    requests via `RequestBody` or HTTP query.
  * `topology/tree` - Fix issues with switch distance optimization.
  * Fix potential segfault of secondary `slurmctld` when falling back
    to the primary when running with a `JobComp` plugin.
  * Enable `--json`/`--yaml=v0.0.39` options on client commands to
    dump data using data_parser/v0.0.39 instead or outputting nothing.
  * `switch/hpe_slingshot` - Fix issue that could result in a 0 length
    state file.
  * Fix unnecessary message protocol downgrade for unregistered nodes.
  * Fix unnecessarily packing alias addrs when terminating jobs with
    a mix of non-cloud/dynamic nodes and powered down cloud/dynamic
    nodes.
  * `accounting_storage/mysql` - Fix issue when deleting a qos that
    could remove too many commas from the qos and/or delta_qos fields
    of the assoc table.
  * `slurmctld` - Fix memory leak when using RestrictedCoresPerGPU.
  * Fix allowing access to reservations without `MaxStartDelay` set.
  * Fix regression introduced in 24.05.0rc1 breaking
    `srun --send-libs` parsing.
  * Fix slurmd vsize memory leak when using job submission/allocation

OBS-URL: https://build.opensuse.org/request/show/1208086
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/slurm?expand=0&rev=106
2024-10-15 13:01:34 +00:00
1cc2983ebe - Removed Fix-test-21.41.patch as upstream test changed.
- Dropped package plugin-ext-sensors-rrd as the plugin module no
  longer exists.

OBS-URL: https://build.opensuse.org/package/show/network:cluster/slurm?expand=0&rev=296
2024-10-15 10:19:24 +00:00
b2f6e848a1 - Update to version 24.05.3
* `data_parser/v0.0.40` - Added field descriptions.
  * `slurmrestd` - Avoid creating new slurmdbd connection per request
    to `* /slurm/slurmctld/*/*` endpoints.
  * Fix compilation issue with `switch/hpe_slingshot` plugin.
  * Fix gres per task allocation with threads-per-core.
  * `data_parser/v0.0.41` - Added field descriptions.
  * `slurmrestd` - Change back generated OpenAPI schema for
    `DELETE /slurm/v0.0.40/jobs/` to `RequestBody` instead of using
    parameters for request. `slurmrestd` will continue accept endpoint
    requests via `RequestBody` or HTTP query.
  * `topology/tree` - Fix issues with switch distance optimization.
  * Fix potential segfault of secondary `slurmctld` when falling back
    to the primary when running with a `JobComp` plugin.
  * Enable `--json`/`--yaml=v0.0.39` options on client commands to
    dump data using data_parser/v0.0.39 instead or outputting nothing.
  * `switch/hpe_slingshot` - Fix issue that could result in a 0 length
    state file.
  * Fix unnecessary message protocol downgrade for unregistered nodes.
  * Fix unnecessarily packing alias addrs when terminating jobs with
    a mix of non-cloud/dynamic nodes and powered down cloud/dynamic
    nodes.
  * `accounting_storage/mysql` - Fix issue when deleting a qos that
    could remove too many commas from the qos and/or delta_qos fields
    of the assoc table.
  * `slurmctld` - Fix memory leak when using RestrictedCoresPerGPU.
  * Fix allowing access to reservations without `MaxStartDelay` set.
  * Fix regression introduced in 24.05.0rc1 breaking
    `srun --send-libs` parsing.
  * Fix slurmd vsize memory leak when using job submission/allocation

OBS-URL: https://build.opensuse.org/package/show/network:cluster/slurm?expand=0&rev=295
2024-10-15 06:51:09 +00:00
fc209e050f - updated to new release 24.05.0 with following major changes
- IMPORTANT NOTES:
  If using the slurmdbd (Slurm DataBase Daemon) you must update
  this first.  NOTE: If using a backup DBD you must start the
  primary first to do any database conversion, the backup will not
  start until this has happened.  The 24.05 slurmdbd will work
  with Slurm daemons of version 23.02 and above.  You will not
  need to update all clusters at the same time, but it is very
  important to update slurmdbd first and having it running before
  updating any other clusters making use of it.
- HIGHLIGHTS
  * Federation - allow client command operation when slurmdbd is
    unavailable.
  * burst_buffer/lua - Added two new hooks: slurm_bb_test_data_in
    and slurm_bb_test_data_out. The syntax and use of the new hooks
    are documented in etc/burst_buffer.lua.example. These are
    required to exist. slurmctld now checks on startup if the
    burst_buffer.lua script loads and contains all required hooks;
    slurmctld will exit with a fatal error if this is not
    successful. Added PollInterval to burst_buffer.conf. Removed
    the arbitrary limit of 512 copies of the script running
    simultaneously.
  * Add QOS limit MaxTRESRunMinsPerAccount. 
  * Add QOS limit MaxTRESRunMinsPerUser.
  * Add ELIGIBLE environment variable to jobcomp/script plugin.
  * Always use the QOS name for SLURM_JOB_QOS environment variables.
    Previously the batch environment would use the description field,
    which was usually equivalent to the name. 
  * cgroup/v2 - Require dbus-1 version >= 1.11.16.
  * Allow NodeSet names to be used in SuspendExcNodes.

OBS-URL: https://build.opensuse.org/package/show/network:cluster/slurm?expand=0&rev=294
2024-10-14 10:03:00 +00:00
8 changed files with 1554 additions and 288 deletions

View File

@ -1,65 +0,0 @@
From: Egbert Eich <eich@suse.com>
Date: Wed Jun 22 14:39:10 2022 +0200
Subject: Fix test 21.41
Patch-mainline: Not yet
Git-repo: https://github.com/SchedMD/slurm
Git-commit: 21619ffa15d1d656ee11a477ebb8215a06387fdd
References:
Since expect is not line oriented, the output is not matched line by line.
Thus the order in which results are returned by sacctmgr actually matters:
If the first test case matches what is returned first, this part will be
consumed. If the 2nd test case will then match what is left over, the
test will actually succeed.
If this is not the case, ie if the first test matches a part that is
actually sent later, the earlier parts will actually be forgotten and
won't match at all.
To make the test resilient to different order of results, the test has
been rewritten to only contain a single match line.
Signed-off-by: Egbert Eich <eich@suse.com>
Signed-off-by: Egbert Eich <eich@suse.de>
---
testsuite/expect/test21.41 | 30 +++++++++++++++---------------
1 file changed, 15 insertions(+), 15 deletions(-)
diff --git a/testsuite/expect/test21.41 b/testsuite/expect/test21.41
index c0961522db..1fd921a48f 100755
--- a/testsuite/expect/test21.41
+++ b/testsuite/expect/test21.41
@@ -372,21 +372,21 @@ expect {
-re "There was a problem" {
fail "There was a problem with the sacctmgr command"
}
- -re "$user1.$wckey1.($number)." {
- set user1wckey1 $expect_out(1,string)
- exp_continue
- }
- -re "$user2.$wckey1.($number)." {
- set user2wckey1 $expect_out(1,string)
- exp_continue
- }
- -re "$user1.$wckey2.($number)." {
- set user1wckey2 $expect_out(1,string)
- exp_continue
- }
- -re "$user2.$wckey2.($number)." {
- set user2wckey2 $expect_out(1,string)
- exp_continue
+ -re "($user1|$user2).($wckey1|$wckey2).($number)." {
+ if { $expect_out(1,string) eq $user1 } {
+ if { $expect_out(2,string) eq $wckey1 } {
+ set user1wckey1 $expect_out(3,string)
+ } elseif { $expect_out(2,string) eq $wckey2 } {
+ set user1wckey2 $expect_out(3,string)
+ }
+ } elseif { $expect_out(1,string) eq $user2 } {
+ if { $expect_out(2,string) eq $wckey1 } {
+ set user2wckey1 $expect_out(3,string)
+ } elseif { $expect_out(2,string) eq $wckey2 } {
+ set user2wckey2 $expect_out(3,string)
+ }
+ }
+ exp_continue
}
timeout {
fail "sacctmgr wckeys not responding"

369
regression.py.sle12 Normal file
View File

@ -0,0 +1,369 @@
#!/usr/bin/env python3
############################################################################
# Copyright (C) 2006 The Regents of the University of California.
# Produced at Lawrence Livermore National Laboratory (cf, DISCLAIMER).
# Written by Christopher J. Morrone <morrone2@llnl.gov>
# CODE-OCEC-09-009. All rights reserved.
#
# This file is part of Slurm, a resource management program.
# For details, see <https://slurm.schedmd.com/>.
# Please also read the supplied file: DISCLAIMER.
#
# Slurm is free software; you can redistribute it and/or modify it under
# the terms of the GNU General Public License as published by the Free
# Software Foundation; either version 2 of the License, or (at your option)
# any later version.
#
# Slurm is distributed in the hope that it will be useful, but WITHOUT ANY
# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
# FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
# details.
#
# You should have received a copy of the GNU General Public License along
# with Slurm; if not, write to the Free Software Foundation, Inc.,
# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
############################################################################
"""This script makes it easier to run the Slurm expect test scripts."""
from __future__ import print_function
import json
import os
import re
import sys
import time
import signal
from optparse import OptionParser
from optparse import OptionValueError
from subprocess import Popen
def main(argv=None):
# "tests" is a list containing tuples of length 3 of the form
# (test major number, test minor number, test filename)
tests = []
failed_tests = []
passed_tests = []
skipped_tests = []
begin = (1, 1)
abort = False
# Handle command line parameters
if argv is None:
argv = sys.argv
parser = OptionParser()
parser.add_option(
"-t",
"--time-individual",
action="store_true",
dest="time_individual",
default=False,
)
parser.add_option(
"-e",
"--exclude",
type="string",
dest="exclude_tests",
action="callback",
callback=test_parser,
help="comma or space separated string of tests to skip",
)
parser.add_option(
"-i",
"--include",
type="string",
dest="include_tests",
action="callback",
callback=test_parser,
help="comma or space separated string of tests to include",
)
parser.add_option("-k", "--keep-logs", action="store_true", default=False)
parser.add_option("-s", "--stop-on-first-fail", action="store_true", default=False)
parser.add_option(
"-b",
"--begin-from-test",
type="string",
dest="begin_from_test",
action="callback",
callback=test_parser,
)
parser.add_option(
"-f",
"--results-file",
type="string",
help="write json result to specified file name",
)
(options, args) = parser.parse_args(args=argv)
# Sanity check
if not os.path.isfile("globals"):
print('ERROR: "globals" not here as needed', file=sys.stderr)
return -1
# Clear any environment variables that could break the tests.
# Cray sets some squeue format options that break tests
del os.environ["SQUEUE_ALL"]
del os.environ["SQUEUE_SORT"]
del os.environ["SQUEUE_FORMAT"]
del os.environ["SQUEUE_FORMAT2"]
# Read the current working directory and build a sorted list
# of the available tests.
test_re = re.compile(r"test(\d+)\.(\d+)$")
for filename in os.listdir("."):
match = test_re.match(filename)
if match:
major = int(match.group(1))
minor = int(match.group(2))
if not test_in_list(major, minor, options.exclude_tests) and (
not options.include_tests
or test_in_list(major, minor, options.include_tests)
):
tests.append((major, minor, filename))
if not tests:
print(
"ERROR: no test files found in current working directory", file=sys.stderr
)
return -1
# sory by major, minor
tests.sort(key=lambda t: (t[0], t[1]))
# Set begin value
if options.begin_from_test is not None:
begin = options.begin_from_test[0]
# Now run the tests
start_time = time.time()
test_env = os.environ.copy()
if options.stop_on_first_fail:
test_env["SLURM_TESTSUITE_CLEANUP_ON_FAILURE"] = "false"
else:
test_env["SLURM_TESTSUITE_CLEANUP_ON_FAILURE"] = "true"
print("Started:", time.asctime(time.localtime(start_time)), file=sys.stdout)
sys.stdout.flush()
results_list = []
for test in tests:
if begin[0] > test[0] or (begin[0] == test[0] and begin[1] > test[1]):
continue
test_id = "{0}.{1}".format(test[0],test[1])
sys.stdout.write("Running test %s " % test_id)
sys.stdout.flush()
test_dict = {}
test_dict["id"] = test_id
testlog_name = "test{test_id}.log"
try:
os.remove(testlog_name + ".failed")
except:
pass
testlog = open(testlog_name, "w+")
if options.time_individual:
t1 = time.time()
test_dict["start_time"] = float("%.03f" % t1)
try:
child = Popen(
("expect", test[2]),
shell=False,
env=test_env,
stdout=testlog,
stderr=testlog,
)
retcode = child.wait()
except KeyboardInterrupt:
child.send_signal(signal.SIGINT)
retcode = child.wait()
abort = True
if options.time_individual:
t2 = time.time()
minutes = int(int(t2 - t1) / 60)
seconds = (int(t2 - t1)) % 60
if minutes > 0:
sys.stdout.write("%d min " % (minutes))
sys.stdout.write("%.2f sec " % (seconds))
test_dict["duration"] = float("%.03f" % (t2 - t1))
if retcode == 0:
status = "pass"
elif retcode > 127:
status = "skip"
else:
status = "fail"
test_dict["status"] = status
# Determine the reason if requesting a json results file
if status != "pass" and options.results_file:
testlog.flush()
testlog.seek(0)
test_output = testlog.read()
sections = [s for s in test_output.split("=" * 78 + "\n")]
header = sections[1]
body = sections[2]
footer = "".join(sections[3:])
fatals = re.findall(
r"(?ms)\[[^\]]+\][ \[]+Fatal[ \]:]+(.*?) \(fail[^\)]+\)$", body
)
errors = re.findall(
r"(?ms)\[[^\]]+\][ \[]+Error[ \]:]+(.*?) \(subfail[^\)]+\)$", body
)
warnings = re.findall(
r"(?ms)\[[^\]]+\][ \[]+Warning[ \]:]+((?:(?!Warning).)*) \((?:sub)?skip[^\)]+\)$",
body,
)
if fatals:
test_dict["reason"] = fatals[0]
elif errors:
test_dict["reason"] = errors[0]
elif warnings:
test_dict["reason"] = warnings[0]
results_list.append(test_dict)
testlog.close()
if status == "pass":
passed_tests.append(test)
sys.stdout.write("\n")
if not options.keep_logs:
try:
os.remove(testlog_name)
except IOError as e:
print(
"ERROR failed to close %s %s" % (testlog_name, e),
file=sys.stederr,
)
elif status == "skip":
skipped_tests.append(test)
sys.stdout.write("SKIPPED\n")
if not options.keep_logs:
try:
os.remove(testlog_name)
except IOError as e:
print(
"ERROR failed to close %s %s" % (testlog_name, e),
file=sys.stederr,
)
else:
failed_tests.append(test)
os.rename(testlog_name, testlog_name + ".failed")
sys.stdout.write("FAILED!\n")
if options.stop_on_first_fail:
break
sys.stdout.flush()
if abort:
sys.stdout.write("\nRegression interrupted!\n")
break
end_time = time.time()
print("Ended:", time.asctime(time.localtime(end_time)), file=sys.stdout)
print(
"\nTestsuite ran for %d minutes %d seconds"
% ((end_time - start_time) / 60, (end_time - start_time) % 60),
file=sys.stdout,
)
if options.results_file:
with open(options.results_file, "w") as results_file:
json.dump(results_list, results_file)
print("Completions :", len(passed_tests), file=sys.stdout)
print("Failures :", len(failed_tests), file=sys.stdout)
print("Skipped :", len(skipped_tests), file=sys.stdout)
if len(failed_tests) > 0:
print("Failed tests : ", file=sys.stdout)
first = True
for test in failed_tests:
if first:
first = False
else:
sys.stdout.write(",")
sys.stdout.write("%d.%d" % (test[0], test[1]))
sys.stdout.write("\n")
sys.stdout.flush()
if abort:
print("INCOMPLETE", file=sys.stdout)
if len(failed_tests) > 0:
return 1
def test_in_list(major, minor, test_list):
"""Test for whether a test numbered major.minor is in test_list.
"major" and "minor" must be integers. "test_list" is a list of
tuples, each tuple representing one test. The tuples are of the
form:
(major, minor, filename)
Returns True if the test is in the list, and False otherwise.
"""
if not test_list:
return False
for test in test_list:
if (test[0] == "*" or test[0] == major) and (
test[1] == "*" or test[1] == minor
):
return True
return False
def test_parser(option, opt_str, value, parser):
"""Option callback function for the optparse.OptionParser class.
Will take a string representing one or more test names and append
a tuple representing the test into a list in the options's destination
variable.
A string representing test names must patch the regular expression
named "test_re" below. Some examples of exceptable options are:
'1.5'
'test9.8'
'2.6 test3.1 14.2'
'3.4,6.7,8.3'
'1.*'
'*.2'
'1.*,3.8,9.2'
Raises OptionValueError on error.
"""
# Initialize the option's destination array, if is does not already exist.
if not hasattr(parser.values, option.dest):
setattr(parser.values, option.dest, [])
if getattr(parser.values, option.dest) is None:
setattr(parser.values, option.dest, [])
# Get a pointer to the option's destination array.
l = getattr(parser.values, option.dest)
# Split the user's option string into a series of tuples that represent
# each test, and add each tuple to the destination array.
splitter = re.compile(r"[,\s]+")
val = splitter.split(value)
test_re = re.compile(r"(test)?((\d+)|\*)\.((\d+)|\*)$")
for v in val:
m = test_re.match(v)
if not m:
raise OptionValueError
major = m.group(2)
if major != "*":
major = int(major)
minor = m.group(4)
if minor != "*":
minor = int(minor)
l.append((major, minor))
if __name__ == "__main__":
sys.exit(main())

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:7a8f4b1b46d3a8ec9a95066b04635c97f9095877f6189a8ff7388e5e74daeef3
size 7365175

3
slurm-24.11.0.tar.bz2 Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:39ebeeeeb5d874e090b7f2629bd319bfe7c41510931ff2244f85e961bdc69056
size 7254375

File diff suppressed because it is too large Load Diff

View File

@ -1,7 +1,7 @@
# #
# spec file # spec file for package slurm
# #
# Copyright (c) 2024 SUSE LLC # Copyright (c) 2025 SUSE LLC
# #
# All modifications and additions to the file contributed by third parties # All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed # remain the property of their copyright owners, unless otherwise agreed
@ -17,10 +17,10 @@
# Check file META in sources: update so_version to (API_CURRENT - API_AGE) # Check file META in sources: update so_version to (API_CURRENT - API_AGE)
%define so_version 40 %define so_version 42
# Make sure to update `upgrades` as well! # Make sure to update `upgrades` as well!
%define ver 23.11.5 %define ver 24.11.0
%define _ver _23_11 %define _ver _24_11
%define dl_ver %{ver} %define dl_ver %{ver}
# so-version is 0 and seems to be stable # so-version is 0 and seems to be stable
%define pmi_so 0 %define pmi_so 0
@ -59,6 +59,12 @@ ExclusiveArch: do_not_build
%if 0%{?sle_version} == 150500 || 0%{?sle_version} == 150600 %if 0%{?sle_version} == 150500 || 0%{?sle_version} == 150600
%define base_ver 2302 %define base_ver 2302
%endif %endif
%if 0%{?sle_version} == 150500 || 0%{?sle_version} == 150600
%define base_ver 2302
%endif
%if 0%{?sle_version} == 150700
%define base_ver 2411
%endif
%define ver_m %{lua:x=string.gsub(rpm.expand("%ver"),"%.[^%.]*$","");print(x)} %define ver_m %{lua:x=string.gsub(rpm.expand("%ver"),"%.[^%.]*$","");print(x)}
# Keep format_spec_file from botching the define below: # Keep format_spec_file from botching the define below:
@ -168,10 +174,9 @@ Source12: slurmdbd.xml
# create: tar --owner=nobody --group=nogroup --exclude=*~ -cvzf test_setup.tar.gz test_setup # create: tar --owner=nobody --group=nogroup --exclude=*~ -cvzf test_setup.tar.gz test_setup
Source20: test_setup.tar.gz Source20: test_setup.tar.gz
Source21: README_Testsuite.md Source21: README_Testsuite.md
Source22: regression.py.sle12
Patch0: Remove-rpath-from-build.patch Patch0: Remove-rpath-from-build.patch
Patch2: pam_slurm-Initialize-arrays-and-pass-sizes.patch Patch2: pam_slurm-Initialize-arrays-and-pass-sizes.patch
Patch10: Fix-test-21.41.patch
#Patch14: Keep-logs-of-skipped-test-when-running-test-cases-sequentially.patch
Patch15: Fix-test7.2-to-find-libpmix-under-lib64-as-well.patch Patch15: Fix-test7.2-to-find-libpmix-under-lib64-as-well.patch
%{upgrade_dep %pname} %{upgrade_dep %pname}
@ -406,19 +411,6 @@ Requires: %{name}-config = %{version}
%description plugins %description plugins
This package contains the SLURM plugins (loadable shared objects) This package contains the SLURM plugins (loadable shared objects)
%package plugin-ext-sensors-rrd
Summary: SLURM ext_sensors/rrd Plugin (loadable shared objects)
Group: Productivity/Clustering/Computing
Requires: %{name}-plugins = %{version}
%{upgrade_dep %{pname}-plugin-ext-sensors-rrd}
# file was moved from slurm-plugins to here
Conflicts: %{pname}-plugins < %{version}
%description plugin-ext-sensors-rrd
This package contains the ext_sensors/rrd plugin used to read data
using RRD, a tool that creates and manages a linear database for
sampling and logging data.
%package torque %package torque
Summary: Wrappers for transitition from Torque/PBS to SLURM Summary: Wrappers for transitition from Torque/PBS to SLURM
Group: Productivity/Clustering/Computing Group: Productivity/Clustering/Computing
@ -529,6 +521,7 @@ This package contains just the minmal code to run a compute node.
%package config %package config
Summary: Config files and directories for slurm services Summary: Config files and directories for slurm services
Group: Productivity/Clustering/Computing Group: Productivity/Clustering/Computing
%{?sysusers_requires}
Requires: logrotate Requires: logrotate
BuildArch: noarch BuildArch: noarch
%if 0%{?suse_version} <= 1140 %if 0%{?suse_version} <= 1140
@ -589,7 +582,9 @@ Requires: %{name}-lua = %version
Requires: %{name}-munge = %version Requires: %{name}-munge = %version
Requires: %{name}-node = %version Requires: %{name}-node = %version
Requires: %{name}-openlava = %version Requires: %{name}-openlava = %version
%if 0%{?build_slurmrestd}
Requires: %{name}-rest = %version Requires: %{name}-rest = %version
%endif
Requires: %{name}-seff = %version Requires: %{name}-seff = %version
Requires: %{name}-sjstat = %version Requires: %{name}-sjstat = %version
Requires: %{name}-slurmdbd = %version Requires: %{name}-slurmdbd = %version
@ -606,6 +601,7 @@ Requires: libnuma-devel
Requires: pam Requires: pam
Requires: pdsh Requires: pdsh
Requires: perl-%{name} = %version Requires: perl-%{name} = %version
Requires: readline-devel
Requires: sudo Requires: sudo
Requires: tar Requires: tar
BuildRequires: sudo BuildRequires: sudo
@ -762,9 +758,20 @@ rm -rf %{buildroot}/%{_libdir}/slurm/*.{a,la} \
%{buildroot}/%{_libdir}/*.la \ %{buildroot}/%{_libdir}/*.la \
%{buildroot}/%_lib/security/*.la %{buildroot}/%_lib/security/*.la
rm %{buildroot}/%{perl_archlib}/perllocal.pod \ # Fix perl
%{buildroot}/%{perl_vendorarch}/auto/Slurm/.packlist \ rm %{buildroot}%{perl_archlib}/perllocal.pod \
%{buildroot}/%{perl_vendorarch}/auto/Slurmdb/.packlist %{buildroot}%{perl_sitearch}/auto/Slurm/.packlist \
%{buildroot}%{perl_sitearch}/auto/Slurmdb/.packlist
# Fix shell completion bindings
for i in `find %{buildroot}/usr/share/bash-completion/completions/ -type l`; do
ln -sf $(basename $(readlink -f $i)) $i;
done
mkdir -p %{buildroot}%{perl_vendorarch}
mv %{buildroot}%{perl_sitearch}/* \
%{buildroot}%{perl_vendorarch}
# Remove Cray specific binaries # Remove Cray specific binaries
rm -f %{buildroot}/%{_sbindir}/capmc_suspend \ rm -f %{buildroot}/%{_sbindir}/capmc_suspend \
@ -849,7 +856,12 @@ filelist="$(grep '#include' *.c | sed -ne 's/.*:#include *\"\([^\"]*\)\".*/\1/p'
while true; do while true; do
oldfilelist=$filelist; tlist="" oldfilelist=$filelist; tlist=""
for i in $filelist; do for i in $filelist; do
nlist=" $(grep '#include' ../../$i | sed -ne 's/#include *\"\([^\"]*\)\".*/\1/p')" nlist=" $(grep '#include' ../../$i | sed -ne 's@#include *\"\([^\"]*\)\".*@\1@p')"
tlist+=" $(for j in $nlist; do [ -e ../../$j ] && echo $j || true; done)"
done
# Cater for erroneous: `#include <src/[slurm_internal_header]>`
for i in $filelist; do
nlist=" $(grep '#include' ../../$i | sed -ne 's@#include *<\(src/\)\([^>]*\)>.*@\1\2@p')"
tlist+=" $(for j in $nlist; do [ -e ../../$j ] && echo $j || true; done)" tlist+=" $(for j in $nlist; do [ -e ../../$j ] && echo $j || true; done)"
done done
filelist="$(for i in $filelist $tlist; do echo $i; done | sort | uniq)" filelist="$(for i in $filelist $tlist; do echo $i; done | sort | uniq)"
@ -882,6 +894,10 @@ find -type f -name "*.[ao]" -print | while read f; do
# drop non-deterministic lto bits from .o files # drop non-deterministic lto bits from .o files
strip -p --discard-locals -R .gnu.lto_* -R .gnu.debuglto_* -N __gnu_lto_v1 $f strip -p --discard-locals -R .gnu.lto_* -R .gnu.debuglto_* -N __gnu_lto_v1 $f
done done
# on versions < SLE15 replace regression.py with one compatible with py 3.4
%if 0%{?sle_version:1} && 0%{?sle_version} < 150000
install -m 755 %{S:22} %{buildroot}/srv/slurm-testsuite/testsuite/expect/regression.py
%endif
%if 0%{?suse_version} >= 1500 %if 0%{?suse_version} >= 1500
%define tar_sort --sort=name %define tar_sort --sort=name
%endif %endif
@ -914,6 +930,12 @@ fi
sed -i -e '/ExecStart/aExecStartPre=/bin/bash -c "for i in 0 1 2 3; do test -e /dev/nvidia$i || mknod /dev/nvidia$i c 10 $((i+2)); done"' $SLURMD_SERVICE sed -i -e '/ExecStart/aExecStartPre=/bin/bash -c "for i in 0 1 2 3; do test -e /dev/nvidia$i || mknod /dev/nvidia$i c 10 $((i+2)); done"' $SLURMD_SERVICE
tar -xzf %{S:20} tar -xzf %{S:20}
# on versions < SLE15 turn off AcctGatherProfileType and pmix
%if 0%{?sle_version:1} && 0%{?sle_version} < 150000
sed -i -e "/AcctGatherProfileType/s@^@#@" \
-e "/MpiDefault/s@pmix_v3@pmi2@" test_setup/slurm.conf
sed -i -e "/ProfileHDF5Dir/s@^@#@" test_setup/acct_gather.conf
%endif
mkdir -p %{buildroot}%{_pam_secconfdir}/limits.d mkdir -p %{buildroot}%{_pam_secconfdir}/limits.d
mv test_setup/slurm.conf.limits %{buildroot}%_pam_secconfdir/limits.d/slurm.conf mv test_setup/slurm.conf.limits %{buildroot}%_pam_secconfdir/limits.d/slurm.conf
%if 0%{?sle_version} < 150200 %if 0%{?sle_version} < 150200
@ -1086,7 +1108,7 @@ rm -rf /srv/slurm-testsuite/src /srv/slurm-testsuite/testsuite \
%{?have_netloc:%{_bindir}/netloc_to_topology} %{?have_netloc:%{_bindir}/netloc_to_topology}
%{_sbindir}/sackd %{_sbindir}/sackd
%{_sbindir}/slurmctld %{_sbindir}/slurmctld
%{_sbindir}/slurmsmwd %{_datadir}/bash-completion/completions/
%dir %{_libdir}/slurm/src %dir %{_libdir}/slurm/src
%{_unitdir}/slurmctld.service %{_unitdir}/slurmctld.service
%{_sbindir}/rcslurmctld %{_sbindir}/rcslurmctld
@ -1164,9 +1186,10 @@ rm -rf /srv/slurm-testsuite/src /srv/slurm-testsuite/testsuite \
%files -n perl-%{name} %files -n perl-%{name}
%{perl_vendorarch}/Slurm.pm %{perl_vendorarch}/Slurm.pm
%{perl_vendorarch}/Slurm %{perl_vendorarch}/Slurm
%{perl_vendorarch}/auto/Slurm
%{perl_vendorarch}/Slurmdb.pm %{perl_vendorarch}/Slurmdb.pm
%{perl_vendorarch}/auto/Slurm
%{perl_vendorarch}/auto/Slurmdb %{perl_vendorarch}/auto/Slurmdb
%dir %{perl_vendorarch}/auto
%{_mandir}/man3/Slurm*.3pm.* %{_mandir}/man3/Slurm*.3pm.*
%files slurmdbd %files slurmdbd
@ -1189,6 +1212,7 @@ rm -rf /srv/slurm-testsuite/src /srv/slurm-testsuite/testsuite \
%dir %{_libdir}/slurm %dir %{_libdir}/slurm
%{_libdir}/slurm/libslurmfull.so %{_libdir}/slurm/libslurmfull.so
%{_libdir}/slurm/accounting_storage_slurmdbd.so %{_libdir}/slurm/accounting_storage_slurmdbd.so
%{_libdir}/slurm/accounting_storage_ctld_relay.so
%{_libdir}/slurm/acct_gather_energy_pm_counters.so %{_libdir}/slurm/acct_gather_energy_pm_counters.so
%{_libdir}/slurm/acct_gather_energy_gpu.so %{_libdir}/slurm/acct_gather_energy_gpu.so
%{_libdir}/slurm/acct_gather_energy_ibmaem.so %{_libdir}/slurm/acct_gather_energy_ibmaem.so
@ -1197,8 +1221,9 @@ rm -rf /srv/slurm-testsuite/src /srv/slurm-testsuite/testsuite \
%{_libdir}/slurm/acct_gather_filesystem_lustre.so %{_libdir}/slurm/acct_gather_filesystem_lustre.so
%{_libdir}/slurm/burst_buffer_lua.so %{_libdir}/slurm/burst_buffer_lua.so
%{_libdir}/slurm/burst_buffer_datawarp.so %{_libdir}/slurm/burst_buffer_datawarp.so
%{_libdir}/slurm/data_parser_v0_0_42.so
%{_libdir}/slurm/data_parser_v0_0_41.so
%{_libdir}/slurm/data_parser_v0_0_40.so %{_libdir}/slurm/data_parser_v0_0_40.so
%{_libdir}/slurm/data_parser_v0_0_39.so
%{_libdir}/slurm/cgroup_v1.so %{_libdir}/slurm/cgroup_v1.so
%if 0%{?suse_version} >= 1500 %if 0%{?suse_version} >= 1500
%{_libdir}/slurm/cgroup_v2.so %{_libdir}/slurm/cgroup_v2.so
@ -1214,12 +1239,13 @@ rm -rf /srv/slurm-testsuite/src /srv/slurm-testsuite/testsuite \
%{_libdir}/slurm/gres_nic.so %{_libdir}/slurm/gres_nic.so
%{_libdir}/slurm/gres_shard.so %{_libdir}/slurm/gres_shard.so
%{_libdir}/slurm/hash_k12.so %{_libdir}/slurm/hash_k12.so
%{_libdir}/slurm/hash_sha3.so
%{_libdir}/slurm/tls_none.so
%{_libdir}/slurm/jobacct_gather_cgroup.so %{_libdir}/slurm/jobacct_gather_cgroup.so
%{_libdir}/slurm/jobacct_gather_linux.so %{_libdir}/slurm/jobacct_gather_linux.so
%{_libdir}/slurm/jobcomp_filetxt.so %{_libdir}/slurm/jobcomp_filetxt.so
%{_libdir}/slurm/jobcomp_lua.so %{_libdir}/slurm/jobcomp_lua.so
%{_libdir}/slurm/jobcomp_script.so %{_libdir}/slurm/jobcomp_script.so
%{_libdir}/slurm/job_container_cncu.so
%{_libdir}/slurm/job_container_tmpfs.so %{_libdir}/slurm/job_container_tmpfs.so
%{_libdir}/slurm/job_submit_all_partitions.so %{_libdir}/slurm/job_submit_all_partitions.so
%{_libdir}/slurm/job_submit_defaults.so %{_libdir}/slurm/job_submit_defaults.so
@ -1253,6 +1279,7 @@ rm -rf /srv/slurm-testsuite/src /srv/slurm-testsuite/testsuite \
%{_libdir}/slurm/serializer_url_encoded.so %{_libdir}/slurm/serializer_url_encoded.so
%{_libdir}/slurm/serializer_yaml.so %{_libdir}/slurm/serializer_yaml.so
%{_libdir}/slurm/site_factor_example.so %{_libdir}/slurm/site_factor_example.so
%{_libdir}/slurm/switch_nvidia_imex.so
%{_libdir}/slurm/task_affinity.so %{_libdir}/slurm/task_affinity.so
%{_libdir}/slurm/task_cgroup.so %{_libdir}/slurm/task_cgroup.so
%{_libdir}/slurm/topology_3d_torus.so %{_libdir}/slurm/topology_3d_torus.so
@ -1271,9 +1298,9 @@ rm -rf /srv/slurm-testsuite/src /srv/slurm-testsuite/testsuite \
%{_libdir}/slurm/node_features_knl_generic.so %{_libdir}/slurm/node_features_knl_generic.so
%{_libdir}/slurm/acct_gather_profile_influxdb.so %{_libdir}/slurm/acct_gather_profile_influxdb.so
%{_libdir}/slurm/jobcomp_elasticsearch.so %{_libdir}/slurm/jobcomp_elasticsearch.so
%{_libdir}/slurm/certmgr_script.so
%files plugin-ext-sensors-rrd %{_libdir}/slurm/gpu_nvidia.so
%{_libdir}/slurm/ext_sensors_rrd.so %{_libdir}/slurm/mcs_label.so
%files lua %files lua
%{_libdir}/slurm/job_submit_lua.so %{_libdir}/slurm/job_submit_lua.so
@ -1308,10 +1335,6 @@ rm -rf /srv/slurm-testsuite/src /srv/slurm-testsuite/testsuite \
%{_mandir}/man8/slurmrestd.* %{_mandir}/man8/slurmrestd.*
%{_libdir}/slurm/openapi_slurmctld.so %{_libdir}/slurm/openapi_slurmctld.so
%{_libdir}/slurm/openapi_slurmdbd.so %{_libdir}/slurm/openapi_slurmdbd.so
%{_libdir}/slurm/openapi_dbv0_0_39.so
%{_libdir}/slurm/openapi_v0_0_39.so
%{_libdir}/slurm/openapi_dbv0_0_38.so
%{_libdir}/slurm/openapi_v0_0_38.so
%{_libdir}/slurm/rest_auth_local.so %{_libdir}/slurm/rest_auth_local.so
%endif %endif
@ -1348,12 +1371,10 @@ rm -rf /srv/slurm-testsuite/src /srv/slurm-testsuite/testsuite \
%files config-man %files config-man
%{_mandir}/man5/acct_gather.conf.* %{_mandir}/man5/acct_gather.conf.*
%{_mandir}/man5/burst_buffer.conf.* %{_mandir}/man5/burst_buffer.conf.*
%{_mandir}/man5/ext_sensors.conf.*
%{_mandir}/man5/slurm.* %{_mandir}/man5/slurm.*
%{_mandir}/man5/cgroup.* %{_mandir}/man5/cgroup.*
%{_mandir}/man5/gres.* %{_mandir}/man5/gres.*
%{_mandir}/man5/helpers.* %{_mandir}/man5/helpers.*
#%%{_mandir}/man5/nonstop.conf.5.*
%{_mandir}/man5/oci.conf.5.gz %{_mandir}/man5/oci.conf.5.gz
%{_mandir}/man5/topology.* %{_mandir}/man5/topology.*
%{_mandir}/man5/knl.conf.5.* %{_mandir}/man5/knl.conf.5.*
@ -1368,17 +1389,7 @@ rm -rf /srv/slurm-testsuite/src /srv/slurm-testsuite/testsuite \
%endif %endif
%files cray %files cray
# do not remove cray sepcific packages from SLES update
# Only for Cray
%{_libdir}/slurm/core_spec_cray_aries.so
%{_libdir}/slurm/job_submit_cray_aries.so
%{_libdir}/slurm/select_cray_aries.so
%{_libdir}/slurm/switch_cray_aries.so
%{_libdir}/slurm/task_cray_aries.so
%{_libdir}/slurm/proctrack_cray_aries.so
%{_libdir}/slurm/mpi_cray_shasta.so %{_libdir}/slurm/mpi_cray_shasta.so
%{_libdir}/slurm/node_features_knl_cray.so
%{_libdir}/slurm/power_cray_aries.so
%if 0%{?slurm_testsuite} %if 0%{?slurm_testsuite}
%files testsuite %files testsuite

View File

@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1 version https://git-lfs.github.com/spec/v1
oid sha256:7a45706911924b06a2ec7d436d4e991d84dc459a505cbdfca244ac5fad2b9b60 oid sha256:3c2249601135c2d6c2e6a8d7aa7318d50d354015ecf8a56fc467b43aa0059288
size 3165 size 3201

View File

@ -1,3 +1,5 @@
24.05.4
24.05.3
23.11.1 23.11.1
23.02.7 23.02.7
23.02.6 23.02.6