summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'app-metrics/prometheus-podman-exporter/prometheus-podman-exporter-9999.ebuild')
-rw-r--r--app-metrics/prometheus-podman-exporter/prometheus-podman-exporter-9999.ebuild86
1 files changed, 86 insertions, 0 deletions
diff --git a/app-metrics/prometheus-podman-exporter/prometheus-podman-exporter-9999.ebuild b/app-metrics/prometheus-podman-exporter/prometheus-podman-exporter-9999.ebuild
new file mode 100644
index 000000000000..4452311819fe
--- /dev/null
+++ b/app-metrics/prometheus-podman-exporter/prometheus-podman-exporter-9999.ebuild
@@ -0,0 +1,86 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit go-module systemd
+
+DESCRIPTION="Exporter for podman giving containers, pods, images, volumes & networks metrics"
+HOMEPAGE="https://github.com/containers/prometheus-podman-exporter"
+
+if [[ ${PV} == 9999* ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/containers/prometheus-podman-exporter.git"
+else
+ SRC_URI="https://github.com/containers/prometheus-podman-exporter/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="~amd64"
+fi
+
+# Main package
+LICENSE="Apache-2.0"
+# Dependencies
+LICENSE+=" BSD-2 BSD ISC MIT MPL-2.0"
+
+SLOT="0"
+IUSE="btrfs systemd"
+
+# there are no test files so prevent tests
+RESTRICT="test"
+
+PATCHES=(
+ "${T}/gentoo-specific-systemd-service.patch"
+)
+
+src_prepare() {
+ cat <<-'EOF' > "${T}/gentoo-specific-systemd-service.patch"
+ --- a/contrib/systemd/system/prometheus-podman-exporter.service
+ +++ b/contrib/systemd/system/prometheus-podman-exporter.service
+ @@ -2,7 +2,7 @@
+ Description=Prometheus exporter for podman (v4) machine
+ [Service]
+ Restart=on-failure
+ -EnvironmentFile=-/etc/sysconfig/prometheus-podman-exporter
+ +EnvironmentFile=-/etc/default/prometheus-podman-exporter
+ ExecStart=/usr/bin/prometheus-podman-exporter $PODMAN_EXPORTER_OPTS
+ ExecReload=/bin/kill -HUP $MAINPID
+ TimeoutStopSec=20s
+ --- a/contrib/systemd/user/prometheus-podman-exporter.service
+ +++ b/contrib/systemd/user/prometheus-podman-exporter.service
+ @@ -2,7 +2,7 @@
+ Description=Prometheus exporter for podman (v4) machine
+ [Service]
+ Restart=on-failure
+ -EnvironmentFile=-/etc/sysconfig/prometheus-podman-exporter
+ +EnvironmentFile=-/etc/default/prometheus-podman-exporter
+ EnvironmentFile=-%h/.config/prometheus-podman-exporter
+ ExecStart=/usr/bin/prometheus-podman-exporter $PODMAN_EXPORTER_OPTS
+ ExecReload=/bin/kill -HUP $MAINPID
+ EOF
+ default
+}
+
+src_compile() {
+ export BUILDTAGS="exclude_graphdriver_devicemapper"
+ use !btrfs && BUILDTAGS+=",exclude_graphdriver_btrfs,btrfs_noversion"
+ use systemd && BUILDTAGS+=",systemd"
+ default
+}
+
+src_install() {
+ emake DESTDIR="${ED}/usr/bin" install
+ dosym -r /usr/bin/"${PN}" /usr/bin/podman_exporter
+
+ insinto /etc/default
+ newins "contrib/systemd/system/prometheus-podman-exporter.sysconfig" "${PN}"
+ systemd_dounit "contrib/systemd/system/prometheus-podman-exporter.service"
+ systemd_douserunit "contrib/systemd/user/prometheus-podman-exporter.service"
+ dosym prometheus-podman-exporter.service $(systemd_get_systemunitdir)/podman_exporter.service
+ dosym prometheus-podman-exporter.service $(systemd_get_userunitdir)/podman_exporter.service
+
+ newconfd "contrib/openrc/prometheus-podman-exporter.confd" "${PN}"
+ newinitd "contrib/openrc/prometheus-podman-exporter.initd" "${PN}"
+ dosym "${PN}" /etc/conf.d/podman_exporter
+ dosym "${PN}" /etc/init.d/podman_exporter
+
+ einstalldocs
+}