# It needs to be regenerated every time a defconfig is added, using
# "make .gitlab-ci.yml".
-image: debian:stable
-
-before_script:
- - dpkg --add-architecture i386
- # The container has no package lists, so need to update first
- - apt-get update -qq
- - apt-get install -y -qq --no-install-recommends
- build-essential locales bc ca-certificates file rsync gcc-multilib
- git bzr cvs mercurial subversion libc6:i386 unzip wget cpio
- python-nose2 python-pexpect qemu-system-arm qemu-system-x86
- # To be able to generate a toolchain with locales, enable one UTF-8 locale
- - sed -i 's/# \(en_US.UTF-8\)/\1/' /etc/locale.gen
- - /usr/sbin/locale-gen
+image: buildroot/base:20180205.0730
.defconfig_script: &defconfig_script
- echo 'Configure Buildroot'
- - make ${CI_BUILD_NAME}
+ - make ${CI_JOB_NAME}
- echo 'Build buildroot'
- |
make > >(tee build.log |grep '>>>') 2>&1 || {
script:
- "! utils/get-developers | grep -v 'No action specified'"
+check-package:
+ script:
+ - find . -type f \( -name '*.mk' -o -name '*.hash' \) -exec ./utils/check-package {} +
+
.defconfig: &defconfig
# Running the defconfigs for every push is too much, so limit to
# explicit triggers through the API.
- output/build/packages-file-list.txt
.runtime_test: &runtime_test
- script: ./support/testing/run-tests -o test-output/ -d test-dl/ ${CI_BUILD_NAME}
+ # Keep build directories so the rootfs can be an artifact of the job. The
+ # runner will clean up those files for us.
+ # Multiply every emulator timeout by 10 to avoid sporadic failures in
+ # elastic runners.
+ script: ./support/testing/run-tests -o test-output/ -d test-dl/ -k --timeout-multiplier 10 ${CI_JOB_NAME}
artifacts:
when: always
expire_in: 2 weeks
paths:
- test-output/*.log
+ - test-output/*/.config
+ - test-output/*/images/*