From bd4aeefe33e63f613512604e47bfca7b2187697d Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Sun, 3 Nov 2019 16:06:58 +0000 Subject: gentoo resync : 03.11.2019 --- sys-cluster/slurm/Manifest | 9 +- .../files/slurm-17.11.13.2-disable-sview.patch | 99 -------- sys-cluster/slurm/metadata.xml | 1 + sys-cluster/slurm/slurm-17.11.13.2.ebuild | 278 --------------------- sys-cluster/slurm/slurm-18.08.7.ebuild | 5 +- sys-cluster/slurm/slurm-19.05.3.2.ebuild | 266 ++++++++++++++++++++ 6 files changed, 274 insertions(+), 384 deletions(-) delete mode 100644 sys-cluster/slurm/files/slurm-17.11.13.2-disable-sview.patch delete mode 100644 sys-cluster/slurm/slurm-17.11.13.2.ebuild create mode 100644 sys-cluster/slurm/slurm-19.05.3.2.ebuild (limited to 'sys-cluster/slurm') diff --git a/sys-cluster/slurm/Manifest b/sys-cluster/slurm/Manifest index 8c1e56b51675..832f1267c85a 100644 --- a/sys-cluster/slurm/Manifest +++ b/sys-cluster/slurm/Manifest @@ -1,13 +1,12 @@ AUX logrotate 360 BLAKE2B 36c5ce908a6434f03a3e140cd1fc0bfec50a6fa89d6120061a5a83d3b12d9a6137ae2fa3a83bd36f55f48c79d140f24d6933cda18fc79674e8b758cacc34a948 SHA512 f6edceef15960accbe72ddd34ff34934fa46b6d647c83e0d3a512d2ddc1ae6c60352e377cfa5332fd5cd817689e23680f7384f1b27fc49677b2e671e1bfe86b9 -AUX slurm-17.11.13.2-disable-sview.patch 2831 BLAKE2B d11df7a1b580f2d1064e5bc5107e257a35e95060f166c971523d24d55f19920c86ed231e88a207ae61c65b83eba33b309b33ed439c0ba09d0b1ea76119708d85 SHA512 3ea30226b721b982ddad78d538c280da78b311d66b0be63087ef606d7f9008731c583e276504b668d8fde74c45ac8aa80babf4d693eca1d274d27dc72479d5e7 AUX slurm-18.08.7-disable-sview.patch 2831 BLAKE2B d11df7a1b580f2d1064e5bc5107e257a35e95060f166c971523d24d55f19920c86ed231e88a207ae61c65b83eba33b309b33ed439c0ba09d0b1ea76119708d85 SHA512 3ea30226b721b982ddad78d538c280da78b311d66b0be63087ef606d7f9008731c583e276504b668d8fde74c45ac8aa80babf4d693eca1d274d27dc72479d5e7 AUX slurm.confd 155 BLAKE2B 4f0793808328b88ffa2b32b1accab6c0dfe0b01dc84210fee6a674361ddf9ea7b3f15ccc775c354198577849ab0791d403b153adee476fc7f1237d2177275bab SHA512 e4d21cdb6a427f0beaef0e157202308f9e86a41dea4532ee98b274a5979b5e82ec2ca4ca2996f6cb59045fd8b01e815aaad71673e2011cead788de3d879aa11f AUX slurm.tmpfiles 31 BLAKE2B f08dbc53517cc15463be5264505d858fcf1f2196565868d164463a167459082a23eea25fa22edf2987e52c71f953160c12b29cdb5e5f437a3bdc89f1cd8395b5 SHA512 b7f116687e0dee0377b43cbb49f63569088d6f5f9b1514014999b1135b1b4da462e04887851b753161d7b9691436048b692b7697ffee2a4e45daa339a412c93c AUX slurmctld.initd 1842 BLAKE2B 25c9fd76dc888544888abb2790d8a0ae66254c0f8807bf48433a54fd34f49d2f4f95b5c6dd9e4ab1f40938c274be6be2e88cdb8959ecb12b4a86d07bc0a5bc86 SHA512 4356552630d1a154bbf369012c0315baf08b5b98ff6411d66ea3b1b039bfff5f105091b110e8fa1e64209eb0990038abda86d980cf2316ca97a5c10a43243df6 AUX slurmd.initd 2001 BLAKE2B a0464ee0407406c7ceadd8e78f0229f5c6eda7081a691e24e609caa50f627d9bbf9c2d57bc6746b9c719a66cf2f4b0d756ecbbaf3bcd070846ad5ced6b289c9d SHA512 bb9447c25d2e96de1aea5935084ea78ea403701bd655d89d1a9d1d21bdbf88bdbae3888cfd618aabcc86dd8808401157ff84402ef35c4e138263457fd954046a AUX slurmdbd.initd 1717 BLAKE2B e177a937f8bd97bb2f45e479e0f34b23cc23ab44b0000165a856ff8476560638a567baecad8aa8d57aeb76062f248039da7f440ddca8f5827e4729136a10d7de SHA512 6d21f667f4222ab62dc8d7f648e00205da982612d58b98e8e35e6b6602b3ad31c03e5130402437c77d3677b424da7b5226e2bfa8c5d29bc908fd618fc02697a8 -DIST slurm-17.11.13-2.tar.bz2 6261416 BLAKE2B bca7a06e703799371da11a7427ce009784c7236569f4b24b278078231192bb0e90604fb90a61f8269881ccacd154cbf03174b3e4600410a8c726beccf4aefd18 SHA512 d419984bfa1bf1be20d3439672eaf868e3e0c45549b8d696bb6f588a57e1bc1e765dbca8a9a62c54bf27c3dfbbd0f165f573459a22ef87d976bc511c22fde639 DIST slurm-18.08.7.tar.bz2 6186006 BLAKE2B a5458f72cbe93bc1103c2c7f3d428ae14239cb092edad2c683e448dda35f3e108fef0d9a3a86599da6058c9c98a86dafed9a087ffe6e8d7425db9cdb879954b3 SHA512 d0047086f1b716877cc5bb39539bf96a8fd08b1851c85fd85112c6432c1ce2a0f29fc9dd8803094c8fa44d063cec5f417e6bed231b6d338934ff4b48424a5a93 -EBUILD slurm-17.11.13.2.ebuild 8465 BLAKE2B cd0224921c0c2ded50e8a3143be3f30234b52ac5713c12aef1c1f31abe2f1cc302f8b5e2bbf003c692c568819a7a38ec19bf6fbba78fe4ba1ca732a169274830 SHA512 04616ec7aa3d9348156ac5a4232feb6e256b7e6fd11f7a0f38acd64f5762e1c996954f5a825f8d40de2b01fbd164a567e45b8e5379ef2a2f43f89e45f5d386b7 -EBUILD slurm-18.08.7.ebuild 8059 BLAKE2B b4f8fe8b77382da1370b53be41aae40b45959e53585e8505b80c3874daf1e68f0057c2e115087ca17e2874cbce813d2378937ebaf7e592cacdf240b5bfa73552 SHA512 be171643e43c58e9c778a6b530aeed8de38b8aa8aa47f901e51d315a1a915945df2b317edf8d13850176a7bc971d35a1e48b436559200409e935177b6d8e4c2a -MISC metadata.xml 1126 BLAKE2B efecf11f76fd3ce8f09198a93cc05b22f1c7239eafe3f762c8938876d4265dad1134dbfd02c4391bd083e551f45a7b9be7bde0f8362d59d2236ef19dc6e9a4b2 SHA512 c856522195f9b0dcbcf7abc4eaf236f704d1a870aff91e59defb19c553b7737efecd429c30e905f3b8816b6751d59c08e5b8ce3b7137de51b768970a43875b99 +DIST slurm-19.05.3-2.tar.bz2 6233270 BLAKE2B be59d157e99353340f9801f0adac21cfb8c3051f8d6a1bd94ad76fc05d0f83d1f933f72bf4e33b603521ec94cc859185bf56ecbcab674fcbff526164dd39d3cc SHA512 15d63f1ba693458b220ece5512210f1dba52273946809b338e33d684b9daadecd3cc77fda84c1b3bf8b03bc0fe8b8be0f429a96a1bf72a8b5c8cf169e0e1f5bb +EBUILD slurm-18.08.7.ebuild 8062 BLAKE2B b3534281cbb333b2ec2376a86b361324d34356d1cd1a48d01e4189070ca85d5d668165e34bedeb776f9342e5954c1fe2955ad0ef5cd199616194b488b39f1c86 SHA512 237ac5e4db3616906d5f40dc417a53ff6dc2b276ac178c287e578579528b20989bf27c32bea286681e95cf35f72ef17000736330598d4c9d827712d82c7ecda4 +EBUILD slurm-19.05.3.2.ebuild 8000 BLAKE2B e150b57f5e125dbd200a27baee3487b738acd88e1ac8f3955a9cd13a8ebc1b260f390c1c3d207c3856029f906d5a0b55ed9a59de0ed7b8c5c5eed401f147e2af SHA512 94bc73f29ea276cabc863a9b4c62aac4b043ba93a43bcaaaf64c7d34c8bf8e25916c05991071ea72075735ef7e653013c76d98efaa5e2e053c9253fdd30b0ec4 +MISC metadata.xml 1199 BLAKE2B b52e7cae7554d439e7f25da2a80d98993d5c7f7abd5ba8b76c09bf60731b035040f976ac1bfc3c153f81b8feed89e2ceb5e6b676c25cc7b6219c4bcd87bd7e50 SHA512 8f48d582e61789373fc07ffd1db123cb8f43d337b03611972e480179ca5b43f2866392203f470d3d69784f2aae79cbcffdf583cba0aa4a9c25969f2c72a3f55f diff --git a/sys-cluster/slurm/files/slurm-17.11.13.2-disable-sview.patch b/sys-cluster/slurm/files/slurm-17.11.13.2-disable-sview.patch deleted file mode 100644 index f7e2c5b26739..000000000000 --- a/sys-cluster/slurm/files/slurm-17.11.13.2-disable-sview.patch +++ /dev/null @@ -1,99 +0,0 @@ - configure.ac | 39 --------------------------------------- - doc/man/man1/Makefile.am | 8 -------- - src/Makefile.am | 3 +-- - 3 files changed, 1 insertion(+), 49 deletions(-) - -diff --git a/configure.ac b/configure.ac -index 2f177ec..ff4d69b 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -238,44 +238,6 @@ AC_SUBST(HAVE_SOME_CURSES) - PKG_CHECK_MODULES([CHECK], [check >= 0.9.8], [ac_have_check="yes"], [ac_have_check="no"]) - AM_CONDITIONAL(HAVE_CHECK, test "x$ac_have_check" = "xyes") - --# --# Tests for GTK+ --# -- --# use the correct libs if running on 64bit --if test -d "/usr/lib64/pkgconfig"; then -- PKG_CONFIG_PATH="/usr/lib64/pkgconfig/:$PKG_CONFIG_PATH" --fi -- --if test -d "/opt/gnome/lib64/pkgconfig"; then -- PKG_CONFIG_PATH="/opt/gnome/lib64/pkgconfig/:$PKG_CONFIG_PATH" --fi -- --AM_PATH_GLIB_2_0([2.7.1], [ac_glib_test="yes"], [ac_glib_test="no"], [gthread]) -- --if test ${glib_config_minor_version=0} -ge 32 ; then -- AC_DEFINE([GLIB_NEW_THREADS], 1, [Define to 1 if using glib-2.32.0 or higher]) --fi -- --AM_PATH_GTK_2_0([2.7.1], [ac_gtk_test="yes"], [ac_gtk_test="no"], [gthread]) --if test ${gtk_config_minor_version=0} -ge 10 ; then -- AC_DEFINE([GTK2_USE_RADIO_SET], 1, [Define to 1 if using gtk+-2.10.0 or higher]) --fi -- --if test ${gtk_config_minor_version=0} -ge 12 ; then -- AC_DEFINE([GTK2_USE_TOOLTIP], 1, [Define to 1 if using gtk+-2.12.0 or higher]) --fi -- --if test ${gtk_config_minor_version=0} -ge 14 ; then -- AC_DEFINE([GTK2_USE_GET_FOCUS], 1, [Define to 1 if using gtk+-2.14.0 or higher]) --fi -- --if test "x$ac_glib_test" != "xyes" -o "x$ac_gtk_test" != "xyes"; then -- AC_MSG_WARN([cannot build sview without gtk library]); --fi -- --AM_CONDITIONAL(BUILD_SVIEW, [test "x$ac_glib_test" = "xyes"] && [test "x$ac_gtk_test" = "xyes"]) -- - dnl Cray ALPS/Basil support depends on mySQL - X_AC_CRAY - -@@ -477,7 +439,6 @@ AC_CONFIG_FILES([Makefile - src/sshare/Makefile - src/sstat/Makefile - src/strigger/Makefile -- src/sview/Makefile - src/plugins/Makefile - src/plugins/accounting_storage/Makefile - src/plugins/accounting_storage/common/Makefile -diff --git a/doc/man/man1/Makefile.am b/doc/man/man1/Makefile.am -index 246f16d..ba39af2 100644 ---- a/doc/man/man1/Makefile.am -+++ b/doc/man/man1/Makefile.am -@@ -29,10 +29,6 @@ if WITH_BLCR - man1_MANS += srun_cr.1 - endif - --if BUILD_SVIEW --man1_MANS += sview.1 --endif -- - EXTRA_DIST = $(man1_MANS) - - if HAVE_MAN2HTML -@@ -65,10 +61,6 @@ if WITH_BLCR - html_DATA += srun_cr.html - endif - --if BUILD_SVIEW --html_DATA += sview.html --endif -- - MOSTLYCLEANFILES = ${html_DATA} - - EXTRA_DIST += $(html_DATA) -diff --git a/src/Makefile.am b/src/Makefile.am -index bcd5aa7..a8cbf17 100644 ---- a/src/Makefile.am -+++ b/src/Makefile.am -@@ -28,5 +28,4 @@ SUBDIRS = \ - srun_cr \ - sshare \ - sstat \ -- strigger \ -- sview -+ strigger diff --git a/sys-cluster/slurm/metadata.xml b/sys-cluster/slurm/metadata.xml index c588bb7a9527..f4298bcbe29f 100644 --- a/sys-cluster/slurm/metadata.xml +++ b/sys-cluster/slurm/metadata.xml @@ -24,5 +24,6 @@ Add Infiniband support via ofed Install SQL server for slurmdbd Enable perl scripts that emulates pbs (qstat, qsub etc.) + Enable Unified Communication X library support diff --git a/sys-cluster/slurm/slurm-17.11.13.2.ebuild b/sys-cluster/slurm/slurm-17.11.13.2.ebuild deleted file mode 100644 index 1f9e31f25080..000000000000 --- a/sys-cluster/slurm/slurm-17.11.13.2.ebuild +++ /dev/null @@ -1,278 +0,0 @@ -# Copyright 1999-2019 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=6 - -if [[ ${PV} == *9999* ]]; then - EGIT_REPO_URI="https://github.com/SchedMD/slurm.git" - INHERIT_GIT="git-r3" - SRC_URI="" - KEYWORDS="" - MY_P="${P}" -else - inherit eapi7-ver - if [[ ${PV} == *pre* || ${PV} == *rc* ]]; then - MY_PV=$(ver_rs '-0.') # pre-releases or release-candidate - else - MY_PV=$(ver_rs 3 '-') # stable releases - fi - MY_P="${PN}-${MY_PV}" - INHERIT_GIT="" - SRC_URI="https://download.schedmd.com/slurm/${MY_P}.tar.bz2" - KEYWORDS="~amd64 ~x86" - S="${WORKDIR}/${MY_P}" -fi - -inherit autotools bash-completion-r1 eutils pam perl-module prefix toolchain-funcs user systemd ${INHERIT_GIT} - -DESCRIPTION="A Highly Scalable Resource Manager" -HOMEPAGE="https://www.schedmd.com" - -LICENSE="GPL-2" -SLOT="0" -IUSE="debug hdf5 html ipmi json lua multiple-slurmd +munge mysql netloc numa ofed pam perl slurmdbd ssl static-libs torque X" - -CDEPEND=" - !sys-cluster/torque - !net-analyzer/slurm - !net-analyzer/sinfo - || ( sys-cluster/pmix[-pmi] >=sys-cluster/openmpi-2.0.0 ) - mysql? ( - || ( dev-db/mariadb-connector-c dev-db/mysql-connector-c ) - slurmdbd? ( || ( dev-db/mariadb dev-db/mysql ) ) - ) - munge? ( sys-auth/munge ) - pam? ( sys-libs/pam ) - ssl? ( dev-libs/openssl:0= ) - lua? ( dev-lang/lua:0= ) - !lua? ( !dev-lang/lua ) - ipmi? ( sys-libs/freeipmi ) - json? ( dev-libs/json-c:= ) - amd64? ( netloc? ( sys-apps/netloc ) ) - hdf5? ( sci-libs/hdf5:= ) - numa? ( sys-process/numactl ) - ofed? ( sys-fabric/ofed ) - X? ( net-libs/libssh2 ) - >=sys-apps/hwloc-1.1.1-r1 - sys-libs/ncurses:0= - app-arch/lz4:0= - sys-libs/readline:0=" -DEPEND="${CDEPEND} - html? ( sys-apps/man2html )" -RDEPEND="${CDEPEND} - dev-libs/libcgroup" - -REQUIRED_USE="torque? ( perl )" - -LIBSLURM_PERL_S="${WORKDIR}/${MY_P}/contribs/perlapi/libslurm/perl" -LIBSLURMDB_PERL_S="${WORKDIR}/${MY_P}/contribs/perlapi/libslurmdb/perl" - -RESTRICT="primaryuri test" - -PATCHES=( - "${FILESDIR}"/${P}-disable-sview.patch -) - -S="${WORKDIR}/${MY_P}" - -src_unpack() { - if [[ ${PV} == *9999* ]]; then - git-r3_src_unpack - else - default - fi -} - -pkg_setup() { - enewgroup slurm 500 - enewuser slurm 500 -1 /var/spool/slurm slurm -} - -src_prepare() { - tc-ld-disable-gold - default - - # pids should go to /var/run/slurm - sed -e "s:/var/run/slurmctld.pid:${EPREFIX}/run/slurm/slurmctld.pid:g" \ - -e "s:/var/run/slurmd.pid:${EPREFIX}/run/slurm/slurmd.pid:g" \ - -i "${S}/etc/slurm.conf.example" \ - || die "Can't sed for /var/run/slurmctld.pid" - sed -i "s:/var/run/slurmdbd.pid:${EPREFIX}/run/slurm/slurmdbd.pid:g" \ - -i "${S}/etc/slurmdbd.conf.example" \ - || die "Can't sed for /var/run/slurmdbd.pid" - # also state dirs are in /var/spool/slurm - sed -e "s:StateSaveLocation=*.:StateSaveLocation=${EPREFIX}/var/spool/slurm:g" \ - -e "s:SlurmdSpoolDir=*.:SlurmdSpoolDir=${EPREFIX}/var/spool/slurm/slurmd:g" \ - -i "${S}/etc/slurm.conf.example" \ - || die "Can't sed ${S}/etc/slurm.conf.example for StateSaveLocation=*. or SlurmdSpoolDir=*" - # and tmp should go to /var/tmp/slurm - sed -e 's:/tmp:/var/tmp:g' \ - -i "${S}/etc/slurm.conf.example" \ - || die "Can't sed for StateSaveLocation=*./tmp" - # gentooify systemd services - sed -e 's:sysconfig/.*:conf.d/slurm:g' \ - -e 's:var/run/:run/slurm/:g' \ - -i "${S}/etc"/*.service.in \ - || die "Can't sed systemd services for sysconfig or var/run/" - - hprefixify auxdir/{ax_check_zlib,x_ac_{lz4,ofed,munge}}.m4 - eautoreconf -} - -src_configure() { - use debug || myconf+=( --disable-debug ) - local myconf=( - --sysconfdir="${EPREFIX}/etc/${PN}" - --with-hwloc="${EPREFIX}/usr" - --docdir="${EPREFIX}/usr/share/doc/${P}" - --htmldir="${EPREFIX}/usr/share/doc/${P}" - ) - use pam && myconf+=( --with-pam_dir=$(getpam_mod_dir) ) - use mysql || myconf+=( --without-mysql_config ) - use amd64 && myconf+=( $(use_with netloc) ) - econf "${myconf[@]}" \ - $(use_enable pam) \ - $(use_enable X x11) \ - $(use_with ssl) \ - $(use_with munge) \ - $(use_with json) \ - $(use_with hdf5) \ - $(use_with ofed) \ - $(use_enable static-libs static) \ - $(use_enable multiple-slurmd) - - # --htmldir does not seems to propagate... Documentations are installed - # in /usr/share/doc/slurm-2.3.0/html - # instead of /usr/share/doc/slurm-2.3.0.2/html - sed \ - -e "s|htmldir = .*/html|htmldir = \${prefix}/share/doc/slurm-${PVR}/html|g" \ - -i doc/html/Makefile || die - if use perl ; then - # small hack to make it compile - mkdir -p "${S}/src/api/.libs" || die - mkdir -p "${S}/src/db_api/.libs" || die - touch "${S}/src/api/.libs/libslurm.so" || die - touch "${S}/src/db_api/.libs/libslurmdb.so" || die - cd "${LIBSLURM_PERL_S}" || die - S="${LIBSLURM_PERL_S}" SRC_PREP="no" perl-module_src_configure - cd "${LIBSLURMDB_PERL_S}" || die - S="${LIBSLURMDB_PERL_S}" SRC_PREP="no" perl-module_src_configure - cd "${S}" || die - rm -rf "${S}/src/api/.libs" "${S}/src/db_api/.libs" || die - fi -} - -src_compile() { - default - use pam && emake -C contribs/pam - if use perl ; then - cd "${LIBSLURM_PERL_S}" || die - S="${LIBSLURM_PERL_S}" perl-module_src_compile - cd "${LIBSLURMDB_PERL_S}" || die - S="${LIBSLURMDB_PERL_S}" perl-module_src_compile - cd "${S}" || die - fi - use torque && emake -C contribs/torque -} - -src_install() { - default - use pam && emake DESTDIR="${D}" -C contribs/pam install - if use perl; then - cd "${LIBSLURM_PERL_S}" || die - S="${LIBSLURM_PERL_S}" perl-module_src_install - cd "${LIBSLURMDB_PERL_S}" || die - S="${LIBSLURMDB_PERL_S}" perl-module_src_install - cd "${S}" || die - fi - if use torque; then - emake DESTDIR="${D}" -C contribs/torque - rm -f "${ED}/usr/bin/mpiexec" || die - fi - use static-libs || find "${ED}" -name '*.la' -exec rm {} + - # install sample configs - keepdir /etc/slurm - insinto /etc/slurm - doins \ - etc/bluegene.conf.example \ - etc/cgroup.conf.example \ - etc/cgroup_allowed_devices_file.conf.example \ - etc/slurm.conf.example \ - etc/slurmdbd.conf.example - exeinto /etc/slurm - doexe \ - etc/slurm.epilog.clean - keepdir /etc/slurm/layouts.d - insinto /etc/slurm/layouts.d - newins etc/layouts.d.power.conf.example power.conf.example - newins etc/layouts.d.power_cpufreq.conf.example power_cpufreq.conf.example - newins etc/layouts.d.unit.conf.example unit.conf.example - # install init.d files - newinitd "$(prefixify_ro "${FILESDIR}/slurmd.initd")" slurmd - newinitd "$(prefixify_ro "${FILESDIR}/slurmctld.initd")" slurmctld - newinitd "$(prefixify_ro "${FILESDIR}/slurmdbd.initd")" slurmdbd - # install conf.d files - newconfd "${FILESDIR}/slurm.confd" slurm - # install logrotate file - insinto /etc/logrotate.d - newins "${FILESDIR}/logrotate" slurm - # install bashcomp - newbashcomp contribs/slurm_completion_help/slurm_completion.sh scontrol - bashcomp_alias scontrol \ - sreport sacctmgr squeue scancel sshare sbcast sinfo \ - sprio sacct salloc sbatch srun sattach sdiag sstat - # install systemd files - systemd_newtmpfilesd "${FILESDIR}/slurm.tmpfiles" slurm.conf - systemd_dounit etc/slurmd.service etc/slurmctld.service etc/slurmdbd.service -} - -pkg_preinst() { - if use munge; then - sed -i 's,\(SLURM_USE_MUNGE=\).*,\11,' "${ED}"etc/conf.d/slurm || die - fi -} - -create_folders_and_fix_permissions() { - einfo "Fixing permissions in ${@}" - mkdir -p ${@} || die - chown -R ${PN}:${PN} ${@} || die -} - -pkg_postinst() { - paths=( - "${EROOT}"var/${PN}/checkpoint - "${EROOT}"var/${PN} - "${EROOT}"var/spool/${PN}/slurmd - "${EROOT}"var/spool/${PN} - "${EROOT}"var/log/${PN} - /var/tmp/${PN}/${PN}d - /var/tmp/${PN} - /run/${PN} - ) - local folder_path - for folder_path in ${paths[@]}; do - create_folders_and_fix_permissions $folder_path - done - echo - - elog "Please visit the file '/usr/share/doc/${P}/html/configurator.html" - elog "through a (javascript enabled) browser to create a configureation file." - elog "Copy that file to /etc/slurm/slurm.conf on all nodes (including the headnode) of your cluster." - echo - elog "For cgroup support, please see https://www.schedmd.com/slurmdocs/cgroup.conf.html" - elog "Your kernel must be compiled with the wanted cgroup feature:" - elog " For the proctrack plugin:" - elog " freezer" - elog " For the task plugin:" - elog " cpuset, memory, devices" - elog " For the accounting plugin:" - elog " cpuacct, memory, blkio" - elog "Then, set these options in /etc/slurm/slurm.conf:" - elog " ProctrackType=proctrack/cgroup" - elog " TaskPlugin=task/cgroup" - einfo - ewarn "Paths were created for slurm. Please use these paths in /etc/slurm/slurm.conf:" - for folder_path in ${paths[@]}; do - ewarn " ${folder_path}" - done -} diff --git a/sys-cluster/slurm/slurm-18.08.7.ebuild b/sys-cluster/slurm/slurm-18.08.7.ebuild index b8797d5c1323..099916081505 100644 --- a/sys-cluster/slurm/slurm-18.08.7.ebuild +++ b/sys-cluster/slurm/slurm-18.08.7.ebuild @@ -67,7 +67,7 @@ REQUIRED_USE="torque? ( perl )" LIBSLURM_PERL_S="${WORKDIR}/${MY_P}/contribs/perlapi/libslurm/perl" LIBSLURMDB_PERL_S="${WORKDIR}/${MY_P}/contribs/perlapi/libslurmdb/perl" -RESTRICT="primaryuri test" +RESTRICT="test" PATCHES=( "${FILESDIR}"/${P}-disable-sview.patch @@ -107,6 +107,7 @@ src_prepare() { sed \ -e 's:sysconfig/.*:conf.d/slurm:g' \ -e 's:var/run/:run/slurm/:g' \ + -e '/^EnvironmentFile=.*/d' \ -i "${S}/etc"/*.service.in \ || die "Can't sed systemd services for sysconfig or var/run/" @@ -115,7 +116,6 @@ src_prepare() { } src_configure() { - use debug || myconf+=( --disable-debug ) local myconf=( --sysconfdir="${EPREFIX}/etc/${PN}" --with-hwloc="${EPREFIX}/usr" @@ -126,6 +126,7 @@ src_configure() { use mysql || myconf+=( --without-mysql_config ) use amd64 && myconf+=( $(use_with netloc) ) econf "${myconf[@]}" \ + $(use_enable debug) \ $(use_enable pam) \ $(use_enable X x11) \ $(use_with ssl) \ diff --git a/sys-cluster/slurm/slurm-19.05.3.2.ebuild b/sys-cluster/slurm/slurm-19.05.3.2.ebuild new file mode 100644 index 000000000000..4c9d3cbf4ae4 --- /dev/null +++ b/sys-cluster/slurm/slurm-19.05.3.2.ebuild @@ -0,0 +1,266 @@ +# Copyright 1999-2019 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +if [[ ${PV} == *9999* ]]; then + EGIT_REPO_URI="https://github.com/SchedMD/slurm.git" + INHERIT_GIT="git-r3" + SRC_URI="" + KEYWORDS="" + MY_P="${P}" +else + if [[ ${PV} == *pre* || ${PV} == *rc* ]]; then + MY_PV=$(ver_rs '-0.') # pre-releases or release-candidate + else + MY_PV=$(ver_rs 3 '-') # stable releases + fi + MY_P="${PN}-${MY_PV}" + INHERIT_GIT="" + SRC_URI="https://download.schedmd.com/slurm/${MY_P}.tar.bz2" + KEYWORDS="~amd64 ~x86" +fi + +inherit autotools bash-completion-r1 pam perl-module prefix toolchain-funcs systemd ${INHERIT_GIT} + +DESCRIPTION="A Highly Scalable Resource Manager" +HOMEPAGE="https://www.schedmd.com" + +LICENSE="GPL-2" +SLOT="0" +IUSE="debug hdf5 html ipmi json lua multiple-slurmd +munge mysql netloc numa ofed pam perl slurmdbd ssl static-libs ucx torque X" + +COMMON_DEPEND=" + !sys-cluster/torque + !net-analyzer/slurm + !net-analyzer/sinfo + || ( sys-cluster/pmix[-pmi] >=sys-cluster/openmpi-2.0.0 ) + mysql? ( + || ( dev-db/mariadb-connector-c dev-db/mysql-connector-c ) + slurmdbd? ( || ( dev-db/mariadb dev-db/mysql ) ) + ) + munge? ( sys-auth/munge ) + pam? ( sys-libs/pam ) + ssl? ( dev-libs/openssl:0= ) + lua? ( dev-lang/lua:0= ) + !lua? ( !dev-lang/lua ) + ipmi? ( sys-libs/freeipmi ) + json? ( dev-libs/json-c:= ) + amd64? ( netloc? ( sys-apps/netloc ) ) + hdf5? ( sci-libs/hdf5:= ) + numa? ( sys-process/numactl ) + ofed? ( sys-fabric/ofed ) + ucx? ( sys-cluster/ucx ) + X? ( net-libs/libssh2 ) + >=sys-apps/hwloc-1.1.1-r1 + sys-libs/ncurses:0= + app-arch/lz4:0= + sys-libs/readline:0=" +DEPEND="${COMMON_DEPEND} + html? ( sys-apps/man2html )" +RDEPEND="${OMMON_DEPEND} + acct-user/slurm + acct-group/slurm + dev-libs/libcgroup" + +REQUIRED_USE="torque? ( perl )" + +S="${WORKDIR}/${MY_P}" + +LIBSLURM_PERL_S="${WORKDIR}/${MY_P}/contribs/perlapi/libslurm/perl" +LIBSLURMDB_PERL_S="${WORKDIR}/${MY_P}/contribs/perlapi/libslurmdb/perl" + +RESTRICT="test" + +src_unpack() { + if [[ ${PV} == *9999* ]]; then + git-r3_src_unpack + else + default + fi +} + +src_prepare() { + tc-ld-disable-gold + default + + # pids should go to /var/run/slurm + sed \ + -e 's:/tmp:/var/tmp:g' \ + -e "s:/var/run/slurmctld.pid:${EPREFIX}/run/slurm/slurmctld.pid:g" \ + -e "s:/var/run/slurmd.pid:${EPREFIX}/run/slurm/slurmd.pid:g" \ + -e "s:StateSaveLocation=.*:StateSaveLocation=${EPREFIX}/var/spool/slurm:g" \ + -e "s:SlurmdSpoolDir=.*:SlurmdSpoolDir=${EPREFIX}/var/spool/slurm/slurmd:g" \ + -i "${S}/etc/slurm.conf.example" \ + || die "Can't sed for /var/run/slurmctld.pid" + sed \ + -e "s:/var/run/slurmdbd.pid:${EPREFIX}/run/slurm/slurmdbd.pid:g" \ + -i "${S}/etc/slurmdbd.conf.example" \ + || die "Can't sed for /var/run/slurmdbd.pid" + # gentooify systemd services + sed \ + -e 's:sysconfig/.*:conf.d/slurm:g' \ + -e 's:var/run/:run/slurm/:g' \ + -e '/^EnvironmentFile=.*/d' \ + -i "${S}/etc"/*.service.in \ + || die "Can't sed systemd services for sysconfig or var/run/" + + hprefixify auxdir/{ax_check_zlib,x_ac_{lz4,ofed,munge}}.m4 + eautoreconf +} + +src_configure() { + local myconf=( + --sysconfdir="${EPREFIX}/etc/${PN}" + --with-hwloc="${EPREFIX}/usr" + --docdir="${EPREFIX}/usr/share/doc/${P}" + --htmldir="${EPREFIX}/usr/share/doc/${P}" + ) + use pam && myconf+=( --with-pam_dir=$(getpam_mod_dir) ) + use mysql || myconf+=( --without-mysql_config ) + use amd64 && myconf+=( $(use_with netloc) ) + econf "${myconf[@]}" \ + $(use_enable debug) \ + $(use_enable pam) \ + $(use_enable X x11) \ + $(use_with ssl) \ + $(use_with munge) \ + $(use_with json) \ + $(use_with hdf5) \ + $(use_with ofed) \ + $(use_with ucx) \ + $(use_enable static-libs static) \ + $(use_enable multiple-slurmd) + + # --htmldir does not seems to propagate... Documentations are installed + # in /usr/share/doc/slurm-2.3.0/html + # instead of /usr/share/doc/slurm-2.3.0.2/html + sed \ + -e "s|htmldir = .*/html|htmldir = \${prefix}/share/doc/slurm-${PVR}/html|g" \ + -i doc/html/Makefile || die + if use perl ; then + # small hack to make it compile + mkdir -p "${S}/src/api/.libs" || die + mkdir -p "${S}/src/db_api/.libs" || die + touch "${S}/src/api/.libs/libslurm.so" || die + touch "${S}/src/db_api/.libs/libslurmdb.so" || die + cd "${LIBSLURM_PERL_S}" || die + S="${LIBSLURM_PERL_S}" SRC_PREP="no" perl-module_src_configure + cd "${LIBSLURMDB_PERL_S}" || die + S="${LIBSLURMDB_PERL_S}" SRC_PREP="no" perl-module_src_configure + cd "${S}" || die + rm -rf "${S}/src/api/.libs" "${S}/src/db_api/.libs" || die + fi +} + +src_compile() { + default + use pam && emake -C contribs/pam + if use perl ; then + cd "${LIBSLURM_PERL_S}" || die + S="${LIBSLURM_PERL_S}" perl-module_src_compile + cd "${LIBSLURMDB_PERL_S}" || die + S="${LIBSLURMDB_PERL_S}" perl-module_src_compile + cd "${S}" || die + fi + use torque && emake -C contribs/torque +} + +src_install() { + default + use pam && emake DESTDIR="${D}" -C contribs/pam install + if use perl; then + cd "${LIBSLURM_PERL_S}" || die + S="${LIBSLURM_PERL_S}" perl-module_src_install + cd "${LIBSLURMDB_PERL_S}" || die + S="${LIBSLURMDB_PERL_S}" perl-module_src_install + cd "${S}" || die + fi + if use torque; then + emake DESTDIR="${D}" -C contribs/torque + rm -f "${D}"/usr/bin/mpiexec || die + fi + use static-libs || find "${ED}" -name '*.la' -exec rm {} + + # install sample configs + keepdir /etc/slurm + insinto /etc/slurm + doins \ + etc/bluegene.conf.example \ + etc/cgroup.conf.example \ + etc/slurm.conf.example \ + etc/slurmdbd.conf.example + exeinto /etc/slurm + keepdir /etc/slurm/layouts.d + insinto /etc/slurm/layouts.d + newins etc/layouts.d.power.conf.example power.conf.example + newins etc/layouts.d.power_cpufreq.conf.example power_cpufreq.conf.example + newins etc/layouts.d.unit.conf.example unit.conf.example + # install init.d files + newinitd "$(prefixify_ro "${FILESDIR}/slurmd.initd")" slurmd + newinitd "$(prefixify_ro "${FILESDIR}/slurmctld.initd")" slurmctld + newinitd "$(prefixify_ro "${FILESDIR}/slurmdbd.initd")" slurmdbd + # install conf.d files + newconfd "${FILESDIR}/slurm.confd" slurm + # install logrotate file + insinto /etc/logrotate.d + newins "${FILESDIR}/logrotate" slurm + # install bashcomp + newbashcomp contribs/slurm_completion_help/slurm_completion.sh scontrol + bashcomp_alias scontrol \ + sreport sacctmgr squeue scancel sshare sbcast sinfo \ + sprio sacct salloc sbatch srun sattach sdiag sstat + # install systemd files + systemd_newtmpfilesd "${FILESDIR}/slurm.tmpfiles" slurm.conf + systemd_dounit etc/slurmd.service etc/slurmctld.service etc/slurmdbd.service +} + +pkg_preinst() { + if use munge; then + sed -i 's,\(SLURM_USE_MUNGE=\).*,\11,' "${D}"/etc/conf.d/slurm || die + fi +} + +create_folders_and_fix_permissions() { + einfo "Fixing permissions in ${@}" + mkdir -p ${@} || die + chown -R ${PN}:${PN} ${@} || die +} + +pkg_postinst() { + paths=( + "${EROOT}"/var/${PN}/checkpoint + "${EROOT}"/var/${PN} + "${EROOT}"/var/spool/${PN}/slurmd + "${EROOT}"/var/spool/${PN} + "${EROOT}"/var/log/${PN} + /var/tmp/${PN}/${PN}d + /var/tmp/${PN} + /run/${PN} + ) + local folder_path + for folder_path in ${paths[@]}; do + create_folders_and_fix_permissions $folder_path + done + echo + + elog "Please visit the file '/usr/share/doc/${P}/html/configurator.html" + elog "through a (javascript enabled) browser to create a configureation file." + elog "Copy that file to /etc/slurm/slurm.conf on all nodes (including the headnode) of your cluster." + echo + elog "For cgroup support, please see https://www.schedmd.com/slurmdocs/cgroup.conf.html" + elog "Your kernel must be compiled with the wanted cgroup feature:" + elog " For the proctrack plugin:" + elog " freezer" + elog " For the task plugin:" + elog " cpuset, memory, devices" + elog " For the accounting plugin:" + elog " cpuacct, memory, blkio" + elog "Then, set these options in /etc/slurm/slurm.conf:" + elog " ProctrackType=proctrack/cgroup" + elog " TaskPlugin=task/cgroup" + einfo + ewarn "Paths were created for slurm. Please use these paths in /etc/slurm/slurm.conf:" + for folder_path in ${paths[@]}; do + ewarn " ${folder_path}" + done +} -- cgit v1.2.3