diff options
Diffstat (limited to 'app-misc/carbon-c-relay')
-rw-r--r-- | app-misc/carbon-c-relay/Manifest | 2 | ||||
-rw-r--r-- | app-misc/carbon-c-relay/carbon-c-relay-3.7.4-r1.ebuild | 58 | ||||
-rw-r--r-- | app-misc/carbon-c-relay/files/carbon-c-relay.initd-r2 | 74 |
3 files changed, 134 insertions, 0 deletions
diff --git a/app-misc/carbon-c-relay/Manifest b/app-misc/carbon-c-relay/Manifest index 73a9cfa1cc6e..4c2f76ee642a 100644 --- a/app-misc/carbon-c-relay/Manifest +++ b/app-misc/carbon-c-relay/Manifest @@ -1,9 +1,11 @@ AUX carbon-c-relay.confd-r1 365 BLAKE2B 10a531055296877bb027f5dc6546b054da7e5b84950bbcf8de8d4af552e61fcd9bbebeea3bc432a25f14103c4f2f30db4885259f855182e6923b79649e63fb60 SHA512 a432cf28c86ec45c807eeb5a7b506e7dcc6155c138aea5dc60eb8bcf5036ac0efc3a81fbc044af34dab5f05f250635892c5e706dfd69cc1087f0c283c3aa9393 AUX carbon-c-relay.initd-r1 1801 BLAKE2B 4627b6e0d9a44d5c544ccff0c33557c73dd971929fbb442be79f3913752f39b1d534d4e4e936ebe94ebd5883d56e3f04314b9033c0a5ef7a3cbe7e05e1aeeb42 SHA512 5cf3c424a8be6bb55a80b58ce590838fec8ed26f8f407e8561c1e3ea094e80ad4021d153b3d816ab6d4e6589494d9ce621fe14196e223ef3a092d0aa26a63399 +AUX carbon-c-relay.initd-r2 1805 BLAKE2B 4e45257b74319b06e3e4092d803ea967436dfedd3da10406dc398e9fe2a2fbd1cdc2020e47d1864209ed16adb8b4bfb77eabe41b304d9cc262da528e95935fbb SHA512 0842fa097c7a441907210b30ed1a75b9137d41f4c885f273d5d3b2eedd2403bb55bd7c443be10f8a4f3645d19ae1c466404a7b30c06d09810f7895fa64bb23f7 DIST carbon-c-relay-3.7.2.tar.gz 561080 BLAKE2B 55674699b2afcffa911954a52e3c51b92380c81083db0330e7e6eab495e72938b7761a8c7bc17ac65ea56db1c11f4c360bab3b7442ca13f3466170d6bb3f6fd6 SHA512 dab2eaf2da07afd429012b93f0c826e2fe6e43371afa07d34793dd212820790af2487f5710524deac52c3ed18b874ce8ff54d90b3872e269dc570b7ad30c1826 DIST carbon-c-relay-3.7.3.tar.gz 575680 BLAKE2B d2d07c7f1ec356a16bb375bd740ffa018a0d256ef1ce97ae0555001411a05e28173c2009f3980b0d711977068392b5a0baca68f9dda3a677c7c3d245cad70a0e SHA512 ba3e4b7173abe5e3b018413a8d46d91c3f433e785dcf3d7643836b91f9a6ff993b22c3db51192476c75d45486d1e2541ad73056671b4bdbfd1447dcfc3f26ff3 DIST carbon-c-relay-3.7.4.tar.gz 584098 BLAKE2B 27fe6d7b785129aa6edd81e0a92880eee3530249900662e63f1ad7a9c1b4c8f9ff98635989311de964e4c42d4bb98f3ce1956ed170b8eceeea558ec3c191f45e SHA512 a9bcaa699e071e57e0a9092b97d1ead6781af4e00ef19f289a986c5baf56dec2c747961dfc2622285de034c17ce7ed2f5a7c856d617b26488dbdea58c4d72754 EBUILD carbon-c-relay-3.7.2-r1.ebuild 1567 BLAKE2B 13280b7bde34cd94b238fc0d95bdf78d5727c7535891a9b0382caeb4ced930dabcdef57a34de586b90b2c1c6b586e4120ebd2fbe7dbc4d53c34a4aceb46088e5 SHA512 73039e2207eb62431fc06ce0bd9216d8f0f337abe686d290ed3e3e84fb3130a45be437ca035d9fb35a4ac381ef1fef63d7e6eb409f735945631357e5e0ca2b95 EBUILD carbon-c-relay-3.7.3.ebuild 1567 BLAKE2B 13280b7bde34cd94b238fc0d95bdf78d5727c7535891a9b0382caeb4ced930dabcdef57a34de586b90b2c1c6b586e4120ebd2fbe7dbc4d53c34a4aceb46088e5 SHA512 73039e2207eb62431fc06ce0bd9216d8f0f337abe686d290ed3e3e84fb3130a45be437ca035d9fb35a4ac381ef1fef63d7e6eb409f735945631357e5e0ca2b95 +EBUILD carbon-c-relay-3.7.4-r1.ebuild 1574 BLAKE2B d262ce31744c36c7c290e7ea6af90e23623800f1138560997eb17c2b44ef00c926765cdb658545a556b0a974cfbf4190dd98d63a2de1267685eb1a543faf8129 SHA512 eac70773fdf5764b54026be4ff0cee01e8e968eadecf05b95a982547977651f8ca70c68a5906004d7bb8d67e2c7d129de7b283e5a26e8cf43910fc6007e6fe34 EBUILD carbon-c-relay-3.7.4.ebuild 1574 BLAKE2B b7329b23b4811211ca680ea46d4214a1426953531606042dfcfa81b0d24c9ddaa042de895909f2120f5f41464011c155ca5215220c063615d9a9045f4f64b730 SHA512 8897e50aaed1b72b4b5f8eaf0f0c53dcafbce81fecd3c6a3e642f225a6d1643b33f2578b2c9a5c3b7bae93e974001bb4d81766c37c6007447ecdb48e87aa3b9c MISC metadata.xml 654 BLAKE2B 9cf6ce108100d80ba05644a782876997280ae4523b07366b3a88942fad4392fed358b134e8f33597fdc98540698531e3e7b0155e63194b4030de227f4a4c75e1 SHA512 954f00ed3ccde9cc651e9de24bcc2339deca58b2cc27f923801862fdc5298771ce5c0e729fa03c2d4d5b03624dbcbd3a17295b7e4e31fbb57221da861747d545 diff --git a/app-misc/carbon-c-relay/carbon-c-relay-3.7.4-r1.ebuild b/app-misc/carbon-c-relay/carbon-c-relay-3.7.4-r1.ebuild new file mode 100644 index 000000000000..d34fed5a74de --- /dev/null +++ b/app-misc/carbon-c-relay/carbon-c-relay-3.7.4-r1.ebuild @@ -0,0 +1,58 @@ +# Copyright 1999-2022 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +DESCRIPTION="Enhanced C version of Carbon relay, aggregator and rewriter" +HOMEPAGE="https://github.com/grobian/carbon-c-relay" +SRC_URI="https://github.com/grobian/carbon-c-relay/releases/download/v${PV}/${P}.tar.gz" + +LICENSE="Apache-2.0" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x64-macos ~x64-solaris ~x86-solaris" +IUSE="lz4 snappy zlib ssl pcre pcre2 +oniguruma" + +# ensure only one of pcre, pcre2 and oniguruma is set, or none (libc) +# unforunately pcre is in global USE, so we have to exclude that here +REQUIRED_USE=" + pcre2? ( !oniguruma ) + oniguruma? ( !pcre2 ) +" +RDEPEND="lz4? ( app-arch/lz4 ) + snappy? ( app-arch/snappy ) + zlib? ( app-arch/gzip ) + ssl? ( dev-libs/openssl:0= ) + !oniguruma? ( !pcre2? ( pcre? ( dev-libs/libpcre ) ) ) + pcre2? ( dev-libs/libpcre2 ) + oniguruma? ( dev-libs/oniguruma ) + acct-group/carbon + acct-user/carbon" +DEPEND="${RDEPEND}" + +src_configure() { + local pcrecfg + if use !pcre2 && use !oniguruma ; then + pcrecfg=$(use_with pcre) + else + pcrecfg="--without-pcre" + fi + + econf $(use_with lz4) $(use_with snappy) \ + $(use_with ssl) $(use_with zlib gzip) \ + "${pcrecfg}" $(use_with pcre2) $(use_with oniguruma) +} + +src_install() { + default + + # rename too generic name + mv "${ED}"/usr/bin/{relay,${PN}} || die + + # remove libfaketime, necessary for testing only + rm -f "${ED}"/usr/$(get_libdir)/libfaketime.* + + dodoc ChangeLog.md + + newinitd "${FILESDIR}"/${PN}.initd-r2 ${PN} + newconfd "${FILESDIR}"/${PN}.confd-r1 ${PN} +} diff --git a/app-misc/carbon-c-relay/files/carbon-c-relay.initd-r2 b/app-misc/carbon-c-relay/files/carbon-c-relay.initd-r2 new file mode 100644 index 000000000000..fa0781dcddc8 --- /dev/null +++ b/app-misc/carbon-c-relay/files/carbon-c-relay.initd-r2 @@ -0,0 +1,74 @@ +#!/sbin/openrc-run +# Copyright 1999-2017 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +extra_commands="configtest" +extra_started_commands="reload" + +description="Lightweight graphite metrics router and aggregator." +description_configtest="Run carbon-c-relay's internal config check." +description_reload="Reload the carbon-c-relay configuration without losing connections." + +routes_config=${ROUTES_FILE:-/etc/${SVCNAME}.conf} + +command="/usr/bin/carbon-c-relay" +command_args="-f ${routes_config} ${EXTRA_OPTS}" +pidfile="/run/carbon-c-relay/${SVCNAME}.pid" +logfile=${LOGFILE:-/var/log/${SVCNAME}.log} +user=${USER:-carbon} +group=${GROUP:-carbon} + +depend() { + need net + use dns +} + +start_pre() { + if [ "${RC_CMD}" != "restart" ]; then + configtest || return 1 + fi + touch "${logfile}" + mkdir -p "${pidfile%/*}" + chown ${user}:${group} "${logfile}" "${pidfile%/*}" +} + +stop_pre() { + if [ "${RC_CMD}" = "restart" ]; then + configtest || return 1 + fi +} + +stop_post() { + rm -f "${pidfile}" +} + +start() { + ebegin "Starting ${SVCNAME}" + start-stop-daemon --start --pidfile "${pidfile}" \ + --user ${user} --group ${group} \ + --exec ${command} -- -D -P "${pidfile}" -l "${logfile}" \ + ${command_args} + eend $? +} + +stop() { + ebegin "Stopping ${SVCNAME}" + # migration path + local pfile=${pidfile} + [ -e /run/carbon-c-relay.pid ] && pfile="/run/carbon-c-relay.pid" + start-stop-daemon --stop --exec ${command} --pidfile "${pfile}" + eend $? +} + +reload() { + configtest || return 1 + ebegin "Refreshing ${SVCNAME}'s configuration" + kill -HUP $(cat "${pidfile}") >/dev/null 2>&1 + eend $? "Failed to reload ${SVCNAME}" +} + +configtest() { + ebegin "Checking ${SVCNAME}'s configuration" + ${command} -f "${routes_config}" -t < /dev/null > /dev/null + eend $? "failed, please correct errors above" +} |