diff options
| -rw-r--r-- | Dockerfile.archive.in | 3 | ||||
| -rw-r--r-- | Dockerfile.in | 3 | ||||
| -rw-r--r-- | Makefile | 8 |
3 files changed, 14 insertions, 0 deletions
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 @@ -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 |
