commit:     cc889d6c1eb868fe0fad6dcc23627b727bab25ec
Author:     Zac Medico <zmedico <AT> gentoo <DOT> org>
AuthorDate: Sun Dec  1 19:37:28 2024 +0000
Commit:     Zac Medico <zmedico <AT> gentoo <DOT> org>
CommitDate: Sun Dec  1 19:37:35 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=cc889d6c

net-dns/coredns: add 1.12.0

Signed-off-by: Zac Medico <zmedico <AT> gentoo.org>

 net-dns/coredns/Manifest              |   2 +
 net-dns/coredns/coredns-1.12.0.ebuild | 108 ++++++++++++++++++++++++++++++++++
 2 files changed, 110 insertions(+)

diff --git a/net-dns/coredns/Manifest b/net-dns/coredns/Manifest
index 05525bf1a250..6b7d5a38474e 100644
--- a/net-dns/coredns/Manifest
+++ b/net-dns/coredns/Manifest
@@ -4,3 +4,5 @@ DIST coredns-1.11.3-deps.tar.xz 6662680 BLAKE2B 
44bc099586cdaffc381141e347c89215
 DIST coredns-1.11.3.tar.gz 653856 BLAKE2B 
db9efdd1b674f6908ff094866ca5c148e018d7ddae2ae1cc07c13fbf78dcc4e6ed478d2e5946f73d43b8ee6a1924fecd53759e6b9a41935d084fbb1d84b7bb10
 SHA512 
3ec9296626a2994d1259329e50b032d2972ef8e05bfed742c0ee570414adbfa8f296046b9356ef73d885a1f1c1e3660421762267535ec2d3f357c3064a75d405
 DIST coredns-1.11.4-deps.tar.xz 8743848 BLAKE2B 
a083c85ed3a43b1d97ab928a133511dd7ae58431803387b5aa3b6d3dbf93f35f5aca18ca6a35e258e7596ef7c7718fe3599f1af48735a0f3d8e08eef5669c18e
 SHA512 
d6d7d8ca5f085d5e04e4499041eb89ac88a6a2b2737b10c8979765d9e397261cfa48ed4c12a369c6794741a4e7150b44b3c09663b9cd2ca4bf8540843df22e55
 DIST coredns-1.11.4.tar.gz 663610 BLAKE2B 
2cb3930009bc68a3725da38bdd919a8b3969199bdae9fdbc4495361a9e83b9046f46a1c1ec1adf67170b75fe011fd0b24dd73163bef81ac43b7ea50faae5a1a2
 SHA512 
90506926736152958d6ec154734a6cce689406aea9eed7d68e868fa48361b0fb5c899d445f52e13a5401b91683c8ed7715c80617efaabdd7b5d9dde6ca634984
+DIST coredns-1.12.0-deps.tar.xz 8762780 BLAKE2B 
674f181aea1e48577bc97c64fba4eb90bef600e600d183b1043ddaa9a5a53cbaa70f1822a82fd51c817a18f13ec22be4c82dc08b41f133ec552b1174e0f9ee62
 SHA512 
853d8327537ada98d734591ce7dc3b6afdda9a43de1712de9452824de7be85bfe1314d89467f132b84181e4f0e229f637f87cd70e17eb663adb2dd17bd5aa0ca
+DIST coredns-1.12.0.tar.gz 666624 BLAKE2B 
87cd5f71d433a95d2cb0a80b9028e2051d3090538e18d11c9f53bf9307d4176ecc568e605ab76b1d4d1398fcf83aaec70b06ffec1e365d37dadc8a0782850d01
 SHA512 
b86cb6042adf0510204bacb04927e7cb6f43a2d48b26140384e014bdab353d095942c21843e9cea2ebe7cb3d003c49d0192ae208649509535b556b773e893c70

diff --git a/net-dns/coredns/coredns-1.12.0.ebuild 
b/net-dns/coredns/coredns-1.12.0.ebuild
new file mode 100644
index 000000000000..7f69279c8135
--- /dev/null
+++ b/net-dns/coredns/coredns-1.12.0.ebuild
@@ -0,0 +1,108 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit fcaps go-module multiprocessing systemd tmpfiles toolchain-funcs
+
+DESCRIPTION="CoreDNS is a DNS server that chains plugins"
+HOMEPAGE="https://github.com/coredns/coredns";
+
+if [[ ${PV} == 9999* ]]; then
+       inherit git-r3
+       EGIT_REPO_URI="https://github.com/coredns/coredns.git";
+else
+       SRC_URI="https://github.com/${PN}/${PN}/archive/v${PV}.tar.gz -> 
${P}.tar.gz"
+       SRC_URI+=" https://dev.gentoo.org/~zmedico/dist/${P}-deps.tar.xz";
+       KEYWORDS="~amd64"
+fi
+
+# main
+LICENSE="Apache-2.0"
+# deps
+LICENSE+=" MIT BSD ISC MPL-2.0 BSD-2"
+
+SLOT="0"
+# TODO: debug test failure with deps tarball
+RESTRICT="test"
+
+RDEPEND="acct-user/coredns
+       acct-group/coredns"
+
+FILECAPS=(
+       -m 755 'cap_net_bind_service=+ep' usr/bin/${PN}
+)
+
+src_unpack() {
+       if [[ ${PV} == 9999* ]]; then
+               git-r3_src_unpack
+               go-module_live_vendor
+       else
+               default
+       fi
+}
+
+src_prepare() {
+       [[ ${PV} != 9999* ]] && { ln -sv ../vendor ./ || die ; }
+       default
+}
+
+src_compile() {
+       [[ ${PV} == 9999* ]] && local GIT_COMMIT="$(git describe --dirty 
--always)"
+       ego build -ldflags="-s -w -X 
github.com/coredns/coredns/coremain.GitCommit=${GIT_COMMIT}"
+}
+
+src_install() {
+       dobin "${PN}"
+       einstalldocs
+       doman man/*
+
+       newinitd "${FILESDIR}"/coredns.initd coredns
+       newconfd "${FILESDIR}"/coredns.confd coredns
+
+       insinto /etc/coredns/
+       newins "${FILESDIR}"/Corefile.example Corefile
+
+       insinto /etc/logrotate.d
+       newins "${FILESDIR}"/coredns.logrotated coredns
+
+       systemd_dounit "${FILESDIR}"/coredns.service
+       newtmpfiles "${FILESDIR}"/coredns.tmpfiles "${PN}.conf"
+}
+
+src_test() {
+       # eclass default '-x' makes tests output unreadable
+       export GOFLAGS="-v -mod=readonly"
+
+       local known_fail=(
+               "TestZoneExternalCNAMELookupWithProxy"
+               "TestMetricsSeveralBlocs"
+               "TestMetricsAvailable"
+               "TestMetricsAvailableAfterReload"
+               "TestMetricsAvailableAfterReloadAndFailedReload"
+       )
+       # concat as '|^Test1$|^Test2$|^Test3...$':
+       local known_fail_re="$(printf '|^%s$' "${known_fail[@]}")"
+       # drop '|' in the begining:
+       known_fail_re="${known_fail_re:1}"
+
+       local working_tests_re="$(
+               # get list of all test:
+               { GOFLAGS="-mod=readonly" go test -list . ./... ||
+                       die "Can't get list of tests"; } |
+               # skip "no tests" messages as well as know failures:
+               grep -v -E " |${known_fail_re}" |
+               # format a regexp:
+               sed -z 's/\n/$|^/g'
+       )"
+       # drop '|^' in the end:
+       working_tests_re="^${working_tests_re::-2}"
+
+       go test -race -run "${working_tests_re}" ./... || die "Tests failed"
+       go test -race -run "${known_fail_re}" ./... || ewarn "Known test 
failure"
+}
+
+pkg_postinst() {
+       fcaps_pkg_postinst
+       tmpfiles_process ${PN}.conf
+}

Reply via email to