The package rpms/slurm.git has added or updated architecture specific content in its spec file (ExclusiveArch/ExcludeArch or %ifarch/%ifnarch) in commit(s): https://src.fedoraproject.org/cgit/rpms/slurm.git/commit/?id=8cb979feb927d20....
Change: +ExcludeArch: i686
Thanks.
Full change: ============
commit 77f0f529c536b0be6a0f066ff00d7bedbff21a03 Author: Philip Kovacs pkdevel@yahoo.com Date: Fri Jul 5 09:53:19 2019 -0400
use pmix as default mpi
diff --git a/slurm.conf b/slurm.conf index e84d7a7..06539c9 100644 --- a/slurm.conf +++ b/slurm.conf @@ -31,7 +31,7 @@ CryptoType=crypto/munge #MaxJobCount=5000 #MaxStepCount=40000 #MaxTasksPerNode=128 -MpiDefault=none +MpiDefault=pmix #MpiParams=ports=#-# #PluginDir= #PlugStackConfig=
commit 94164896cbf25c4e4f504301288c781474ca62a5 Merge: 1173b39 a935471 Author: Philip Kovacs pkdevel@yahoo.com Date: Tue Jul 2 03:22:23 2019 -0400
Merge branch 'f30'
commit 1173b391dcadc987bd7349a2fffe4b1f5d4925ed Author: Philip Kovacs pkdevel@yahoo.com Date: Tue Jul 2 02:18:07 2019 -0400
Do not install slurm implementation of libpmi/pmi2 libraries in favor of the faster implementation provided by pmix Remove pmi environment module formerly used to select the slurm vs pmix implementations of libpmi/pmi2
diff --git a/slurm.spec b/slurm.spec index 50cb3d7..af321c4 100644 --- a/slurm.spec +++ b/slurm.spec @@ -12,7 +12,7 @@
Name: slurm Version: 19.05.0 -Release: 4%{?dist} +Release: 5%{?dist} Summary: Simple Linux Utility for Resource Management License: GPLv2 and BSD URL: https://slurm.schedmd.com/ @@ -41,7 +41,6 @@ Patch22: slurm_to_python3.patch
BuildRequires: autoconf BuildRequires: automake -BuildRequires: environment(modules) BuildRequires: desktop-file-utils BuildRequires: gcc BuildRequires: perl-devel @@ -117,8 +116,6 @@ and their respective man pages.
%package libs Summary: Slurm shared libraries -Provides: pmi -Requires: environment(modules) %description libs Slurm shared libraries.
@@ -259,11 +256,11 @@ s|^dir_tmpfiles_d=.*|dir_tmpfiles_d="%{_tmpfilesdir}"|g;' \ extras/%{name}-setuser.in > extras/%{name}-setuser
# build base packages -%make_build V=1 +%make_build
# build contribs packages # INSTALLDIRS=vendor so perlapi goes to vendor_perl directory -%make_build PERL_MM_PARAMS="INSTALLDIRS=vendor" contrib V=1 +%make_build PERL_MM_PARAMS="INSTALLDIRS=vendor" contrib
%check # The test binaries need LD_LIBRARY_PATH to find the compiled slurm library @@ -321,18 +318,6 @@ touch %{buildroot}%{_rundir}/%{name}/slurmctld.pid touch %{buildroot}%{_rundir}/%{name}/slurmd.pid touch %{buildroot}%{_rundir}/%{name}/slurmdbd.pid
-# install pmi/slurm environment module file -install -d -m 0755 %{buildroot}%{_modulesdir}/pmi -cat >%{buildroot}%{_modulesdir}/pmi/%{name}-%{_arch} <<EOF -#%%Module 1.0 -# -# pmi/slurm module for use with 'environment-modules' package: -# -conflict pmi -prepend-path LD_LIBRARY_PATH %{_libdir}/%{name}/lib -prepend-path PKG_CONFIG_PATH %{_libdir}/%{name}/lib/pkgconfig -EOF - # install pkgconfig file slurm.pc install -d -m 0755 %{buildroot}%{_libdir}/pkgconfig cat >%{buildroot}%{_libdir}/pkgconfig/%{name}.pc <<EOF @@ -346,32 +331,6 @@ Cflags: -I${includedir} Libs: -L${libdir} -lslurm EOF
-# install pkgconfig file pmi.pc for environment module usage -install -d -m 0755 %{buildroot}%{_libdir}/%{name}/lib/pkgconfig -cat >%{buildroot}%{_libdir}/%{name}/lib/pkgconfig/pmi.pc <<EOF -includedir=%{_includedir}/%{name} -libdir=%{_libdir}/%{name}/lib - -Name: pmi -Version: %{version} -Description: Slurm PMI development library -Cflags: -I${includedir} -Libs: -L${libdir} -lpmi -EOF - -# install pkgconfig file pmi2.pc for environment module usage -install -d -m 0755 %{buildroot}%{_libdir}/%{name}/lib/pkgconfig -cat >%{buildroot}%{_libdir}/%{name}/lib/pkgconfig/pmi2.pc <<EOF -includedir=%{_includedir}/%{name} -libdir=%{_libdir}/%{name}/lib - -Name: pmi2 -Version: %{version} -Description: Slurm PMI2 development library -Cflags: -I${includedir} -Libs: -L${libdir} -lpmi2 -EOF - # install desktop file for sview GTK+ program desktop-file-install \ --dir=%{buildroot}%{_datadir}/applications \ @@ -386,11 +345,6 @@ install -m 0644 share/icons/hicolor/128x128/apps/%{name}.png \ install -m 0755 extras/%{name}-setuser \ %{buildroot}%{_bindir}/%{name}-setuser
-# move libpmi/libpmi2 to pmi/slurm environment module location -install -d -m 0755 %{buildroot}%{_libdir}/%{name}/lib -mv %{buildroot}%{_libdir}/libpmi.so* %{buildroot}%{_libdir}/%{name}/lib -mv %{buildroot}%{_libdir}/libpmi2.so* %{buildroot}%{_libdir}/%{name}/lib - install -m 0755 contribs/sjstat %{buildroot}%{_bindir}/sjstat
# fix perms on these files so debug info is extracted without error @@ -412,6 +366,10 @@ install -m 0644 contribs/lua/*.lua %{buildroot}%{_docdir}/%{name}/contribs/lua
# remove libtool archives find %{buildroot} -name *.a -o -name *.la | xargs rm -f +# remove pmi/pmi2 headers which are provided by pmix dependency +rm -rf %{buildroot}%{_includedir}/%{name}/pmi*.h +# remove libpmi/pmi2 libraries which are provided by pmix dependency +rm -rf %{buildroot}%{_libdir}/libpmi*.so* # remove libslurmfull symlink (non-development, internal library) rm -rf %{buildroot}%{_libdir}/libslurmfull.so # remove auth_none plugin @@ -516,11 +474,9 @@ rm -f %{buildroot}%{perl_archlib}/perllocal.pod
%files devel %dir %{_includedir}/%{name} -%dir %{_libdir}/%{name}/lib/pkgconfig %dir %{_libdir}/%{name}/src %dir %{_libdir}/%{name}/src/sattach %dir %{_libdir}/%{name}/src/srun -%{_includedir}/%{name}/pmi*.h %{_includedir}/%{name}/slurm.h %{_includedir}/%{name}/slurm_errno.h %{_includedir}/%{name}/slurmdb.h @@ -528,8 +484,6 @@ rm -f %{buildroot}%{perl_archlib}/perllocal.pod %{_includedir}/%{name}/spank.h %{_libdir}/lib{slurm,slurmdb}.so %{_libdir}/pkgconfig/%{name}.pc -%{_libdir}/%{name}/lib/libpmi*.so -%{_libdir}/%{name}/lib/pkgconfig/*.pc %{_libdir}/%{name}/src/sattach/sattach.wrapper.c %{_libdir}/%{name}/src/srun/srun.wrapper.c %{_mandir}/man3/*.3.* @@ -560,13 +514,8 @@ rm -f %{buildroot}%{perl_archlib}/perllocal.pod # ----------
%files libs -%dir %{_libdir}/%{name} -%dir %{_libdir}/%{name}/lib -%dir %{_modulesdir}/pmi %{_libdir}/libslurm.so.* %{_libdir}/libslurmfull-*.so -%{_libdir}/%{name}/lib/libpmi*.so.* -%{_modulesdir}/pmi/*
# ------------- # Slurm-rrdtool @@ -730,6 +679,12 @@ rm -f %{buildroot}%{perl_archlib}/perllocal.pod %systemd_postun_with_restart slurmdbd.service
%changelog +* Tue Jul 2 2019 Philip Kovacs pkdevel@yahoo.com - 19.05.0-5 +- Do not install slurm implementation of libpmi/pmi2 libraries +- in favor of the faster implementation provided by pmix +- Remove pmi environment module formerly used to select the slurm +- vs pmix implementations of libpmi/pmi2 + * Wed Jun 19 2019 Philip Kovacs pkdevel@yahoo.com - 19.05.0-4 - Correct the configure for pmix - Correct the slurm_pmix_soname patch
commit 24291ca62cd466571a379e15a20d108c83353361 Author: Philip Kovacs pkdevel@yahoo.com Date: Wed Jun 19 20:41:50 2019 -0400
Correct the configure for pmix Correct the slurm_pmix_soname patch
diff --git a/slurm.spec b/slurm.spec index 03fd950..50cb3d7 100644 --- a/slurm.spec +++ b/slurm.spec @@ -12,7 +12,7 @@
Name: slurm Version: 19.05.0 -Release: 3%{?dist} +Release: 4%{?dist} Summary: Simple Linux Utility for Resource Management License: GPLv2 and BSD URL: https://slurm.schedmd.com/ @@ -234,7 +234,6 @@ automake --no-force --prefix=%{_prefix} \ --sysconfdir=%{_sysconfdir}/%{name} \ --with-pam_dir=%{_libdir}/security \ - --with-pmix \ --enable-shared \ --enable-x11 \ --disable-static \ @@ -731,6 +730,10 @@ rm -f %{buildroot}%{perl_archlib}/perllocal.pod %systemd_postun_with_restart slurmdbd.service
%changelog +* Wed Jun 19 2019 Philip Kovacs pkdevel@yahoo.com - 19.05.0-4 +- Correct the configure for pmix +- Correct the slurm_pmix_soname patch + * Wed Jun 19 2019 Philip Kovacs pkdevel@yahoo.com - 19.05.0-3 - Stop using autotools macros that were removed from rpm
diff --git a/slurm_pmix_soname.patch b/slurm_pmix_soname.patch index 1ab15db..7557569 100644 --- a/slurm_pmix_soname.patch +++ b/slurm_pmix_soname.patch @@ -1,27 +1,23 @@ diff --git a/src/plugins/mpi/pmix/mpi_pmix.c b/src/plugins/mpi/pmix/mpi_pmix.c -index 1a0998d213..c8241056bc 100644 +index bbb947616c..65ec00ad73 100644 --- a/src/plugins/mpi/pmix/mpi_pmix.c +++ b/src/plugins/mpi/pmix/mpi_pmix.c -@@ -79,10 +79,13 @@ const char plugin_name[] = "PMIx plugin"; - - #if (HAVE_PMIX_VER == 1) - const char plugin_type[] = "mpi/pmix_v1"; -+const char libpmix_soname[] = "libpmix.so.1"; - #elif (HAVE_PMIX_VER == 2) - const char plugin_type[] = "mpi/pmix_v2"; -+const char libpmix_soname[] = "libpmix.so.2"; - #elif (HAVE_PMIX_VER == 3) - const char plugin_type[] = "mpi/pmix_v3"; -+const char libpmix_soname[] = "libpmix.so.3"; - #endif - - const uint32_t plugin_version = SLURM_VERSION_NUMBER; -@@ -105,7 +108,7 @@ static void *_libpmix_open(void) +@@ -105,10 +105,17 @@ static void *_libpmix_open(void) #elif defined PMIXP_V2_LIBPATH xstrfmtcat(full_path, "%s/", PMIXP_V2_LIBPATH); #endif - xstrfmtcat(full_path, "libpmix.so"); -+ xstrfmtcat(full_path, libpmix_soname); ++ xstrfmtcat(full_path, "libpmix.so.2"); lib_plug = dlopen(full_path, RTLD_LAZY | RTLD_GLOBAL); xfree(full_path);
++ if (!lib_plug) { ++ dlerror(); ++ xstrfmtcat(full_path, "libpmix.so.1"); ++ lib_plug = dlopen(full_path, RTLD_LAZY | RTLD_GLOBAL); ++ xfree(full_path); ++ } ++ + if (lib_plug && (HAVE_PMIX_VER != pmixp_lib_get_version())) { + PMIXP_ERROR("pmi/pmix: incorrect PMIx library version loaded %d was loaded, required %d version", + pmixp_lib_get_version(), (int)HAVE_PMIX_VER);
commit d2a9192464fbacdfa0cc6e21e5166d921bf70b2f Author: Philip Kovacs pkdevel@yahoo.com Date: Wed Jun 19 16:48:42 2019 -0400
Use make_build macro instead of make
Signed-off-by: Philip Kovacs pkdevel@yahoo.com
diff --git a/slurm.spec b/slurm.spec index 79528fb..03fd950 100644 --- a/slurm.spec +++ b/slurm.spec @@ -264,16 +264,16 @@ s|^dir_tmpfiles_d=.*|dir_tmpfiles_d="%{_tmpfilesdir}"|g;' \
# build contribs packages # INSTALLDIRS=vendor so perlapi goes to vendor_perl directory -PERL_MM_PARAMS="INSTALLDIRS=vendor" %make_build contrib V=1 +%make_build PERL_MM_PARAMS="INSTALLDIRS=vendor" contrib V=1
%check # The test binaries need LD_LIBRARY_PATH to find the compiled slurm library # in the build tree. -LD_LIBRARY_PATH="%{buildroot}%{_libdir};%{_libdir}" %{__make} check +%make_build LD_LIBRARY_PATH="%{buildroot}%{_libdir};%{_libdir}" check
%install %make_install -%{__make} install-contrib DESTDIR=%{buildroot} +%make_build DESTDIR=%{buildroot} install-contrib
install -d -m 0755 %{buildroot}%{_sysconfdir}/%{name} install -d -m 0755 %{buildroot}%{_sysconfdir}/%{name}/layouts.d
commit a4e1fabcab4841158253b95f30c4713c0ecfc105 Author: Philip Kovacs pkdevel@yahoo.com Date: Wed Jun 19 00:31:49 2019 -0400
Stop using autotools macros that were removed from rpm
diff --git a/slurm.spec b/slurm.spec index 490db74..79528fb 100644 --- a/slurm.spec +++ b/slurm.spec @@ -12,7 +12,7 @@
Name: slurm Version: 19.05.0 -Release: 2%{?dist} +Release: 3%{?dist} Summary: Simple Linux Utility for Resource Management License: GPLv2 and BSD URL: https://slurm.schedmd.com/ @@ -225,9 +225,9 @@ mkdir -p extras cp %SOURCE5 extras/%{name}-setuser.in
%build -%{__aclocal} -I auxdir -%{__autoconf} -%{__automake} --no-force +aclocal -I auxdir +autoconf +automake --no-force # use -z lazy to allow dlopen with unresolved symbols %configure \ LDFLAGS="$LDFLAGS -Wl,-z,lazy" \ @@ -731,6 +731,9 @@ rm -f %{buildroot}%{perl_archlib}/perllocal.pod %systemd_postun_with_restart slurmdbd.service
%changelog +* Wed Jun 19 2019 Philip Kovacs pkdevel@yahoo.com - 19.05.0-3 +- Stop using autotools macros that were removed from rpm + * Sun Jun 9 2019 Philip Kovacs pkdevel@yahoo.com - 19.05.0-2 - Exclude upstream-deprecated 32-bit architectures
commit f36519459da1d06c61e0e4a54e4def14f5936f49 Author: Jitka Plesnikova jplesnik@redhat.com Date: Wed Jun 12 17:23:22 2019 +0200
Use perl-macros, because in rpm 4.15 perl macros are no longer defined
diff --git a/slurm.spec b/slurm.spec index 80a2840..490db74 100644 --- a/slurm.spec +++ b/slurm.spec @@ -47,6 +47,7 @@ BuildRequires: gcc BuildRequires: perl-devel BuildRequires: perl-ExtUtils-MakeMaker BuildRequires: perl-interpreter +BuildRequires: perl-macros BuildRequires: perl-podlators BuildRequires: pkgconf BuildRequires: pkgconfig(check)
commit 8cb979feb927d2083597acd50c9027930d1298ce Author: Philip Kovacs pkdevel@yahoo.com Date: Sun Jun 9 18:43:43 2019 -0400
Exclude upstream-deprecated 32-bit architectures
diff --git a/slurm.spec b/slurm.spec index debed12..80a2840 100644 --- a/slurm.spec +++ b/slurm.spec @@ -12,7 +12,7 @@
Name: slurm Version: 19.05.0 -Release: 1%{?dist} +Release: 2%{?dist} Summary: Simple Linux Utility for Resource Management License: GPLv2 and BSD URL: https://slurm.schedmd.com/ @@ -76,6 +76,10 @@ BuildRequires: rdma-core-devel BuildRequires: numactl-devel %endif
+# exclude upstream-deprecated 32-bit architectures +ExcludeArch: armv7hl +ExcludeArch: i686 + Requires: munge Requires: pmix >= 2.0.0 %{?systemd_requires} @@ -726,6 +730,9 @@ rm -f %{buildroot}%{perl_archlib}/perllocal.pod %systemd_postun_with_restart slurmdbd.service
%changelog +* Sun Jun 9 2019 Philip Kovacs pkdevel@yahoo.com - 19.05.0-2 +- Exclude upstream-deprecated 32-bit architectures + * Sun Jun 9 2019 Philip Kovacs pkdevel@yahoo.com - 19.05.0-1 - Release of 19.05.0 - Added nss_plugin subpackage for optional nss plugin
commit b8cc3a51721d0d5bb6c5dd32af74b00fef74f10a Author: Philip Kovacs pkdevel@yahoo.com Date: Sun Jun 9 18:11:56 2019 -0400
Release of 19.05.0 Added nss_plugin subpackage for optional nss plugin Added patch to fix 19.05.0 testsuite Adjusted cray patch to remove all cray, cray_aries plugins Reflect all upstream plugin additions/deletions Remove openssl build dependency
diff --git a/slurm.spec b/slurm.spec index 6ac71c8..debed12 100644 --- a/slurm.spec +++ b/slurm.spec @@ -11,8 +11,8 @@ %undefine _strict_symbol_defs_build
Name: slurm -Version: 18.08.7 -Release: 2%{?dist} +Version: 19.05.0 +Release: 1%{?dist} Summary: Simple Linux Utility for Resource Management License: GPLv2 and BSD URL: https://slurm.schedmd.com/ @@ -25,6 +25,8 @@ Source5: slurm-setuser.in
# Upstream bug #4449: release-style versioning of libslurmfull Patch0: slurm_libslurmfull_version.patch +# Upstream bug #7197: fix 19.05.0 testsuite +Patch1: slurm_fix_testsuite.patch
# Build-related patches Patch10: slurm_perlapi_rpaths.patch @@ -64,7 +66,6 @@ BuildRequires: pkgconfig(lua) BuildRequires: pkgconfig(mariadb) BuildRequires: pkgconfig(munge) BuildRequires: pkgconfig(ncurses) -BuildRequires: pkgconfig(openssl) BuildRequires: pkgconfig(pmix) >= 2.0.0 BuildRequires: pkgconfig(zlib) BuildRequires: readline-devel @@ -157,6 +158,15 @@ Slurm contribution package which includes the programs seff, sjobexitmod, sjstat and smail. See their respective man pages for more information.
+%package nss_slurm +Summary: NSS plugin for slurm +Requires: %{name}-libs%{?_isa} = %{version}-%{release} +%description nss_slurm +nss_slurm is an optional NSS plugin that can permit passwd and group resolution +for a job on the compute node to be serviced through the local slurmstepd +process, rather than through some alternate network-based service such as LDAP, +SSSD, or NSLCD. + %package openlava Summary: Openlava/LSF wrappers for transition from OpenLava/LSF to Slurm Requires: %{name}-perlapi%{?_isa} = %{version}-%{release} @@ -190,6 +200,7 @@ Torque wrapper scripts used for helping migrate from Torque/PBS to Slurm. %prep %setup -q -n %{name_version} %patch0 -p1 +%patch1 -p1 %patch10 -p1 %patch11 -p1 %patch12 -p1 @@ -393,7 +404,7 @@ done # contribs docs install -d -m 0755 %{buildroot}%{_docdir}/%{name}/contribs/lua install -m 0644 contribs/README %{buildroot}%{_docdir}/%{name}/contribs -install -m 0644 contribs/lua/proctrack.lua %{buildroot}%{_docdir}/%{name}/contribs/lua +install -m 0644 contribs/lua/*.lua %{buildroot}%{_docdir}/%{name}/contribs/lua
# remove libtool archives find %{buildroot} -name *.a -o -name *.la | xargs rm -f @@ -405,18 +416,7 @@ rm -f %{buildroot}%{_libdir}/%{name}/auth_none.so rm -f %{buildroot}%{_libdir}/%{name}/job_submit_defaults.so rm -f %{buildroot}%{_libdir}/%{name}/job_submit_logging.so rm -f %{buildroot}%{_libdir}/%{name}/job_submit_partition.so -# remove bluegene files -rm -f %{buildroot}%{_libdir}/%{name}/select_bluegene.so -rm -f %{buildroot}%{_mandir}/man5/bluegene* # remove cray files -rm -f %{buildroot}%{_libdir}/%{name}/acct_gather_energy_cray.so -rm -f %{buildroot}%{_libdir}/%{name}/core_spec_cray.so -rm -f %{buildroot}%{_libdir}/%{name}/job_container_cncu.so -rm -f %{buildroot}%{_libdir}/%{name}/job_submit_cray.so -rm -f %{buildroot}%{_libdir}/%{name}/select_alps.so -rm -f %{buildroot}%{_libdir}/%{name}/select_cray.so -rm -f %{buildroot}%{_libdir}/%{name}/switch_cray.so -rm -f %{buildroot}%{_libdir}/%{name}/task_cray.so rm -f %{buildroot}%{_mandir}/man5/cray* # remove perl cruft rm -f %{buildroot}%{perl_vendorarch}/auto/Slurm*/.packlist @@ -455,11 +455,12 @@ rm -f %{buildroot}%{perl_archlib}/perllocal.pod %{_libdir}/%{name}/auth_munge.so %{_libdir}/%{name}/burst_buffer_generic.so %{_libdir}/%{name}/checkpoint_{none,ompi}.so +%{_libdir}/%{name}/cli_filter_none.so %{_libdir}/%{name}/core_spec_none.so -%{_libdir}/%{name}/crypto_munge.so -%{_libdir}/%{name}/crypto_openssl.so +%{_libdir}/%{name}/cred_{munge,none}.so %{_libdir}/%{name}/ext_sensors_none.so -%{_libdir}/%{name}/gres_{gpu,mic,nic}.so +%{_libdir}/%{name}/gres_{gpu,mic,mps,nic}.so +%{_libdir}/%{name}/gpu_generic.so %{_libdir}/%{name}/job_container_none.so %{_libdir}/%{name}/job_submit_all_partitions.so %{_libdir}/%{name}/job_submit_lua.so @@ -479,7 +480,8 @@ rm -f %{buildroot}%{perl_archlib}/perllocal.pod %{_libdir}/%{name}/proctrack_{cgroup,linuxproc,lua,pgid}.so %{_libdir}/%{name}/route_{default,topology}.so %{_libdir}/%{name}/sched_{backfill,builtin,hold}.so -%{_libdir}/%{name}/select_{cons_res,linear,serial}.so +%{_libdir}/%{name}/select_{cons_res,cons_tres,linear,serial}.so +%{_libdir}/%{name}/site_factor_none.so %{_libdir}/%{name}/slurmctld_nonstop.so %{_libdir}/%{name}/switch_{generic,none}.so %{_libdir}/%{name}/task_{affinity,cgroup,none}.so @@ -558,7 +560,6 @@ rm -f %{buildroot}%{perl_archlib}/perllocal.pod %dir %{_libdir}/%{name}/lib %dir %{_modulesdir}/pmi %{_libdir}/libslurm.so.* -%{_libdir}/libslurmdb.so.* %{_libdir}/libslurmfull-*.so %{_libdir}/%{name}/lib/libpmi*.so.* %{_modulesdir}/pmi/* @@ -615,7 +616,7 @@ rm -f %{buildroot}%{perl_archlib}/perllocal.pod %dir %{_docdir}/%{name}/contribs %dir %{_docdir}/%{name}/contribs/lua %{_docdir}/%{name}/contribs/README -%{_docdir}/%{name}/contribs/lua/proctrack.lua +%{_docdir}/%{name}/contribs/lua/*.lua %{_bindir}/seff %{_bindir}/sgather %{_bindir}/sjobexitmod @@ -625,6 +626,13 @@ rm -f %{buildroot}%{perl_archlib}/perllocal.pod %{_mandir}/man1/sjobexitmod.1* %{_mandir}/man1/sjstat.1*
+# --------------- +# Slurm-nss_slurm +# --------------- + +%files nss_slurm +%{_libdir}/libnss_slurm.so.2 + # -------------- # Slurm-openlava # -------------- @@ -718,6 +726,14 @@ rm -f %{buildroot}%{perl_archlib}/perllocal.pod %systemd_postun_with_restart slurmdbd.service
%changelog +* Sun Jun 9 2019 Philip Kovacs pkdevel@yahoo.com - 19.05.0-1 +- Release of 19.05.0 +- Added nss_plugin subpackage for optional nss plugin +- Added patch to fix 19.05.0 testsuite +- Adjusted cray patch to remove all cray, cray_aries plugins +- Reflect all upstream plugin additions/deletions +- Remove openssl build dependency + * Thu May 30 2019 Jitka Plesnikova jplesnik@redhat.com - 18.08.7-2 - Perl 5.30 rebuild
diff --git a/slurm_do_not_build_cray.patch b/slurm_do_not_build_cray.patch index 7ec7ecc..8b994dc 100644 --- a/slurm_do_not_build_cray.patch +++ b/slurm_do_not_build_cray.patch @@ -1,10 +1,101 @@ diff --git a/contribs/Makefile.am b/contribs/Makefile.am -index 24ab9de7cc..087262c347 100644 +index da96aa070d..2a2d1f2c82 100644 --- a/contribs/Makefile.am +++ b/contribs/Makefile.am @@ -1,4 +1,4 @@ --SUBDIRS = cray lua mic openlava pam pam_slurm_adopt perlapi pmi pmi2 seff sgather sgi sjobexit torque -+SUBDIRS = lua mic openlava pam pam_slurm_adopt perlapi pmi pmi2 seff sgather sgi sjobexit torque +-SUBDIRS = cray lua mic nss_slurm openlava pam pam_slurm_adopt perlapi pmi pmi2 seff sgather sgi sjobexit torque ++SUBDIRS = lua mic nss_slurm openlava pam pam_slurm_adopt perlapi pmi pmi2 seff sgather sgi sjobexit torque
EXTRA_DIST = \ - gcp \ + make-3.81.slurm.patch \ +diff --git a/src/plugins/acct_gather_energy/Makefile.am b/src/plugins/acct_gather_energy/Makefile.am +index 50c4fd36a2..c826387219 100644 +--- a/src/plugins/acct_gather_energy/Makefile.am ++++ b/src/plugins/acct_gather_energy/Makefile.am +@@ -1,3 +1,3 @@ + # Makefile for accounting gather energy plugins + +-SUBDIRS = cray_aries rapl ibmaem ipmi none xcc ++SUBDIRS = rapl ibmaem ipmi none xcc +diff --git a/src/plugins/core_spec/Makefile.am b/src/plugins/core_spec/Makefile.am +index 44b1ed67c0..f06bc541d7 100644 +--- a/src/plugins/core_spec/Makefile.am ++++ b/src/plugins/core_spec/Makefile.am +@@ -1,3 +1,3 @@ + # Makefile for core specialization plugins + +-SUBDIRS = cray_aries none ++SUBDIRS = none +diff --git a/src/plugins/job_container/Makefile.am b/src/plugins/job_container/Makefile.am +index 8e1960a456..529a9d581d 100644 +--- a/src/plugins/job_container/Makefile.am ++++ b/src/plugins/job_container/Makefile.am +@@ -1,3 +1,3 @@ + # Makefile for job_container plugins + +-SUBDIRS = cncu none ++SUBDIRS = none +diff --git a/src/plugins/job_submit/Makefile.am b/src/plugins/job_submit/Makefile.am +index e393bcfb1c..b98cf2e000 100644 +--- a/src/plugins/job_submit/Makefile.am ++++ b/src/plugins/job_submit/Makefile.am +@@ -2,7 +2,6 @@ + + SUBDIRS = \ + all_partitions \ +- cray_aries \ + defaults \ + logging \ + lua \ +diff --git a/src/plugins/node_features/Makefile.am b/src/plugins/node_features/Makefile.am +index f5ef036303..d955c51ba1 100644 +--- a/src/plugins/node_features/Makefile.am ++++ b/src/plugins/node_features/Makefile.am +@@ -1,3 +1,3 @@ + # Makefile for node_features plugins + +-SUBDIRS = knl_cray knl_generic ++SUBDIRS = knl_generic +diff --git a/src/plugins/power/Makefile.am b/src/plugins/power/Makefile.am +index ccde44c322..c6171740c1 100644 +--- a/src/plugins/power/Makefile.am ++++ b/src/plugins/power/Makefile.am +@@ -1,3 +1,3 @@ + # Makefile for power management plugins + +-SUBDIRS = common cray_aries none ++SUBDIRS = common none +diff --git a/src/plugins/select/Makefile.am b/src/plugins/select/Makefile.am +index 09fdfd2313..570af23c4a 100644 +--- a/src/plugins/select/Makefile.am ++++ b/src/plugins/select/Makefile.am +@@ -1,7 +1,7 @@ + # Makefile for node selection plugins + + # NOTE: other must be in the list before cray_aries lest the build break +-SUBDIRS = other cons_res cons_tres cray_aries linear ++SUBDIRS = other cons_res cons_tres linear + + # Each plugin here needs a plugin_id, here are the currect plug_ids + # for each plugin. +diff --git a/src/plugins/switch/Makefile.am b/src/plugins/switch/Makefile.am +index ddfe019a65..39a2b3eb7f 100644 +--- a/src/plugins/switch/Makefile.am ++++ b/src/plugins/switch/Makefile.am +@@ -1,3 +1,3 @@ + # Makefile for switch plugins + +-SUBDIRS = cray_aries generic none ++SUBDIRS = generic none +diff --git a/src/plugins/task/Makefile.am b/src/plugins/task/Makefile.am +index 8d2a36eb68..607af1cb7c 100644 +--- a/src/plugins/task/Makefile.am ++++ b/src/plugins/task/Makefile.am +@@ -1,6 +1,6 @@ + # Makefile for task plugins + +-SUBDIRS = cray_aries none ++SUBDIRS = none + + if HAVE_SCHED_SETAFFINITY + SUBDIRS += affinity diff --git a/slurm_fix_testsuite.patch b/slurm_fix_testsuite.patch new file mode 100644 index 0000000..4cf2c80 --- /dev/null +++ b/slurm_fix_testsuite.patch @@ -0,0 +1,579 @@ +commit 7fa8a69d8eda68ac1fa144de7686e47d18161037 +Author: Philip Kovacs pkdevel@yahoo.com +Date: Fri Jun 7 07:33:01 2019 -0600 + + patch for 19.05.0 testsuite `make check` errors + + bug 7197 + +diff --git a/testsuite/slurm_unit/common/slurm_protocol_pack/pack_job_alloc_info_msg-test.c b/testsuite/slurm_unit/common/slurm_protocol_pack/pack_job_alloc_info_msg-test.c +index 2f245622e7..ca95f636a8 100644 +--- a/testsuite/slurm_unit/common/slurm_protocol_pack/pack_job_alloc_info_msg-test.c ++++ b/testsuite/slurm_unit/common/slurm_protocol_pack/pack_job_alloc_info_msg-test.c +@@ -59,7 +59,7 @@ START_TEST(pack_1702_req_null_ptrs) + unpack_req = (job_alloc_info_msg_t *)msg.data; + ck_assert_int_eq(rc, SLURM_SUCCESS); + ck_assert(unpack_req); +- ck_assert(!unpack_req->req_cluster); /* >= 17.11 */ ++ //ck_assert(!unpack_req->req_cluster); /* >= 17.11 */ + ck_assert_uint_eq(unpack_req->job_id, pack_req.job_id); + + free_buf(buf); +@@ -94,7 +94,7 @@ START_TEST(pack_1702_req) + unpack_req = (job_alloc_info_msg_t *)msg.data; + ck_assert_int_eq(rc, SLURM_SUCCESS); + ck_assert(unpack_req); +- ck_assert(!unpack_req->req_cluster); /* >= 17.11 */ ++ //ck_assert(!unpack_req->req_cluster); /* >= 17.11 */ + ck_assert_uint_eq(unpack_req->job_id, pack_req.job_id); + + free_buf(buf); +diff --git a/testsuite/slurm_unit/common/slurmdb_pack/pack_federation_rec-test.c b/testsuite/slurm_unit/common/slurmdb_pack/pack_federation_rec-test.c +index dd10e1b857..d068fef66d 100644 +--- a/testsuite/slurm_unit/common/slurmdb_pack/pack_federation_rec-test.c ++++ b/testsuite/slurm_unit/common/slurmdb_pack/pack_federation_rec-test.c +@@ -236,9 +236,9 @@ Suite* suite(void) + TCase* tc_core = tcase_create("Pack slurmdb_federation_rec_t"); + tcase_add_test(tc_core, invalid_protocol); + tcase_add_test(tc_core, pack_1702_federation_rec); +- tcase_add_test(tc_core, pack_1702_null_federation_rec); ++ //tcase_add_test(tc_core, pack_1702_null_federation_rec); + tcase_add_test(tc_core, pack_1702_federation_rec_empty_list); +- tcase_add_test(tc_core, pack_1702_federation_rec_fail); ++ //tcase_add_test(tc_core, pack_1702_federation_rec_fail); + + tcase_add_test(tc_core, pack_1711_federation_rec); + tcase_add_test(tc_core, pack_1711_null_federation_rec); +diff --git a/testsuite/slurm_unit/common/xhash-test.c b/testsuite/slurm_unit/common/xhash-test.c +index 46616aef2b..2fc4d1d373 100644 +--- a/testsuite/slurm_unit/common/xhash-test.c ++++ b/testsuite/slurm_unit/common/xhash-test.c +@@ -49,12 +49,11 @@ typedef struct hashable_st { + uint32_t idn; + } hashable_t; + +-const char* hashable_identify(void* voiditem) ++void hashable_identify(void* voiditem, const char** key, uint32_t* key_len) + { + hashable_t* item = (hashable_t*)voiditem; +- if (!item->id[0]) snprintf(item->id, 255, "%lu", +- (unsigned long)item->idn); +- return item->id; ++ *key = item->id; ++ *key_len = strlen(item->id); + } + + /***************************************************************************** +@@ -71,7 +70,7 @@ static void setup(void) + g_ht = xhash_init(hashable_identify, NULL); + if (!g_ht) return; /* fatal error, will be detected by test cases */ + for (i = 0; i < g_hashableslen; ++i) { +- g_hashables[i].id[0] = 0; ++ snprintf(g_hashables[i].id, sizeof(g_hashables[i].id), "%d", i); + g_hashables[i].idn = i; + /* it is an error if xhash_add returns null but it will be + * detected by test cases */ +@@ -120,7 +119,7 @@ START_TEST(test_add) + fail_unless(xhash_add(ht, a+3) != NULL, "xhash_add failed"); + for (i = 0; i < len; ++i) { + snprintf(buffer, sizeof(buffer), "%d", i); +- fail_unless(xhash_get(ht, buffer) == (a + i), ++ fail_unless(xhash_get_str(ht, buffer) == (a + i), + "bad hashable item returned"); + } + xhash_free(ht); +@@ -134,14 +133,14 @@ START_TEST(test_find) + int i; + + /* test bad match */ +- fail_unless(xhash_get(ht, "bad") == NULL , "invalid case not null"); +- fail_unless(xhash_get(ht, "-1") == NULL , "invalid case not null"); +- fail_unless(xhash_get(ht, "10000") == NULL, "invalid case not null"); ++ fail_unless(xhash_get_str(ht, "bad") == NULL , "invalid case not null"); ++ fail_unless(xhash_get_str(ht, "-1") == NULL , "invalid case not null"); ++ fail_unless(xhash_get_str(ht, "10000") == NULL, "invalid case not null"); + + /* test all good indexes */ + for (i = 0; i < g_hashableslen; ++i) { + snprintf(buffer, sizeof(buffer), "%d", i); +- fail_unless(xhash_get(ht, buffer) == (g_hashables + i), ++ fail_unless(xhash_get_str(ht, buffer) == (g_hashables + i), + "bad hashable item returned"); + } + } +@@ -156,7 +155,7 @@ static int test_delete_helper() + char buffer[255]; + for (i = 0; i < g_hashableslen; ++i) { + snprintf(buffer, sizeof(buffer), "%d", i); +- if (xhash_get(ht, buffer) != (g_hashables + i)) { ++ if (xhash_get_str(ht, buffer) != (g_hashables + i)) { + ++ret; + } + } +@@ -170,10 +169,10 @@ START_TEST(test_delete) + char buffer[255]; + + /* invalid cases */ +- xhash_delete(NULL, "1"); +- fail_unless(xhash_get(ht, "1") != NULL, "invalid case null"); ++ xhash_delete_str(NULL, "1"); ++ fail_unless(xhash_get_str(ht, "1") != NULL, "invalid case null"); + /* Deleting non-existent item should do nothing. */ +- xhash_delete(ht, NULL); ++ xhash_delete(ht, NULL, 0); + fail_unless(xhash_count(ht) == g_hashableslen, + "invalid delete has been done"); + result = test_delete_helper(); +@@ -182,17 +181,17 @@ START_TEST(test_delete) + result); + + /* test correct deletion */ +- xhash_delete(ht, "10"); +- fail_unless(xhash_get(ht, "10") == NULL, "item not deleted"); ++ xhash_delete_str(ht, "10"); ++ fail_unless(xhash_get_str(ht, "10") == NULL, "item not deleted"); + fail_unless(xhash_count(ht) == (g_hashableslen-1), "bad count"); + /* left edge */ +- xhash_delete(ht, "0"); +- fail_unless(xhash_get(ht, "0") == NULL, "item not deleted"); ++ xhash_delete_str(ht, "0"); ++ fail_unless(xhash_get_str(ht, "0") == NULL, "item not deleted"); + fail_unless(xhash_count(ht) == (g_hashableslen-2), "bad count"); + /* right edge */ + snprintf(buffer, sizeof(buffer), "%u", (g_hashableslen-2)); +- xhash_delete(ht, buffer); +- fail_unless(xhash_get(ht, "0") == NULL, "item not deleted"); ++ xhash_delete_str(ht, buffer); ++ fail_unless(xhash_get_str(ht, "0") == NULL, "item not deleted"); + fail_unless(xhash_count(ht) == (g_hashableslen-3), "bad count"); + + result = test_delete_helper(); +commit b0db3f0fbfdfc9a7820f24c4b30adee696dc863a +Author: Morris Jette jette@schedmd.com +Date: Fri Jun 7 07:57:26 2019 -0600 + + Modify "make check" to validate v1808 un/pack logic + + bug 7197 + +diff --git a/testsuite/slurm_unit/common/slurmdb_pack/pack_federation_rec-test.c b/testsuite/slurm_unit/common/slurmdb_pack/pack_federation_rec-test.c +index d068fef66d..bbeeefc4a7 100644 +--- a/testsuite/slurm_unit/common/slurmdb_pack/pack_federation_rec-test.c ++++ b/testsuite/slurm_unit/common/slurmdb_pack/pack_federation_rec-test.c +@@ -32,29 +32,26 @@ START_TEST(invalid_protocol) + } + END_TEST + +-START_TEST(pack_1702_null_federation_rec) ++START_TEST(pack_1711_null_federation_rec) + { + int rc; + Buf buf = init_buf(1024); +- slurmdb_federation_rec_t pack_fr = {0}; + + slurmdb_pack_federation_rec(NULL, SLURM_MIN_PROTOCOL_VERSION, buf); + + set_buf_offset(buf, 0); + +- slurmdb_federation_rec_t *unpack_fr; ++ slurmdb_federation_rec_t *unpack_fr = NULL; + rc = slurmdb_unpack_federation_rec((void **)&unpack_fr, SLURM_MIN_PROTOCOL_VERSION, buf); +- ck_assert(rc == SLURM_SUCCESS); +- ck_assert(pack_fr.name == unpack_fr->name); +- ck_assert(pack_fr.flags == unpack_fr->flags); +- ck_assert(pack_fr.cluster_list == unpack_fr->cluster_list); ++ ck_assert(rc == SLURM_SUCCESS); ++ ck_assert(unpack_fr == NULL); + + free_buf(buf); + slurmdb_destroy_federation_rec(unpack_fr); + } + END_TEST + +-START_TEST(pack_1702_federation_rec) ++START_TEST(pack_1711_federation_rec) + { + int rc; + +@@ -90,7 +87,7 @@ START_TEST(pack_1702_federation_rec) + END_TEST + + +-START_TEST(pack_1702_federation_rec_empty_list) ++START_TEST(pack_1711_federation_rec_empty_list) + { + int rc; + +@@ -118,31 +115,7 @@ START_TEST(pack_1702_federation_rec_empty_list) + END_TEST + + +-/* This test sets up the buffer so that it fails when unpacking the cluster rec. +- */ +-START_TEST(pack_1702_federation_rec_fail) +-{ +- int rc; +- char *name = xstrdup("Saint Augustine"); +- Buf buf = init_buf(18*sizeof(uint32_t)); +- packstr(name, buf); +- pack32(7, buf); +- pack32(1, buf); +- +- set_buf_offset(buf, 0); +- +- slurmdb_federation_rec_t *unpack_fr; +- rc = slurmdb_unpack_federation_rec((void **)&unpack_fr, SLURM_MIN_PROTOCOL_VERSION, buf); +- ck_assert_int_eq(rc, SLURM_ERROR); +- +- free_buf(buf); +- xfree(name); +-} +-END_TEST +- +- +-/* 17.11 */ +-START_TEST(pack_1711_null_federation_rec) ++START_TEST(pack_1808_null_federation_rec) + { + int rc; + Buf buf = init_buf(1024); +@@ -161,7 +134,7 @@ START_TEST(pack_1711_null_federation_rec) + } + END_TEST + +-START_TEST(pack_1711_federation_rec) ++START_TEST(pack_1808_federation_rec) + { + int rc; + +@@ -197,7 +170,7 @@ START_TEST(pack_1711_federation_rec) + END_TEST + + +-START_TEST(pack_1711_federation_rec_empty_list) ++START_TEST(pack_1808_federation_rec_empty_list) + { + int rc; + +@@ -235,15 +208,14 @@ Suite* suite(void) + Suite* s = suite_create("Pack slurmdb_federation_rec_t"); + TCase* tc_core = tcase_create("Pack slurmdb_federation_rec_t"); + tcase_add_test(tc_core, invalid_protocol); +- tcase_add_test(tc_core, pack_1702_federation_rec); +- //tcase_add_test(tc_core, pack_1702_null_federation_rec); +- tcase_add_test(tc_core, pack_1702_federation_rec_empty_list); +- //tcase_add_test(tc_core, pack_1702_federation_rec_fail); +- + tcase_add_test(tc_core, pack_1711_federation_rec); + tcase_add_test(tc_core, pack_1711_null_federation_rec); + tcase_add_test(tc_core, pack_1711_federation_rec_empty_list); + ++ tcase_add_test(tc_core, pack_1808_federation_rec); ++ tcase_add_test(tc_core, pack_1808_null_federation_rec); ++ tcase_add_test(tc_core, pack_1808_federation_rec_empty_list); ++ + suite_add_tcase(s, tc_core); + return s; + } +commit 8aade6d1a3b25ee43b466f7c5624f5199b7bf0ec +Author: Morris Jette jette@schedmd.com +Date: Fri Jun 7 08:14:50 2019 -0600 + + Rename some "make check" functions names to be generic + + bug 7197 + +diff --git a/testsuite/slurm_unit/common/slurmdb_pack/pack_federation_rec-test.c b/testsuite/slurm_unit/common/slurmdb_pack/pack_federation_rec-test.c +index bbeeefc4a7..6a48164027 100644 +--- a/testsuite/slurm_unit/common/slurmdb_pack/pack_federation_rec-test.c ++++ b/testsuite/slurm_unit/common/slurmdb_pack/pack_federation_rec-test.c +@@ -32,7 +32,7 @@ START_TEST(invalid_protocol) + } + END_TEST + +-START_TEST(pack_1711_null_federation_rec) ++START_TEST(pack_back2_null_federation_rec) + { + int rc; + Buf buf = init_buf(1024); +@@ -51,7 +51,7 @@ START_TEST(pack_1711_null_federation_rec) + } + END_TEST + +-START_TEST(pack_1711_federation_rec) ++START_TEST(pack_back2_federation_rec) + { + int rc; + +@@ -87,7 +87,7 @@ START_TEST(pack_1711_federation_rec) + END_TEST + + +-START_TEST(pack_1711_federation_rec_empty_list) ++START_TEST(pack_back2_federation_rec_empty_list) + { + int rc; + +@@ -115,7 +115,7 @@ START_TEST(pack_1711_federation_rec_empty_list) + END_TEST + + +-START_TEST(pack_1808_null_federation_rec) ++START_TEST(pack_back1_null_federation_rec) + { + int rc; + Buf buf = init_buf(1024); +@@ -134,7 +134,7 @@ START_TEST(pack_1808_null_federation_rec) + } + END_TEST + +-START_TEST(pack_1808_federation_rec) ++START_TEST(pack_back1_federation_rec) + { + int rc; + +@@ -170,7 +170,7 @@ START_TEST(pack_1808_federation_rec) + END_TEST + + +-START_TEST(pack_1808_federation_rec_empty_list) ++START_TEST(pack_back1_federation_rec_empty_list) + { + int rc; + +@@ -208,13 +208,13 @@ Suite* suite(void) + Suite* s = suite_create("Pack slurmdb_federation_rec_t"); + TCase* tc_core = tcase_create("Pack slurmdb_federation_rec_t"); + tcase_add_test(tc_core, invalid_protocol); +- tcase_add_test(tc_core, pack_1711_federation_rec); +- tcase_add_test(tc_core, pack_1711_null_federation_rec); +- tcase_add_test(tc_core, pack_1711_federation_rec_empty_list); ++ tcase_add_test(tc_core, pack_back2_federation_rec); ++ tcase_add_test(tc_core, pack_back2_null_federation_rec); ++ tcase_add_test(tc_core, pack_back2_federation_rec_empty_list); + +- tcase_add_test(tc_core, pack_1808_federation_rec); +- tcase_add_test(tc_core, pack_1808_null_federation_rec); +- tcase_add_test(tc_core, pack_1808_federation_rec_empty_list); ++ tcase_add_test(tc_core, pack_back1_federation_rec); ++ tcase_add_test(tc_core, pack_back1_null_federation_rec); ++ tcase_add_test(tc_core, pack_back1_federation_rec_empty_list); + + suite_add_tcase(s, tc_core); + return s; +commit 549b1a3e6a8f6a677228209a2520595ffb42f98c +Author: Morris Jette jette@schedmd.com +Date: Fri Jun 7 09:50:14 2019 -0600 + + Make check tests made more generic + +diff --git a/testsuite/slurm_unit/common/slurm_protocol_pack/pack_job_alloc_info_msg-test.c b/testsuite/slurm_unit/common/slurm_protocol_pack/pack_job_alloc_info_msg-test.c +index ca95f636a8..85adb59ed1 100644 +--- a/testsuite/slurm_unit/common/slurm_protocol_pack/pack_job_alloc_info_msg-test.c ++++ b/testsuite/slurm_unit/common/slurm_protocol_pack/pack_job_alloc_info_msg-test.c +@@ -33,7 +33,7 @@ START_TEST(pack_null_req) + END_TEST + #endif + +-START_TEST(pack_1702_req_null_ptrs) ++START_TEST(pack_back2_req_null_ptrs) + { + int rc; + Buf buf = init_buf(1024); +@@ -59,7 +59,7 @@ START_TEST(pack_1702_req_null_ptrs) + unpack_req = (job_alloc_info_msg_t *)msg.data; + ck_assert_int_eq(rc, SLURM_SUCCESS); + ck_assert(unpack_req); +- //ck_assert(!unpack_req->req_cluster); /* >= 17.11 */ ++ ck_assert(!unpack_req->req_cluster); + ck_assert_uint_eq(unpack_req->job_id, pack_req.job_id); + + free_buf(buf); +@@ -67,7 +67,7 @@ START_TEST(pack_1702_req_null_ptrs) + } + END_TEST + +-START_TEST(pack_1702_req) ++START_TEST(pack_back2_req) + { + int rc; + Buf buf = init_buf(1024); +@@ -103,7 +103,7 @@ START_TEST(pack_1702_req) + } + END_TEST + +-START_TEST(pack_1711_req_null_ptrs) ++START_TEST(pack_back1_req_null_ptrs) + { + int rc; + Buf buf = init_buf(1024); +@@ -136,7 +136,7 @@ START_TEST(pack_1711_req_null_ptrs) + } + END_TEST + +-START_TEST(pack_1711_req) ++START_TEST(pack_back1_req) + { + int rc; + Buf buf = init_buf(1024); +@@ -188,10 +188,10 @@ Suite* suite(SRunner *sr) + if (srunner_fork_status(sr) != CK_NOFORK) + tcase_add_test_raise_signal(tc_core, pack_null_req, SIGABRT); + #endif +- tcase_add_test(tc_core, pack_1702_req_null_ptrs); +- tcase_add_test(tc_core, pack_1702_req); +- tcase_add_test(tc_core, pack_1711_req_null_ptrs); +- tcase_add_test(tc_core, pack_1711_req); ++ tcase_add_test(tc_core, pack_back2_req_null_ptrs); ++ tcase_add_test(tc_core, pack_back2_req); ++ tcase_add_test(tc_core, pack_back1_req_null_ptrs); ++ tcase_add_test(tc_core, pack_back1_req); + suite_add_tcase(s, tc_core); + return s; + } +diff --git a/testsuite/slurm_unit/common/slurmdb_pack/pack_cluster_rec-test.c b/testsuite/slurm_unit/common/slurmdb_pack/pack_cluster_rec-test.c +index c58149b48f..b2c6042888 100644 +--- a/testsuite/slurm_unit/common/slurmdb_pack/pack_cluster_rec-test.c ++++ b/testsuite/slurm_unit/common/slurmdb_pack/pack_cluster_rec-test.c +@@ -20,7 +20,7 @@ START_TEST(invalid_protocol) + } + END_TEST + +-START_TEST(pack_1702_null_rec) ++START_TEST(pack_back2_null_rec) + { + int rc; + slurmdb_cluster_rec_t pack_rec; +@@ -64,7 +64,7 @@ START_TEST(pack_1702_null_rec) + } + END_TEST + +-START_TEST(pack_1702_rec) ++START_TEST(pack_back2_rec) + { + int rc; + Buf buf = init_buf(1024); +@@ -85,6 +85,9 @@ START_TEST(pack_1702_rec) + pack_rec.name = xstrdup("name"); + pack_rec.nodes = xstrdup("nodes"); + pack_rec.plugin_id_select = 8; ++ pack_rec.fed.feature_list = list_create(slurm_destroy_char); ++ slurm_addto_mode_char_list(pack_rec.fed.feature_list, "a,b,c", 0); ++ ck_assert_int_eq(list_count(pack_rec.fed.feature_list), 3); + + /* will be tested separately. */ + pack_rec.root_assoc = NULL; +@@ -126,9 +129,14 @@ START_TEST(pack_1702_rec) + ck_assert_str_eq(pack_rec.name, unpack_rec->name); + ck_assert_str_eq(pack_rec.nodes, unpack_rec->nodes); + +- /* 17.11 */ +- ck_assert(pack_rec.fed.feature_list == unpack_rec->fed.feature_list); +- ++ char *feature; ++ ck_assert_int_eq(list_count(pack_rec.fed.feature_list), list_count(unpack_rec->fed.feature_list)); ++ ListIterator itr = list_iterator_create(pack_rec.fed.feature_list); ++ while ((feature = list_next(itr))) { ++ if (!list_find_first(unpack_rec->fed.feature_list, slurm_find_char_in_list, feature)) ++ ck_abort_msg("Didn't find feature %s in unpacked list", ++ feature); ++ } + + FREE_NULL_LIST(pack_rec.accounting_list); + xfree(pack_rec.control_host); +@@ -140,7 +148,7 @@ START_TEST(pack_1702_rec) + } + END_TEST + +-START_TEST(pack_1702_rec_null_ptrs) ++START_TEST(pack_back2_rec_null_ptrs) + { + Buf buf = init_buf(1024); + slurmdb_cluster_rec_t pack_rec = {0}; +@@ -185,7 +193,6 @@ START_TEST(pack_1702_rec_null_ptrs) + ck_assert(pack_rec.rpc_version == unpack_rec->rpc_version); + ck_assert(pack_rec.fed.recv == unpack_rec->fed.recv); + ck_assert(pack_rec.fed.send == unpack_rec->fed.send); +- /* 17.11 */ + ck_assert(pack_rec.fed.feature_list == unpack_rec->fed.feature_list); + + free_buf(buf); +@@ -193,7 +200,7 @@ START_TEST(pack_1702_rec_null_ptrs) + } + END_TEST + +-START_TEST(pack_1711_null_rec) ++START_TEST(pack_back1_null_rec) + { + int rc; + slurmdb_cluster_rec_t pack_rec; +@@ -204,7 +211,6 @@ START_TEST(pack_1711_null_rec) + pack_rec.fed.state = 0; + pack_rec.dimensions = 1; + pack_rec.plugin_id_select = NO_VAL; +- + slurmdb_pack_cluster_rec(NULL, SLURM_ONE_BACK_PROTOCOL_VERSION, buf); + + set_buf_offset(buf, 0); +@@ -218,7 +224,6 @@ START_TEST(pack_1711_null_rec) + ck_assert(pack_rec.nodes == unpack_rec->nodes); + ck_assert(pack_rec.fed.recv == unpack_rec->fed.recv); + ck_assert(pack_rec.fed.send == unpack_rec->fed.send); +- /* 17.11 */ + ck_assert(pack_rec.fed.feature_list == unpack_rec->fed.feature_list); + + /* root_assoc gets unpacked into a empty structure */ +@@ -237,7 +242,7 @@ START_TEST(pack_1711_null_rec) + } + END_TEST + +-START_TEST(pack_1711_rec) ++START_TEST(pack_back1_rec) + { + int rc; + Buf buf = init_buf(1024); +@@ -302,7 +307,6 @@ START_TEST(pack_1711_rec) + ck_assert_str_eq(pack_rec.name, unpack_rec->name); + ck_assert_str_eq(pack_rec.nodes, unpack_rec->nodes); + +- /* 17.11 */ + char *feature; + ck_assert_int_eq(list_count(pack_rec.fed.feature_list), list_count(unpack_rec->fed.feature_list)); + ListIterator itr = list_iterator_create(pack_rec.fed.feature_list); +@@ -322,7 +326,7 @@ START_TEST(pack_1711_rec) + } + END_TEST + +-START_TEST(pack_1711_rec_null_ptrs) ++START_TEST(pack_back1_rec_null_ptrs) + { + Buf buf = init_buf(1024); + slurmdb_cluster_rec_t pack_rec = {0}; +@@ -367,7 +371,6 @@ START_TEST(pack_1711_rec_null_ptrs) + ck_assert(pack_rec.rpc_version == unpack_rec->rpc_version); + ck_assert(pack_rec.fed.recv == unpack_rec->fed.recv); + ck_assert(pack_rec.fed.send == unpack_rec->fed.send); +- /* 17.11 */ + ck_assert(pack_rec.fed.feature_list == unpack_rec->fed.feature_list); + + free_buf(buf); +@@ -385,13 +388,13 @@ Suite* suite(void) + TCase* tc_core = tcase_create("Pack slurmdb_cluster_rec_t"); + tcase_add_test(tc_core, invalid_protocol); + +- tcase_add_test(tc_core, pack_1711_null_rec); +- tcase_add_test(tc_core, pack_1711_rec); +- tcase_add_test(tc_core, pack_1711_rec_null_ptrs); ++ tcase_add_test(tc_core, pack_back1_null_rec); ++ tcase_add_test(tc_core, pack_back1_rec); ++ tcase_add_test(tc_core, pack_back1_rec_null_ptrs); + +- tcase_add_test(tc_core, pack_1702_null_rec); +- tcase_add_test(tc_core, pack_1702_rec); +- tcase_add_test(tc_core, pack_1702_rec_null_ptrs); ++ tcase_add_test(tc_core, pack_back2_null_rec); ++ tcase_add_test(tc_core, pack_back2_rec); ++ tcase_add_test(tc_core, pack_back2_rec_null_ptrs); + + suite_add_tcase(s, tc_core); + return s; diff --git a/slurm_to_python3.patch b/slurm_to_python3.patch index fdfcbe8..c60e941 100644 --- a/slurm_to_python3.patch +++ b/slurm_to_python3.patch @@ -38,16 +38,6 @@ index 54909096b9..93433d6fa3 100755
import re import sys -diff --git a/testsuite/expect/driveregress.py b/testsuite/expect/driveregress.py -index 8019615953..4e7eb7ca0f 100755 ---- a/testsuite/expect/driveregress.py -+++ b/testsuite/expect/driveregress.py -@@ -1,4 +1,4 @@ --#!/usr/bin/env python -+#!/usr/bin/env python3 - - ############################################################################ - # Copyright (C) 2011-2013 SchedMD LLC diff --git a/testsuite/expect/regression.py b/testsuite/expect/regression.py index 938aecc154..ea64c7cce0 100755 --- a/testsuite/expect/regression.py diff --git a/sources b/sources index dff51b9..bcddb1a 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (slurm-18.08.7.tar.bz2) = d0047086f1b716877cc5bb39539bf96a8fd08b1851c85fd85112c6432c1ce2a0f29fc9dd8803094c8fa44d063cec5f417e6bed231b6d338934ff4b48424a5a93 +SHA512 (slurm-19.05.0.tar.bz2) = f91efbd8c96c5c25dcf7c3f73f61ab9b5d591a554447e5a7db0346ace2e9a1053bebce5f16e9d15c23d78743319997aaac51f6d5bceda7cfaa4877a6f439cff1
commit 81b8fc4a0945abf7700d1152e9c79832a3e3a513 Author: Jitka Plesnikova jplesnik@redhat.com Date: Thu May 30 13:52:44 2019 +0200
Perl 5.30 rebuild
diff --git a/slurm.spec b/slurm.spec index 00afaee..6ac71c8 100644 --- a/slurm.spec +++ b/slurm.spec @@ -12,7 +12,7 @@
Name: slurm Version: 18.08.7 -Release: 1%{?dist} +Release: 2%{?dist} Summary: Simple Linux Utility for Resource Management License: GPLv2 and BSD URL: https://slurm.schedmd.com/ @@ -718,6 +718,9 @@ rm -f %{buildroot}%{perl_archlib}/perllocal.pod %systemd_postun_with_restart slurmdbd.service
%changelog +* Thu May 30 2019 Jitka Plesnikova jplesnik@redhat.com - 18.08.7-2 +- Perl 5.30 rebuild + * Fri Apr 12 2019 Philip Kovacs pkdevel@yahoo.com - 18.08.7-1 - Release of 18.08.7