app-containers/cri-o: add 1.29.2

Signed-off-by: Zac Medico <zmedico@gentoo.org>
This commit is contained in:
Zac Medico 2024-04-21 23:01:09 -07:00
parent 036db05b4c
commit b8e49df71e
No known key found for this signature in database
GPG Key ID: D075FB8C104A3D20
2 changed files with 103 additions and 0 deletions

View File

@ -1 +1,2 @@
DIST cri-o-1.29.0.tar.gz 21371695 BLAKE2B f670605f07446a78ce04f497207e0205aee23138be448bdc2d2fb172691e5bb309234daa1c5c0adbb37dcb24e9177f24f62e01e183ac6443f48054b9e65b6dfe SHA512 bb83c906964e61ae68219e1374a3e0810fc982fd0389549e6fe3128156af8d5c6effce4217de4d33d3e29e986db630525694093ca3a99b6065385e1e37927fef
DIST cri-o-1.29.2.tar.gz 21203342 BLAKE2B deec88f8a505bdc1f184a3512da7f6d4b78499c4a66cacf0651a9fe56b62d33d62eaaf2ce68e5d8e856e13988b26e076ab69c24b30a62b42d88656441d948fcb SHA512 dd4105e0097a098b9009b00b59a8e8aeaad85b07177305e2e4b2c68a583a0c342e7a615f47a8cbcb7f179035f2c279573069f15aa1e91e491fe770eec1df326c

View File

@ -0,0 +1,102 @@
# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
EGIT_COMMIT=d317b5dc918bbfbc78481072a0d93e572aa8d0e8
inherit go-module
DESCRIPTION="OCI-based implementation of Kubernetes Container Runtime Interface"
HOMEPAGE="https://cri-o.io/"
SRC_URI="https://github.com/cri-o/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="Apache-2.0 BSD BSD-2 CC-BY-SA-4.0 ISC MIT MPL-2.0"
SLOT="0"
KEYWORDS="~amd64 ~arm64"
IUSE="btrfs +device-mapper selinux systemd"
COMMON_DEPEND="
app-crypt/gpgme:=
app-containers/conmon
app-containers/runc
dev-libs/glib:=
dev-libs/libassuan:=
dev-libs/libgpg-error:=
net-firewall/conntrack-tools
net-firewall/iptables
app-containers/cni-plugins
net-misc/socat
sys-apps/iproute2
sys-libs/libseccomp:=
btrfs? ( sys-fs/btrfs-progs )
device-mapper? ( sys-fs/lvm2:= )
selinux? ( sys-libs/libselinux:= )
systemd? ( sys-apps/systemd:= )"
DEPEND="
${COMMON_DEPEND}
dev-go/go-md2man"
RDEPEND="${COMMON_DEPEND}
!<app-containers/podman-1.3.2-r1
selinux? ( sec-policy/selinux-crio )"
src_prepare() {
default
sed -e '/^export GOPROXY=/d' \
-e '/^GIT_.*/d' \
-e '/ git diff --exit-code/d' \
-e 's/$(GO) build -i/$(GO) build -v -work -x/' \
-e 's/\${GIT_COMMIT}/'${EGIT_COMMIT}'/' \
-e "s|^GIT_COMMIT := .*|GIT_COMMIT := ${EGIT_COMMIT}|" \
-e "s|^COMMIT_NO := .*|COMMIT_NO := ${EGIT_COMMIT}|" \
-i Makefile || die
echo ".NOTPARALLEL: binaries docs" >> Makefile || die
sed -e 's:/usr/local/bin:/usr/bin:' \
-i contrib/systemd/* || die
}
src_compile() {
[[ -f hack/btrfs_installed_tag.sh ]] || die
use btrfs || { echo -e "#!/bin/sh\necho exclude_graphdriver_btrfs" > \
hack/btrfs_installed_tag.sh || die; }
[[ -f hack/libdm_installed.sh ]] || die
use device-mapper || { echo -e "#!/bin/sh\necho exclude_graphdriver_devicemapper" > \
hack/libdm_installed.sh || die; }
[[ -f hack/selinux_tag.sh ]] || die
use selinux || { echo -e "#!/bin/sh\ntrue" > \
hack/selinux_tag.sh || die; }
mkdir -p bin || die
emake all \
GOBIN="${S}/bin" \
GO_BUILD="go build ${GOFLAGS}" \
GO_MD2MAN="$(which go-md2man)"
}
src_install() {
emake install install.config install.systemd \
DESTDIR="${D}" \
GO_MD2MAN="$(which go-md2man)" \
PREFIX="${D}${EPREFIX}/usr"
keepdir /etc/crio
mv "${ED}/etc/crio/crio.conf"{,.example} || die
newinitd "${FILESDIR}/crio.initd" crio
insinto /etc/logrotate.d
newins "${FILESDIR}/${PN}.logrotated" "${PN}"
# Suppress crio log error messages triggered if these don't exist.
keepdir /etc/containers/oci/hooks.d
keepdir /usr/share/containers/oci/hooks.d
# Suppress crio "Missing CNI default network" log message.
keepdir /etc/cni/net.d
insinto /etc/cni/net.d
doins contrib/cni/99-loopback.conflist
}