# 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 }