aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChris Kerr <cjk34@cam.ac.uk>2013-06-15 15:42:17 +0100
committerChris Kerr <cjk34@cam.ac.uk>2013-06-15 15:42:17 +0100
commitae04761c5d7e0ab5f4bc89bfc13ab8cffa244a31 (patch)
tree08c37c22e772279550d5d1ffb386d571a56254f5 /sys-cluster/htcondor
parentx11-misc/envytools: Fix license (diff)
downloadsci-ae04761c5d7e0ab5f4bc89bfc13ab8cffa244a31.tar.gz
sci-ae04761c5d7e0ab5f4bc89bfc13ab8cffa244a31.tar.bz2
sci-ae04761c5d7e0ab5f4bc89bfc13ab8cffa244a31.zip
Copied old Condor files, moved to sys-cluster/htcondor
Diffstat (limited to 'sys-cluster/htcondor')
-rw-r--r--sys-cluster/htcondor/ChangeLog40
-rw-r--r--sys-cluster/htcondor/Manifest2
-rw-r--r--sys-cluster/htcondor/condor-7.5.2.ebuild160
-rw-r--r--sys-cluster/htcondor/condor-7.5.4.ebuild160
-rw-r--r--sys-cluster/htcondor/files/condor.confd2
-rw-r--r--sys-cluster/htcondor/files/condor.initd64
-rw-r--r--sys-cluster/htcondor/files/condor_config.local11
-rw-r--r--sys-cluster/htcondor/metadata.xml26
8 files changed, 465 insertions, 0 deletions
diff --git a/sys-cluster/htcondor/ChangeLog b/sys-cluster/htcondor/ChangeLog
new file mode 100644
index 000000000..484d64224
--- /dev/null
+++ b/sys-cluster/htcondor/ChangeLog
@@ -0,0 +1,40 @@
+# ChangeLog for sys-cluster/condor
+# Copyright 1999-2011 Gentoo Foundation; Distributed under the GPL v2
+# $Header: $
+
+*condor-7.5.4 (08 Jan 2011)
+
+ 08 Jan 2011; Sébastien Fabbro <bicatali@gentoo.org> +condor-7.5.4.ebuild:
+ Version bump
+
+ 22 Jun 2010; Sébastien Fabbro <bicatali@gentoo.org> condor-7.5.2.ebuild,
+ files/condor.initd:
+ More initd fixes, now local config will reside in /var/lib
+
+*condor-7.5.2 (21 Jun 2010)
+
+ 21 Jun 2010; Sébastien Fabbro <bicatali@gentoo.org> -condor-7.4.1.ebuild,
+ -files/condor-7.4.1-config_generic.patch, +condor-7.5.2.ebuild,
+ -files/chkconfig_off.patch, files/condor.confd, files/condor.initd,
+ -files/condor_config.generic.patch, -files/log_lock_run.patch,
+ -files/no_basename.patch, -files/no_rpmdb_query.patch,
+ -files/stdsoap2.h.patch.patch, -condor-7.2.4.ebuild:
+ Version bump, developer version. Too many changes
+
+*condor-7.4.1 (12 Feb 2010)
+
+ 12 Feb 2010; Sébastien Fabbro <bicatali@gentoo.org> +condor-7.4.1.ebuild,
+ +files/condor-7.4.1-config_generic.patch, files/condor.confd,
+ files/condor.initd, files/condor_config.local:
+ Version bump. libvirt added as dependency, still need to check whether
+ absolutely necessary
+
+*condor-7.2.4 (17 Nov 2009)
+
+ 17 Nov 2009; Sébastien Fabbro <bicatali@gentoo.org> +condor-7.2.4.ebuild,
+ +files/chkconfig_off.patch, +files/condor.confd, +files/condor.initd,
+ +files/condor_config.generic.patch, +files/condor_config.local,
+ +files/log_lock_run.patch, +files/no_basename.patch,
+ +files/no_rpmdb_query.patch, +files/stdsoap2.h.patch.patch, +metadata.xml:
+ Initial import
+
diff --git a/sys-cluster/htcondor/Manifest b/sys-cluster/htcondor/Manifest
new file mode 100644
index 000000000..ada4ad124
--- /dev/null
+++ b/sys-cluster/htcondor/Manifest
@@ -0,0 +1,2 @@
+DIST condor_src-7.5.2-all-all.tar.gz 21705891 RMD160 f9911e3a44b69bb22ef607964aec726b51ab9341 SHA1 7e85048545423b13f8173c6ba6d76d35b97f2dcc SHA256 1a4fc437541896aa9963f12ec9231495f6a5ab4cc5ca814b57755a38db407026
+DIST condor_src-7.5.4-all-all.tar.gz 21870900 RMD160 7118a7a7ee32d5d7d9378ed5b94ad7a058ac1fca SHA1 877f748b53dd5e796592f812ae65d75f7b907812 SHA256 a0429b2525047b2eaca988ff4546ff177a5b4e55511354c793e4b3f01b032c08
diff --git a/sys-cluster/htcondor/condor-7.5.2.ebuild b/sys-cluster/htcondor/condor-7.5.2.ebuild
new file mode 100644
index 000000000..462025808
--- /dev/null
+++ b/sys-cluster/htcondor/condor-7.5.2.ebuild
@@ -0,0 +1,160 @@
+# Copyright 1999-2010 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: $
+
+EAPI=2
+
+inherit autotools eutils user flag-o-matic
+
+DESCRIPTION="Workload management system for compute-intensive jobs"
+HOMEPAGE="http://www.cs.wisc.edu/condor/"
+SRC_URI="${PN}_src-${PV}-all-all.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="classads drmaa examples gcb kbdd kerberos postgres soap ssl static-libs"
+
+CDEPEND="sys-libs/zlib
+ app-emulation/libvirt
+ dev-libs/libpcre
+ classads? ( sys-cluster/classads[pcre] )
+ gcb? ( net-firewall/gcb )
+ kerberos? ( app-crypt/mit-krb5 )
+ kbdd? ( x11-libs/libX11 )
+ postgres? ( dev-db/postgresql-base )
+ soap? ( net-libs/gsoap )
+ ssl? ( dev-libs/openssl )"
+
+RDEPEND="${CDEPEND}
+ mail-client/mailx"
+
+DEPEND="${CDEPEND}
+ x11-misc/imake"
+
+RESTRICT=fetch
+
+S="${WORKDIR}/${P}/src"
+
+pkg_setup() {
+ enewgroup condor
+ enewuser condor -1 "${ROOT}"bin/bash "${ROOT}var/lib/condor" condor
+}
+
+src_prepare() {
+ # these two eauto* are to replicate the build_init script
+ # not so sure they are really needed
+ eautoheader
+ eautoconf
+ # this patch is mostly to use standard fhs
+ cd condor_examples
+ epatch ./condor_config.generic.rpm.patch
+ # the base local file is in /etc, then the condor local file is updated and should reside in /var/lib
+ sed -i \
+ -e 's:\(LOCAL_CONFIG_FILE.*=\).*:\1 /var/lib/condor/condor_config.local:' \
+ condor_config.generic || die
+}
+
+src_configure() {
+ # condor seems to be buggy with -O2 and above with gcc
+ filter-flags "-O[s2-9]" "-O1"
+
+ # set USE_OLD_IMAKE to anything so condor_imake will use the system
+ # installed imake instead of building its own
+ export USE_OLD_IMAKE=YES
+ econf \
+ --with-buildid=Gentoo-${P} \
+ --enable-proper \
+ --disable-full-port \
+ --disable-gcc-version-check \
+ --disable-glibc-version-check \
+ --disable-rpm \
+ --without-zlib \
+ --with-libvirt \
+ $(use_enable kbdd) \
+ $(use_enable postgres quill) \
+ $(use_enable static-libs static) \
+ $(use_with classads) \
+ $(use_with drmaa) \
+ $(use_with gcb) \
+ $(use_with kerberos krb5) \
+ $(use_with postgres postgresql) \
+ $(use_with soap gsoap) \
+ $(use_with ssl openssl)
+}
+
+src_compile() {
+ # yet to find a way to parallelize compilation
+ emake -j1 || die "emake failed"
+}
+
+src_install() {
+ emake release manpages || die "emake release failed"
+ if use static-libs; then
+ emake static || die "emake static failed"
+ fi
+
+ cd release_dir
+ ## remove a shitload of useless stuff to sync with the rpm package
+ ## comments are from the rpm fedora spec file
+ # used by old MPI universe, not packaged (it's rsh, it should die)
+ rm -rf libexec/rsh
+ # this is distributed as chirp_client.c/h and chirp_protocol.h
+ rm lib/libchirp_client.a include/chirp_client.h
+ # checkpoint, reschedule and vacate live in bin/, don't duplicate
+ rm sbin/condor_{checkpoint,reschedule,vacate}
+ # sbin/condor is a pointless hard links
+ rm sbin/condor
+
+ # binaries
+ dosbin sbin/* || die
+ dobin bin/* || die
+ # headers
+ insinto /usr
+ doins -r include || die
+ # libs
+ dolib.so lib/*so || die
+ use static-libs && dolib.a lib/*a
+ insinto /usr/libexec/condor
+ doins -r libexec/* || die
+
+ # data files
+ insinto /usr/share/${PN}
+ doins lib/*.jar lib/*.class lib/*.pm || die
+ use postgres && doins -r sql
+
+ # examples
+ if use examples; then
+ insinto /usr/share/doc/${PF}
+ doins -r etc/examples || die
+ fi
+
+ # config files
+ insinto /etc/condor
+ newins etc/examples/condor_config.generic condor_config || die
+ newins etc/examples/condor_config.local.generic condor_config.local || die
+ insinto /var/lib/condor/
+ newins etc/examples/condor_config.local.generic
+
+ dodir /var/log/condor
+ dodir /var/run/condor
+ dodir /var/lock/condor
+
+ fperms 750 /var/lib/condor /var/log/condor
+ fperms 755 /var/run/condor
+ fperms 0775 /var/lock/condor
+ fowners condor:condor /var/lib/condor /var/log/condor /var/run/condor /var/lib/condor/condor_config.local
+
+ newconfd "${FILESDIR}"/condor.confd condor || die
+ newinitd "${FILESDIR}"/condor.initd condor || die
+}
+
+pkg_postinst() {
+ elog "Default configuration files have been installed"
+ elog "You can customize it from there or provide your own"
+ elog "in ${ROOT}etc/${PN}/condor_config*"
+
+ elog "The condor ebuild is still under development."
+ elog "Help us improve the ebuild in participating in:"
+ elog "https://bugs.gentoo.org/show_bug.cgi?id=60281"
+}
diff --git a/sys-cluster/htcondor/condor-7.5.4.ebuild b/sys-cluster/htcondor/condor-7.5.4.ebuild
new file mode 100644
index 000000000..720efb6d3
--- /dev/null
+++ b/sys-cluster/htcondor/condor-7.5.4.ebuild
@@ -0,0 +1,160 @@
+# Copyright 1999-2011 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: $
+
+EAPI=2
+
+inherit autotools eutils user flag-o-matic
+
+DESCRIPTION="Workload management system for compute-intensive jobs"
+HOMEPAGE="http://www.cs.wisc.edu/condor/"
+SRC_URI="${PN}_src-${PV}-all-all.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="classads drmaa examples gcb kbdd kerberos postgres soap ssl static-libs"
+
+CDEPEND="sys-libs/zlib
+ app-emulation/libvirt
+ dev-libs/libpcre
+ classads? ( sys-cluster/classads[pcre] )
+ gcb? ( net-firewall/gcb )
+ kerberos? ( app-crypt/mit-krb5 )
+ kbdd? ( x11-libs/libX11 )
+ postgres? ( dev-db/postgresql-base )
+ soap? ( net-libs/gsoap )
+ ssl? ( dev-libs/openssl )"
+
+RDEPEND="${CDEPEND}
+ mail-client/mailx"
+
+DEPEND="${CDEPEND}
+ x11-misc/imake"
+
+RESTRICT=fetch
+
+S="${WORKDIR}/${P}/src"
+
+pkg_setup() {
+ enewgroup condor
+ enewuser condor -1 "${ROOT}"bin/bash "${ROOT}var/lib/condor" condor
+}
+
+src_prepare() {
+ # these two eauto* are to replicate the build_init script
+ # not so sure they are really needed
+ eautoheader
+ eautoconf
+ # this patch is mostly to use standard fhs
+ cd condor_examples
+ epatch ./condor_config.generic.rpm.patch
+ # the base local file is in /etc, then the condor local file is updated and should reside in /var/lib
+ sed -i \
+ -e 's:\(LOCAL_CONFIG_FILE.*=\).*:\1 /var/lib/condor/condor_config.local:' \
+ condor_config.generic || die
+}
+
+src_configure() {
+ # condor seems to be buggy with -O2 and above with gcc
+ filter-flags "-O[s2-9]" "-O1"
+
+ # set USE_OLD_IMAKE to anything so condor_imake will use the system
+ # installed imake instead of building its own
+ export USE_OLD_IMAKE=YES
+ econf \
+ --with-buildid=Gentoo-${P} \
+ --enable-proper \
+ --disable-full-port \
+ --disable-gcc-version-check \
+ --disable-glibc-version-check \
+ --disable-rpm \
+ --without-zlib \
+ --with-libvirt \
+ $(use_enable kbdd) \
+ $(use_enable postgres quill) \
+ $(use_enable static-libs static) \
+ $(use_with classads) \
+ $(use_with drmaa) \
+ $(use_with gcb) \
+ $(use_with kerberos krb5) \
+ $(use_with postgres postgresql) \
+ $(use_with soap gsoap) \
+ $(use_with ssl openssl)
+}
+
+src_compile() {
+ # yet to find a way to parallelize compilation
+ emake -j1 || die "emake failed"
+}
+
+src_install() {
+ emake release manpages || die "emake release failed"
+ if use static-libs; then
+ emake static || die "emake static failed"
+ fi
+
+ cd release_dir
+ ## remove a shitload of useless stuff to sync with the rpm package
+ ## comments are from the rpm fedora spec file
+ # used by old MPI universe, not packaged (it's rsh, it should die)
+ rm -rf libexec/rsh
+ # this is distributed as chirp_client.c/h and chirp_protocol.h
+ rm lib/libchirp_client.a include/chirp_client.h
+ # checkpoint, reschedule and vacate live in bin/, don't duplicate
+ rm sbin/condor_{checkpoint,reschedule,vacate}
+ # sbin/condor is a pointless hard links
+ rm sbin/condor
+
+ # binaries
+ dosbin sbin/* || die
+ dobin bin/* || die
+ # headers
+ insinto /usr
+ doins -r include || die
+ # libs
+ dolib.so lib/*so || die
+ use static-libs && dolib.a lib/*a
+ insinto /usr/libexec/condor
+ doins -r libexec/* || die
+
+ # data files
+ insinto /usr/share/${PN}
+ doins lib/*.jar lib/*.class lib/*.pm || die
+ use postgres && doins -r sql
+
+ # examples
+ if use examples; then
+ insinto /usr/share/doc/${PF}
+ doins -r etc/examples || die
+ fi
+
+ # config files
+ insinto /etc/condor
+ newins etc/examples/condor_config.generic condor_config || die
+ newins etc/examples/condor_config.local.generic condor_config.local || die
+ insinto /var/lib/condor/
+ newins etc/examples/condor_config.local.generic
+
+ dodir /var/log/condor
+ dodir /var/run/condor
+ dodir /var/lock/condor
+
+ fperms 750 /var/lib/condor /var/log/condor
+ fperms 755 /var/run/condor
+ fperms 0775 /var/lock/condor
+ fowners condor:condor /var/lib/condor /var/log/condor /var/run/condor /var/lib/condor/condor_config.local
+
+ newconfd "${FILESDIR}"/condor.confd condor || die
+ newinitd "${FILESDIR}"/condor.initd condor || die
+}
+
+pkg_postinst() {
+ elog "Default configuration files have been installed"
+ elog "You can customize it from there or provide your own"
+ elog "in ${ROOT}etc/${PN}/condor_config*"
+
+ elog "The condor ebuild is still under development."
+ elog "Help us improve the ebuild in participating in:"
+ elog "https://bugs.gentoo.org/show_bug.cgi?id=60281"
+}
diff --git a/sys-cluster/htcondor/files/condor.confd b/sys-cluster/htcondor/files/condor.confd
new file mode 100644
index 000000000..bbb955811
--- /dev/null
+++ b/sys-cluster/htcondor/files/condor.confd
@@ -0,0 +1,2 @@
+CONDOR_CENTRAL_MANAGER="$(cat /etc/condor/central_manager)"
+CONDOR_OPTS=""
diff --git a/sys-cluster/htcondor/files/condor.initd b/sys-cluster/htcondor/files/condor.initd
new file mode 100644
index 000000000..287df2675
--- /dev/null
+++ b/sys-cluster/htcondor/files/condor.initd
@@ -0,0 +1,64 @@
+#!/sbin/runscript
+# Copyright 1999-2010 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: $
+
+CONDOR_USER=condor
+
+CONDOR_CONFIG_LOCAL=$(condor_config_val LOCAL_CONFIG_FILE)
+CONDOR_MASTER=$(condor_config_val MASTER)
+CONDOR_RUN=$(condor_config_val RUN)
+CONDOR_LOCK=$(condor_config_val LOCK)
+
+depend() {
+ need net
+ use logger
+}
+
+setup_central_manager() {
+ # delete current condor host, replace it with central manager
+ sed -e '/CONDOR_HOST/d' \
+ /etc/condor/condor_config.local > ${CONDOR_CONFIG_LOCAL}
+ echo "CONDOR_HOST=${CONDOR_CENTRAL_MANAGER}" >> ${CONDOR_CONFIG_LOCAL}
+ chown ${CONDOR_USER}:${CONDOR_USER} ${CONDOR_CONFIG_LOCAL}
+}
+
+# set up condor ccb if only private networking is available (assumes ifconfig)
+setup_ccb() {
+ /sbin/ifconfig | grep "inet addr" | egrep -v "addr:127.|addr:192.|addr:172.|addr:10." > /dev/null
+ retval=$?
+ if [ ${retval} -ne 0 ]; then # all addresses are local
+ echo \
+ "$(/sbin/ifconfig | grep "inet addr" | grep -v 127. | awk '{print $2}' | sed s/addr://)" \
+ "$(hostname)" \
+ "# Added for Condor CCB" \
+ >> /etc/hosts
+ fi
+}
+
+cleanup_ccb() {
+ sed -i '/# Added for Condor CCB/d' /etc/hosts
+}
+
+start() {
+ ebegin "Starting condor"
+ setup_central_manager
+ setup_ccb
+ start-stop-daemon --start --quiet --user ${CONDOR_USER} \
+ --pidfile ${CONDOR_RUN}/condor.pid \
+ --exec ${CONDOR_MASTER} -- ${CONDOR_OPTS}
+ retval=$?
+ [ $retval -eq 0 ] && touch /var/lock/subsys/condor
+ eend ${retval}
+}
+
+stop() {
+ ebegin "Stopping condor"
+ cleanup_ccb
+ start-stop-daemon --stop --quiet \
+ --pidfile ${CONDOR_RUN}/condor.pid \
+ --exec ${CONDOR_MASTER}
+ retval=$?
+ [ ${retval} -eq 0 ] && rm -f /var/lock/subsys/condor
+ eend ${retval}
+}
diff --git a/sys-cluster/htcondor/files/condor_config.local b/sys-cluster/htcondor/files/condor_config.local
new file mode 100644
index 000000000..cada046bd
--- /dev/null
+++ b/sys-cluster/htcondor/files/condor_config.local
@@ -0,0 +1,11 @@
+CONDOR_DEVELOPERS = NONE
+CONDOR_HOST = $(FULL_HOSTNAME)
+COLLECTOR_NAME = Personal Condor
+START = TRUE
+SUSPEND = FALSE
+CONTINUE = TRUE
+PREEMPT = FALSE
+KILL = FALSE
+DAEMON_LIST = COLLECTOR, MASTER, NEGOTIATOR, SCHEDD, STARTD
+NEGOTIATOR_INTERVAL = 20
+TRUST_UID_DOMAIN = TRUE
diff --git a/sys-cluster/htcondor/metadata.xml b/sys-cluster/htcondor/metadata.xml
new file mode 100644
index 000000000..bd197e13d
--- /dev/null
+++ b/sys-cluster/htcondor/metadata.xml
@@ -0,0 +1,26 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>cluster</herd>
+ <maintainer>
+ <email>bicatali@gentoo.org</email>
+ </maintainer>
+ <longdescription lang="en">
+ Condor is a open-source, specialized workload management system for
+ compute-intensive jobs. Like other full-featured batch systems, Condor
+ provides a job queueing mechanism, scheduling policy, priority scheme,
+ resource monitoring, and resource management. Users submit their serial
+ or parallel jobs to Condor, Condor places them into a queue, chooses
+ when and where to run the jobs based upon a policy, carefully monitors
+ their progress, and ultimately informs the user upon completion. Condor
+ also contains mechanisms to submit jobs to grid-sites and supports many
+ different grid toolkits.
+</longdescription>
+ <use>
+ <flag name="classads">Enable the Condor's classified advertisement language</flag>
+ <flag name="drmaa">Enable the Distributed Resource Management
+ Application API</flag>
+ <flag name="gcb">Enable condor to communicate over firewall/NAT</flag>
+ <flag name="kbdd">Enable the Condor Keyboard Daemon to monitor logged in X users for activity</flag>
+ </use>
+</pkgmetadata>