From 2951a00ce28d6561ffdcd43c4bd59d2d60e1387aa87a13f866a83afd97cb5832 Mon Sep 17 00:00:00 2001 From: Egbert Eich Date: Wed, 8 Jun 2022 13:21:55 +0000 Subject: [PATCH] - Package the Slrum testsuite for QA purposes. NOTE: This package is not meant to be used for testing by the user but rather for testing by the maintainers to ensure the package is working properly. DO NOT report test suite failures unless you are able to confirm that the failure is really a bug. OBS-URL: https://build.opensuse.org/package/show/network:cluster/slurm?expand=0&rev=205 --- slurm-rpmlintrc | 17 ++++++++++++- slurm.changes | 10 ++++++++ slurm.spec | 66 +++++++++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 92 insertions(+), 1 deletion(-) diff --git a/slurm-rpmlintrc b/slurm-rpmlintrc index 8eac05e..d119094 100644 --- a/slurm-rpmlintrc +++ b/slurm-rpmlintrc @@ -12,7 +12,22 @@ addFilter(".*obsolete-not-provided slurmdb-direct.*") # channel. addFilter("libnss_slurm\d_\d{2}_\d{2}.*: .* shlib-policy-name-error.*") -# slurms uses shared libraries for its plugins, so these plugins can have +# slurms uses shared libraries for its plugins, so these plugins can have # no dependency information addFilter(".*shared-library-without-dependency-information /usr/lib64/slurm/.*so") + +# Testsuite is not meant to be installed on a running system. +# The idea is to place the test suite into a package mostly unaltered +# to place it to a test rig without requiring to install the full Slurm +# sources. +# Test setup requires /opt to be shared between nodes in a test system +addFilter("slurm-testsuite.*: E: devel-file-in-non-devel-package .*") +# For the same reason do not bother with /usr/bin/env expect +addFilter("slurm-testsuite.*: E: env-script-interpreter .*") +# Likewise, the test suite requires all of Slurm to be installed - even devel +addFilter("slurm-testsuite.*: E: devel-dependency slurm-devel.*") +# ... and in the same vein +addFilter("slurm-testsuite.*: E: filelist-forbidden-opt /opt/slurmtest") +addFilter("slurm-testsuite.*: E: non-executable-script /opt/slurmtest/testsuite/expect/.* .* /usr/bin/env (expect)|(bash)") +addFilter("slurm-testsuite.*: E: spurious-executable-perm /opt/slurmtest/testsuite/expect/*.c) diff --git a/slurm.changes b/slurm.changes index c561f4b..19e2719 100644 --- a/slurm.changes +++ b/slurm.changes @@ -1,3 +1,13 @@ +------------------------------------------------------------------- +Wed Jun 8 13:15:24 UTC 2022 - Egbert Eich + +- Package the Slrum testsuite for QA purposes. + NOTE: This package is not meant to be used for testing by the + user but rather for testing by the maintainers to ensure the + package is working properly. + DO NOT report test suite failures unless you are able to confirm + that the failure is really a bug. + ------------------------------------------------------------------- Tue May 31 12:56:05 UTC 2022 - Christian Goll diff --git a/slurm.spec b/slurm.spec index 9ad0ae9..ee198d5 100644 --- a/slurm.spec +++ b/slurm.spec @@ -29,6 +29,8 @@ %define pname slurm +%define slurm_testsuite 1 + %ifarch i586 %arm s390 ExclusiveArch: do_not_build %endif @@ -556,6 +558,34 @@ Group: Productivity/Clustering/Computing Plugins for specific cray hardware, includes power and knl node management. Contains also cray specific documentation. +%package testsuite +Summary: Regression tests from Slurm sources +Group: Productivity/Clustering/Computing +Requires: %{name} = %version +Requires: %{name}-auth-none = %version +Requires: %{name}-cray = %version +Requires: %{name}-devel = %version +Requires: %{name}-hdf5 = %version +Requires: %{name}-lua = %version +Requires: %{name}-munge = %version +Requires: %{name}-node = %version +Requires: %{name}-openlava = %version +Requires: %{name}-rest = %version +Requires: %{name}-seff = %version +Requires: %{name}-sjstat = %version +Requires: %{name}-slurmdbd = %version +Requires: %{name}-sql = %version +Requires: %{name}-torque = %version +Requires: expect +Requires: perl-%{name} = %version + +%description testsuite +The Slurm sources provide a number of regression tests implemented as 'expect' +scripts. +NOTE: Not all of the tests are expected to pass, some require a specific setup. +This test package is meant for internal purposes. +Do not run test suite and file bug reports for each failed test! + %prep %setup -q -n %{pname}-%{dl_ver} %patch0 -p1 @@ -763,7 +793,35 @@ cat > %{buildroot}/%{_sysconfdir}/%{pname}/nss_slurm.conf < %{buildroot}/opt/slurmtest/testsuite/expect/globals.local <