app-metrics/snmp_exporter: Fix installing of snmp_exporter binary
authorManuel Rüger <mrueg@gentoo.org>
Thu, 17 Jan 2019 00:11:18 +0000 (01:11 +0100)
committerManuel Rüger <mrueg@gentoo.org>
Thu, 17 Jan 2019 00:11:18 +0000 (01:11 +0100)
Package-Manager: Portage-2.3.56, Repoman-2.3.12
Signed-off-by: Manuel Rüger <mrueg@gentoo.org>
app-metrics/snmp_exporter/snmp_exporter-0.14.0-r2.ebuild [new file with mode: 0644]

diff --git a/app-metrics/snmp_exporter/snmp_exporter-0.14.0-r2.ebuild b/app-metrics/snmp_exporter/snmp_exporter-0.14.0-r2.ebuild
new file mode 100644 (file)
index 0000000..b6d3bb7
--- /dev/null
@@ -0,0 +1,55 @@
+# 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/snmp_exporter"
+EGIT_COMMIT="v${PV/_rc/-rc.}"
+SNMP_EXPORTER_COMMIT="da73490"
+ARCHIVE_URI="https://${EGO_PN}/archive/${EGIT_COMMIT}.tar.gz -> ${P}.tar.gz"
+KEYWORDS="~amd64"
+
+DESCRIPTION="Prometheus exporter for snmp metrics"
+HOMEPAGE="https://github.com/prometheus/snmp_exporter"
+SRC_URI="${ARCHIVE_URI}"
+LICENSE="Apache-2.0"
+SLOT="0"
+IUSE=""
+
+DEPEND=">=dev-lang/go-1.11
+       dev-util/promu
+       net-analyzer/net-snmp"
+
+pkg_setup() {
+       enewgroup ${PN}
+       enewuser ${PN} -1 -1 -1 ${PN}
+}
+
+src_prepare() {
+       default
+       sed -i -e "s/{{.Revision}}/${SNMP_EXPORTER_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
+       pushd generator || die
+       GO111MODULE=on GOPATH="${S}" GOCACHE="${T}"/go-cache go build -mod=vendor -o ../bin/generator . || die
+       popd || die
+}
+
+src_install() {
+       pushd src/${EGO_PN} || die
+       dobin bin/generator snmp_exporter
+       dodoc {README,CONTRIBUTING}.md generator/{FORMAT,README}.md generator/generator.yml
+       insinto /etc/snmp_exporter
+       newins snmp.yml snmp.yml.example
+       popd || die
+       keepdir /var/lib/snmp_exporter /var/log/snmp_exporter
+       fowners ${PN}:${PN} /var/lib/snmp_exporter /var/log/snmp_exporter
+       newinitd "${FILESDIR}"/${PN}.initd ${PN}
+       newconfd "${FILESDIR}"/${PN}.confd ${PN}
+       insinto /etc/logrotate.d
+       newins "${FILESDIR}/${PN}.logrotated" "${PN}"
+}