Gentoo Archives: gentoo-commits

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