# Grab our configured image. The source for this is found at:
# https://gitlab.denx.de/u-boot/gitlab-ci-runner
-image: trini/u-boot-gitlab-ci-runner:bionic-20200112-07Feb2020
+image: trini/u-boot-gitlab-ci-runner:bionic-20200311-10Apr2020
# We run some tests in different order, to catch some failures quicker.
stages:
- grub-mkimage --prefix="" -o ~/grub_x86.efi -O i386-efi normal echo lsefimmap lsefi lsefisystab efinet tftp minicmd
- grub-mkimage --prefix="" -o ~/grub_x64.efi -O x86_64-efi normal echo lsefimmap lsefi lsefisystab efinet tftp minicmd
- cp /opt/grub/grubriscv64.efi ~/grub_riscv64.efi
+ - cp /opt/grub/grubriscv32.efi ~/grub_riscv32.efi
- cp /opt/grub/grubaa64.efi ~/grub_arm64.efi
- cp /opt/grub/grubarm.efi ~/grub_arm.efi
+ - if [[ "${TEST_PY_BD}" == "qemu-riscv32_spl" ]]; then
+ wget -O - https://github.com/riscv/opensbi/releases/download/v0.6/opensbi-0.6-rv32-bin.tar.xz | tar -C /tmp -xJ;
+ export OPENSBI=/tmp/opensbi-0.6-rv32-bin/platform/qemu/virt/firmware/fw_dynamic.bin;
+ fi
+ - if [[ "${TEST_PY_BD}" == "qemu-riscv64_spl" ]]; then
+ wget -O - https://github.com/riscv/opensbi/releases/download/v0.6/opensbi-0.6-rv64-bin.tar.xz | tar -C /tmp -xJ;
+ export OPENSBI=/tmp/opensbi-0.6-rv64-bin/platform/qemu/virt/firmware/fw_dynamic.bin;
+ fi
after_script:
- rm -rf /tmp/uboot-test-hooks /tmp/venv
tags: [ 'all' ]
stage: world build
script:
- - virtualenv /tmp/venv
+ - virtualenv -p /usr/bin/python3 /tmp/venv
- . /tmp/venv/bin/activate
- pip install pyelftools
- ret=0;
# search for HACK within source tree and ignore HACKKIT board
- grep -r HACK . | grep -v HACKKIT
+# build HTML documentation
+htmldocs:
+ tags: [ 'all' ]
+ stage: testsuites
+ script:
+ - make htmldocs
+
# some statistics about the code base
sloccount:
tags: [ 'all' ]
script:
- make tools-only_config envtools -j$(nproc)
-Run binman, buildman, dtoc and patman testsuites:
+Run binman, buildman, dtoc, Kconfig and patman testsuites:
tags: [ 'all' ]
stage: testsuites
script:
- git config --global user.name "GitLab CI Runner";
git config --global user.email trini@konsulko.com;
export USER=gitlab;
- virtualenv /tmp/venv;
+ virtualenv -p /usr/bin/python3 /tmp/venv;
. /tmp/venv/bin/activate;
- pip install pyelftools;
+ pip install pyelftools pytest;
export UBOOT_TRAVIS_BUILD_DIR=/tmp/.bm-work/sandbox_spl;
export PYTHONPATH="${UBOOT_TRAVIS_BUILD_DIR}/scripts/dtc/pylibfdt";
export PATH="${UBOOT_TRAVIS_BUILD_DIR}/scripts/dtc:${PATH}";
./tools/binman/binman --toolpath ${UBOOT_TRAVIS_BUILD_DIR}/tools test;
./tools/buildman/buildman -t;
./tools/dtoc/dtoc -t;
- ./tools/patman/patman --test
+ ./tools/patman/patman --test;
+ make testconfig
# Test sandbox with test.py
sandbox test.py:
BUILDMAN: "^qemu-ppce500$"
<<: *buildman_and_testpy_dfn
+qemu-riscv32 test.py:
+ tags: [ 'all' ]
+ variables:
+ TEST_PY_BD: "qemu-riscv32"
+ TEST_PY_TEST_SPEC: "not sleep"
+ BUILDMAN: "^qemu-riscv32$"
+ <<: *buildman_and_testpy_dfn
+
qemu-riscv64 test.py:
tags: [ 'all' ]
variables:
BUILDMAN: "^qemu-riscv64$"
<<: *buildman_and_testpy_dfn
+qemu-riscv32_spl test.py:
+ tags: [ 'all' ]
+ variables:
+ TEST_PY_BD: "qemu-riscv32_spl"
+ TEST_PY_TEST_SPEC: "not sleep"
+ BUILDMAN: "^qemu-riscv32_spl$"
+ <<: *buildman_and_testpy_dfn
+
+qemu-riscv64_spl test.py:
+ tags: [ 'all' ]
+ variables:
+ TEST_PY_BD: "qemu-riscv64_spl"
+ TEST_PY_TEST_SPEC: "not sleep"
+ BUILDMAN: "^qemu-riscv64_spl$"
+ <<: *buildman_and_testpy_dfn
+
qemu-x86 test.py:
tags: [ 'all' ]
variables:
BUILDMAN: "^qemu-x86_64$"
<<: *buildman_and_testpy_dfn
-zynq_zc702 test.py:
+xilinx_zynq_virt test.py:
tags: [ 'all' ]
variables:
- TEST_PY_BD: "zynq_zc702"
+ TEST_PY_BD: "xilinx_zynq_virt"
TEST_PY_TEST_SPEC: "not sleep"
TEST_PY_ID: "--id qemu"
- BUILDMAN: "^zynq_zc702$"
+ BUILDMAN: "^xilinx_zynq_virt$"
<<: *buildman_and_testpy_dfn
xilinx_versal_virt test.py: