1 |
commit: 09e3406fa579d1b1a3f94ad75427382753116026 |
2 |
Author: Zac Medico <zmedico <AT> gentoo <DOT> org> |
3 |
AuthorDate: Fri Aug 26 20:30:38 2022 +0000 |
4 |
Commit: Zac Medico <zmedico <AT> gentoo <DOT> org> |
5 |
CommitDate: Fri Aug 26 20:30:42 2022 +0000 |
6 |
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=09e3406f |
7 |
|
8 |
sys-cluster/k3s: add 1.24.4_p1 |
9 |
|
10 |
Signed-off-by: Zac Medico <zmedico <AT> gentoo.org> |
11 |
|
12 |
sys-cluster/k3s/Manifest | 1 + |
13 |
sys-cluster/k3s/k3s-1.24.4_p1.ebuild | 102 +++++++++++++++++++++++++++++++++++ |
14 |
2 files changed, 103 insertions(+) |
15 |
|
16 |
diff --git a/sys-cluster/k3s/Manifest b/sys-cluster/k3s/Manifest |
17 |
index b8700257fdfe..cb6b66bc5476 100644 |
18 |
--- a/sys-cluster/k3s/Manifest |
19 |
+++ b/sys-cluster/k3s/Manifest |
20 |
@@ -1,4 +1,5 @@ |
21 |
DIST k3s-1.24.3_p1-vendor.tar.gz 31433160 BLAKE2B 33328690ac94c101fd02bc2ef166f09eb5b54a1404da9206a3ff7fdf3c212a2dea96563b6d1da9a25105a15f69cc71664e3d1cb6f35f18f18faae50a67607d80 SHA512 e742b01960a4dc35f80e923fc9fbf41ae2913a24b66de7acd8c8b7a78681cca55821adc5e42df527fc6a9c42146f8b39de85c1060e2981198cd6712dcf300231 |
22 |
+DIST k3s-1.24.4_p1-vendor.tar.gz 31949072 BLAKE2B 60f152f7085039f061461e932a5ccada68404ff5a6de88602aeffd07141b825b441ea4a58d6fc5eb8b73bc8f02df81cb1c710fc8f05e1f6d8d8a1ecd4adf564b SHA512 3b27e3dc3834ba509e57f32b5cff68903cb8160d5b0b1c5dd753b66021c0fbd547f7df7d5cb8d3820e1fa0d495087eb98f6197ec29ff9127b713c6f9ab4f1710 |
23 |
DIST k3s-cni-plugins-1.1.1.tar.gz 3122345 BLAKE2B 270283ffb746ca97ad147b368143c56bd9641b7ebcb1b2b61f80ffea3336b240b28c9b9496bd2f6eb6d7e5382da4979c26e37eca30ac19fd362ed822ba94f300 SHA512 53dcd363231325553a5c9e804fc9005471fe5c05c87aae0340214c146eba66a3761d73976ba0145d86a663a2b0a1941e6cc5823b6d05e002a9ef18e41e10ac3c |
24 |
DIST k3s-containerd-1.6.6-k3s1.tar.gz 10337871 BLAKE2B c4d038c2654243f61f907942a7ddc6d6584c50a04db3cd539f8cbb46901737744b39ca7c31ef51e84ba87faafbfa1962a36e2912a1bfee9d922e2f15e3253970 SHA512 11a2247ea8deb498fb8f0fbd90735d5c4e980d3744ddf1c17b1bf438379c55124a57838a27bc6df7a0b0421881d6072f0cd0bbb4c4835aa34ea894af02334fa8 |
25 |
DIST k3s-root-amd64-0.11.0.tar 11878400 BLAKE2B 6227ba08e305f062ed814a6b997313415c08e469b05f0501c86f7df25e8a3c9ecb43675613337f6d038faa5153aae98eb44cad9bc170967e0a216ba5ec27559e SHA512 d181117230ad941b40173c3b7dc3d2bb0f3d44a28e9715d85c752193c6058bb6be4a4b8f061df73fed690629a7b2b330185b38bb90ce7fcc9c808096516cb0a3 |
26 |
|
27 |
diff --git a/sys-cluster/k3s/k3s-1.24.4_p1.ebuild b/sys-cluster/k3s/k3s-1.24.4_p1.ebuild |
28 |
new file mode 100644 |
29 |
index 000000000000..37d109813df1 |
30 |
--- /dev/null |
31 |
+++ b/sys-cluster/k3s/k3s-1.24.4_p1.ebuild |
32 |
@@ -0,0 +1,102 @@ |
33 |
+# Copyright 2021-2022 Gentoo Authors |
34 |
+# Distributed under the terms of the GNU General Public License v2 |
35 |
+ |
36 |
+EAPI=7 |
37 |
+inherit go-module linux-info systemd |
38 |
+ |
39 |
+DESCRIPTION="Lightweight Kubernetes" |
40 |
+HOMEPAGE="https://k3s.io" |
41 |
+K3S_CONTAINERD_VERSION=1.6.6-k3s1 |
42 |
+K3S_RUNC_VERSION=v1.1.3 |
43 |
+K3S_ROOT_VERSION=0.11.0 |
44 |
+K3S_TRAEFIK_VERSION=10.19.3 |
45 |
+K3S_TRAEFIK_PACKAGE_VERSION=00 |
46 |
+K3S_CNIPLUGINS_VERSION=1.1.1 |
47 |
+CONFIG_CHECK="~BRIDGE_NETFILTER ~CFS_BANDWIDTH ~CGROUP_DEVICE ~CGROUP_PERF ~CGROUP_PIDS ~IP_VS ~MEMCG ~NETFILTER_XT_MATCH_COMMENT ~OVERLAY_FS ~VLAN_8021Q ~VXLAN" |
48 |
+ |
49 |
+MY_PV=${PV%_p*}+k3s${PV#*_p} |
50 |
+SRC_URI="https://github.com/zmedico/k3s/archive/refs/tags/v${MY_PV}-vendor.tar.gz -> ${P}-vendor.tar.gz |
51 |
+ ${EGO_SUM_SRC_URI} |
52 |
+ https://github.com/k3s-io/containerd/archive/refs/tags/v${K3S_CONTAINERD_VERSION}.tar.gz -> k3s-containerd-${K3S_CONTAINERD_VERSION}.tar.gz |
53 |
+ https://github.com/opencontainers/runc/archive/refs/tags/${K3S_RUNC_VERSION}.tar.gz -> k3s-runc-${K3S_RUNC_VERSION}.tar.gz |
54 |
+ https://helm.traefik.io/traefik/traefik-${K3S_TRAEFIK_VERSION}.tgz |
55 |
+ https://github.com/rancher/plugins/archive/refs/tags/v${K3S_CNIPLUGINS_VERSION}-k3s1.tar.gz -> k3s-cni-plugins-${K3S_CNIPLUGINS_VERSION}.tar.gz |
56 |
+ amd64? ( https://github.com/rancher/k3s-root/releases/download/v${K3S_ROOT_VERSION}/k3s-root-amd64.tar -> k3s-root-amd64-${K3S_ROOT_VERSION}.tar )" |
57 |
+ |
58 |
+LICENSE="Apache-2.0" |
59 |
+SLOT="0" |
60 |
+KEYWORDS="~amd64" |
61 |
+IUSE="+kubectl-symlink rootless" |
62 |
+REQUIRED_USE="|| ( amd64 )" |
63 |
+DEPEND=" |
64 |
+ app-misc/yq |
65 |
+ net-firewall/conntrack-tools |
66 |
+ sys-fs/btrfs-progs |
67 |
+ rootless? ( app-containers/slirp4netns ) |
68 |
+" |
69 |
+RDEPEND="kubectl-symlink? ( !sys-cluster/kubectl )" |
70 |
+RESTRICT+=" test" |
71 |
+ |
72 |
+S=${WORKDIR}/${PN}-${MY_PV/+/-}-vendor |
73 |
+ |
74 |
+src_unpack() { |
75 |
+ unpack ${P}-vendor.tar.gz |
76 |
+ cd "${S}" || die |
77 |
+ mkdir -p bin/aux build/static/charts cache etc || die |
78 |
+ cp "${DISTDIR}/traefik-${K3S_TRAEFIK_VERSION}.tgz" build/static/charts/traefik-${K3S_TRAEFIK_VERSION}${K3S_TRAEFIK_PACKAGE_VERSION}.tgz || die |
79 |
+ cp "${DISTDIR}/k3s-cni-plugins-${K3S_CNIPLUGINS_VERSION}.tar.gz" cache/ || die |
80 |
+} |
81 |
+ |
82 |
+src_prepare() { |
83 |
+ local filename pattern replacement |
84 |
+ default |
85 |
+ |
86 |
+ local CONTAINERD_DIR=build/src/github.com/containerd/containerd |
87 |
+ mkdir -p "${CONTAINERD_DIR}" || die |
88 |
+ tar -x --strip-components=1 -f "${DISTDIR}/k3s-containerd-${K3S_CONTAINERD_VERSION}.tar.gz" -C "${CONTAINERD_DIR}" || die |
89 |
+ if has_version -b ">=dev-lang/go-1.18"; then |
90 |
+ # https://bugs.gentoo.org/835601 |
91 |
+ sed -i -e "/github.com\/containerd\/containerd => .\/.empty-mod/d" "${CONTAINERD_DIR}"/{go.mod,vendor/modules.txt} || die |
92 |
+ fi |
93 |
+ |
94 |
+ local RUNC_DIR=build/src/github.com/opencontainers/runc |
95 |
+ mkdir -p "${RUNC_DIR}" || die |
96 |
+ tar -x --strip-components=1 -f "${DISTDIR}/k3s-runc-${K3S_RUNC_VERSION}.tar.gz" -C "${RUNC_DIR}" || die |
97 |
+ |
98 |
+ # Disable download for files fetched via SRC_URI. |
99 |
+ sed -e 's:^[[:space:]]*curl:#\0:' \ |
100 |
+ -e 's:^[[:space:]]*git:#\0:' \ |
101 |
+ -e 's:^rm -rf \${CHARTS_DIR}:#\0:' \ |
102 |
+ -e 's:^rm -rf \${RUNC_DIR}:#\0:' \ |
103 |
+ -e 's:^rm -rf \${CONTAINERD_DIR}:#\0:' \ |
104 |
+ -e 's:yq e :yq -r :' \ |
105 |
+ -e "s:^setup_tmp\$:TMP_DIR=${S}/build/static/charts:" \ |
106 |
+ -i scripts/download || die |
107 |
+ sed -e '/scripts\/build-upload/d' -i scripts/package-cli || die |
108 |
+ pattern='git clone -b $VERSION_CNIPLUGINS https://github.com/rancher/plugins.git $WORKDIR' |
109 |
+ filename=scripts/build |
110 |
+ grep -qF "${pattern}" "${filename}" || \ |
111 |
+ die "failed to locate plugins clone command" |
112 |
+ sed -e "s|${pattern}|mkdir -p \"\$WORKDIR\" \\&\\& tar -xzf \"${S}/cache/k3s-cni-plugins-${K3S_CNIPLUGINS_VERSION}.tar.gz\" --strip-components=1 -C \"\$WORKDIR\"|" \ |
113 |
+ -e 's|rm -rf $TMPDIR||' \ |
114 |
+ -i "${filename}" || die |
115 |
+ sed -e 's:/usr/local/bin:/usr/bin:g' -i k3s.service || die |
116 |
+} |
117 |
+ |
118 |
+src_compile() { |
119 |
+ mkdir -p build/data || die |
120 |
+ "${BASH}" -ex ./scripts/download || die |
121 |
+ ./scripts/build || die |
122 |
+ ./scripts/package-cli || die |
123 |
+} |
124 |
+ |
125 |
+src_install() { |
126 |
+ dobin "dist/artifacts/${PN}" |
127 |
+ use kubectl-symlink && dosym k3s /usr/bin/kubectl |
128 |
+ systemd_dounit "${FILESDIR}/${PN}.service" |
129 |
+ newinitd "${FILESDIR}/${PN}.initd" "${PN}" |
130 |
+ newconfd "${FILESDIR}/${PN}.confd" "${PN}" |
131 |
+ insinto /etc/logrotate.d |
132 |
+ newins "${FILESDIR}/${PN}.logrotated" "${PN}" |
133 |
+ dodoc README.md |
134 |
+} |