summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorManuel Rüger <mrueg@gentoo.org>2018-03-27 15:32:10 +0200
committerManuel Rüger <mrueg@gentoo.org>2018-03-27 15:32:10 +0200
commitf9c0b062780c59e4a270361fabb8ede28f766f67 (patch)
tree43d45dc841b94471fc62382068e40d7687254265 /app-metrics/prometheus
parentapp-metrics/prom2json: Move package from app-admin/prom2json (diff)
downloadgentoo-f9c0b062780c59e4a270361fabb8ede28f766f67.tar.gz
gentoo-f9c0b062780c59e4a270361fabb8ede28f766f67.tar.bz2
gentoo-f9c0b062780c59e4a270361fabb8ede28f766f67.zip
app-metrics/prometheus: Move package from net-analyzer/prometheus
Diffstat (limited to 'app-metrics/prometheus')
-rw-r--r--app-metrics/prometheus/Manifest2
-rw-r--r--app-metrics/prometheus/files/prometheus-3.initd28
-rw-r--r--app-metrics/prometheus/files/prometheus.confd2
-rw-r--r--app-metrics/prometheus/metadata.xml11
-rw-r--r--app-metrics/prometheus/prometheus-2.1.0.ebuild68
-rw-r--r--app-metrics/prometheus/prometheus-2.2.1.ebuild70
6 files changed, 181 insertions, 0 deletions
diff --git a/app-metrics/prometheus/Manifest b/app-metrics/prometheus/Manifest
new file mode 100644
index 000000000000..ca0158e2897d
--- /dev/null
+++ b/app-metrics/prometheus/Manifest
@@ -0,0 +1,2 @@
+DIST prometheus-2.1.0.tar.gz 5669858 BLAKE2B 96b9d7b1eb13017806cb2745cb874468a419550c7372aa8abada9d1a4e7fe386785f05abe8fd5681745db4a0c17260d5fde704a3b3ac5807107da0a935177264 SHA512 8adbbfcf6cf5b0bdd4a96f51f6c179c828d75a231b35f9ef40db6c07bcb8ffa6a3eb969b55a52ac70528ad5c8fe486be866db6ae174006220e0cfaa1da624346
+DIST prometheus-2.2.1.tar.gz 5629500 BLAKE2B 7645267a2c5ed1c4138a5dd3929a48cb9dfa27789db38e98addbb06c37c6b482abfcf296ef1a5836bebd971d8224136c24a4ccd3093175882bb0beda1673deff SHA512 a94cf867de2b3be65b0a07307f89ebfa9c0a319820a72b3b6691edcd2e2b56b5268d27fb52bdaefea0e7084906d69b818e5292a39ccd5991e04e56d594f56ea7
diff --git a/app-metrics/prometheus/files/prometheus-3.initd b/app-metrics/prometheus/files/prometheus-3.initd
new file mode 100644
index 000000000000..ae151ef91fbd
--- /dev/null
+++ b/app-metrics/prometheus/files/prometheus-3.initd
@@ -0,0 +1,28 @@
+#!/sbin/openrc-run
+# Copyright 2016-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+description="Prometheus monitoring system and time series database"
+pidfile=${pidfile:-"/run/${RC_SVCNAME}.pid"}
+user=${user:-${SVCNAME}}
+group=${group:-${SVCNAME}}
+
+command="/usr/bin/prometheus"
+command_args="${command_args:---config.file=/etc/prometheus/prometheus.yml --storage.tsdb.path=/var/lib/prometheus/data}"
+command_background="true"
+start_stop_daemon_args="--user ${user} --group ${group} \
+ --stdout /var/log/${RC_SVCNAME}/${RC_SVCNAME}.log \
+ --stderr /var/log/${RC_SVCNAME}/${RC_SVCNAME}.log"
+
+extra_started_commands="reload"
+
+depend() {
+ after net
+}
+
+reload() {
+ ebegin "Reloading ${SVCNAME}"
+ start-stop-daemon --signal HUP --pidfile "${pidfile}"
+ eend $? "Failed to stop ${SVCNAME}"
+}
+
diff --git a/app-metrics/prometheus/files/prometheus.confd b/app-metrics/prometheus/files/prometheus.confd
new file mode 100644
index 000000000000..93b41b31624c
--- /dev/null
+++ b/app-metrics/prometheus/files/prometheus.confd
@@ -0,0 +1,2 @@
+# arguments for Prometheus
+command_args=""
diff --git a/app-metrics/prometheus/metadata.xml b/app-metrics/prometheus/metadata.xml
new file mode 100644
index 000000000000..f4e8d75f03b9
--- /dev/null
+++ b/app-metrics/prometheus/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>mrueg@gentoo.org</email>
+ <name>Manuel Rüger</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">prometheus/prometheus</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/app-metrics/prometheus/prometheus-2.1.0.ebuild b/app-metrics/prometheus/prometheus-2.1.0.ebuild
new file mode 100644
index 000000000000..f6d36b877433
--- /dev/null
+++ b/app-metrics/prometheus/prometheus-2.1.0.ebuild
@@ -0,0 +1,68 @@
+# Copyright 1999-2018 Gentoo Foundation
+# 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=${PV/_rc/-rc.}
+EGIT_COMMIT="v${MY_PV}"
+PROMETHEUS_COMMIT="85f23d8"
+ARCHIVE_URI="https://${EGO_PN}/archive/${EGIT_COMMIT}.tar.gz -> ${P}.tar.gz"
+KEYWORDS="~amd64"
+
+DESCRIPTION="Prometheus monitoring system and time series database"
+HOMEPAGE="https://github.com/prometheus/prometheus"
+SRC_URI="${ARCHIVE_URI}"
+LICENSE="Apache-2.0"
+SLOT="0"
+IUSE=""
+
+DEPEND="dev-util/promu"
+
+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
+ GOPATH="${S}" 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-3.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
+}
diff --git a/app-metrics/prometheus/prometheus-2.2.1.ebuild b/app-metrics/prometheus/prometheus-2.2.1.ebuild
new file mode 100644
index 000000000000..a9b8e6255937
--- /dev/null
+++ b/app-metrics/prometheus/prometheus-2.2.1.ebuild
@@ -0,0 +1,70 @@
+# Copyright 1999-2018 Gentoo Foundation
+# 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=${PV/_rc/-rc.}
+EGIT_COMMIT="v${MY_PV}"
+PROMETHEUS_COMMIT="bc6058c"
+ARCHIVE_URI="https://${EGO_PN}/archive/${EGIT_COMMIT}.tar.gz -> ${P}.tar.gz"
+KEYWORDS="~amd64"
+
+DESCRIPTION="Prometheus monitoring system and time series database"
+HOMEPAGE="https://github.com/prometheus/prometheus"
+SRC_URI="${ARCHIVE_URI}"
+LICENSE="Apache-2.0"
+SLOT="0"
+IUSE=""
+
+DEPEND="
+ >=dev-lang/go-1.10
+ dev-util/promu"
+
+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
+ GOPATH="${S}" 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-3.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
+}