]> Git Repo - J-u-boot.git/blame - .gitlab-ci.yml
GitLab: Add a default workflow stanza
[J-u-boot.git] / .gitlab-ci.yml
CommitLineData
1a62a722
TR
1# SPDX-License-Identifier: GPL-2.0+
2
8b0b5017 3variables:
77026080
TR
4 DEFAULT_ALL_TAG: "all"
5 DEFAULT_ARM64_TAG: "arm64"
6 DEFAULT_AMD64_TAG: "amd64"
7 DEFAULT_FAST_AMD64_TAG: "fast amd64"
74bcbb13 8 MIRROR_DOCKER: docker.io
1888b096 9 SJG_LAB: ""
0025e7e4 10 PLATFORM: linux/amd64,linux/arm64
8b0b5017
PH
11
12default:
13 tags:
77026080 14 - ${DEFAULT_ALL_TAG}
8b0b5017 15
e64fd07c
TR
16workflow:
17 rules:
18 - when: always
19
cb735173
JS
20# Grab our configured image. The source for this is found
21# in the u-boot tree at tools/docker/Dockerfile
c33be116 22image: ${MIRROR_DOCKER}/trini/u-boot-gitlab-ci-runner:jammy-20240808-03Dec2024
1a62a722
TR
23
24# We run some tests in different order, to catch some failures quicker.
25stages:
1a62a722 26 - testsuites
b29cb058 27 - test.py
1888b096 28 - sjg-lab
1a62a722
TR
29 - world build
30
31.buildman_and_testpy_template: &buildman_and_testpy_dfn
1a62a722 32 stage: test.py
58b35850 33 retry: 2 # QEMU may be too slow, etc.
399f739b
AC
34 rules:
35 - when: always
1a62a722
TR
36 before_script:
37 # Clone uboot-test-hooks
bd181a24 38 - git config --global --add safe.directory "${CI_PROJECT_DIR}"
85ae52b9 39 - git clone --depth=1 https://source.denx.de/u-boot/u-boot-test-hooks /tmp/uboot-test-hooks
fd10d156
JF
40 # qemu_arm64_lwip_defconfig is the same as qemu_arm64 but with NET_LWIP enabled.
41 # The test config and the boardenv file from qemu_arm64 can be re-used so create symlinks
42 - ln -s conf.qemu_arm64_na /tmp/uboot-test-hooks/bin/travis-ci/conf.qemu_arm64_lwip_na
1a62a722
TR
43 - ln -s travis-ci /tmp/uboot-test-hooks/bin/`hostname`
44 - ln -s travis-ci /tmp/uboot-test-hooks/py/`hostname`
49fb28a4 45 - if [[ "${TEST_PY_BD}" == "qemu-riscv32_spl" ]]; then
a966634e
HS
46 wget -O - https://github.com/riscv-software-src/opensbi/releases/download/v1.3.1/opensbi-1.3.1-rv-bin.tar.xz | tar -C /tmp -xJ;
47 export OPENSBI=/tmp/opensbi-1.3.1-rv-bin/share/opensbi/ilp32/generic/firmware/fw_dynamic.bin;
49fb28a4 48 fi
0e60b3a7 49 - if [[ "${TEST_PY_BD}" == "qemu-riscv64_spl" ]] || [[ "${TEST_PY_BD}" == "sifive_unleashed" ]]; then
a966634e
HS
50 wget -O - https://github.com/riscv-software-src/opensbi/releases/download/v1.3.1/opensbi-1.3.1-rv-bin.tar.xz | tar -C /tmp -xJ;
51 export OPENSBI=/tmp/opensbi-1.3.1-rv-bin/share/opensbi/lp64/generic/firmware/fw_dynamic.bin;
49fb28a4 52 fi
25081abf
PR
53 - if [[ "${TEST_PY_BD}" == "qemu-arm-sbsa" ]]; then
54 wget -O /tmp/bl1.bin https://artifacts.codelinaro.org/artifactory/linaro-419-sbsa-ref/latest/tf-a/bl1.bin;
55 wget -O /tmp/fip.bin https://artifacts.codelinaro.org/artifactory/linaro-419-sbsa-ref/latest/tf-a/fip.bin;
2800aecc 56 export BINMAN_INDIRS=/tmp;
25081abf 57 fi
b29cb058 58
1a62a722 59 after_script:
26c56f1c 60 - cp -v /tmp/${TEST_PY_BD}/*.{html,css,xml} .
24df1b14 61 - rm -rf /tmp/uboot-test-hooks /tmp/venv
1a62a722 62 script:
dd5c954e 63 # If we've been asked to use clang only do one configuration.
4e32fed4 64 - export UBOOT_TRAVIS_BUILD_DIR=/tmp/${TEST_PY_BD}
1aa168ca 65 - echo BUILD_ENV ${BUILD_ENV}
9cea4797
SG
66 - if [ -n "${BUILD_ENV}" ]; then
67 export ${BUILD_ENV};
68 fi
7ec1255c
SG
69 - tools/buildman/buildman -o ${UBOOT_TRAVIS_BUILD_DIR} -w -E -W -e
70 --board ${TEST_PY_BD} ${OVERRIDE}
5fb78e0e
TR
71 - cp /opt/grub/grub_x86.efi $UBOOT_TRAVIS_BUILD_DIR/
72 - cp /opt/grub/grub_x64.efi $UBOOT_TRAVIS_BUILD_DIR/
82560ae2 73 - cp /opt/grub/grubriscv64.efi $UBOOT_TRAVIS_BUILD_DIR/grub_riscv64.efi
82560ae2
HS
74 - cp /opt/grub/grubaa64.efi $UBOOT_TRAVIS_BUILD_DIR/grub_arm64.efi
75 - cp /opt/grub/grubarm.efi $UBOOT_TRAVIS_BUILD_DIR/grub_arm.efi
0e60b3a7
BM
76 # create sdcard / spi-nor images for sifive unleashed using genimage
77 - if [[ "${TEST_PY_BD}" == "sifive_unleashed" ]]; then
78 mkdir -p root;
79 cp ${UBOOT_TRAVIS_BUILD_DIR}/spl/u-boot-spl.bin .;
80 cp ${UBOOT_TRAVIS_BUILD_DIR}/u-boot.itb .;
81 rm -rf tmp;
82 genimage --inputpath . --config board/sifive/unleashed/genimage_sdcard.cfg;
83 cp images/sdcard.img ${UBOOT_TRAVIS_BUILD_DIR}/;
84 rm -rf tmp;
85 genimage --inputpath . --config board/sifive/unleashed/genimage_spi-nor.cfg;
86 cp images/spi-nor.img ${UBOOT_TRAVIS_BUILD_DIR}/;
87 fi
bfb2a7fb 88 - if [[ "${TEST_PY_BD}" == "coreboot" ]]; then
3a79c91f
TR
89 cp /opt/coreboot/coreboot.rom ${UBOOT_TRAVIS_BUILD_DIR}/coreboot.rom;
90 /opt/coreboot/cbfstool ${UBOOT_TRAVIS_BUILD_DIR}/coreboot.rom remove -n fallback/payload;
91 /opt/coreboot/cbfstool ${UBOOT_TRAVIS_BUILD_DIR}/coreboot.rom add-flat-binary -f ${UBOOT_TRAVIS_BUILD_DIR}/u-boot.bin -n fallback/payload -c LZMA -l 0x1110000 -e 0x1110000;
bfb2a7fb 92 fi
085b8978
TR
93 - virtualenv -p /usr/bin/python3 /tmp/venv
94 - . /tmp/venv/bin/activate
95 - pip install -r test/py/requirements.txt
4080d097 96 # "${var:+"-k $var"}" expands to "" if $var is empty, "-k $var" if not
4e32fed4 97 - export PATH=/opt/qemu/bin:/tmp/uboot-test-hooks/bin:${PATH};
1a62a722 98 export PYTHONPATH=/tmp/uboot-test-hooks/py/travis-ci;
f3092473 99 ./test/py/test.py -ra --bd ${TEST_PY_BD} ${TEST_PY_ID}
4080d097 100 ${TEST_PY_TEST_SPEC:+"-k ${TEST_PY_TEST_SPEC}"}
cec1e856 101 --build-dir "$UBOOT_TRAVIS_BUILD_DIR"
26c56f1c 102 --junitxml=/tmp/${TEST_PY_BD}/results.xml
e5670730
MV
103 artifacts:
104 when: always
105 paths:
106 - "*.html"
107 - "*.css"
26c56f1c
TR
108 reports:
109 junit: results.xml
e5670730 110 expire_in: 1 week
1a62a722 111
77026080 112build all platforms in a single job:
1a62a722 113 stage: world build
399f739b
AC
114 rules:
115 - when: always
77026080
TR
116 parallel:
117 matrix:
118 - HOST: "arm64"
119 - HOST: "fast amd64"
120 tags:
121 - ${HOST}
9f7bda10
TR
122 script:
123 - ret=0;
bd181a24 124 git config --global --add safe.directory "${CI_PROJECT_DIR}";
f586cdae 125 pip install -r tools/buildman/requirements.txt;
77026080 126 ./tools/buildman/buildman -o /tmp -PEWM -x xtensa || ret=$?;
dd5c954e 127 if [[ $ret -ne 0 ]]; then
b52f5a19 128 ./tools/buildman/buildman -o /tmp -seP;
4c749971
TR
129 exit $ret;
130 fi;
1a62a722 131
399f739b 132.testsuites:
c1a7de57 133 stage: testsuites
399f739b
AC
134 rules:
135 - when: always
136
137check for new CONFIG symbols outside Kconfig:
138 extends: .testsuites
c1a7de57 139 script:
bb9b9c1e
TR
140 - git config --global --add safe.directory "${CI_PROJECT_DIR}"
141 # If grep succeeds and finds a match the test fails as we should
142 # have no matches.
143 - git grep -E '^#[[:blank:]]*(define|undef)[[:blank:]]*CONFIG_'
a03efb6f 144 :^doc/ :^arch/arm/dts/ :^scripts/kconfig/lkc.h
25ce987b
RM
145 :^include/linux/kconfig.h :^tools/ :^dts/upstream/
146 :^lib/mbedtls/external :^lib/mbedtls/mbedtls_def_config.h &&
8f31c85c 147 exit 1 || exit 0
c1a7de57 148
e9cc7029
HS
149# build documentation
150docs:
399f739b 151 extends: .testsuites
3eb7b78b 152 script:
836049d6
HS
153 - virtualenv -p /usr/bin/python3 /tmp/venvhtml
154 - . /tmp/venvhtml/bin/activate
155 - pip install -r doc/sphinx/requirements.txt
8a6414d1 156 - make htmldocs KDOC_WERROR=1
e9cc7029 157 - make infodocs
3eb7b78b 158
1a62a722
TR
159# ensure all configs have MAINTAINERS entries
160Check for configs without MAINTAINERS entry:
399f739b 161 extends: .testsuites
1a62a722 162 script:
d6b3297d 163 - ./tools/buildman/buildman --maintainer-check
1a62a722
TR
164
165# Ensure host tools build
562ed115 166Build tools-only and envtools:
399f739b 167 extends: .testsuites
1a62a722 168 script:
562ed115
TR
169 - make tools-only_config tools-only -j$(nproc);
170 make mrproper;
171 make tools-only_config envtools -j$(nproc)
1f3910da 172
7261833f 173Run binman, buildman, dtoc, Kconfig and patman testsuites:
399f739b 174 extends: .testsuites
77026080
TR
175 tags:
176 - ${DEFAULT_AMD64_TAG}
1a62a722 177 script:
d7ae9321
TR
178 - git config --global user.name "GitLab CI Runner";
179 git config --global user.email [email protected];
b6d4e085 180 git config --global --add safe.directory "${CI_PROJECT_DIR}";
d7ae9321 181 export USER=gitlab;
26a426a1 182 virtualenv -p /usr/bin/python3 /tmp/venv;
d7ae9321 183 . /tmp/venv/bin/activate;
38229b55 184 pip install -r test/py/requirements.txt;
f586cdae 185 pip install -r tools/buildman/requirements.txt;
48f792e3 186 export UBOOT_TRAVIS_BUILD_DIR=/tmp/tools-only;
d7ae9321
TR
187 export PYTHONPATH="${UBOOT_TRAVIS_BUILD_DIR}/scripts/dtc/pylibfdt";
188 export PATH="${UBOOT_TRAVIS_BUILD_DIR}/scripts/dtc:${PATH}";
b6d4e085 189 set +e;
6c914e42 190 ./tools/buildman/buildman -T0 -o ${UBOOT_TRAVIS_BUILD_DIR} -w
48f792e3 191 --board tools-only;
b6d4e085 192 set -e;
d7ae9321
TR
193 ./tools/binman/binman --toolpath ${UBOOT_TRAVIS_BUILD_DIR}/tools test;
194 ./tools/buildman/buildman -t;
195 ./tools/dtoc/dtoc -t;
6bb74de7 196 ./tools/patman/patman test;
7261833f 197 make testconfig
1a62a722 198
642e51ad
SG
199# Check for any pylint regressions
200Run pylint:
399f739b 201 extends: .testsuites
642e51ad 202 script:
b6d4e085 203 - git config --global --add safe.directory "${CI_PROJECT_DIR}"
642e51ad 204 - pip install -r test/py/requirements.txt
f586cdae 205 - pip install -r tools/buildman/requirements.txt
e47bbf7e 206 - pip install asteval pylint==2.12.2 pyopenssl
642e51ad
SG
207 - export PATH=${PATH}:~/.local/bin
208 - echo "[MASTER]" >> .pylintrc
209 - echo "load-plugins=pylint.extensions.docparams" >> .pylintrc
48f792e3 210 - export UBOOT_TRAVIS_BUILD_DIR=/tmp/tools-only
b6d4e085 211 - set +e
642e51ad 212 - ./tools/buildman/buildman -T0 -o ${UBOOT_TRAVIS_BUILD_DIR} -w
48f792e3 213 --board tools-only
b6d4e085 214 - set -e
642e51ad
SG
215 - pylint --version
216 - export PYTHONPATH="${UBOOT_TRAVIS_BUILD_DIR}/scripts/dtc/pylibfdt"
217 - make pylint_err
218
441a3d0a
SG
219# Check for pre-schema driver model tags
220Check for pre-schema tags:
399f739b 221 extends: .testsuites
441a3d0a
SG
222 script:
223 - git config --global --add safe.directory "${CI_PROJECT_DIR}";
224 # If grep succeeds and finds a match the test fails as we should
225 # have no matches.
226 - git grep u-boot,dm- -- '*.dts*' && exit 1 || exit 0
227
c21a5286
SG
228# Check we can package the Python tools
229Check packing of Python tools:
399f739b 230 extends: .testsuites
c21a5286
SG
231 script:
232 - make pip
233
1a62a722
TR
234# Test sandbox with test.py
235sandbox test.py:
77026080
TR
236 tags:
237 - ${DEFAULT_AMD64_TAG}
1a62a722
TR
238 variables:
239 TEST_PY_BD: "sandbox"
1a62a722
TR
240 <<: *buildman_and_testpy_dfn
241
0219d014 242sandbox with clang test.py:
77026080
TR
243 tags:
244 - ${DEFAULT_AMD64_TAG}
0219d014
TR
245 variables:
246 TEST_PY_BD: "sandbox"
96afd8a3 247 OVERRIDE: "-O clang-17"
0219d014
TR
248 <<: *buildman_and_testpy_dfn
249
c807bdd0 250sandbox64 test.py:
77026080
TR
251 tags:
252 - ${DEFAULT_AMD64_TAG}
c807bdd0
MV
253 variables:
254 TEST_PY_BD: "sandbox64"
255 <<: *buildman_and_testpy_dfn
256
257sandbox64 with clang test.py:
77026080
TR
258 tags:
259 - ${DEFAULT_AMD64_TAG}
c807bdd0
MV
260 variables:
261 TEST_PY_BD: "sandbox64"
96afd8a3 262 OVERRIDE: "-O clang-17"
c807bdd0
MV
263 <<: *buildman_and_testpy_dfn
264
1a62a722 265sandbox_spl test.py:
1a62a722
TR
266 variables:
267 TEST_PY_BD: "sandbox_spl"
afb26ba9 268 TEST_PY_TEST_SPEC: "test_ofplatdata or test_handoff or test_spl"
1a62a722
TR
269 <<: *buildman_and_testpy_dfn
270
6c914e42 271sandbox_noinst_test.py:
6c914e42
SG
272 variables:
273 TEST_PY_BD: "sandbox_noinst"
274 TEST_PY_TEST_SPEC: "test_ofplatdata or test_handoff or test_spl"
275 <<: *buildman_and_testpy_dfn
276
b93cc1e7
SA
277sandbox_noinst with LOAD_FIT_FULL test.py:
278 variables:
279 TEST_PY_BD: "sandbox_noinst"
280 TEST_PY_TEST_SPEC: "test_ofplatdata or test_handoff or test_spl"
281 OVERRIDE: "-a CONFIG_SPL_LOAD_FIT_FULL=y"
282 <<: *buildman_and_testpy_dfn
283
a31eff30
SG
284sandbox_vpl test.py:
285 variables:
286 TEST_PY_BD: "sandbox_vpl"
8b609878 287 TEST_PY_TEST_SPEC: "vpl or test_spl"
a31eff30 288 <<: *buildman_and_testpy_dfn
9cea4797
SG
289
290# Enable tracing and disable LTO, to ensure functions are not elided
291sandbox trace_test.py:
292 variables:
293 TEST_PY_BD: "sandbox"
294 BUILD_ENV: "FTRACE=1 NO_LTO=1"
295 TEST_PY_TEST_SPEC: "trace"
61cad8da 296 OVERRIDE: "-a CONFIG_TRACE=y -a CONFIG_TRACE_EARLY=y -a CONFIG_TRACE_EARLY_SIZE=0x01000000 -a CONFIG_TRACE_BUFFER_SIZE=0x02000000"
9cea4797 297 <<: *buildman_and_testpy_dfn
a31eff30 298
699c0b93 299evb-ast2500 test.py:
699c0b93
TR
300 variables:
301 TEST_PY_BD: "evb-ast2500"
08128f05 302 TEST_PY_TEST_SPEC: "not sleep"
699c0b93 303 TEST_PY_ID: "--id qemu"
699c0b93
TR
304 <<: *buildman_and_testpy_dfn
305
b24087ae
JS
306evb-ast2600 test.py:
307 variables:
308 TEST_PY_BD: "evb-ast2600"
08128f05 309 TEST_PY_TEST_SPEC: "not sleep"
b24087ae
JS
310 TEST_PY_ID: "--id qemu"
311 <<: *buildman_and_testpy_dfn
312
1a62a722 313sandbox_flattree test.py:
77026080
TR
314 tags:
315 - ${DEFAULT_AMD64_TAG}
1a62a722
TR
316 variables:
317 TEST_PY_BD: "sandbox_flattree"
1a62a722
TR
318 <<: *buildman_and_testpy_dfn
319
15e30106
KA
320vexpress_ca9x4 test.py:
321 variables:
322 TEST_PY_BD: "vexpress_ca9x4"
08128f05 323 TEST_PY_TEST_SPEC: "not sleep"
15e30106
KA
324 TEST_PY_ID: "--id qemu"
325 <<: *buildman_and_testpy_dfn
326
1a62a722 327integratorcp_cm926ejs test.py:
1a62a722
TR
328 variables:
329 TEST_PY_BD: "integratorcp_cm926ejs"
330 TEST_PY_TEST_SPEC: "not sleep"
331 TEST_PY_ID: "--id qemu"
1a62a722
TR
332 <<: *buildman_and_testpy_dfn
333
334qemu_arm test.py:
1a62a722
TR
335 variables:
336 TEST_PY_BD: "qemu_arm"
337 TEST_PY_TEST_SPEC: "not sleep"
1a62a722
TR
338 <<: *buildman_and_testpy_dfn
339
340qemu_arm64 test.py:
1a62a722
TR
341 variables:
342 TEST_PY_BD: "qemu_arm64"
343 TEST_PY_TEST_SPEC: "not sleep"
1a62a722 344 <<: *buildman_and_testpy_dfn
a21e1123 345
fd10d156
JF
346qemu_arm64_lwip test.py:
347 variables:
348 TEST_PY_BD: "qemu_arm64_lwip"
349 TEST_PY_TEST_SPEC: "test_net_dhcp or test_net_ping or test_net_tftpboot"
350 <<: *buildman_and_testpy_dfn
351
25081abf
PR
352qemu_arm_sbsa test.py:
353 variables:
354 TEST_PY_BD: "qemu-arm-sbsa"
355 TEST_PY_TEST_SPEC: "not sleep"
356 <<: *buildman_and_testpy_dfn
357
a21e1123
MV
358qemu_m68k test.py:
359 variables:
360 TEST_PY_BD: "M5208EVBE"
361 TEST_PY_ID: "--id qemu"
362 TEST_PY_TEST_SPEC: "not sleep and not efi"
363 OVERRIDE: "-a CONFIG_M68K_QEMU=y -a ~CONFIG_MCFTMR"
364 <<: *buildman_and_testpy_dfn
1a62a722 365
d8533167 366qemu_malta test.py:
d8533167
DS
367 variables:
368 TEST_PY_BD: "malta"
369 TEST_PY_TEST_SPEC: "not sleep and not efi"
370 TEST_PY_ID: "--id qemu"
371 <<: *buildman_and_testpy_dfn
372
373qemu_maltael test.py:
d8533167
DS
374 variables:
375 TEST_PY_BD: "maltael"
376 TEST_PY_TEST_SPEC: "not sleep and not efi"
377 TEST_PY_ID: "--id qemu"
378 <<: *buildman_and_testpy_dfn
379
380qemu_malta64 test.py:
d8533167
DS
381 variables:
382 TEST_PY_BD: "malta64"
383 TEST_PY_TEST_SPEC: "not sleep and not efi"
384 TEST_PY_ID: "--id qemu"
385 <<: *buildman_and_testpy_dfn
386
387qemu_malta64el test.py:
d8533167
DS
388 variables:
389 TEST_PY_BD: "malta64el"
390 TEST_PY_TEST_SPEC: "not sleep and not efi"
391 TEST_PY_ID: "--id qemu"
392 <<: *buildman_and_testpy_dfn
393
1a62a722 394qemu-ppce500 test.py:
1a62a722
TR
395 variables:
396 TEST_PY_BD: "qemu-ppce500"
397 TEST_PY_TEST_SPEC: "not sleep"
1a62a722
TR
398 <<: *buildman_and_testpy_dfn
399
a379d330 400qemu-riscv32 test.py:
a379d330
BM
401 variables:
402 TEST_PY_BD: "qemu-riscv32"
403 TEST_PY_TEST_SPEC: "not sleep"
a379d330
BM
404 <<: *buildman_and_testpy_dfn
405
7298d82d 406qemu-riscv64 test.py:
7298d82d
TR
407 variables:
408 TEST_PY_BD: "qemu-riscv64"
409 TEST_PY_TEST_SPEC: "not sleep"
49fb28a4
BM
410 <<: *buildman_and_testpy_dfn
411
412qemu-riscv32_spl test.py:
49fb28a4
BM
413 variables:
414 TEST_PY_BD: "qemu-riscv32_spl"
415 TEST_PY_TEST_SPEC: "not sleep"
49fb28a4
BM
416 <<: *buildman_and_testpy_dfn
417
418qemu-riscv64_spl test.py:
49fb28a4
BM
419 variables:
420 TEST_PY_BD: "qemu-riscv64_spl"
421 TEST_PY_TEST_SPEC: "not sleep"
7298d82d
TR
422 <<: *buildman_and_testpy_dfn
423
1a62a722 424qemu-x86 test.py:
1a62a722
TR
425 variables:
426 TEST_PY_BD: "qemu-x86"
427 TEST_PY_TEST_SPEC: "not sleep"
1a62a722
TR
428 <<: *buildman_and_testpy_dfn
429
430qemu-x86_64 test.py:
1a62a722
TR
431 variables:
432 TEST_PY_BD: "qemu-x86_64"
433 TEST_PY_TEST_SPEC: "not sleep"
1a62a722
TR
434 <<: *buildman_and_testpy_dfn
435
7de94126
JY
436qemu-xtensa-dc233c test.py:
437 variables:
438 TEST_PY_BD: "qemu-xtensa-dc233c"
439 TEST_PY_TEST_SPEC: "not sleep and not efi"
12d7be49 440 tags:
77026080 441 - ${DEFAULT_AMD64_TAG}
7de94126
JY
442 <<: *buildman_and_testpy_dfn
443
0e125756 444r2dplus_i82557c test.py:
0e125756
MV
445 variables:
446 TEST_PY_BD: "r2dplus"
08128f05 447 TEST_PY_TEST_SPEC: "not sleep"
0e125756
MV
448 TEST_PY_ID: "--id i82557c_qemu"
449 <<: *buildman_and_testpy_dfn
450
451r2dplus_pcnet test.py:
0e125756
MV
452 variables:
453 TEST_PY_BD: "r2dplus"
08128f05 454 TEST_PY_TEST_SPEC: "not sleep"
0e125756
MV
455 TEST_PY_ID: "--id pcnet_qemu"
456 <<: *buildman_and_testpy_dfn
457
458r2dplus_rtl8139 test.py:
0e125756
MV
459 variables:
460 TEST_PY_BD: "r2dplus"
08128f05 461 TEST_PY_TEST_SPEC: "not sleep"
0e125756
MV
462 TEST_PY_ID: "--id rtl8139_qemu"
463 <<: *buildman_and_testpy_dfn
464
465r2dplus_tulip test.py:
0e125756
MV
466 variables:
467 TEST_PY_BD: "r2dplus"
08128f05 468 TEST_PY_TEST_SPEC: "not sleep"
0e125756
MV
469 TEST_PY_ID: "--id tulip_qemu"
470 <<: *buildman_and_testpy_dfn
471
0e60b3a7
BM
472sifive_unleashed_sdcard test.py:
473 variables:
474 TEST_PY_BD: "sifive_unleashed"
08128f05 475 TEST_PY_TEST_SPEC: "not sleep"
0e60b3a7
BM
476 TEST_PY_ID: "--id sdcard_qemu"
477 <<: *buildman_and_testpy_dfn
478
479sifive_unleashed_spi-nor test.py:
480 variables:
481 TEST_PY_BD: "sifive_unleashed"
08128f05 482 TEST_PY_TEST_SPEC: "not sleep"
0e60b3a7
BM
483 TEST_PY_ID: "--id spi-nor_qemu"
484 <<: *buildman_and_testpy_dfn
485
f7c6ee7f 486xilinx_zynq_virt test.py:
1a62a722 487 variables:
f7c6ee7f 488 TEST_PY_BD: "xilinx_zynq_virt"
1a62a722 489 TEST_PY_TEST_SPEC: "not sleep"
1a62a722 490 TEST_PY_ID: "--id qemu"
1a62a722
TR
491 <<: *buildman_and_testpy_dfn
492
493xilinx_versal_virt test.py:
1a62a722
TR
494 variables:
495 TEST_PY_BD: "xilinx_versal_virt"
496 TEST_PY_TEST_SPEC: "not sleep"
1a62a722 497 TEST_PY_ID: "--id qemu"
1a62a722
TR
498 <<: *buildman_and_testpy_dfn
499
500xtfpga test.py:
1a62a722
TR
501 variables:
502 TEST_PY_BD: "xtfpga"
503 TEST_PY_TEST_SPEC: "not sleep"
1a62a722 504 TEST_PY_ID: "--id qemu"
12d7be49 505 tags:
77026080 506 - ${DEFAULT_AMD64_TAG}
1a62a722 507 <<: *buildman_and_testpy_dfn
bfb2a7fb
SG
508
509coreboot test.py:
510 variables:
511 TEST_PY_BD: "coreboot"
512 TEST_PY_TEST_SPEC: "not sleep"
513 TEST_PY_ID: "--id qemu"
bfb2a7fb 514 <<: *buildman_and_testpy_dfn
1888b096
SG
515
516.lab_template: &lab_dfn
517 stage: sjg-lab
518 rules:
519 - if: $SJG_LAB == "1"
520 when: always
8573ea41
TR
521 - if: $SJG_LAB != "1"
522 when: manual
523 allow_failure: true
1888b096
SG
524 tags: [ 'lab' ]
525 script:
526 - if [[ -z "${SJG_LAB}" ]]; then
527 exit 0;
528 fi
529 # Environment:
530 # SRC - source tree
531 # OUT - output directory for builds
532 - export SRC="$(pwd)"
533 - export OUT="${SRC}/build/${BOARD}"
534 - export PATH=$PATH:~/bin
535 - export PATH=$PATH:/vid/software/devel/ubtest/u-boot-test-hooks/bin
536
537 # Load it on the device
538 - ret=0
539 - echo "role ${ROLE}"
540 - export strategy="-s uboot -e off"
541 - export USE_LABGRID_SJG=1
542 # export verbose="-v"
543 - ${SRC}/test/py/test.py --role ${ROLE} --build-dir "${OUT}"
544 --capture=tee-sys -k "not bootstd" || ret=$?
545 - U_BOOT_BOARD_IDENTITY="${ROLE}" u-boot-test-release || true
546 - if [[ $ret -ne 0 ]]; then
547 exit $ret;
548 fi
549 artifacts:
550 when: always
551 paths:
552 - "build/${BOARD}/test-log.html"
553 - "build/${BOARD}/multiplexed_log.css"
554 expire_in: 1 week
555
556rpi3:
557 variables:
558 ROLE: rpi3
559 <<: *lab_dfn
560
561opi_pc:
562 variables:
563 ROLE: opi_pc
564 <<: *lab_dfn
565
566pcduino3_nano:
567 variables:
568 ROLE: pcduino3_nano
569 <<: *lab_dfn
570
571samus:
572 variables:
573 ROLE: samus
574 <<: *lab_dfn
575
576link:
577 variables:
578 ROLE: link
579 <<: *lab_dfn
580
581jerry:
582 variables:
583 ROLE: jerry
584 <<: *lab_dfn
585
586minnowmax:
587 variables:
588 ROLE: minnowmax
589 <<: *lab_dfn
590
591opi_pc2:
592 variables:
593 ROLE: opi_pc2
594 <<: *lab_dfn
595
596bpi:
597 variables:
598 ROLE: bpi
599 <<: *lab_dfn
600
601rpi2:
602 variables:
603 ROLE: rpi2
604 <<: *lab_dfn
605
606bob:
607 variables:
608 ROLE: bob
609 <<: *lab_dfn
610
611ff3399:
612 variables:
613 ROLE: ff3399
614 <<: *lab_dfn
615
616coral:
617 variables:
618 ROLE: coral
619 <<: *lab_dfn
620
621rpi3z:
622 variables:
623 ROLE: rpi3z
624 <<: *lab_dfn
625
626bbb:
627 variables:
628 ROLE: bbb
629 <<: *lab_dfn
630
631kevin:
632 variables:
633 ROLE: kevin
634 <<: *lab_dfn
635
636pine64:
637 variables:
638 ROLE: pine64
639 <<: *lab_dfn
640
641c4:
642 variables:
643 ROLE: c4
644 <<: *lab_dfn
645
646rpi4:
647 variables:
648 ROLE: rpi4
649 <<: *lab_dfn
650
651rpi0:
652 variables:
653 ROLE: rpi0
654 <<: *lab_dfn
655
656snow:
657 variables:
658 ROLE: snow
659 <<: *lab_dfn
660
661pcduino3:
662 variables:
663 ROLE: pcduino3
664 <<: *lab_dfn
665
666nyan-big:
667 variables:
668 ROLE: nyan-big
669 <<: *lab_dfn
This page took 0.239691 seconds and 4 git commands to generate.