gentoo-overlay/app-metrics/prometheus/prometheus-2.21.0.ebuild
Manuel Friedli 840be418ef
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
app-metrics/prometheus: Add latest ebuild with systemd support.
Package-Manager: Portage-3.0.8, Repoman-3.0.2
2020-10-21 17:17:51 +02:00

61 lines
1.9 KiB
Bash

# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit go-module systemd
MY_PV=v${PV/_rc/-rc.}
GIT_COMMIT=e83ef207b
DESCRIPTION="Prometheus monitoring system and time series database"
HOMEPAGE="https://github.com/prometheus/prometheus"
SRC_URI="https://github.com/prometheus/prometheus/archive/${MY_PV}.tar.gz -> ${P}.tar.gz
https://dev.gentoo.org/~williamh/dist/${P}-assets.tar.gz"
LICENSE="Apache-2.0 BSD BSD-2 ISC MIT MPL-2.0"
SLOT="0"
KEYWORDS="~amd64 ~arm"
COMMON_DEPEND="acct-group/prometheus
acct-user/prometheus"
DEPEND="!app-metrics/prometheus-bin
${COMMON_DEPEND}"
RDEPEND="${COMMON_DEPEND}"
BDEPEND=">=dev-util/promu-0.3.0"
RESTRICT+=" test"
src_prepare() {
default
sed -i -e "s/{{.Revision}}/${GIT_COMMIT}/" .promu.yml || die
mv ../assets_vfsdata.go web/ui || die
}
src_compile() {
promu build --prefix bin -v || die
}
src_install() {
dobin bin/*
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
systemd_dounit "${FILESDIR}"/prometheus.service
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
}