Version and EAPI bump, add support for prefix. Remove warning for older versions...
authorJustin Bronder <jsbronder@gentoo.org>
Fri, 23 Apr 2010 03:50:43 +0000 (03:50 +0000)
committerJustin Bronder <jsbronder@gentoo.org>
Fri, 23 Apr 2010 03:50:43 +0000 (03:50 +0000)
Package-Manager: portage-2.2_rc67/cvs/Linux x86_64

sys-cluster/ganglia/ChangeLog
sys-cluster/ganglia/Manifest
sys-cluster/ganglia/ganglia-3.1.7.ebuild [new file with mode: 0644]

index bb0c481962f0b23e6e838c1a26cd782632b9ce17..986be80012ccf2dd7872e0dfd1c1023a9e4147ef 100644 (file)
@@ -1,6 +1,12 @@
 # ChangeLog for sys-cluster/ganglia
 # Copyright 1999-2010 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/sys-cluster/ganglia/ChangeLog,v 1.34 2010/01/09 18:37:03 jsbronder Exp $
+# $Header: /var/cvsroot/gentoo-x86/sys-cluster/ganglia/ChangeLog,v 1.35 2010/04/23 03:50:43 jsbronder Exp $
+
+*ganglia-3.1.7 (23 Apr 2010)
+
+  23 Apr 2010; Justin Bronder <jsbronder@gentoo.org> +ganglia-3.1.7.ebuild:
+  Version and EAPI bump, add support for prefix. Remove warning for older
+  versions of ganglia that are no longer in the tree.
 
 *ganglia-3.1.2-r1 (09 Jan 2010)
 
index c48a510988b6e899869c4f2414f389d0cabf95e6..0cdc4dede2446a7047b23aed1bff787bb58f9f6d 100644 (file)
@@ -7,14 +7,16 @@ AUX ganglia-3.1.1-process_path-overflow-r1.patch 1364 RMD160 0f04fa5f9cfeae72613
 AUX gmetad.rc 351 RMD160 e6de86388717e8b8ee5072e45accb8b3cbf98632 SHA1 1cca253192c7c133d5f2f9b6e98c57eca6a41710 SHA256 86a57f6e009cb516928d048180672b82326ba01b8a3deda72e4d03532c493b8e
 AUX gmond.rc 345 RMD160 076613bff272ddb1e8e192805edad009e00f2af4 SHA1 bc57ed84f0e0fc92fe46f71e0179a2b5bb028aa4 SHA256 c58568992ddad460a79278aae59d0246b74ae167b70d05885775c51118a8c965
 DIST ganglia-3.1.2.tar.gz 1213196 RMD160 1f78cf1019759e12c3c65901fd74ac65dfddf4e3 SHA1 be5db246eb755d8c450140d1c80afef4f1179fe1 SHA256 278f6fcf2299ceb8cacff999e54f96987e8d09064b1d43469108985bdeba6f12
+DIST ganglia-3.1.7.tar.gz 1278023 RMD160 918d678ad234d477fc98427d96485a8111c64f06 SHA1 e234d64814af1c9f55f1cd039a5840039d175f85 SHA256 bb1a4953d72e7dace76010a30d6d332e4ac0991d1371dbbcbcc7b048e0a7e4bf
 EBUILD ganglia-3.1.2-r1.ebuild 5373 RMD160 f372eb02bfb205e97db07be75fb56d7dcc45dd95 SHA1 afa437af31e38a9c49a6c3be4bcdd49220860627 SHA256 97818bed111541ee568eeb79423ddbca991fd43937843335a3346df6186ee431
 EBUILD ganglia-3.1.2.ebuild 5443 RMD160 7d197d8e757da5f59f407f308cb6c913436a6684 SHA1 9e79e653bbc172900a5ba82e002308fb4bedd5ca SHA256 25ddc5a87a7908cde9448db3f391877c8eec074ca552127d550fc5f071025d92
-MISC ChangeLog 7412 RMD160 cc08c9d457b5ffe0e7dcd99563b721dfd8498131 SHA1 5eee671c39e2999dd24d8535da6ab80fcd78fbe2 SHA256 a1dac69c1e8f41d8bff74d7d21e05a58253ed139db3e895c60445d728c12e255
+EBUILD ganglia-3.1.7.ebuild 4947 RMD160 285b502c6c4d59404b5778fd7519b728be107b92 SHA1 747565b227cd857ae902d690d867c0cdc7ccf92f SHA256 e927878b153242889c96da9b1c427b2290f7a359596fb4566826101fd9e49bc5
+MISC ChangeLog 7647 RMD160 9ada9ff2031f8746d15536f32507ca8cf2db992f SHA1 c83aeda2aebfe737ae929bd01bebb7d9f2548279 SHA256 9957f0f862c5a8445c59c1a6ab9e8cab77ab61227e790382878a7fb3eae04a9e
 MISC metadata.xml 231 RMD160 37dd476ccaceaa37796cf29fd01af8fcfa2b4c61 SHA1 87cab1ccad4db7724c4292e4f32dd19accdcf2fa SHA256 b5305a12d2e3e9f9fdf645e98b0108c1bd8f5b5da32589a25bf7b0f0d74f1213
 -----BEGIN PGP SIGNATURE-----
-Version: GnuPG v2.0.11 (GNU/Linux)
+Version: GnuPG v2.0.14 (GNU/Linux)
 
-iEYEARECAAYFAktIzNgACgkQ4MrvBE1wQ8mP5ACeInBkdmDBd59E4fDGVGzxP4tz
-QMEAnR5EYM6k+6MJ5nnoS/j7klnoXpQL
-=q/yA
+iEYEARECAAYFAkvRGR0ACgkQ4MrvBE1wQ8kN+wCfSlisJzIkF/d728/v+J0LnqJn
+jugAni8+hKX/UVn9fiUvww8Ykoa1yekb
+=3/+z
 -----END PGP SIGNATURE-----
diff --git a/sys-cluster/ganglia/ganglia-3.1.7.ebuild b/sys-cluster/ganglia/ganglia-3.1.7.ebuild
new file mode 100644 (file)
index 0000000..0e507fa
--- /dev/null
@@ -0,0 +1,184 @@
+# Copyright 1999-2010 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/sys-cluster/ganglia/ganglia-3.1.7.ebuild,v 1.1 2010/04/23 03:50:43 jsbronder Exp $
+
+EAPI="3"
+WEBAPP_OPTIONAL="yes"
+inherit eutils multilib webapp python
+
+DESCRIPTION="A scalable distributed monitoring system for clusters and grids"
+HOMEPAGE="http://ganglia.sourceforge.net/"
+SRC_URI="mirror://sourceforge/ganglia/${P}.tar.gz"
+LICENSE="BSD"
+
+WEBAPP_MANUAL_SLOT="yes"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~x86"
+IUSE="minimal vhosts python"
+
+DEPEND="
+       dev-libs/confuse
+       dev-libs/expat
+       >=dev-libs/apr-1.0
+       python? ( >=dev-lang/python-2.3 )
+       !dev-db/firebird"
+
+RDEPEND="
+       ${DEPEND}
+       !minimal? ( net-analyzer/rrdtool
+               ${WEBAPP_DEPEND}
+               dev-lang/php[gd,xml,ctype,pcre,cgi]
+               media-fonts/dejavu
+       )"
+
+pkg_setup() {
+       use minimal || webapp_pkg_setup
+}
+
+src_prepare() {
+       # This patch just gives a group to the disk statistics.
+       # I.E. it's just cosmetics
+       epatch "${FILESDIR}"/${PN}-3.1.1-multidisk-group.patch
+}
+
+src_configure() {
+       econf \
+               --enable-gexec \
+               --sysconfdir="${EPREFIX}"/etc/${PN} \
+               $(use_enable python) \
+               $(use_with !minimal gmetad) || die "econf failed"
+}
+
+src_install() {
+       emake DESTDIR="${D}" install || die "emake install failed"
+
+       newinitd "${FILESDIR}"/gmond.rc gmond
+       doman {mans/*.1,gmond/*.5} || die "Failed to install manpages"
+       dodoc AUTHORS ChangeLog INSTALL NEWS README || die
+
+       dodir /etc/ganglia/conf.d
+       gmond/gmond -t > "${ED}"/etc/ganglia/gmond.conf
+
+       # Sadly, there is no install target for any of this.
+       if use python; then
+               # We install the multidisk module, but not the configuration
+               # as this needs to be generated later.  See pkg_config
+               local gmond_py="disk/multidisk network/tcpconn"
+               local gmond_py_conf="tcpconn"
+               newdoc gmond/modules/python/README README.python_modules
+               insinto /etc/ganglia/conf.d
+               doins gmond/modules/conf.d/modpython.conf
+               for i in ${gmond_py_conf}; do
+                       doins gmond/python_modules/conf.d/${i}.pyconf
+               done
+               dodir /usr/$(get_libdir)/ganglia/python_modules
+               insinto /usr/$(get_libdir)/ganglia/python_modules
+               for i in ${gmond_py}; do
+                       doins gmond/python_modules/${i}.py
+               done
+       fi
+
+       if ! use minimal; then
+               webapp_src_preinst
+               insinto "${MY_HTDOCSDIR}"
+               doins -r web/*
+               webapp_configfile "${MY_HTDOCSDIR}"/conf.php
+               webapp_src_install
+
+               # webapp_src_install stomps on permissions, so do that
+               # stuff first.
+               insinto /etc/ganglia
+               doins gmetad/gmetad.conf
+               doman mans/gmetad.1
+
+               newinitd "${FILESDIR}"/gmetad.rc gmetad
+               keepdir /var/lib/ganglia/rrds
+               fowners nobody:nobody /var/lib/ganglia/rrds
+       fi
+}
+
+pkg_postinst() {
+       elog "A default configuration file for gmond has been generated"
+       elog "for you as a template by running:"
+       elog "    /usr/sbin/gmond -t > /etc/ganglia/gmond.conf"
+       elog "customize it from there or provide your own but be aware"
+       elog "the format has changed since 3.0 and so you won't be able"
+       elog "to use your current configuration (if you generated any)"
+       elog "in /etc/gmond.conf directly"
+       elog
+       elog "If you require disk {usage,total} statistics, please run"
+       elog "    emerge --config ${PN}"
+       elog "then check ${ROOT}etc/ganglia/conf.d/diskusage.pyconf"
+       elog "for correctness."
+
+       use minimal || webapp_pkg_postinst
+
+       use python && \
+               python_mod_optimize /usr/$(get_libdir)/ganglia/python_modules/
+}
+
+pkg_prerm() {
+       use minimal || webapp_pkg_prerm
+}
+
+pkg_postrm() {
+       use python && \
+               python_mod_cleanup /usr/$(get_libdir)/ganglia/python_modules/
+       [ -d "${ROOT}"/usr/$(get_libdir)/ganglia ] && \
+               rmdir "${ROOT}"/usr/$(get_libdir)/ganglia 2>/dev/null
+}
+
+pkg_config() {
+       local disk_used_metrics disk_total_metrics i
+       local disk_pyconf="${ROOT}"etc/ganglia/conf.d/diskusage.pyconf
+
+       if ! use python; then
+               einfo "No configuration necessary :)"
+               exit 0
+       fi
+
+       if [ ! -w ${disk_pyconf} ]; then
+               eerror "Cannot write to ${disk_pyconf}"
+               exit 1
+       fi
+
+       ebegin "Generating disk used/total metric configuration to ${disk_pyconf}"
+       disk_used_metrics=$(${ROOT}/usr/sbin/gmond -m | awk '/-disk_used/{print $1}')
+       disk_total_metrics=$(${ROOT}/usr/sbin/gmond -m | awk '/-disk_total/{print $1}')
+       cat > ${disk_pyconf} <<-EOF
+               #/* Disk usage collection groups for
+               #    multidisk python module */
+               #
+               # Autogenerated by pkg_config in the Gentoo ganglia ebuild.
+
+               modules {
+                 module {
+                   name = "multidisk"
+                   language = "python"
+                 }
+               }
+
+               collection_group {
+                 collect_every = 10
+                 time_threshold = 50
+       EOF
+       for i in ${disk_used_metrics}; do
+               printf \
+                       "\n  metric {\n    name = \"%s\"\n    value_threshold = 1.0\n  }" \
+                       ${i} >> ${disk_pyconf}
+       done
+       printf "\n}\n\n" >> ${disk_pyconf}
+
+       # Get the disk total metrics.
+       cat >> ${disk_pyconf} <<-EOF
+               collection_group {
+                 collect_once = yes
+                 time_threshold = 20
+       EOF
+       for i in ${disk_total_metrics}; do
+               printf \
+                       "\n  metric {\n    name = \"%s\"\n  }" \
+                       ${i} >> ${disk_pyconf}
+       done
+       printf "\n}\n" >> ${disk_pyconf}
+}