summaryrefslogtreecommitdiff
path: root/app-metrics
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2019-10-13 22:19:36 +0100
committerV3n3RiX <venerix@redcorelinux.org>2019-10-14 23:22:23 +0100
commit4b19be30aa626b327c885dae62c559ec0e9fb935 (patch)
tree76e74807bc479502e13866b581b6bf86734ec634 /app-metrics
parent30d6f67c98d149508509d5e86f176d558793acc0 (diff)
gentoo resync : 13.10.2019
Diffstat (limited to 'app-metrics')
-rw-r--r--app-metrics/Manifest.gzbin4925 -> 4932 bytes
-rw-r--r--app-metrics/collectd/Manifest2
-rw-r--r--app-metrics/collectd/collectd-5.9.2.ebuild541
-rw-r--r--app-metrics/prometheus/Manifest2
-rw-r--r--app-metrics/prometheus/prometheus-2.13.0.ebuild68
5 files changed, 613 insertions, 0 deletions
diff --git a/app-metrics/Manifest.gz b/app-metrics/Manifest.gz
index 78bad55d9153..531eddc827e2 100644
--- a/app-metrics/Manifest.gz
+++ b/app-metrics/Manifest.gz
Binary files differ
diff --git a/app-metrics/collectd/Manifest b/app-metrics/collectd/Manifest
index 8bb37058deac..1659f2b93397 100644
--- a/app-metrics/collectd/Manifest
+++ b/app-metrics/collectd/Manifest
@@ -6,6 +6,8 @@ AUX collectd.logrotate 115 BLAKE2B ce2a79787096b04af6ecd128633dde68fb868a02cc1d2
AUX collectd.tmpfile 39 BLAKE2B 0d1ee2f02e539e854b62b47032308d08505fa31d8428e98f8d150c924201074c5edae22eea3990edf3a7837f1473193fe009a501645bf064638c532ec53a36cc SHA512 55fb70da9ece74b143c3e971b890954842230691039f8ad2240cc4c8d699e4e7a21efcbfd0b3cb2503e90af0bbdd0c7d886e09baf9fc86ec26c115a0bce6a668
DIST collectd-5.8.1.tar.bz2 1789228 BLAKE2B 739f961172978db33bdf95c8f93bde0036a26b2ed2abd3396a734d4b97c4ae117bb26a62fcdbb3d77bd63d9f64a38f83d0c8a0665e8fa7bf5ed2efc6838b0e8e SHA512 8c75448c6e59ee1ea5c1cf486c07040d20fb36d5b7a1be2ab45facea330166e8c1d1fa38e3fa82ec905428d7b2c92c66aae35ee8e3546f67ce76f7f410739901
DIST collectd-5.9.1.tar.gz 1501178 BLAKE2B ed0984637161427f3b354002850b7ea8c49a4aca64b637b864e5513c8057f52a4a479477b21e2a4cff436728c16d66c6d561df14308adcaeb7d597c290f543ce SHA512 424ef12a3ba6997a71e6eda1a62d73fec588c9c4d90542c2381c1f9f4e118b2c02e18c71507e8984e20fb255b69b7f42afe83085b3df5e225c576d1eee1655fb
+DIST collectd-5.9.2.tar.gz 1501275 BLAKE2B f878dc9ee0d1948643dcbfcf3a427558a1c17adedcc31f02f4f4bb689e841760dcf732866c0617b8b139b4aecb094f8ca4aa5e7c7c707adf5589fc8767a1d2f9 SHA512 cbbc8d6409242108550b974f388d15c6084753dd51c6056614db34bceb3b72abb0237892ea65086093b9a5c5569087666c0430eb16021d22c3dde8e6d1ae7922
EBUILD collectd-5.8.1-r1.ebuild 19431 BLAKE2B 970be74630e220d80bb5ad2ad59d1f82356c41d8ec3a360427ea0c0ea6f792d3698551cb2980f6020a227b656f6cd4a8d20d750404db9e7fcbceafb3f4c71796 SHA512 4f1e16610288db0be07fa89a1d32792a11d69277a71367a201013fcc92f98659fb5c3b1220e0c4bdac935b14afddbf5e78a282445b83487e9e9a8fe5f4e83284
EBUILD collectd-5.9.1-r2.ebuild 19597 BLAKE2B ae1badd06dbe8a0a756fa338440c06e9c814a45c59e657c68d56db1dc62e53e99354f6e452904e7351206b06813638f9bbd55bc646ba96789cf6be96a78c60da SHA512 ffdd05679e68dd265e1385c6ba11c2040fafa27841e8e5a0495c6a1c9d04078b829557a3c0e92194fb8136c6fb1208556152eb23d50bb714ee0922efeecc6266
+EBUILD collectd-5.9.2.ebuild 19553 BLAKE2B 946259abe31b6051c143bf949d223e9d52f6aa420479415920caf445029df791b58f70522af1edff754366f649e3ba2e86c90e59f9db46dd632c8ff36a6e179b SHA512 3fb0c1f080c905787d179e6d78cc24884c6c9990e6947021341a822dc878dc546b90afb313e4b80d8cb0751e6ecfc96fb9bd63073ab498ba2f78b1f40152ae9b
MISC metadata.xml 1515 BLAKE2B 5525766b822463f94f7c2cddbdf78b4c4ea5a473880a473d0b51481d948569cfc7f51bd2e74eb67065ab2be1b23e4fb7ee99512d018c6e6b5ac1ee7331eae9eb SHA512 51c17c16d27b722d729d036d67c562ab76e212dac9bcd004a7e43c2c5e041b8c46e74f9a130f30c2e18cc95ca1b367034246eff02cfaf55f6f9375ff836749e5
diff --git a/app-metrics/collectd/collectd-5.9.2.ebuild b/app-metrics/collectd/collectd-5.9.2.ebuild
new file mode 100644
index 000000000000..35c1fbd584f3
--- /dev/null
+++ b/app-metrics/collectd/collectd-5.9.2.ebuild
@@ -0,0 +1,541 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="6"
+
+PYTHON_COMPAT=( python{2_7,3_5,3_6,3_7} )
+JAVA_PKG_OPT_USE="collectd_plugins_java"
+
+inherit autotools fcaps flag-o-matic java-pkg-opt-2 linux-info multilib perl-functions python-single-r1 systemd tmpfiles user
+
+DESCRIPTION="Collects system statistics and provides mechanisms to store the values"
+
+HOMEPAGE="https://collectd.org/"
+SRC_URI="https://github.com/${PN}/${PN}/archive/${PN}-${PV}.tar.gz"
+
+LICENSE="MIT GPL-2 GPL-2+ GPL-3 GPL-3+"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~x86"
+IUSE="contrib debug java kernel_Darwin kernel_FreeBSD kernel_linux perl selinux static-libs udev xfs"
+
+# The plugin lists have to follow here since they extend IUSE
+
+# Plugins that don't build (e.g. dependencies not in Gentoo)
+# apple_sensors: Requires libIOKit
+# amqp1: Requires libqpid-proton
+# aquaero: Requires aerotools-ng/libaquaero5
+# barometer: Requires libi2c (i2c_smbus_read_i2c_block_data)
+# dpdkevents: Requires dpdk
+# dpdkstat: Requires dpdk
+# grpc: Requires libgrpc
+# intel_pmu: Requires libjevents (pmu-tools)
+# intel_rdt: Requires libpqos from intel-cmt-cat project
+# lpar: Requires libperfstat (AIX only)
+# mic: Requires Intel Many Integrated Core Architecture API
+# (part of Intel's Xeon Phi software)
+# netapp: Requires libnetapp (http://communities.netapp.com/docs/DOC-1110)
+# pf: Requires BSD packet filter
+# pinba: Requires MySQL Pinba engine (http://pinba.org/)
+# tape: Requires libkstat (Solaris only)
+# write_riemann: Requires riemann-c-client
+# xmms: Requires libxmms (v1)
+# zone: Solaris only...
+COLLECTD_IMPOSSIBLE_PLUGINS="apple_sensors amqp1 aquaero barometer dpdkstat
+ grpc intel_pmu intel_rdt lpar mic netapp pf pinba tape write_riemann
+ xmms zone"
+
+# Plugins that have been (compile) tested and can be enabled via COLLECTD_PLUGINS
+COLLECTD_TESTED_PLUGINS="aggregation amqp apache apcups ascent battery bind
+ ceph cgroups chrony conntrack contextswitch cpu cpufreq cpusleep
+ csv curl curl_json curl_xml dbi df disk dns drbd email
+ entropy ethstat exec fhcount filecount fscache gmond gps hddtemp
+ hugepages interface ipc ipmi iptables ipvs irq java lua
+ load logfile log_logstash lvm madwifi match_empty_counter
+ match_hashed match_regex match_timediff match_value mbmon mcelog md
+ memcachec memcached memory modbus mqtt multimeter mysql netlink
+ network network nfs nginx notify_desktop notify_email notify_nagios
+ ntpd numa nut olsrd onewire openldap openvpn oracle ovs_events
+ ovs_stats perl ping postgresql powerdns processes protocols python
+ python redis routeros rrdcached rrdtool sensors serial sigrok smart
+ snmp snmp_agent statsd swap syslog table tail tail_csv
+ target_notification target_replace target_scale target_set tcpconns
+ teamspeak2 ted thermal threshold tokyotyrant turbostat unixsock
+ uptime users uuid varnish virt vmem vserver wireless write_graphite
+ write_http write_kafka write_log write_mongodb write_prometheus
+ write_redis write_sensu write_tsdb xencpu zfs_arc zookeeper"
+
+COLLECTD_DISABLED_PLUGINS="${COLLECTD_IMPOSSIBLE_PLUGINS}"
+
+COLLECTD_ALL_PLUGINS=${COLLECTD_TESTED_PLUGINS}
+
+for plugin in ${COLLECTD_ALL_PLUGINS}; do
+ IUSE="${IUSE} collectd_plugins_${plugin}"
+done
+unset plugin
+
+# Now come the dependencies.
+
+COMMON_DEPEND="
+ dev-libs/libgcrypt:=
+ dev-libs/libltdl:0=
+ perl? ( dev-lang/perl:=[ithreads] )
+ udev? ( virtual/udev )
+ xfs? ( sys-fs/xfsprogs )
+ collectd_plugins_amqp? ( net-libs/rabbitmq-c )
+ collectd_plugins_apache? ( net-misc/curl:0= )
+ collectd_plugins_ascent? ( net-misc/curl:0= dev-libs/libxml2:2= )
+ collectd_plugins_bind? ( net-misc/curl:0= dev-libs/libxml2:2= )
+ collectd_plugins_ceph? ( dev-libs/yajl:= )
+ collectd_plugins_curl? ( net-misc/curl:0= )
+ collectd_plugins_curl_json? ( net-misc/curl:0= dev-libs/yajl:= )
+ collectd_plugins_curl_xml? ( net-misc/curl:0= dev-libs/libxml2:2= )
+ collectd_plugins_dbi? ( dev-db/libdbi )
+ collectd_plugins_dns? ( net-libs/libpcap )
+ collectd_plugins_gmond? ( sys-cluster/ganglia )
+ collectd_plugins_gps? ( sci-geosciences/gpsd:= )
+ collectd_plugins_ipmi? ( >=sys-libs/openipmi-2.0.16-r1 )
+ collectd_plugins_iptables? ( >=net-firewall/iptables-1.4.13:0= )
+ collectd_plugins_log_logstash? ( dev-libs/yajl:= )
+ collectd_plugins_lua? ( dev-lang/lua:0= )
+ collectd_plugins_lvm? ( sys-fs/lvm2 )
+ collectd_plugins_memcachec? ( dev-libs/libmemcached )
+ collectd_plugins_modbus? ( dev-libs/libmodbus )
+ collectd_plugins_mqtt? ( app-misc/mosquitto )
+ collectd_plugins_mysql? ( dev-db/mysql-connector-c:= )
+ collectd_plugins_netlink? ( net-libs/libmnl )
+ collectd_plugins_nginx? ( net-misc/curl:0= )
+ collectd_plugins_notify_desktop? ( x11-libs/libnotify )
+ collectd_plugins_notify_email? ( net-libs/libesmtp )
+ collectd_plugins_nut? ( >=sys-power/nut-2.7.2-r2 )
+ collectd_plugins_openldap? ( net-nds/openldap )
+ collectd_plugins_onewire? ( >=sys-fs/owfs-3.1:= )
+ collectd_plugins_oracle? ( dev-db/oracle-instantclient-basic )
+ collectd_plugins_ovs_events? ( dev-libs/yajl:= )
+ collectd_plugins_ovs_stats? ( dev-libs/yajl:= )
+ collectd_plugins_perl? ( dev-lang/perl:=[ithreads] )
+ collectd_plugins_ping? ( net-libs/liboping )
+ collectd_plugins_postgresql? ( dev-db/postgresql:= )
+ collectd_plugins_python? ( ${PYTHON_DEPS} )
+ collectd_plugins_redis? ( dev-libs/hiredis:= )
+ collectd_plugins_routeros? ( net-libs/librouteros )
+ collectd_plugins_rrdcached? ( net-analyzer/rrdtool:= )
+ collectd_plugins_rrdtool? ( net-analyzer/rrdtool:= )
+ collectd_plugins_sensors? ( sys-apps/lm-sensors:= )
+ collectd_plugins_sigrok? ( <sci-libs/libsigrok-0.4:= dev-libs/glib:2 )
+ collectd_plugins_smart? ( dev-libs/libatasmart )
+ collectd_plugins_snmp? ( net-analyzer/net-snmp )
+ collectd_plugins_snmp_agent? ( net-analyzer/net-snmp )
+ collectd_plugins_tokyotyrant? ( net-misc/tokyotyrant )
+ collectd_plugins_varnish? ( www-servers/varnish:= )
+ collectd_plugins_virt? ( app-emulation/libvirt:= dev-libs/libxml2:2= )
+ collectd_plugins_write_http? ( net-misc/curl:0= dev-libs/yajl:= )
+ collectd_plugins_write_kafka? ( >=dev-libs/librdkafka-0.9.0.99:= dev-libs/yajl:= )
+ collectd_plugins_write_mongodb? ( >=dev-libs/mongo-c-driver-1.8.2:= )
+ collectd_plugins_write_prometheus? ( >=dev-libs/protobuf-c-1.2.1-r1:= net-libs/libmicrohttpd:= )
+ collectd_plugins_write_redis? ( dev-libs/hiredis:= )
+ collectd_plugins_xencpu? ( app-emulation/xen-tools:= )
+
+ kernel_FreeBSD? (
+ collectd_plugins_disk? ( sys-libs/libstatgrab:= )
+ collectd_plugins_interface? ( sys-libs/libstatgrab:= )
+ collectd_plugins_load? ( sys-libs/libstatgrab:= )
+ collectd_plugins_memory? ( sys-libs/libstatgrab:= )
+ collectd_plugins_swap? ( sys-libs/libstatgrab:= )
+ collectd_plugins_users? ( sys-libs/libstatgrab:= )
+ )"
+
+# Enforcing !=sys-kernel/linux-headers-4.5 > due to #577846
+DEPEND="${COMMON_DEPEND}
+ collectd_plugins_iptables? ( || ( <=sys-kernel/linux-headers-4.4 >=sys-kernel/linux-headers-4.6 ) )
+ collectd_plugins_java? ( >=virtual/jdk-1.6 )
+ virtual/pkgconfig"
+
+RDEPEND="${COMMON_DEPEND}
+ collectd_plugins_java? ( >=virtual/jre-1.6 )
+ collectd_plugins_syslog? ( virtual/logger )
+ selinux? ( sec-policy/selinux-collectd )
+ !<sys-apps/openrc-0.18.2"
+
+REQUIRED_USE="
+ collectd_plugins_python? ( ${PYTHON_REQUIRED_USE} )
+ collectd_plugins_smart? ( udev )"
+
+S="${WORKDIR}/${PN}-${PN}-${PV}"
+
+# @FUNCTION: collectd_plugin_kernel_linux
+# @DESCRIPTION:
+# USAGE: <plugin name> <kernel_options> <severity>
+# kernel_options is a list of kernel configurations options; the check tests whether at least
+# one of them is enabled. If no, depending on the third argument an elog, ewarn, or eerror message
+# is emitted.
+collectd_plugin_kernel_linux() {
+ local multi_opt opt
+ if has ${1} ${COLLECTD_ALL_PLUGINS}; then
+ if use collectd_plugins_${1}; then
+ for opt in ${2}; do
+ if linux_chkconfig_present ${opt}; then
+ return 0;
+ fi
+ done
+ multi_opt=${2//\ /\ or\ }
+ case ${3} in
+ (info)
+ elog "The ${1} plugin can use kernel features that are disabled now; enable ${multi_opt} in your kernel"
+ ;;
+ (warn)
+ ewarn "The ${1} plugin uses kernel features that are disabled now; enable ${multi_opt} in your kernel"
+ ;;
+ (error)
+ eerror "The ${1} plugin needs kernel features that are disabled now; enable ${multi_opt} in your kernel"
+ ;;
+ (*)
+ die "function collectd_plugin_kernel_linux called with invalid third argument"
+ ;;
+ esac
+ fi
+ fi
+}
+
+collectd_linux_kernel_checks() {
+ if ! linux_chkconfig_present PROC_FS; then
+ ewarn "/proc file system support is disabled, many plugins will not be able to read any statistics from your system unless you enable PROC_FS in your kernel"
+ fi
+
+ if ! linux_chkconfig_present SYSFS; then
+ ewarn "/sys file system support is disabled, many plugins will not be able to read any statistics from your system unless you enable SYSFS in your kernel"
+ fi
+
+ # battery.c: /proc/pmu/battery_%i
+ # battery.c: /proc/acpi/battery
+ collectd_plugin_kernel_linux battery ACPI_BATTERY warn
+
+ # cgroups.c: /sys/fs/cgroup/
+ collectd_plugin_kernel_linux cgroups CGROUPS warn
+
+ # cpufreq.c: /sys/devices/system/cpu/cpu%d/cpufreq/
+ collectd_plugin_kernel_linux cpufreq SYSFS warn
+ collectd_plugin_kernel_linux cpufreq CPU_FREQ_STAT warn
+
+ # drbd.c: /proc/drbd
+ collectd_plugin_kernel_linux drbd BLK_DEV_DRBD warn
+
+ # conntrack.c: /proc/sys/net/netfilter/*
+ collectd_plugin_kernel_linux conntrack NETFILTER warn
+
+ # fscache.c: /proc/fs/fscache/stats
+ collectd_plugin_kernel_linux fscache FSCACHE warn
+
+ # nfs.c: /proc/net/rpc/nfs
+ # nfs.c: /proc/net/rpc/nfsd
+ collectd_plugin_kernel_linux nfs NFS_COMMON warn
+
+ # serial.c: /proc/tty/driver/serial
+ # serial.c: /proc/tty/driver/ttyS
+ collectd_plugin_kernel_linux serial SERIAL_CORE warn
+
+ # swap.c: /proc/meminfo
+ collectd_plugin_kernel_linux swap SWAP warn
+
+ # thermal.c: /proc/acpi/thermal_zone
+ # thermal.c: /sys/class/thermal
+ collectd_plugin_kernel_linux thermal ACPI_THERMAL warn
+
+ # turbostat.c: /dev/cpu/%d/msr
+ collectd_plugin_kernel_linux turbostat X86_MSR warn
+
+ # vmem.c: /proc/vmstat
+ collectd_plugin_kernel_linux vmem VM_EVENT_COUNTERS warn
+
+ # vserver.c: /proc/virtual
+ collectd_plugin_kernel_linux vserver VSERVER warn
+
+ # uuid.c: /sys/hypervisor/uuid
+ collectd_plugin_kernel_linux uuid SYSFS info
+
+ # wireless.c: /proc/net/wireless
+ collectd_plugin_kernel_linux wireless "WIRELESS MAC80211 IEEE80211" warn
+
+ # zfs_arc.c: /proc/spl/kstat/zfs/arcstats
+ collectd_plugin_kernel_linux zfs_arc "SPL ZFS" warn
+}
+
+pkg_setup() {
+ if use kernel_linux; then
+ linux-info_pkg_setup
+
+ if linux_config_exists; then
+ einfo "Checking your linux kernel configuration:"
+ collectd_linux_kernel_checks
+ else
+ elog "Cannot find a linux kernel configuration. Continuing anyway."
+ fi
+ fi
+
+ if use collectd_plugins_java; then
+ java-pkg-opt-2_pkg_setup
+ fi
+
+ use collectd_plugins_python && python-single-r1_pkg_setup
+
+ enewgroup collectd
+ enewuser collectd -1 -1 /var/lib/collectd collectd
+}
+
+src_prepare() {
+ default
+
+ # There's some strange prefix handling in the default config file, resulting in
+ # paths like "/usr/var/..."
+ sed -i -e "s:@prefix@/var:/var:g" src/collectd.conf.in || die
+
+ # Adjust upstream's systemd unit
+ # - Get rid of EnvironmentFile directive; These files don't exist on Gentoo!
+ # - Add User=collectd to run collectd as user "collectd" per default
+ sed -i \
+ -e '/^EnvironmentFile=.*/d' \
+ -e '/^\[Service\]/aUser=collectd' \
+ contrib/systemd.${PN}.service || die
+
+ eautoreconf
+}
+
+src_configure() {
+ # Now come the lists of os-dependent plugins. Any plugin that is not listed anywhere here
+ # should work independent of the operating system.
+
+ local linux_plugins="barometer battery cpu cpufreq disk
+ drbd entropy ethstat hugepages interface iptables
+ ipvs irq ipc load memory md netlink nfs numa processes
+ serial swap tcpconns thermal turbostat users vmem wireless
+ zfc_arc"
+
+ local need_libstatgrab=0
+ local libstatgrab_plugins="cpu disk interface load memory swap users"
+ local bsd_plugins="cpu tcpconns ${libstatgrab_plugins} zfc_arc"
+
+ local darwin_plugins="apple_sensors battery cpu disk interface memory processes tcpconns"
+
+ local osdependent_plugins="${linux_plugins} ${bsd_plugins} ${darwin_plugins}"
+ local myos_plugins=""
+ if use kernel_linux; then
+ einfo "Enabling Linux plugins."
+ myos_plugins=${linux_plugins}
+ elif use kernel_FreeBSD; then
+ einfo "Enabling FreeBSD plugins."
+ myos_plugins=${bsd_plugins}
+ elif use kernel_Darwin; then
+ einfo "Enabling Darwin plugins."
+ myos_plugins=${darwin_plugins}
+ fi
+
+ local myconf="--disable-werror"
+
+ # Do we debug?
+ myconf+=" $(use_enable debug)"
+
+ # udev support?
+ # Required for smart plugin via REQUIRED_USE; Optional for disk plugin
+ if use udev; then
+ myconf+=" --with-libudev"
+ else
+ myconf+=" --without-libudev"
+ fi
+
+ local plugin
+
+ # Disable what needs to be disabled.
+ for plugin in ${COLLECTD_DISABLED_PLUGINS}; do
+ if [[ "${plugin}" == 'dpdkstat' ]]; then
+ myconf+=" --without-libdpdk"
+ else
+ myconf+=" --disable-${plugin}"
+ fi
+ done
+
+ # Set enable/disable for each single plugin.
+ for plugin in ${COLLECTD_ALL_PLUGINS}; do
+ if has ${plugin} ${osdependent_plugins}; then
+ # plugin is os-dependent ...
+ if has ${plugin} ${myos_plugins}; then
+ # ... and available in this os
+ myconf+=" $(use_enable collectd_plugins_${plugin} ${plugin})"
+ # ... must we link against libstatgrab? Bug #541518
+ if use kernel_FreeBSD && has ${plugin} ${libstatgrab_plugins}; then
+ einfo "We must link against libstatgrab due to plugin \"${plugin}\" ..."
+ need_libstatgrab=1
+ fi
+ else
+ # ... and NOT available in this os
+ if use collectd_plugins_${plugin}; then
+ ewarn "You try to enable the ${plugin} plugin, but it is not available for this"
+ ewarn "kernel. Disabling it automatically."
+ fi
+ myconf+=" --disable-${plugin}"
+ fi
+ elif [[ "${plugin}" = "collectd_plugins_perl" ]]; then
+ if use collectd_plugins_perl && ! use perl; then
+ ewarn "Perl plugin disabled as perl bindings disabled by -perl use flag"
+ myconf+= --disable-perl
+ else
+ myconf+=" $(use_enable collectd_plugins_${plugin} ${plugin})"
+ fi
+ else
+ myconf+=" $(use_enable collectd_plugins_${plugin} ${plugin})"
+ fi
+ done
+
+ if [ "${need_libstatgrab}" -eq 1 ]; then
+ myconf+=" --with-libstatgrab"
+ else
+ myconf+=" --without-libstatgrab"
+ fi
+
+ # JAVA_HOME is set by eclasses.
+ if use collectd_plugins_java; then
+ myconf+=" --with-java"
+ fi
+
+ # Need libiptc ONLY for iptables. If we try to use it otherwise bug 340109 happens.
+ # lots of libs are only needed for plugins, if they are disabled, also disable the lib
+ use collectd_plugins_iptables || myconf+=" --with-libiptc=no"
+ use collectd_plugins_openldap || myconf+=" --with-libldap=no"
+ use collectd_plugins_redis || use collectd_plugins_write_redis || myconf+=" --with-libhiredis=no"
+ use collectd_plugins_smart || myconf+=" --with-libatasmart=no"
+ use collectd_plugins_gps || myconf+=" --with-libgps=no"
+
+ if use perl; then
+ myconf+=" --with-perl-bindings=INSTALLDIRS=vendor"
+ else
+ myconf+=" --without-perl-bindings"
+ fi
+
+ # No need for v5upgrade
+ myconf+=" --disable-target_v5upgrade"
+
+ # Python
+ if use collectd_plugins_python; then
+ myconf+=" --with-libpython=yes"
+ export PYTHON_CONFIG=$(python_get_PYTHON_CONFIG)
+ else
+ myconf+=" --with-libpython=no"
+ fi
+
+ # XFS support
+ myconf+=" $(use_enable xfs)"
+
+ # Finally, run econf.
+ KERNEL_DIR="${KERNEL_DIR}" econf --config-cache \
+ $(use_enable static-libs static) \
+ --localstatedir=/var ${myconf}
+}
+
+src_install() {
+ emake DESTDIR="${D%/}" install
+
+ perl_delete_localpod
+
+ find "${ED}"usr/ -name "*.la" -delete || die
+
+ if use collectd_plugins_java; then
+ java-pkg_regjar "${ED}"usr/share/${PN}/java/*.jar
+ fi
+
+ fowners root:collectd /etc/collectd.conf
+ fperms u=rw,g=r,o= /etc/collectd.conf
+
+ dodoc AUTHORS ChangeLog README
+
+ if use contrib ; then
+ insinto /usr/share/doc/${PF}
+ doins -r contrib
+ fi
+
+ keepdir /var/lib/${PN}
+ fowners collectd:collectd /var/lib/${PN}
+
+ newinitd "${FILESDIR}/${PN}.initd-r2" ${PN}
+ newconfd "${FILESDIR}/${PN}.confd-r2" ${PN}
+ systemd_newunit "contrib/systemd.${PN}.service" ${PN}.service
+
+ insinto /etc/logrotate.d
+ newins "${FILESDIR}/${PN}.logrotate" ${PN}
+
+ newtmpfiles "${FILESDIR}"/${PN}.tmpfile ${PN}.conf
+
+ sed -i -e 's:^.*PIDFile "/var/run/collectd.pid":#PIDFile "/run/collectd.pid":' "${ED}"etc/collectd.conf || die
+ sed -i -e 's:^# SocketFile "/var/run/collectd-unixsock":# SocketFile "/run/collectd/collectd.socket":' "${ED}"etc/collectd.conf || die
+ sed -i -e 's:^.*LoadPlugin perl$:# The new, correct way to load the perl plugin -- \n# <LoadPlugin perl>\n# Globals true\n# </LoadPlugin>:' "${ED}"etc/collectd.conf || die
+ sed -i -e 's:^.*LoadPlugin python$:# The new, correct way to load the python plugin -- \n# <LoadPlugin python>\n# Globals true\n# </LoadPlugin>:' "${ED}"etc/collectd.conf || die
+}
+
+pkg_postinst() {
+ tmpfiles_process "${PN}.conf"
+
+ if use filecaps; then
+ local caps=()
+ use collectd_plugins_ceph && caps+=('CAP_DAC_OVERRIDE')
+ use collectd_plugins_exec && caps+=('CAP_SETUID' 'CAP_SETGID')
+ use collectd_plugins_iptables && caps+=('CAP_NET_ADMIN')
+ use collectd_plugins_filecount && caps+=('CAP_DAC_READ_SEARCH')
+
+ if use collectd_plugins_dns || use collectd_plugins_ping; then
+ caps+=('CAP_NET_RAW')
+ fi
+
+ if use collectd_plugins_turbostat || use collectd_plugins_smart; then
+ caps+=('CAP_SYS_RAWIO')
+ fi
+
+ if [ ${#caps[@]} -gt 0 ]; then
+ local caps_str=$(IFS=","; echo "${caps[*]}")
+ fcaps ${caps_str} usr/sbin/collectd
+ elog "Capabilities for ${EROOT}usr/sbin/collectd set to:"
+ elog " ${caps_str}+EP"
+ elog
+
+ local systemd_unit="$(systemd_get_systemunitdir)/collectd.service"
+ if [[ -e "${systemd_unit}" ]]; then
+ caps_str="${caps[*]}"
+ sed -i -e "s:^CapabilityBoundingSet=.*:CapabilityBoundingSet=${caps_str}:" "${systemd_unit}" || \
+ die "Failed to set CapabilityBoundingSet in '${systemd_unit}'"
+
+ elog "CapabilityBoundingSet in '${systemd_unit}'"
+ elog "updated to match capabilities set above."
+ elog
+ else
+ if has_version "sys-apps/systemd"; then
+ # Bug 596852
+ ewarn "Failed to update CapabilityBoundingSet in '${systemd_unit}'"
+ ewarn "because unit was not found. Please file a bug about this."
+ fi
+ fi
+ fi
+ fi
+
+ elog "Note: Collectd is only the collector."
+ elog " You need to install 'data' sources (applications) locally or"
+ elog " remotely on your own."
+
+ elog
+ elog "Collectd is configured to run as unprivileged user by default."
+ elog "You may want to revisit the configuration."
+ elog
+
+ if use collectd_plugins_email; then
+ ewarn "The email plug-in is deprecated. To submit statistics please use the unixsock plugin."
+ fi
+
+ if use collectd_plugins_smart; then
+ elog ""
+ elog "If you are using smart plugin and don't run collectd as root make sure"
+ elog "that the collectd user is allowed to access the disk you want to monitor"
+ elog "(can be done via udev rule for example) and that collectd has the required"
+ elog "capabilities set (which is the default when package was emerged with"
+ elog "'filecaps' USE flag set)."
+ fi
+
+ if use contrib; then
+ elog "The scripts in /usr/share/doc/${PF}/collection3 for generating graphs need dev-perl/HTML-Parser,"
+ elog "dev-perl/config-general, dev-perl/regexp-common, and net-analyzer/rrdtool[perl] to be installed."
+ fi
+}
diff --git a/app-metrics/prometheus/Manifest b/app-metrics/prometheus/Manifest
index 16e50106289b..4ca5ce1233a3 100644
--- a/app-metrics/prometheus/Manifest
+++ b/app-metrics/prometheus/Manifest
@@ -3,8 +3,10 @@ AUX prometheus.confd 43 BLAKE2B c83afa8ad1133c9e93abd40c862ff5b3ac9a3b3c4447b915
AUX prometheus.initd 929 BLAKE2B d48650b11b77d4d04b5458682456fb20f8085dc3efe9d0ddd2a6c75751ddae156bbb83c20082bc7b6833395602c24da61e2f7610bdff291e05e3eeb4fb651317 SHA512 504122eb8ed19beac81987b77eb78bba9b36b2ef15f28b1a542804271046e06363baf464f3c303982f647eba65fbc2b5459235f56625e1ff3fed9834937cd0d2
DIST prometheus-2.11.2.tar.gz 12132678 BLAKE2B 0b6b9a93b7329c124f901d0acc6130132aa187142f0416e087c12f20b0cd35f8564a27d0df8c0bc811284b9811f446344adf700d6611afac3c5c1131c208b341 SHA512 cecdaf4522885bdf62492667d92475a97c54b04c1e93f48b6078def319fe33f5e28aafbab61e3609413615d6f853e817564fc372e5d1df0d867fe9fa333f6de9
DIST prometheus-2.12.0.tar.gz 15221347 BLAKE2B 6061562e6bafe8e2373ad676e7acd2b5d5ff8e195cf4c1abd709347992c16970b64b225e9f58f33a801ff521abc78422281d97d8c5307a80a64fb8c8a8d8d5fe SHA512 3d3b5ce3afd13714a8fa96964784fa40feb650459f657cbc695c6a7e866f89c488132b408d78ea101804532768c51c3913607bf001f27d3f05c3df9efe3cab82
+DIST prometheus-2.13.0.tar.gz 15193225 BLAKE2B 4b7b5cffb916bea382e741969de5e2a97cca89055e5096d1042fc03d2c63efb95719e394c1abeeed2351afed797065d20773693987384811654bdc32b57e2c96 SHA512 1c9ae1cbbe4e96d00c804a6a891c0b93a36c633499433a7b5f88a80cba98874bb01d2a10bd9e3b42a2a4d07580e4d16e34f50d5e07636cf6d7d7c52c967dafc3
DIST prometheus-2.9.2.tar.gz 11477683 BLAKE2B f0c18c57ff0fe292710174a91080a84ecf0375b4335aacaf4a8e32c842a9346b9fd48888ef8a19a597511c57eb8af7f90cca57d0cc51b9de4558c3f22953d165 SHA512 4cce1827580e49b1659ad492de946a81694c1dab90e079f3f0e56c1991254cf4ecac7f052aac75bf58a0b95d3cf4daa8c15b3e8305a3c089570da40c44a8ccc0
EBUILD prometheus-2.11.2.ebuild 2006 BLAKE2B 9eb972c513982c3e8321b87490180b95048e4cb46aa64f879735f3e3c729d742cb3d2ced1873a6a4c24b8cab7a94ca95b5d41190a6a20a26ee778f63b194d770 SHA512 89b982df1c665375c9eaa9b43373ae725fec9d72b70087615f72f4c017557d6637353cdd57870b6eac1c5fcf3a1a1ed98c8b80d9c00197c8bfce31f6c14877ec
EBUILD prometheus-2.12.0.ebuild 2006 BLAKE2B 7c5210d97d11e7552736f856d9ac635128cac842e2d62193acef410c44eb5defc54999f51231f3b4c9ab06ecaaa82a99bfaa447655c46606a57eb46f6d4a2b38 SHA512 86bb69a89c4449e173afb456c48d54647e1628957cc538cb95cb9eabc0f817f4afdd37c50b697f03938f2b9e93e93345d45813902119d122b85f9f98174a131f
+EBUILD prometheus-2.13.0.ebuild 2006 BLAKE2B fcace220157bde3365775b5f938a06c8b80ae4f344129c1015027b8a7f123847acfc0b0ee1468303db5873f7a1090deb1d20d840e6d60e1462693a702c455dcc SHA512 29fc25c35cb3a71ddf47ad3efb5aaa65f8196fb8a89c9a4be9371186a72daceeb07858899e1af05c996af56f33d5c9ddf927db8695675bdbc91ea73c9bbbbeac
EBUILD prometheus-2.9.2.ebuild 2005 BLAKE2B be44fa8627cb4ba1be2f6696bf8a7086bdf720508bf1fd47d451f7fcc0d54b7f97e6ba1c46260a71dca1a18fbca3013ae861cdf6437c6d9a25140e731d10e5d7 SHA512 937cac2265388d791b486b5131692f3d8fa30bf0fe20d76fe35f0ea44087a9fb036a5557a3deb70d8627ba4783525ce8510f9531190a097ffea6f91834161f7d
MISC metadata.xml 331 BLAKE2B 80bf59233349fc1fdc6c102fb65ba146bcde2c5c2a6039ec9b9f50f21a36fb1e8c864cba422e721d01216c792ffcf0429a3a840540305442b5e516ac09c03850 SHA512 06fd0da413c0280a902bbdf50e1e0557375d2208021fda3c3081d8a25a4b17ad1ca647d994dd97ba2d838ea5c87148d3ffd13a8a54cb8dc007b45927df8de47a
diff --git a/app-metrics/prometheus/prometheus-2.13.0.ebuild b/app-metrics/prometheus/prometheus-2.13.0.ebuild
new file mode 100644
index 000000000000..f2b203a01227
--- /dev/null
+++ b/app-metrics/prometheus/prometheus-2.13.0.ebuild
@@ -0,0 +1,68 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+inherit user golang-build golang-vcs-snapshot
+
+EGO_PN="github.com/prometheus/prometheus"
+MY_PV=v${PV/_rc/-rc.}
+PROMETHEUS_COMMIT="6ea4252"
+KEYWORDS="~amd64"
+
+DESCRIPTION="Prometheus monitoring system and time series database"
+HOMEPAGE="https://github.com/prometheus/prometheus"
+SRC_URI="https://${EGO_PN}/archive/${MY_PV}.tar.gz -> ${P}.tar.gz"
+LICENSE="Apache-2.0"
+SLOT="0"
+IUSE=""
+
+DEPEND="
+ >=dev-lang/go-1.12
+ >=dev-util/promu-0.3.0"
+
+PROMETHEUS_HOME="/var/lib/prometheus"
+
+RESTRICT="test"
+
+pkg_setup() {
+ enewgroup prometheus
+ enewuser prometheus -1 -1 "${PROMETHEUS_HOME}" prometheus
+}
+
+src_prepare() {
+ default
+ sed -i -e "s/{{.Revision}}/${PROMETHEUS_COMMIT}/" src/${EGO_PN}/.promu.yml || die
+}
+
+src_compile() {
+ pushd src/${EGO_PN} || die
+ GO111MODULE=on GOPATH="${S}" GOCACHE="${T}/go-cache" promu build -v || die
+ popd || die
+}
+
+src_install() {
+ pushd src/${EGO_PN} || die
+ dobin promtool prometheus
+ dodoc -r {documentation,{README,CHANGELOG,CONTRIBUTING}.md}
+ insinto /etc/prometheus
+ doins documentation/examples/prometheus.yml
+ insinto /usr/share/prometheus
+ doins -r console_libraries consoles
+ dosym ../../usr/share/prometheus/console_libraries /etc/prometheus/console_libraries
+ dosym ../../usr/share/prometheus/consoles /etc/prometheus/consoles
+ popd || die
+
+ newinitd "${FILESDIR}"/prometheus.initd prometheus
+ newconfd "${FILESDIR}"/prometheus.confd prometheus
+ keepdir /var/log/prometheus /var/lib/prometheus
+ fowners prometheus:prometheus /var/log/prometheus /var/lib/prometheus
+}
+
+pkg_postinst() {
+ if has_version '<net-analyzer/prometheus-2.0.0_rc0'; then
+ ewarn "Old prometheus 1.x TSDB won't be converted to the new prometheus 2.0 format"
+ ewarn "Be aware that the old data currently cannot be accessed with prometheus 2.0"
+ ewarn "This release requires a clean storage directory and is not compatible with"
+ ewarn "files created by previous beta releases"
+ fi
+}