1 |
alexxy 13/11/04 11:24:05 |
2 |
|
3 |
Modified: ChangeLog |
4 |
Added: slurm-2.6.3.ebuild |
5 |
Log: |
6 |
Version bump per bug #488310 |
7 |
|
8 |
(Portage version: 2.2.7/cvs/Linux x86_64, signed Manifest commit with key F82F92E6) |
9 |
|
10 |
Revision Changes Path |
11 |
1.25 sys-cluster/slurm/ChangeLog |
12 |
|
13 |
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/sys-cluster/slurm/ChangeLog?rev=1.25&view=markup |
14 |
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/sys-cluster/slurm/ChangeLog?rev=1.25&content-type=text/plain |
15 |
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/sys-cluster/slurm/ChangeLog?r1=1.24&r2=1.25 |
16 |
|
17 |
Index: ChangeLog |
18 |
=================================================================== |
19 |
RCS file: /var/cvsroot/gentoo-x86/sys-cluster/slurm/ChangeLog,v |
20 |
retrieving revision 1.24 |
21 |
retrieving revision 1.25 |
22 |
diff -u -r1.24 -r1.25 |
23 |
--- ChangeLog 2 Jun 2013 19:46:40 -0000 1.24 |
24 |
+++ ChangeLog 4 Nov 2013 11:24:05 -0000 1.25 |
25 |
@@ -1,6 +1,11 @@ |
26 |
# ChangeLog for sys-cluster/slurm |
27 |
# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2 |
28 |
-# $Header: /var/cvsroot/gentoo-x86/sys-cluster/slurm/ChangeLog,v 1.24 2013/06/02 19:46:40 alexxy Exp $ |
29 |
+# $Header: /var/cvsroot/gentoo-x86/sys-cluster/slurm/ChangeLog,v 1.25 2013/11/04 11:24:05 alexxy Exp $ |
30 |
+ |
31 |
+*slurm-2.6.3 (04 Nov 2013) |
32 |
+ |
33 |
+ 04 Nov 2013; Alexey Shvetsov <alexxy@g.o> +slurm-2.6.3.ebuild: |
34 |
+ Version bump per bug #488310 |
35 |
|
36 |
*slurm-2.5.6 (02 Jun 2013) |
37 |
|
38 |
|
39 |
|
40 |
|
41 |
1.1 sys-cluster/slurm/slurm-2.6.3.ebuild |
42 |
|
43 |
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/sys-cluster/slurm/slurm-2.6.3.ebuild?rev=1.1&view=markup |
44 |
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/sys-cluster/slurm/slurm-2.6.3.ebuild?rev=1.1&content-type=text/plain |
45 |
|
46 |
Index: slurm-2.6.3.ebuild |
47 |
=================================================================== |
48 |
# Copyright 1999-2013 Gentoo Foundation |
49 |
# Distributed under the terms of the GNU General Public License v2 |
50 |
# $Header: /var/cvsroot/gentoo-x86/sys-cluster/slurm/slurm-2.6.3.ebuild,v 1.1 2013/11/04 11:24:05 alexxy Exp $ |
51 |
|
52 |
EAPI=5 |
53 |
|
54 |
if [[ ${PV} == *9999* ]]; then |
55 |
EGIT_REPO_URI="git://github.com/SchedMD/slurm.git" |
56 |
INHERIT_GIT="git-2" |
57 |
SRC_URI="" |
58 |
KEYWORDS="" |
59 |
else |
60 |
inherit versionator |
61 |
if [[ ${PV} == *pre* || ${PV} == *rc* ]]; then |
62 |
MY_PV=$(replace_version_separator 3 '-0.') # pre-releases or release-candidate |
63 |
else |
64 |
MY_PV=$(replace_version_separator 3 '-') # stable releases |
65 |
fi |
66 |
MY_P="${PN}-${MY_PV}" |
67 |
INHERIT_GIT="" |
68 |
SRC_URI="http://www.schedmd.com/download/total/${MY_P}.tar.bz2" |
69 |
KEYWORDS="~amd64 ~x86" |
70 |
S="${WORKDIR}/${MY_P}" |
71 |
fi |
72 |
|
73 |
inherit autotools base eutils pam perl-module user ${INHERIT_GIT} |
74 |
|
75 |
DESCRIPTION="SLURM: A Highly Scalable Resource Manager" |
76 |
HOMEPAGE="http://www.schedmd.com" |
77 |
|
78 |
LICENSE="GPL-2" |
79 |
SLOT="0" |
80 |
IUSE="lua maui multiple-slurmd +munge mysql pam perl postgres ssl static-libs torque ypbind" |
81 |
|
82 |
DEPEND=" |
83 |
!sys-cluster/torque |
84 |
!net-analyzer/slurm |
85 |
!net-analyzer/sinfo |
86 |
mysql? ( dev-db/mysql ) |
87 |
munge? ( sys-auth/munge ) |
88 |
ypbind? ( net-nds/ypbind ) |
89 |
pam? ( virtual/pam ) |
90 |
postgres? ( dev-db/postgresql-base ) |
91 |
ssl? ( dev-libs/openssl ) |
92 |
lua? ( dev-lang/lua ) |
93 |
!lua? ( !dev-lang/lua ) |
94 |
>=sys-apps/hwloc-1.1.1-r1" |
95 |
RDEPEND="${DEPEND} |
96 |
dev-libs/libcgroup |
97 |
maui? ( sys-cluster/maui[slurm] )" |
98 |
|
99 |
REQUIRED_USE="torque? ( perl )" |
100 |
|
101 |
LIBSLURM_PERL_S="${WORKDIR}/${P}/contribs/perlapi/libslurm/perl" |
102 |
LIBSLURMDB_PERL_S="${WORKDIR}/${P}/contribs/perlapi/libslurmdb/perl" |
103 |
|
104 |
RESTRICT="primaryuri" |
105 |
|
106 |
PATCHES=( |
107 |
"${FILESDIR}/${PN}-2.5.4-nogtk.patch" |
108 |
) |
109 |
|
110 |
src_unpack() { |
111 |
if [[ ${PV} == *9999* ]]; then |
112 |
git-2_src_unpack |
113 |
else |
114 |
default |
115 |
fi |
116 |
} |
117 |
|
118 |
pkg_setup() { |
119 |
enewgroup slurm 500 |
120 |
enewuser slurm 500 -1 /var/spool/slurm slurm |
121 |
} |
122 |
|
123 |
src_prepare() { |
124 |
# Gentoo uses /sys/fs/cgroup instead of /cgroup |
125 |
# FIXME: Can the "^/cgroup" and "\([ =\"]\)/cgroup" patterns be merged? |
126 |
sed \ |
127 |
-e 's|\([ =\"]\)/cgroup|\1/sys/fs/cgroup|g' \ |
128 |
-e "s|^/cgroup|/sys/fs/cgroup|g" \ |
129 |
-i "${S}/doc/man/man5/cgroup.conf.5" \ |
130 |
-i "${S}/etc/cgroup.release_common.example" \ |
131 |
-i "${S}/src/common/xcgroup_read_config.c" \ |
132 |
|| die "Can't sed /cgroup for /sys/fs/cgroup" |
133 |
# and pids should go to /var/run/slurm |
134 |
sed -e 's:/var/run/slurmctld.pid:/var/run/slurm/slurmctld.pid:g' \ |
135 |
-e 's:/var/run/slurmd.pid:/var/run/slurm/slurmd.pid:g' \ |
136 |
-i "${S}/etc/slurm.conf.example" \ |
137 |
|| die "Can't sed for /var/run/slurmctld.pid" |
138 |
# also state dirs are in /var/spool/slurm |
139 |
sed -e 's:StateSaveLocation=*.:StateSaveLocation=/var/spool/slurm:g' \ |
140 |
-e 's:SlurmdSpoolDir=*.:SlurmdSpoolDir=/var/spool/slurm/slurmd:g' \ |
141 |
-i "${S}/etc/slurm.conf.example" \ |
142 |
|| die "Can't sed ${S}/etc/slurm.conf.example for StateSaveLocation=*. or SlurmdSpoolDir=*" |
143 |
# and tmp should go to /var/tmp/slurm |
144 |
sed -e 's:/tmp:/var/tmp:g' \ |
145 |
-i "${S}/etc/slurm.conf.example" \ |
146 |
|| die "Can't sed for StateSaveLocation=*./tmp" |
147 |
# disable sview since it need gtk+ |
148 |
sed -e '/sview/d' \ |
149 |
-i configure.ac |
150 |
sed -e 's:sview::g' \ |
151 |
-i src/Makefile.am |
152 |
# apply patches |
153 |
epatch "${PATCHES[@]}" |
154 |
elibtoolize |
155 |
eautoreconf |
156 |
} |
157 |
|
158 |
src_configure() { |
159 |
local myconf=( |
160 |
--sysconfdir="${EPREFIX}/etc/${PN}" |
161 |
--with-hwloc="${EPREFIX}/usr" |
162 |
--docdir="${EPREFIX}/usr/share/doc/${P}" |
163 |
--htmldir="${EPREFIX}/usr/share/doc/${P}" |
164 |
) |
165 |
use pam && myconf+=( --with-pam_dir=$(getpam_mod_dir) ) |
166 |
use mysql || myconf+=( --without-mysql_config ) |
167 |
use postgres || myconf+=( --without-pg_config ) |
168 |
econf "${myconf[@]}" \ |
169 |
$(use_enable pam) \ |
170 |
$(use_with ssl) \ |
171 |
$(use_with munge) \ |
172 |
$(use_enable static-libs static) \ |
173 |
$(use_enable multiple-slurmd) |
174 |
|
175 |
# --htmldir does not seems to propagate... Documentations are installed |
176 |
# in /usr/share/doc/slurm-2.3.0/html |
177 |
# instead of /usr/share/doc/slurm-2.3.0.2/html |
178 |
sed -e "s|htmldir = .*/html|htmldir = \${prefix}/share/doc/slurm-${PVR}/html|g" -i doc/html/Makefile || die |
179 |
if use perl ; then |
180 |
# small hack to make it compile |
181 |
mkdir -p "${S}/src/api/.libs" |
182 |
mkdir -p "${S}/src/db_api/.libs" |
183 |
touch "${S}/src/api/.libs/libslurm.so" |
184 |
touch "${S}/src/db_api/.libs/libslurmdb.so" |
185 |
cd "${LIBSLURM_PERL_S}" |
186 |
S="${LIBSLURM_PERL_S}" SRC_PREP="no" perl-module_src_configure |
187 |
cd "${LIBSLURMDB_PERL_S}" |
188 |
S="${LIBSLURMDB_PERL_S}" SRC_PREP="no" perl-module_src_configure |
189 |
cd "${S}" |
190 |
rm -rf "${S}/src/api/.libs" "${S}/src/db_api/.libs" |
191 |
fi |
192 |
} |
193 |
|
194 |
src_compile() { |
195 |
default |
196 |
use pam && emake -C contribs/pam || die |
197 |
if use perl ; then |
198 |
cd "${LIBSLURM_PERL_S}" |
199 |
S="${LIBSLURM_PERL_S}" perl-module_src_compile |
200 |
cd "${LIBSLURMDB_PERL_S}" |
201 |
S="${LIBSLURMDB_PERL_S}" perl-module_src_compile |
202 |
cd "${S}" |
203 |
fi |
204 |
if use torque ; then |
205 |
emake -C contribs/torque || die |
206 |
fi |
207 |
} |
208 |
|
209 |
src_install() { |
210 |
default |
211 |
use pam && emake DESTDIR="${D}" -C contribs/pam install || die |
212 |
if use perl; then |
213 |
cd "${LIBSLURM_PERL_S}" |
214 |
S="${LIBSLURM_PERL_S}" perl-module_src_install |
215 |
cd "${LIBSLURMDB_PERL_S}" |
216 |
S="${LIBSLURMDB_PERL_S}" perl-module_src_install |
217 |
cd "${S}" |
218 |
fi |
219 |
if use torque; then |
220 |
emake DESTDIR="${D}" -C contribs/torque || die |
221 |
rm -f "${ED}/usr/bin/mpiexec" || die |
222 |
fi |
223 |
use static-libs || find "${ED}" -name '*.la' -exec rm {} + |
224 |
# install sample configs |
225 |
keepdir /etc/slurm |
226 |
insinto /etc/slurm |
227 |
doins etc/bluegene.conf.example |
228 |
doins etc/cgroup.conf.example |
229 |
doins etc/cgroup_allowed_devices_file.conf.example |
230 |
doins etc/slurm.conf.example |
231 |
doins etc/slurmdbd.conf.example |
232 |
exeinto /etc/slurm |
233 |
doexe etc/cgroup.release_common.example |
234 |
doexe etc/slurm.epilog.clean |
235 |
# install init.d files |
236 |
newinitd "${FILESDIR}/slurmd.initd" slurmd |
237 |
newinitd "${FILESDIR}/slurmctld.initd" slurmctld |
238 |
newinitd "${FILESDIR}/slurmdbd.initd" slurmdbd |
239 |
# install conf.d files |
240 |
newconfd "${FILESDIR}/slurm.confd" slurm |
241 |
# Install logrotate file |
242 |
insinto /etc/logrotate.d |
243 |
newins "${FILESDIR}/logrotate" slurm || die |
244 |
# cgroups support |
245 |
exeinto /etc/slurm/cgroup |
246 |
doexe etc/cgroup.release_common.example |
247 |
mv "${D}"/etc/slurm/cgroup/cgroup.release_common.example "${D}"/etc/slurm/cgroup/release_common || die "Can't move cgroup.release_common.example" |
248 |
ln -s release_common "${D}"/etc/slurm/cgroup/release_cpuset || die "Can't create symbolic link release_cpuset" |
249 |
ln -s release_common "${D}"/etc/slurm/cgroup/release_devices || die "Can't create symbolic link release_devices" |
250 |
ln -s release_common "${D}"/etc/slurm/cgroup/release_freezer || die "Can't create symbolic link release_freezer" |
251 |
} |
252 |
|
253 |
pkg_preinst() { |
254 |
if use munge; then |
255 |
sed -i 's,\(SLURM_USE_MUNGE=\).*,\11,' "${D}"etc/conf.d/slurm || die |
256 |
fi |
257 |
if use ypbind; then |
258 |
sed -i 's,\(SLURM_USE_YPBIND=\).*,\11,' "${D}"etc/conf.d/slurm || die |
259 |
fi |
260 |
} |
261 |
|
262 |
create_folders_and_fix_permissions() { |
263 |
einfo "Fixing permissions in ${@}" |
264 |
mkdir -p ${@} |
265 |
chown -R ${PN}:${PN} ${@} |
266 |
} |
267 |
|
268 |
pkg_postinst() { |
269 |
paths=( |
270 |
/var/${PN}/checkpoint |
271 |
/var/${PN} |
272 |
/var/spool/${PN}/slurmd |
273 |
/var/spool/${PN} |
274 |
/var/run/${PN} |
275 |
/var/log/${PN} |
276 |
/var/tmp/${PN}/${PN}d |
277 |
/var/tmp/${PN} |
278 |
) |
279 |
for folder_path in ${paths[@]}; do |
280 |
create_folders_and_fix_permissions $folder_path |
281 |
done |
282 |
einfo |
283 |
|
284 |
elog "Please visit the file '/usr/share/doc/${P}/html/configurator.html" |
285 |
elog "through a (javascript enabled) browser to create a configureation file." |
286 |
elog "Copy that file to /etc/slurm/slurm.conf on all nodes (including the headnode) of your cluster." |
287 |
einfo |
288 |
elog "For cgroup support, please see http://www.schedmd.com/slurmdocs/cgroup.conf.html" |
289 |
elog "Your kernel must be compiled with the wanted cgroup feature:" |
290 |
elog " General setup --->" |
291 |
elog " [*] Control Group support --->" |
292 |
elog " [*] Freezer cgroup subsystem" |
293 |
elog " [*] Device controller for cgroups" |
294 |
elog " [*] Cpuset support" |
295 |
elog " [*] Simple CPU accounting cgroup subsystem" |
296 |
elog " [*] Resource counters" |
297 |
elog " [*] Memory Resource Controller for Control Groups" |
298 |
elog " [*] Group CPU scheduler --->" |
299 |
elog " [*] Group scheduling for SCHED_OTHER" |
300 |
elog "Then, set these options in /etc/slurm/slurm.conf:" |
301 |
elog " ProctrackType=proctrack/cgroup" |
302 |
elog " TaskPlugin=task/cgroup" |
303 |
einfo |
304 |
ewarn "Paths were created for slurm. Please use these paths in /etc/slurm/slurm.conf:" |
305 |
for folder_path in ${paths[@]}; do |
306 |
ewarn " ${folder_path}" |
307 |
done |
308 |
} |