1 # Configuration for Gitlab-CI.
2 # Builds appear on https://gitlab.com/buildroot.org/buildroot/pipelines
3 # The .gitlab-ci.yml file is generated from .gitlab-ci.yml.in.
4 # It needs to be regenerated every time a defconfig is added, using
5 # "make .gitlab-ci.yml".
9 .defconfig_script: &defconfig_script
10 - echo 'Configure Buildroot'
11 - make ${CI_BUILD_NAME}
12 - echo 'Build buildroot'
14 make > >(tee build.log |grep '>>>') 2>&1 || {
15 echo 'Failed build last output'
22 - mv .gitlab-ci.yml .gitlab-ci.yml.orig
24 - diff -u .gitlab-ci.yml.orig .gitlab-ci.yml
27 # get-developers should print just "No action specified"; if it prints
28 # anything else, it's a parse error.
29 # The initial ! is removed by YAML so we need to quote it.
31 - "! utils/get-developers | grep -v 'No action specified'"
33 .defconfig: &defconfig
34 # Running the defconfigs for every push is too much, so limit to
35 # explicit triggers through the API.
39 script: *defconfig_script
46 - output/build/build-time.log
47 - output/build/packages-file-list.txt
49 .runtime_test: &runtime_test
50 # Keep build directories so the rootfs can be an artifact of the job. The
51 # runner will clean up those files for us.
52 # Multiply every emulator timeout by 10 to avoid sporadic failures in
54 script: ./support/testing/run-tests -o test-output/ -d test-dl/ -k --timeout-multiplier 10 ${CI_BUILD_NAME}
60 - test-output/*/images/*