summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'app-containers/flannel/flannel-0.17.0.ebuild')
-rw-r--r--app-containers/flannel/flannel-0.17.0.ebuild54
1 files changed, 54 insertions, 0 deletions
diff --git a/app-containers/flannel/flannel-0.17.0.ebuild b/app-containers/flannel/flannel-0.17.0.ebuild
new file mode 100644
index 000000000000..18d922d3f1d3
--- /dev/null
+++ b/app-containers/flannel/flannel-0.17.0.ebuild
@@ -0,0 +1,54 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+inherit go-module systemd tmpfiles
+
+KEYWORDS="~amd64 ~arm64"
+DESCRIPTION="An etcd backed network fabric for containers"
+HOMEPAGE="https://github.com/flannel-io/flannel"
+SRC_URI="https://github.com/flannel-io/flannel/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0 BSD ISC LGPL-3 MIT"
+SLOT="0"
+IUSE="hardened"
+
+RESTRICT+=" test"
+
+src_prepare() {
+ default
+ sed -e "s:^var Version =.*:var Version = \"${PV}\":" \
+ -i "${S}/version/version.go" || die
+}
+
+src_compile() {
+ CGO_LDFLAGS="$(usex hardened '-fno-PIC ' '')"\
+ go build -o dist/flanneld -ldflags "
+ -X github.com/flannel-io/flannel/version.Version=v${PV}
+ -extldflags \"-static\"" . || die
+}
+
+src_test() {
+ GOPATH="${WORKDIR}/${P}" \
+ go test -v -work -x "${EGO_PN}" || die
+}
+
+src_install() {
+ dobin dist/${PN}d
+ exeinto /usr/libexec/flannel
+ doexe dist/mk-docker-opts.sh
+ insinto /etc/systemd/system/docker.service.d
+ newins "${FILESDIR}/flannel-docker.conf" flannel.conf
+ newinitd "${FILESDIR}"/flanneld.initd flanneld
+ newconfd "${FILESDIR}"/flanneld.confd flanneld
+ keepdir /var/log/${PN}
+ insinto /etc/logrotate.d
+ newins "${FILESDIR}"/flanneld.logrotated flanneld
+ newtmpfiles "${FILESDIR}/flannel.tmpfilesd" flannel.conf
+ systemd_dounit "${FILESDIR}/flanneld.service"
+ dodoc README.md
+}
+
+pkg_postinst() {
+ tmpfiles_process flannel.conf
+}