]> rtime.felk.cvut.cz Git - coffee/buildroot.git/blob - .gitlab-ci.yml.in
overlay: Enable useful munin plugins
[coffee/buildroot.git] / .gitlab-ci.yml.in
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".
6
7 image: buildroot/base:20180205.0730
8
9 .defconfig_script: &defconfig_script
10     - echo 'Configure Buildroot'
11     - make ${CI_JOB_NAME}
12     - echo 'Build buildroot'
13     - |
14         make > >(tee build.log |grep '>>>') 2>&1 || {
15             echo 'Failed build last output'
16             tail -200 build.log
17             exit 1
18         }
19
20 check-gitlab-ci.yml:
21     script:
22         - mv .gitlab-ci.yml .gitlab-ci.yml.orig
23         - make .gitlab-ci.yml
24         - diff -u .gitlab-ci.yml.orig .gitlab-ci.yml
25
26 check-DEVELOPERS:
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.
30     script:
31         - "! utils/get-developers | grep -v 'No action specified'"
32
33 check-package:
34     script:
35         - find . -type f \( -name '*.mk' -o -name '*.hash' \) -exec ./utils/check-package {} +
36
37 .defconfig: &defconfig
38     # Running the defconfigs for every push is too much, so limit to
39     # explicit triggers through the API.
40     only:
41         - triggers
42         - tags
43     script: *defconfig_script
44     artifacts:
45         when: always
46         expire_in: 2 weeks
47         paths:
48             - build.log
49             - output/images/
50             - output/build/build-time.log
51             - output/build/packages-file-list.txt
52
53 .runtime_test: &runtime_test
54     # Keep build directories so the rootfs can be an artifact of the job. The
55     # runner will clean up those files for us.
56     # Multiply every emulator timeout by 10 to avoid sporadic failures in
57     # elastic runners.
58     script: ./support/testing/run-tests -o test-output/ -d test-dl/ -k --timeout-multiplier 10 ${CI_JOB_NAME}
59     artifacts:
60         when: always
61         expire_in: 2 weeks
62         paths:
63             - test-output/*.log
64             - test-output/*/.config
65             - test-output/*/images/*