diff options
author | Justin Bronder <jsbronder@gentoo.org> | 2010-01-09 18:37:03 +0000 |
---|---|---|
committer | Justin Bronder <jsbronder@gentoo.org> | 2010-01-09 18:37:03 +0000 |
commit | f0909f0f16bbb761eaa804ae3b61d834aa4abae7 (patch) | |
tree | e3463c5b7e8babe31798d0f4290747717f45a6c6 /sys-cluster/ganglia | |
parent | Transfer Prefix keywords (diff) | |
download | historical-f0909f0f16bbb761eaa804ae3b61d834aa4abae7.tar.gz historical-f0909f0f16bbb761eaa804ae3b61d834aa4abae7.tar.bz2 historical-f0909f0f16bbb761eaa804ae3b61d834aa4abae7.zip |
EAPI bump. Depend on a font when installing the web interface as rrdtool no longer includes one. Use-deps on dev-lang/php.
Package-Manager: portage-2.2_rc61/cvs/Linux x86_64
Diffstat (limited to 'sys-cluster/ganglia')
-rw-r--r-- | sys-cluster/ganglia/ChangeLog | 11 | ||||
-rw-r--r-- | sys-cluster/ganglia/Manifest | 9 | ||||
-rw-r--r-- | sys-cluster/ganglia/ganglia-3.1.2-r1.ebuild | 196 |
3 files changed, 210 insertions, 6 deletions
diff --git a/sys-cluster/ganglia/ChangeLog b/sys-cluster/ganglia/ChangeLog index 5c197e4756e4..bb0c481962f0 100644 --- a/sys-cluster/ganglia/ChangeLog +++ b/sys-cluster/ganglia/ChangeLog @@ -1,6 +1,13 @@ # ChangeLog for sys-cluster/ganglia -# Copyright 1999-2009 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/sys-cluster/ganglia/ChangeLog,v 1.33 2009/07/13 18:53:12 jsbronder Exp $ +# 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 $ + +*ganglia-3.1.2-r1 (09 Jan 2010) + + 09 Jan 2010; Justin Bronder <jsbronder@gentoo.org> + +ganglia-3.1.2-r1.ebuild: + EAPI bump. Depend on a font when installing the web interface as rrdtool + no longer includes one. Use-deps on dev-lang/php. 13 Jul 2009; Justin Bronder <jsbronder@gentoo.org> files/gmetad.rc, files/gmond.rc: diff --git a/sys-cluster/ganglia/Manifest b/sys-cluster/ganglia/Manifest index 50b4612a3c57..c48a510988b6 100644 --- a/sys-cluster/ganglia/Manifest +++ b/sys-cluster/ganglia/Manifest @@ -7,13 +7,14 @@ 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 +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 7170 RMD160 2ba0a8209dfd5c613093d778b704868a73b06936 SHA1 5df5e0844e429c9eedeec0f31b8a1097e64364c9 SHA256 8f890d8006360c6cbad8c3ceca2f31e10efa1c02b634af0b6f25ac0576e552c8 +MISC ChangeLog 7412 RMD160 cc08c9d457b5ffe0e7dcd99563b721dfd8498131 SHA1 5eee671c39e2999dd24d8535da6ab80fcd78fbe2 SHA256 a1dac69c1e8f41d8bff74d7d21e05a58253ed139db3e895c60445d728c12e255 MISC metadata.xml 231 RMD160 37dd476ccaceaa37796cf29fd01af8fcfa2b4c61 SHA1 87cab1ccad4db7724c4292e4f32dd19accdcf2fa SHA256 b5305a12d2e3e9f9fdf645e98b0108c1bd8f5b5da32589a25bf7b0f0d74f1213 -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.11 (GNU/Linux) -iEYEARECAAYFAkpbgqMACgkQ4MrvBE1wQ8mrOACeNWjiiP8k9I3kLCLfoMlTpGrl -YMcAniuJKYKKge17bLCYKpeUGBq+OVDc -=FsXC +iEYEARECAAYFAktIzNgACgkQ4MrvBE1wQ8mP5ACeInBkdmDBd59E4fDGVGzxP4tz +QMEAnR5EYM6k+6MJ5nnoS/j7klnoXpQL +=q/yA -----END PGP SIGNATURE----- diff --git a/sys-cluster/ganglia/ganglia-3.1.2-r1.ebuild b/sys-cluster/ganglia/ganglia-3.1.2-r1.ebuild new file mode 100644 index 000000000000..7d2b15a31c50 --- /dev/null +++ b/sys-cluster/ganglia/ganglia-3.1.2-r1.ebuild @@ -0,0 +1,196 @@ +# 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.2-r1.ebuild,v 1.1 2010/01/09 18:37:03 jsbronder Exp $ + +EAPI="2" +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() { + # TODO: Submitted upstream, may not be necessary in the future. + epatch "${FILESDIR}"/${PN}-3.1.1-ctype-c99.patch + # 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 \ + $(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/{gmetric.1,gmond.1,gstat.1} + doman gmond/gmond.conf.5 + dodoc AUTHORS ChangeLog INSTALL NEWS README + dodir /etc/ganglia/conf.d + gmond/gmond -t > "${D}"/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_preinst() { + if has_version '<sys-cluster/ganglia-3.1.0'; then + elog "Previous ganglia installation detected." + elog "Copying gmetad configuration to /etc/ganglia" + elog "You may have to remove /etc/gmond.conf yourself." + mkdir -p "${D}"/etc/ganglia + [ -f "${ROOT}"etc/gmetad.conf ] \ + && cp "${ROOT}"etc/gmetad.conf "${D}"/etc/ganglia + 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} +} |