util/docker: Split coreboot-sdk test into its own docker image

This allows the coreboot-sdk docker image to build properly even if the
testing fails, and keeps the added overhead out of the coreboot-sdk
image.

Signed-off-by: Martin Roth <gaumless@gmail.com>
Change-Id: I6488799256f57ad64e14c93e7317b7ad2a71781c
Reviewed-on: https://review.coreboot.org/c/coreboot/+/75494
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Felix Singer <service+coreboot-gerrit@felixsinger.de>
This commit is contained in:
Martin Roth 2023-05-27 18:13:51 -06:00 committed by Martin L Roth
parent 4aa31ac3f9
commit 5a4cedb9c1
3 changed files with 38 additions and 34 deletions

View File

@ -48,6 +48,11 @@ coreboot-sdk: test-docker
sed "s/{{CROSSGCC_PARAM}}/$(COREBOOT_CROSSGCC_PARAM)/g" | \
$(DOCKER) build -t coreboot/coreboot-sdk:$(COREBOOT_IMAGE_TAG) -
coreboot-sdk-test: coreboot-sdk test-docker
@echo "Testing coreboot SDK $(crossgcc_version), built from commit $(DOCKER_COMMIT)"
cat coreboot-sdk-test/Dockerfile | \
$(DOCKER) build -t coreboot/coreboot-sdk-test:$(COREBOOT_IMAGE_TAG) -
upload-coreboot-sdk: test-docker-login
$(DOCKER) push coreboot/coreboot-sdk:$(COREBOOT_IMAGE_TAG)

View File

@ -0,0 +1,33 @@
FROM coreboot-sdk
# Test the built image
RUN mkdir -p /tmp/work && \
cd /tmp/work && \
git clone https://review.coreboot.org/bios_extract.git && \
make -C bios_extract && \
git clone https://review.coreboot.org/memtest86plus.git && \
make -C memtest86plus && \
git clone https://review.coreboot.org/flashrom.git && \
CONFIG_EVERYTHING=yes make -C flashrom && \
git clone https://review.coreboot.org/em100.git && \
make -C em100 && \
git clone https://review.coreboot.org/coreboot.git && \
(cd coreboot && git submodule update --init --checkout ) && \
make -C coreboot CPUS=$(nproc) test-abuild
RUN \
cd /tmp/work && \
make -C coreboot olddefconfig && \
make -C coreboot all -j && \
make -C coreboot printall && \
make -C coreboot filelist && \
make -C coreboot ctags-project && \
make -C coreboot cscope-project
RUN \
cd /tmp/work && \
make -C coreboot test-payloads&& \
make -C coreboot test-tools -j && \
make -C coreboot test-lint -j && \
make -C coreboot test-cleanup -j && \
cd && \
rm -rf /tmp/work/

View File

@ -113,39 +113,5 @@ ENV SDK_VERSION={{SDK_VERSION}}
ENV SDK_COMMIT={{DOCKER_COMMIT}}
USER coreboot
FROM coreboot-sdk
# Test the built image
RUN mkdir -p /tmp/work && \
cd /tmp/work && \
git clone https://review.coreboot.org/bios_extract.git && \
make -C bios_extract && \
git clone https://review.coreboot.org/memtest86plus.git && \
make -C memtest86plus && \
git clone https://review.coreboot.org/flashrom.git && \
CONFIG_EVERYTHING=yes make -C flashrom && \
git clone https://review.coreboot.org/em100.git && \
make -C em100 && \
git clone https://review.coreboot.org/coreboot.git && \
(cd coreboot && git submodule update --init --checkout ) && \
make -C coreboot CPUS=$(nproc) test-abuild
RUN \
cd /tmp/work && \
make -C coreboot olddefconfig && \
make -C coreboot all -j && \
make -C coreboot printall && \
make -C coreboot filelist && \
make -C coreboot ctags-project && \
make -C coreboot cscope-project
RUN \
cd /tmp/work && \
make -C coreboot test-payloads&& \
make -C coreboot test-tools -j && \
make -C coreboot test-lint -j && \
make -C coreboot test-cleanup -j && \
cd && \
rm -rf /tmp/work/
FROM coreboot-sdk
VOLUME /home/coreboot/.ccache