Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package slurm for openSUSE:Factory checked in at 2022-10-26 12:32:00 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/slurm (Old) and /work/SRC/openSUSE:Factory/.slurm.new.2275 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "slurm" Wed Oct 26 12:32:00 2022 rev:80 rq:1031255 version:22.05.5 Changes: -------- --- /work/SRC/openSUSE:Factory/slurm/slurm.changes 2022-10-22 14:13:52.616850316 +0200 +++ /work/SRC/openSUSE:Factory/.slurm.new.2275/slurm.changes 2022-10-26 12:32:03.808347293 +0200 @@ -1,0 +2,13 @@ +Fri Oct 21 15:14:30 UTC 2022 - Egbert Eich <[email protected]> + +- 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. + * Improve setup-testsuite.sh: copy ssh fingerprints from all nodes. + +------------------------------------------------------------------- @@ -108,0 +122,3 @@ +- 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). ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ slurm.spec ++++++ --- /var/tmp/diff_new_pack.iXIE2P/_old 2022-10-26 12:32:05.312350508 +0200 +++ /var/tmp/diff_new_pack.iXIE2P/_new 2022-10-26 12:32:05.320350525 +0200 @@ -576,6 +576,9 @@ 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}-auth-none = %version Requires: %{name}-cray = %version Requires: %{name}-devel = %version -Requires: %{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}-torque = %version Requires: mariadb %{?with_pmix:Requires: pmix-devel} +Requires: bind-utils Requires: bzip2 Requires: expect Requires: gcc-c++ Requires: libnuma-devel -Requires: openmpi4-gnu-hpc-devel +%ts_depends: openmpi4-gnu-hpc-devel Requires: pdsh Requires: perl-%{name} = %version Requires: sudo @@ -641,6 +645,14 @@ # 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 \ @@ -1055,7 +1067,9 @@ 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 ++++++ README_Testsuite.md ++++++ --- /var/tmp/diff_new_pack.iXIE2P/_old 2022-10-26 12:32:05.392350679 +0200 +++ /var/tmp/diff_new_pack.iXIE2P/_new 2022-10-26 12:32:05.396350688 +0200 @@ -22,12 +22,8 @@ ## 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 +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. ``` # zypper install openssh-server openssh-clients @@ -35,18 +31,18 @@ # 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 <<EOF + ' KERNEL=="?*", NAME="lan0" >> /etc/udev/rules.d/70-persistent-net.rules + # cat > /etc/sysconfig/network/ifcfg-lan0 <<EOF BOOTPROTO='dhcp' MTU='' REMOTE_IPADDR='' @@ -59,21 +55,20 @@ ## Install and set up the Slurm specific Environment 1. Install package slurm-testsuite. -2. Set up, enable mariadb, add slurm accounting database: +2. Set up, enable & start mariadb, add slurm accounting database: + ``` # sed -i -e "/^bind-address/s@\(^.*$\)@# \1@" /etc/my.cnf - # systemctl start maridb + # systemctl start mariadb # mysql -uroot -e "create user 'slurm'@'node01' identified by 'linux';" # mysql -uroot -e "create database slurm_acct_db;" # mysql -uroot -e "grant all on slurm_acct_db.* TO 'slurm'@'node01';" ``` -3. Set up shared home, testsuite and slurm config directories, enable - NFS server: +3. Set up shared home, testsuite and slurm config directories, install and + enable NFS kernel server. ``` # mkdir -p /srv/home # mv /home/auser /srv/home - # mkdir /home/slurm-testsuite - # chown slurm:slurm /home/slurm-testsuite # cat >> /etc/exports <<EOF /srv/home *(rw,no_subtree_check,sync,no_root_squash) /srv/slurm-testsuite *(rw,no_subtree_check,sync,no_root_squash) @@ -85,9 +80,16 @@ node01:/srv/slurm-testsuite/config /etc/slurm nfs sync,hard,rw 0 0 node01:/srv/slurm-testsuite/shared /var/lib/slurm/shared nfs sync,hard,rw 0 0 node01:/srv/slurm-testsuite /home/slurm-testsuite nfs sync,hard,rw 0 0 + EOF + # zypper install nfs-kernel-server # systemctl enable nfs-server - ``` +4. Enable munge and slurmd: + ``` + # systemctl enable munge + # systemctl enable slurmd + ``` + # Clone Nodes and bring up Test System 1. Now halt the system and duplicate it 3 times. @@ -95,13 +97,8 @@ 2. Set up the dhcp server and make sure the nodes receive the hostnames ``node01```,..., ```node04```. -3. Enable munge and slurmd: - ``` - # systemctl enable munge - # systemctl enable slurmd - ``` - 4. Boot all 4 nodes (start with ```node01```). + 5. On ```node01```, log in as ```root``` and run ```setup-testsuite.sh```: ``` # ./setup-testsuite.sh @@ -110,7 +107,7 @@ ``` # sudo -s -u slurm $ module load gnu openmpi - $ cd /home/test/home/slurm-testsuite/testsuite/expect + $ cd /home/slurm-testsuite/testsuite/expect $ ./regression.py ``` ++++++ test_setup.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/test_setup/setup-testsuite.sh new/test_setup/setup-testsuite.sh --- old/test_setup/setup-testsuite.sh 2022-07-07 21:14:43.993441301 +0200 +++ new/test_setup/setup-testsuite.sh 2022-10-24 11:21:15.116381480 +0200 @@ -4,6 +4,12 @@ node01=false [ "$(hostname)" = "node01" ] && node01=true +for i in 1 2 3 4; do + m=$(printf "node%2.2i" ${i}) + n=$(host $m) + ssh-keyscan -4 -t ecdsa-sha2-nistp256 $m,${n##* } >> $HOME/.ssh/known_hosts +done + $node01 && { systemctl is-enabled mariadb || systemctl enable --now mariadb; } sleep 2 $node01 && { systemctl is-enabled slurmdbd || systemctl enable --now slurmdbd; } @@ -12,5 +18,5 @@ sleep 2 $node01 && { systemctl is-enabled slurmctld || systemctl enable --now slurmctld; } sleep 5 -sacctmgr -i add account slurm -sacctmgr -i add user slurm account=slurm +$node01 && sacctmgr -i add account slurm +$node01 && sacctmgr -i add user slurm account=slurm
