Source: slurm-llnl Version: 15.08.3-1 Severity: wishlist Dear maintainers,
Please consider adding a -emulator package to allow run slurm in emulation mode as described at [1]. Your git repo [2] doesn't seem to be up to date, so I made a patch against the current package in unstable. Ana [1] http://slurm.schedmd.com/faq.html#multi_slurmd [2] http://anonscm.debian.org/cgit/collab-maint/slurm-llnl.git
>From 1d9a2db9e2f855a8b11a912dbe35fb6815540a22 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ana=20Guerrero=20L=C3=B3pez?= <[email protected]> Date: Mon, 9 Nov 2015 19:44:57 +0100 Subject: [PATCH] Add package slurm-wlm-emulator. This package provides binaries that are already in the slurmd and slurmctld package. These packages binaries have now the suffix -wlm and the binaries in slurm-wln-emulator got the suffix -wlm-emulator. The binaries are handled with alternatives, having the emulator package a higher priority value. --- debian/changelog | 11 +++++++++++ debian/control | 11 +++++++++++ debian/rules | 21 +++++++++++++++++++++ debian/slurm-wlm-emulator.install | 3 +++ debian/slurm-wlm-emulator.postinst | 15 +++++++++++++++ debian/slurm-wlm-emulator.prerm | 14 ++++++++++++++ debian/slurmctld.install | 2 +- debian/slurmctld.postinst | 1 + debian/slurmctld.prerm | 1 + debian/slurmd.install | 4 ++-- debian/slurmd.postinst | 2 ++ debian/slurmd.prerm | 13 +++++++++++++ 12 files changed, 95 insertions(+), 3 deletions(-) create mode 100644 debian/slurm-wlm-emulator.install create mode 100644 debian/slurm-wlm-emulator.postinst create mode 100644 debian/slurm-wlm-emulator.prerm create mode 100644 debian/slurmd.prerm diff --git a/debian/changelog b/debian/changelog index d6acbfe..18612e4 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,14 @@ +slurm-llnl (15.08.3-2) unstable; urgency=medium + + * Add package slurm-wlm-emulator. This package provides binaries that are + already in the slurmd and slurmctld package. These packages binaries + have now the suffix -wlm and the binaries in slurm-wln-emulator got + the suffix -wlm-emulator. + The binaries are handled with alternatives, having the emulator package + a higher priority value. + + -- Ana Guerrero Lopez <[email protected]> Mon, 09 Nov 2015 19:29:05 +0100 + slurm-llnl (15.08.3-1) unstable; urgency=medium * New upstream release diff --git a/debian/control b/debian/control index 527f995..da76366 100644 --- a/debian/control +++ b/debian/control @@ -435,3 +435,14 @@ Description: transitional dummy package for slurmdbd This is a transitional dummy package for slurmdbd It can safely be removed. +Package: slurm-wlm-emulator +Architecture: any +Depends: ${misc:Depends}, + slurmctld (= ${binary:Version}), + slurmd (= ${binary:Version}) +Description: SLURM emulator + SLURM, the Simple Linux Utility for Resource Management, + is an open-source cluster resource management and job scheduling. + . + This package installs the emulator binaries: slurmd, slurmctld + and slurmstepd. diff --git a/debian/rules b/debian/rules index c66b6a9..8ce8cc1 100755 --- a/debian/rules +++ b/debian/rules @@ -11,12 +11,22 @@ include /usr/share/dpkg/architecture.mk %: dh $@ --builddirectory --parallel --with systemd +override_dh_auto_clean: + dh_auto_clean + dh_auto_clean --builddirectory build-emulator + rm -rf $(CURDIR)/debian/tmp-emulator + # We run configure with --disable-debug to avoid the default use of -O0 and # consequent unprotected source functions, causing lintian report # hardening-no-fortify-functions # Notice that -g in CFLAGS is still provided by dpkg-buildflags override_dh_auto_configure: dh_auto_configure -- --sysconfdir=/etc/slurm-llnl --localstatedir=/var/run/slurm-llnl --with-munge --without-blcr --enable-pam --without-rpath --disable-debug + dh_auto_configure --builddirectory build-emulator -- --sysconfdir=/etc/slurm-llnl --localstatedir=/var/run/slurm-llnl --with-munge --without-blcr --enable-pam --without-rpath --disable-debug --enable-front-end --enable-multiple-slurmd + +override_dh_auto_build: + dh_auto_build + dh_auto_build --builddirectory build-emulator override_dh_auto_install: dh_auto_install @@ -42,6 +52,17 @@ override_dh_auto_install: pod2man $$i > debian/tmp/usr/share/man/man1/$$(basename $$i).1; \ done + # Rename binaries that are also in the slurm-wlm-emulator + mv debian/tmp/usr/sbin/slurmctld debian/tmp/usr/sbin/slurmctld-wlm + mv debian/tmp/usr/sbin/slurmd debian/tmp/usr/sbin/slurmd-wlm + mv debian/tmp/usr/sbin/slurmstepd debian/tmp/usr/sbin/slurmstepd-wlm + + dh_auto_install --builddirectory build-emulator --destdir=$(CURDIR)/debian/tmp-emulator + # Rename binaries in the emulator package + mv debian/tmp-emulator/usr/sbin/slurmctld debian/tmp-emulator/usr/sbin/slurmctld-wlm-emulator + mv debian/tmp-emulator/usr/sbin/slurmd debian/tmp-emulator/usr/sbin/slurmd-wlm-emulator + mv debian/tmp-emulator/usr/sbin/slurmstepd debian/tmp-emulator/usr/sbin/slurmstepd-wlm-emulator + override_dh_strip: dh_strip -plibslurm29 --dbg-package=libslurm29-dbg dh_strip -plibslurmdb29 --dbg-package=libslurmdb29-dbg diff --git a/debian/slurm-wlm-emulator.install b/debian/slurm-wlm-emulator.install new file mode 100644 index 0000000..ecc511c --- /dev/null +++ b/debian/slurm-wlm-emulator.install @@ -0,0 +1,3 @@ +debian/tmp-emulator/usr/sbin/slurmctld-wlm-emulator /usr/sbin/ +debian/tmp-emulator/usr/sbin/slurmd-wlm-emulator /usr/sbin/ +debian/tmp-emulator/usr/sbin/slurmstepd-wlm-emulator /usr/sbin/ diff --git a/debian/slurm-wlm-emulator.postinst b/debian/slurm-wlm-emulator.postinst new file mode 100644 index 0000000..dded80f --- /dev/null +++ b/debian/slurm-wlm-emulator.postinst @@ -0,0 +1,15 @@ +#!/bin/sh + +set -e + +if [ "$1" = "configure" ] ; then + + update-alternatives --install /usr/sbin/slurmctld slurmctld /usr/sbin/slurmctld-wlm-emulator 60 + update-alternatives --install /usr/sbin/slurmd slurmd /usr/sbin/slurmd-wlm-emulator 60 \ + --slave /usr/sbin/slurmstepd slurmstepd /usr/sbin/slurmstepd-wlm-emulator + +fi + +#DEBHELPER# + +exit 0 diff --git a/debian/slurm-wlm-emulator.prerm b/debian/slurm-wlm-emulator.prerm new file mode 100644 index 0000000..a37d95c --- /dev/null +++ b/debian/slurm-wlm-emulator.prerm @@ -0,0 +1,14 @@ +#!/bin/sh + +set -e + +case "$1" in + remove|deconfigure) + update-alternatives --remove slurmctld /usr/sbin/slurmctld-wlm-emulator + update-alternatives --remove slurmd /usr/sbin/slurmd-wlm-emulator + ;; +esac + +#DEBHELPER# + +exit 0 diff --git a/debian/slurmctld.install b/debian/slurmctld.install index 22db354..4f42c2a 100644 --- a/debian/slurmctld.install +++ b/debian/slurmctld.install @@ -1 +1 @@ -usr/sbin/slurmctld +usr/sbin/slurmctld-wlm diff --git a/debian/slurmctld.postinst b/debian/slurmctld.postinst index cb04cfa..5721a88 100644 --- a/debian/slurmctld.postinst +++ b/debian/slurmctld.postinst @@ -22,6 +22,7 @@ case "$1" in chown slurm:slurm /var/lib/slurm-llnl chown slurm:slurm /var/lib/slurm-llnl/slurmctld chown slurm:slurm /var/log/slurm-llnl + update-alternatives --install /usr/sbin/slurmctld slurmctld /usr/sbin/slurmctld-wlm 50 ;; abort-upgrade|abort-remove|abort-deconfigure) diff --git a/debian/slurmctld.prerm b/debian/slurmctld.prerm index 8c65149..52b61b9 100644 --- a/debian/slurmctld.prerm +++ b/debian/slurmctld.prerm @@ -22,6 +22,7 @@ case "$1" in scancel --state=pending scancel --state=running fi + update-alternatives --remove slurmctld /usr/sbin/slurmctld-wlm ;; upgrade) diff --git a/debian/slurmd.install b/debian/slurmd.install index 6d15e33..2926fc1 100644 --- a/debian/slurmd.install +++ b/debian/slurmd.install @@ -1,2 +1,2 @@ -usr/sbin/slurmd -usr/sbin/slurmstepd +usr/sbin/slurmd-wlm +usr/sbin/slurmstepd-wlm diff --git a/debian/slurmd.postinst b/debian/slurmd.postinst index 629911e..6dc5c33 100644 --- a/debian/slurmd.postinst +++ b/debian/slurmd.postinst @@ -30,6 +30,8 @@ case "$1" in STARTOPTION="startclean" fi + update-alternatives --install /usr/sbin/slurmd slurmd /usr/sbin/slurmd-wlm 50 \ + --slave /usr/sbin/slurmstepd slurmstepd /usr/sbin/slurmstepd-wlm ;; abort-upgrade|abort-remove|abort-deconfigure) diff --git a/debian/slurmd.prerm b/debian/slurmd.prerm new file mode 100644 index 0000000..7dffaa6 --- /dev/null +++ b/debian/slurmd.prerm @@ -0,0 +1,13 @@ +#!/bin/sh + +set -e + +case "$1" in + remove|deconfigure) + update-alternatives --remove slurmd /usr/sbin/slurmd-wlm + ;; +esac + +#DEBHELPER# + +exit 0 -- 2.6.2

