Initial commit
commit
3c9c274773
|
@ -0,0 +1,35 @@
|
||||||
|
ARG FEDORA
|
||||||
|
FROM registry.fedoraproject.org/fedora:${FEDORA} AS build
|
||||||
|
|
||||||
|
ARG KVER
|
||||||
|
|
||||||
|
# Download a specific version of kernel-devel from Koji
|
||||||
|
RUN --mount=type=cache,destination=/var/cache/dnf \
|
||||||
|
dnf install -y koji \
|
||||||
|
&& koji download-build --rpm --arch=$(uname -m) kernel-devel-${KVER} \
|
||||||
|
&& :
|
||||||
|
|
||||||
|
# Install kernel-devel and git
|
||||||
|
RUN --mount=type=cache,destination=/var/cache/dnf \
|
||||||
|
dnf install -y \
|
||||||
|
--setopt install_weak_deps=0 \
|
||||||
|
./kernel-devel-*.rpm \
|
||||||
|
git-core \
|
||||||
|
&& :
|
||||||
|
|
||||||
|
RUN install -o 101 -g 101 -d /usr/src/gasket-driver
|
||||||
|
|
||||||
|
USER 101:101
|
||||||
|
|
||||||
|
# Build the gasket kernel module
|
||||||
|
RUN git clone https://github.com/google/gasket-driver.git /usr/src/gasket-driver
|
||||||
|
RUN make \
|
||||||
|
-C /usr/src/kernels/$(rpm -q --qf %{V}-%{R}.%{ARCH} kernel-devel) \
|
||||||
|
M=/usr/src/gasket-driver/src \
|
||||||
|
modules
|
||||||
|
|
||||||
|
FROM busybox
|
||||||
|
|
||||||
|
COPY --from=build /usr/src/gasket-driver/src/*.ko /
|
||||||
|
|
||||||
|
CMD insmod gasket.ko && insmod apex.ko
|
|
@ -0,0 +1,27 @@
|
||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
kver=$(uname -r)
|
||||||
|
do_push=false
|
||||||
|
while [ $# -gt 0 ]; do
|
||||||
|
case "$1" in
|
||||||
|
--push)
|
||||||
|
do_push=true
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
kver="$1"
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
shift
|
||||||
|
done
|
||||||
|
|
||||||
|
fedora=$(echo "${kver}" | sed -rn 's/.*fc([0-9]+).*/\1/p')
|
||||||
|
name=git.pyrocufflink.net/containerimages/gasket-driver
|
||||||
|
|
||||||
|
podman build \
|
||||||
|
-t ${name}:${kver} \
|
||||||
|
--build-arg FEDORA=${fedora} \
|
||||||
|
--build-arg KVER=${kver} \
|
||||||
|
.
|
||||||
|
if ${do_push}; then
|
||||||
|
podman push ${name}:${kver}
|
||||||
|
fi
|
Loading…
Reference in New Issue