From 52046053d5d5be93fc78e819b0b3911ba4faf97c6023e794a8982ea7affaf478 Mon Sep 17 00:00:00 2001 From: Egbert Eich Date: Mon, 24 Oct 2022 05:31:40 +0000 Subject: [PATCH 1/4] Accepting request 1030610 from home:eeich:branches:network:cluster - Update README_Testsuite.md. - Make hdf5 package optional for test suite. - Clean up left over files when de-installing test suite. - set environment variable SUSE_ZNOW to 0 in %build to avoid module load failures due to unresolved symbols as module take advantage of lazy bindings (bsc#1200030). OBS-URL: https://build.opensuse.org/request/show/1030610 OBS-URL: https://build.opensuse.org/package/show/network:cluster/slurm?expand=0&rev=222 --- README_Testsuite.md | 39 +++++++++++++++++++-------------------- slurm.changes | 10 ++++++++++ slurm.spec | 6 ++++-- 3 files changed, 33 insertions(+), 22 deletions(-) diff --git a/README_Testsuite.md b/README_Testsuite.md index d32da13..4f0d668 100644 --- a/README_Testsuite.md +++ b/README_Testsuite.md @@ -23,11 +23,7 @@ For tests involving MPI this test suite currently uses OpenMPI version 4. ## Install and set up the Base System 1. Prepare image with a minimal minimal text mode installation. -2. Add NFS kernel server support: - ``` - # zypper install nfs-kernel-server - ``` -3. Install, enable and start sshd and make sure root is able to log in +2. Install, enable and start sshd and make sure root is able to log in without password across all nodes. ``` # zypper install openssh-server openssh-clients @@ -35,18 +31,18 @@ For tests involving MPI this test suite currently uses OpenMPI version 4. # ssh-keygen -t rsa -f .ssh/id_rsa -N # cat .ssh/id_rsa.pub >> .ssh/authorized_keys ``` -4. Create a test user 'auser' allow ssh from/to root: +3. Create a test user 'auser' allow ssh from/to root: ``` # useradd -m auser # cp -r /root/.ssh /home/auser ``` -5. Set up a persistent network if to obtain the network address and +4. Set up a persistent network if to obtain the network address and hostname thru DHCP: ``` # echo 'SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", '\ 'ATTR{address}=="?*", ATTR{dev_id}=="0x0", ATTR{type}=="1",'\ - ' KERNEL=="?*", NAME="lan0" - # cat > root/etc/sysconfig/network/ifcfg-lan0 <> /etc/udev/rules.d/70-persistent-net.rules + # cat > /etc/sysconfig/network/ifcfg-lan0 < + +- Update README_Testsuite.md. +- Make hdf5 package optional for test suite. +- Clean up left over files when de-installing test suite. + ------------------------------------------------------------------- Fri Oct 14 08:49:24 UTC 2022 - Christian Goll @@ -106,6 +113,9 @@ Tue May 31 12:56:05 UTC 2022 - Christian Goll "bf_licenses" option in SchedulerParameters. - removed file slurm-2.4.4-init.patch as sysvinit is now realy deprecated - removed file load-pmix-major-version.patch as fixed upstream +- set environment variable SUSE_ZNOW to 0 in %build to avoid module load + failures due to unresolved symbols as module take advantage of lazy + bindings (bsc#1200030). ------------------------------------------------------------------- Tue May 10 10:26:02 UTC 2022 - Egbert Eich diff --git a/slurm.spec b/slurm.spec index 7d8b008..d6cf1eb 100644 --- a/slurm.spec +++ b/slurm.spec @@ -583,7 +583,7 @@ Requires: %{name} = %version Requires: %{name}-auth-none = %version Requires: %{name}-cray = %version Requires: %{name}-devel = %version -Requires: %{name}-hdf5 = %version +Recommends: %{name}-hdf5 = %version Requires: %{name}-lua = %version Requires: %{name}-munge = %version Requires: %{name}-node = %version @@ -1055,7 +1055,9 @@ rm -rf /srv/slurm-testsuite/src /srv/slurm-testsuite/testsuite /srv/slurm-testsu runuser -u %slurm_u -- tar --same-owner -C /srv/slurm-testsuite -xjf %{_datadir}/%{name}/slurmtest.tar.bz2 %preun testsuite -rm -rf /srv/slurm-testsuite/src /srv/slurm-testsuite/testsuite /srv/slurm-testsuite/config.h +rm -rf /srv/slurm-testsuite/src /srv/slurm-testsuite/testsuite \ + /srv/slurm-testsuite/slurm /srv/slurm-testsuite/shared \ + /srv/slurm-testsuite/config.h %{!?nil: # On update the %%postun code of the old package restarts the From 642a47efa70041404f3a14a536bd7b19ca0f69a99e1866198de0ac6b5b00717e Mon Sep 17 00:00:00 2001 From: Egbert Eich Date: Mon, 24 Oct 2022 08:54:35 +0000 Subject: [PATCH 2/4] - Adjustment to test suite package: only recommend openmpi4 OBS-URL: https://build.opensuse.org/package/show/network:cluster/slurm?expand=0&rev=223 --- slurm.changes | 1 + slurm.spec | 2 +- test_setup.tar.gz | 4 ++-- 3 files changed, 4 insertions(+), 3 deletions(-) diff --git a/slurm.changes b/slurm.changes index e2f8de6..6057fd3 100644 --- a/slurm.changes +++ b/slurm.changes @@ -4,6 +4,7 @@ Fri Oct 21 15:14:30 UTC 2022 - Egbert Eich - Update README_Testsuite.md. - Make hdf5 package optional for test suite. - Clean up left over files when de-installing test suite. +- Adjustment to test suite package: only recommend openmpi4 ------------------------------------------------------------------- Fri Oct 14 08:49:24 UTC 2022 - Christian Goll diff --git a/slurm.spec b/slurm.spec index d6cf1eb..0a98679 100644 --- a/slurm.spec +++ b/slurm.spec @@ -600,7 +600,7 @@ Requires: bzip2 Requires: expect Requires: gcc-c++ Requires: libnuma-devel -Requires: openmpi4-gnu-hpc-devel +Recommends: openmpi4-gnu-hpc-devel Requires: pdsh Requires: perl-%{name} = %version Requires: sudo diff --git a/test_setup.tar.gz b/test_setup.tar.gz index 2f44713..e8f931e 100644 --- a/test_setup.tar.gz +++ b/test_setup.tar.gz @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:981cd56a0203f88f65ff762b6ab09655d7f529bc383e5ffc7f5d0a034001a9ea -size 3104 +oid sha256:8577f7b8b0852ec17baa6db1ca4261e2f6343a3e51f4dd86ef61eb19e7def62b +size 3018 From 776ce8f23b19dfddb884ffcc57a84243e9f25bc3aca4ef8efec650c4715b8d20 Mon Sep 17 00:00:00 2001 From: Egbert Eich Date: Tue, 25 Oct 2022 11:33:49 +0000 Subject: [PATCH 3/4] - Test Suite fixes: * Update README_Testsuite.md. * Clean up left over files when de-installing test suite. * Adjustment to test suite package: for SLE mark the openmpi4 devel package and slurm-hdf5 optional. * Add -ffat-lto-objects to the build flags when LTO is set to make sure the object files we ship with the test suite still work correctly. OBS-URL: https://build.opensuse.org/package/show/network:cluster/slurm?expand=0&rev=224 --- slurm.changes | 12 ++++++++---- slurm.spec | 16 ++++++++++++++-- 2 files changed, 22 insertions(+), 6 deletions(-) diff --git a/slurm.changes b/slurm.changes index 6057fd3..8f1ac7a 100644 --- a/slurm.changes +++ b/slurm.changes @@ -1,10 +1,14 @@ ------------------------------------------------------------------- Fri Oct 21 15:14:30 UTC 2022 - Egbert Eich -- Update README_Testsuite.md. -- Make hdf5 package optional for test suite. -- Clean up left over files when de-installing test suite. -- Adjustment to test suite package: only recommend openmpi4 +- Test Suite fixes: + * Update README_Testsuite.md. + * Clean up left over files when de-installing test suite. + * Adjustment to test suite package: for SLE mark the openmpi4 + devel package and slurm-hdf5 optional. + * Add -ffat-lto-objects to the build flags when LTO is set to + make sure the object files we ship with the test suite still + work correctly. ------------------------------------------------------------------- Fri Oct 14 08:49:24 UTC 2022 - Christian Goll diff --git a/slurm.spec b/slurm.spec index 0a98679..3653f27 100644 --- a/slurm.spec +++ b/slurm.spec @@ -576,6 +576,9 @@ Group: Productivity/Clustering/Computing Plugins for specific cray hardware, includes power and knl node management. Contains also cray specific documentation. +# Certain packages are not shipped with SLE. +%define ts_depends %{?sle_version:Recommends}%{!?sle_version:Requires} + %package testsuite Summary: Regression tests from Slurm sources Group: Productivity/Clustering/Computing @@ -583,7 +586,7 @@ Requires: %{name} = %version Requires: %{name}-auth-none = %version Requires: %{name}-cray = %version Requires: %{name}-devel = %version -Recommends: %{name}-hdf5 = %version +%{?have_hdf5:%ts_depends: %{name}-hdf5 = %version} Requires: %{name}-lua = %version Requires: %{name}-munge = %version Requires: %{name}-node = %version @@ -596,11 +599,12 @@ Requires: %{name}-sql = %version Requires: %{name}-torque = %version Requires: mariadb %{?with_pmix:Requires: pmix-devel} +Requires: bind-utils Requires: bzip2 Requires: expect Requires: gcc-c++ Requires: libnuma-devel -Recommends: openmpi4-gnu-hpc-devel +%ts_depends: openmpi4-gnu-hpc-devel Requires: pdsh Requires: perl-%{name} = %version Requires: sudo @@ -641,6 +645,14 @@ mkdir -p mybin; ln -s /usr/bin/python2 mybin/python3 # needed as slurm works that way bsc#1200030 export SUSE_ZNOW=0 +# To make stripped object files work which we ship in the +# testsuite package we need to build with -ffat-lto-objects. +# This should not affect anything as we do not ship static +# libraries and object files - except for the testsuite. +%if "%{?_lto_cflags}" != "" +%global _lto_cflags %{_lto_cflags} -ffat-lto-objects +%endif + autoreconf [ -e $(pwd)/mybin ] && PATH=$(pwd)/mybin:$PATH %configure --enable-shared \ From 212048404bc0eee33a88127b570cb4825dfdf01588fdcd5ab43a9b5f5824f13a Mon Sep 17 00:00:00 2001 From: Egbert Eich Date: Wed, 26 Oct 2022 06:23:36 +0000 Subject: [PATCH 4/4] * Improve setup-testsuite.sh: copy ssh fingerprints from all nodes. OBS-URL: https://build.opensuse.org/package/show/network:cluster/slurm?expand=0&rev=225 --- README_Testsuite.md | 6 ++---- slurm.changes | 1 + test_setup.tar.gz | 4 ++-- 3 files changed, 5 insertions(+), 6 deletions(-) diff --git a/README_Testsuite.md b/README_Testsuite.md index 4f0d668..3acd3a4 100644 --- a/README_Testsuite.md +++ b/README_Testsuite.md @@ -22,7 +22,7 @@ For tests involving MPI this test suite currently uses OpenMPI version 4. ## Install and set up the Base System -1. Prepare image with a minimal minimal text mode installation. +1. Prepare image with a minimal text mode installation. 2. Install, enable and start sshd and make sure root is able to log in without password across all nodes. ``` @@ -69,8 +69,6 @@ For tests involving MPI this test suite currently uses OpenMPI version 4. ``` # mkdir -p /srv/home # mv /home/auser /srv/home - # mkdir /home/slurm-testsuite - # chown slurm:slurm /home/slurm-testsuite # cat >> /etc/exports < * Add -ffat-lto-objects to the build flags when LTO is set to make sure the object files we ship with the test suite still work correctly. + * Improve setup-testsuite.sh: copy ssh fingerprints from all nodes. ------------------------------------------------------------------- Fri Oct 14 08:49:24 UTC 2022 - Christian Goll diff --git a/test_setup.tar.gz b/test_setup.tar.gz index e8f931e..6c7c179 100644 --- a/test_setup.tar.gz +++ b/test_setup.tar.gz @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:8577f7b8b0852ec17baa6db1ca4261e2f6343a3e51f4dd86ef61eb19e7def62b -size 3018 +oid sha256:ecf47b27b894b01e983e0fc5ad1b782f475d6dcd51408c47aea1b491186289ec +size 3136