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