From 785a255ef24720f5aa33e2bef664ba60329fbb67 Mon Sep 17 00:00:00 2001 From: Paul Buetow Date: Thu, 19 Mar 2026 16:16:23 +0200 Subject: build: add archive Docker make target --- Dockerfile.archive.in | 3 +++ Dockerfile.in | 3 +++ Makefile | 8 ++++++++ 3 files changed, 14 insertions(+) diff --git a/Dockerfile.archive.in b/Dockerfile.archive.in index ab654ff..3214792 100644 --- a/Dockerfile.archive.in +++ b/Dockerfile.archive.in @@ -43,6 +43,9 @@ RUN set -eux; \ "kernel-devel-${kernel}" \ "kernel-debuginfo-${kernel}" \ "kernel-debuginfo-common-${arch}-${kernel}"; \ + mkdir -p "/lib/modules/${kernel}"; \ + ln -s "/usr/src/kernels/${kernel}" "/lib/modules/${kernel}/build"; \ + ln -s "/usr/src/kernels/${kernel}" "/lib/modules/${kernel}/source"; \ dnf clean all WORKDIR /ioriot diff --git a/Dockerfile.in b/Dockerfile.in index c0affb6..03c679c 100644 --- a/Dockerfile.in +++ b/Dockerfile.in @@ -20,6 +20,9 @@ RUN set -eux; \ "kernel-devel-${kernel}" \ "kernel-debuginfo-${kernel}" \ "kernel-debuginfo-common-${arch}-${kernel}"; \ + mkdir -p "/lib/modules/${kernel}"; \ + ln -s "/usr/src/kernels/${kernel}" "/lib/modules/${kernel}/build"; \ + ln -s "/usr/src/kernels/${kernel}" "/lib/modules/${kernel}/source"; \ dnf clean all WORKDIR /ioriot diff --git a/Makefile b/Makefile index b801918..66b4e07 100644 --- a/Makefile +++ b/Makefile @@ -33,6 +33,14 @@ dockerbuild: checkdockerkernel sed s/KERNEL/$(KERNEL)/ Dockerfile.in > Dockerfile docker build . -t ioriot:$(KERNEL) docker run -v $(PWD)/docker/opt:/opt -e 'KERNEL=$(KERNEL)' -it ioriot:$(KERNEL) make all test install +dockerbuildarchive: checkdockerkernel + bash -c 'test ! -d $(PWD)/docker/opt/ && mkdir -p $(PWD)/docker/opt/; exit 0' + bash -c 'test -f /etc/fedora-release && sudo chcon -Rt svirt_sandbox_file_t $(PWD)/docker/opt; exit 0' + bash -c 'test -f /etc/centos-release && sudo chcon -Rt svirt_sandbox_file_t $(PWD)/docker/opt; exit 0' + bash -c 'test -f /etc/redhat-release && sudo chcon -Rt svirt_sandbox_file_t $(PWD)/docker/opt; exit 0' + sed s/KERNEL/$(KERNEL)/ Dockerfile.archive.in > Dockerfile.archive + docker build --network host -f Dockerfile.archive . -t ioriot-archive:$(KERNEL) + docker run --rm -v $(PWD)/docker/opt:/opt -e 'KERNEL=$(KERNEL)' ioriot-archive:$(KERNEL) make all test install dockerclean: bash -c 'test -d $(PWD)/docker && rm -Rfv $(PWD)/docker; exit 0' jenkins: checkdockerkernel -- cgit v1.2.3