blob: 303b3ea21e5c1cb3875c8ba9f58cfb9ff6df6755 [file] [log] [blame]
Arnout Vandecappelle4f863d72017-02-14 00:23:03 +01001# 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
Ricardo Martincoski12b08c22018-03-30 20:10:55 -03007image: buildroot/base:20180318.1724
Arnout Vandecappelle4f863d72017-02-14 00:23:03 +01008
Ricardo Martincoskie2d1c382019-01-20 23:11:11 -02009.defconfig_script:
10 script:
11 - echo 'Configure Buildroot'
12 - make ${CI_JOB_NAME}
13 - echo 'Build buildroot'
14 - |
15 make > >(tee build.log |grep '>>>') 2>&1 || {
16 echo 'Failed build last output'
17 tail -200 build.log
18 exit 1
19 }
Arnout Vandecappelle4f863d72017-02-14 00:23:03 +010020
21check-gitlab-ci.yml:
22 script:
23 - mv .gitlab-ci.yml .gitlab-ci.yml.orig
24 - make .gitlab-ci.yml
25 - diff -u .gitlab-ci.yml.orig .gitlab-ci.yml
26
Arnout Vandecappelled498aa42017-06-30 18:42:53 +020027check-DEVELOPERS:
Arnout Vandecappelle29ba13e2017-07-01 20:22:27 +020028 # get-developers should print just "No action specified"; if it prints
29 # anything else, it's a parse error.
30 # The initial ! is removed by YAML so we need to quote it.
Arnout Vandecappelled498aa42017-06-30 18:42:53 +020031 script:
Arnout Vandecappelle29ba13e2017-07-01 20:22:27 +020032 - "! utils/get-developers | grep -v 'No action specified'"
Arnout Vandecappelled498aa42017-06-30 18:42:53 +020033
Ricardo Martincoski1960eda2018-03-13 00:09:44 -030034check-flake8:
35 before_script:
36 # Help flake8 to find the Python files without .py extension.
37 - find * -type f -name '*.py' > files.txt
38 - find * -type f -print0 | xargs -0 file | grep 'Python script' | cut -d':' -f1 >> files.txt
39 - sort -u files.txt | tee files.processed
40 script:
41 - python -m flake8 --statistics --count $(cat files.processed)
42 after_script:
43 - wc -l files.processed
44
Yann E. MORINb58059a2017-11-30 00:08:45 +010045check-package:
46 script:
Thomas Petazzoni12902412018-08-11 12:44:23 +020047 - make check-package
Yann E. MORINb58059a2017-11-30 00:08:45 +010048
Ricardo Martincoskie2d1c382019-01-20 23:11:11 -020049.defconfig:
50 extends: .defconfig_script
Arnout Vandecappelle4f863d72017-02-14 00:23:03 +010051 # Running the defconfigs for every push is too much, so limit to
52 # explicit triggers through the API.
53 only:
54 - triggers
55 - tags
Ricardo Martincoskif177fd62018-10-28 20:58:37 -030056 - /-defconfigs$/
Arnout Vandecappelle4f863d72017-02-14 00:23:03 +010057 artifacts:
58 when: always
59 expire_in: 2 weeks
60 paths:
Yann E. MORINd163ba42018-12-08 18:13:42 +010061 - .config
Arnout Vandecappelle4f863d72017-02-14 00:23:03 +010062 - build.log
63 - output/images/
64 - output/build/build-time.log
65 - output/build/packages-file-list.txt
Yann E. MORINd163ba42018-12-08 18:13:42 +010066 - output/build/*/.config
Arnout Vandecappelle4f863d72017-02-14 00:23:03 +010067
Ricardo Martincoskie2d1c382019-01-20 23:11:11 -020068.runtime_test:
Arnout Vandecappelle (Essensium/Mind)96123c12018-10-21 11:03:03 +010069 # Running the runtime tests for every push is too much, so limit to
70 # explicit triggers through the API.
71 only:
72 - triggers
73 - tags
Ricardo Martincoskif177fd62018-10-28 20:58:37 -030074 - /-runtime-tests$/
Ricardo Martincoskiaf6b5832017-07-30 01:49:43 -030075 # Keep build directories so the rootfs can be an artifact of the job. The
76 # runner will clean up those files for us.
Ricardo Martincoski3cc7bd22017-08-04 23:05:20 -030077 # Multiply every emulator timeout by 10 to avoid sporadic failures in
78 # elastic runners.
Thomas Preston3e869e02017-10-23 15:26:14 +010079 script: ./support/testing/run-tests -o test-output/ -d test-dl/ -k --timeout-multiplier 10 ${CI_JOB_NAME}
Thomas Petazzonib287ea62017-07-02 18:13:22 +020080 artifacts:
81 when: always
82 expire_in: 2 weeks
83 paths:
84 - test-output/*.log
Yann E. MORIN2438d902017-12-20 15:19:33 +010085 - test-output/*/.config
Ricardo Martincoskiaf6b5832017-07-30 01:49:43 -030086 - test-output/*/images/*
Ricardo Martincoskie2d1c382019-01-20 23:11:11 -020087aarch64_efi_defconfig: { extends: .defconfig }
88acmesystems_aria_g25_128mb_defconfig: { extends: .defconfig }
89acmesystems_aria_g25_256mb_defconfig: { extends: .defconfig }
90acmesystems_arietta_g25_128mb_defconfig: { extends: .defconfig }
91acmesystems_arietta_g25_256mb_defconfig: { extends: .defconfig }
92amarula_a64_relic_defconfig: { extends: .defconfig }
93amarula_vyasa_rk3288_defconfig: { extends: .defconfig }
94arcturus_ucls1012a_defconfig: { extends: .defconfig }
95arcturus_ucp1020_defconfig: { extends: .defconfig }
96arm_foundationv8_defconfig: { extends: .defconfig }
97arm_juno_defconfig: { extends: .defconfig }
98armadeus_apf27_defconfig: { extends: .defconfig }
99armadeus_apf28_defconfig: { extends: .defconfig }
100armadeus_apf51_defconfig: { extends: .defconfig }
101asus_tinker_rk3288_defconfig: { extends: .defconfig }
102at91sam9260eknf_defconfig: { extends: .defconfig }
103at91sam9g20dfc_defconfig: { extends: .defconfig }
104at91sam9g45m10ek_defconfig: { extends: .defconfig }
105at91sam9rlek_defconfig: { extends: .defconfig }
106at91sam9x5ek_defconfig: { extends: .defconfig }
107at91sam9x5ek_dev_defconfig: { extends: .defconfig }
108at91sam9x5ek_mmc_defconfig: { extends: .defconfig }
109at91sam9x5ek_mmc_dev_defconfig: { extends: .defconfig }
110atmel_sama5d27_som1_ek_mmc_dev_defconfig: { extends: .defconfig }
111atmel_sama5d2_xplained_mmc_defconfig: { extends: .defconfig }
112atmel_sama5d2_xplained_mmc_dev_defconfig: { extends: .defconfig }
113atmel_sama5d3_xplained_defconfig: { extends: .defconfig }
114atmel_sama5d3_xplained_dev_defconfig: { extends: .defconfig }
115atmel_sama5d3_xplained_mmc_defconfig: { extends: .defconfig }
116atmel_sama5d3_xplained_mmc_dev_defconfig: { extends: .defconfig }
117atmel_sama5d3xek_defconfig: { extends: .defconfig }
118atmel_sama5d4_xplained_defconfig: { extends: .defconfig }
119atmel_sama5d4_xplained_dev_defconfig: { extends: .defconfig }
120atmel_sama5d4_xplained_mmc_defconfig: { extends: .defconfig }
121atmel_sama5d4_xplained_mmc_dev_defconfig: { extends: .defconfig }
122bananapi_m1_defconfig: { extends: .defconfig }
123bananapi_m2_plus_defconfig: { extends: .defconfig }
124bananapi_m2_ultra_defconfig: { extends: .defconfig }
125bananapi_m64_defconfig: { extends: .defconfig }
126bananapro_defconfig: { extends: .defconfig }
127beagleboardx15_defconfig: { extends: .defconfig }
128beaglebone_defconfig: { extends: .defconfig }
129beaglebone_qt5_defconfig: { extends: .defconfig }
130chromebook_snow_defconfig: { extends: .defconfig }
131ci20_defconfig: { extends: .defconfig }
132csky_gx6605s_defconfig: { extends: .defconfig }
133cubieboard2_defconfig: { extends: .defconfig }
134engicam_imx6qdl_icore_defconfig: { extends: .defconfig }
135engicam_imx6qdl_icore_qt5_defconfig: { extends: .defconfig }
136engicam_imx6qdl_icore_rqs_defconfig: { extends: .defconfig }
137engicam_imx6ul_geam_defconfig: { extends: .defconfig }
138engicam_imx6ul_isiot_defconfig: { extends: .defconfig }
139freescale_imx28evk_defconfig: { extends: .defconfig }
140freescale_imx6dlsabreauto_defconfig: { extends: .defconfig }
141freescale_imx6dlsabresd_defconfig: { extends: .defconfig }
142freescale_imx6qsabreauto_defconfig: { extends: .defconfig }
143freescale_imx6qsabresd_defconfig: { extends: .defconfig }
144freescale_imx6sxsabresd_defconfig: { extends: .defconfig }
145freescale_imx7dsabresd_defconfig: { extends: .defconfig }
146freescale_imx8mqevk_defconfig: { extends: .defconfig }
André Hentschelfdc21cd2019-02-18 21:48:07 +0100147freescale_imx8qxpmek_defconfig: { extends: .defconfig }
Ricardo Martincoskie2d1c382019-01-20 23:11:11 -0200148freescale_p1025twr_defconfig: { extends: .defconfig }
149freescale_t1040d4rdb_defconfig: { extends: .defconfig }
150friendlyarm_nanopi_a64_defconfig: { extends: .defconfig }
151friendlyarm_nanopi_neo2_defconfig: { extends: .defconfig }
152galileo_defconfig: { extends: .defconfig }
153grinn_chiliboard_defconfig: { extends: .defconfig }
154grinn_liteboard_defconfig: { extends: .defconfig }
155imx23evk_defconfig: { extends: .defconfig }
156imx6-sabreauto_defconfig: { extends: .defconfig }
157imx6-sabresd_defconfig: { extends: .defconfig }
158imx6-sabresd_qt5_defconfig: { extends: .defconfig }
159imx6slevk_defconfig: { extends: .defconfig }
160imx6sx-sdb_defconfig: { extends: .defconfig }
161imx6ulevk_defconfig: { extends: .defconfig }
162imx6ulpico_defconfig: { extends: .defconfig }
163imx7d-sdb_defconfig: { extends: .defconfig }
164imx7dpico_defconfig: { extends: .defconfig }
Julien Olivain367adaf2019-03-10 17:30:42 +0100165imx8mpico_defconfig: { extends: .defconfig }
Ricardo Martincoskie2d1c382019-01-20 23:11:11 -0200166lego_ev3_defconfig: { extends: .defconfig }
167linksprite_pcduino_defconfig: { extends: .defconfig }
168minnowboard_max-graphical_defconfig: { extends: .defconfig }
169minnowboard_max_defconfig: { extends: .defconfig }
170mx25pdk_defconfig: { extends: .defconfig }
171mx51evk_defconfig: { extends: .defconfig }
172mx53loco_defconfig: { extends: .defconfig }
173mx6cubox_defconfig: { extends: .defconfig }
174mx6sx_udoo_neo_defconfig: { extends: .defconfig }
175mx6udoo_defconfig: { extends: .defconfig }
176nanopi_m1_defconfig: { extends: .defconfig }
177nanopi_m1_plus_defconfig: { extends: .defconfig }
178nanopi_neo_defconfig: { extends: .defconfig }
179nexbox_a95x_defconfig: { extends: .defconfig }
180nitrogen6sx_defconfig: { extends: .defconfig }
181nitrogen6x_defconfig: { extends: .defconfig }
182nitrogen7_defconfig: { extends: .defconfig }
183nitrogen8m_defconfig: { extends: .defconfig }
184odroidc2_defconfig: { extends: .defconfig }
185odroidxu4_defconfig: { extends: .defconfig }
186olimex_a10_olinuxino_lime_defconfig: { extends: .defconfig }
187olimex_a13_olinuxino_defconfig: { extends: .defconfig }
188olimex_a20_olinuxino_lime2_defconfig: { extends: .defconfig }
189olimex_a20_olinuxino_lime_defconfig: { extends: .defconfig }
Ricardo Martincoskie2d1c382019-01-20 23:11:11 -0200190olimex_a20_olinuxino_micro_defconfig: { extends: .defconfig }
191olimex_a64_olinuxino_defconfig: { extends: .defconfig }
192olimex_imx233_olinuxino_defconfig: { extends: .defconfig }
193openblocks_a6_defconfig: { extends: .defconfig }
194orangepi_lite2_defconfig: { extends: .defconfig }
195orangepi_lite_defconfig: { extends: .defconfig }
196orangepi_one_defconfig: { extends: .defconfig }
197orangepi_one_plus_defconfig: { extends: .defconfig }
198orangepi_pc2_defconfig: { extends: .defconfig }
199orangepi_pc_defconfig: { extends: .defconfig }
200orangepi_pc_plus_defconfig: { extends: .defconfig }
201orangepi_plus_defconfig: { extends: .defconfig }
202orangepi_prime_defconfig: { extends: .defconfig }
203orangepi_win_defconfig: { extends: .defconfig }
204orangepi_zero_defconfig: { extends: .defconfig }
205orangepi_zero_plus2_defconfig: { extends: .defconfig }
206pandaboard_defconfig: { extends: .defconfig }
207pc_x86_64_bios_defconfig: { extends: .defconfig }
208pc_x86_64_efi_defconfig: { extends: .defconfig }
209pine64_defconfig: { extends: .defconfig }
210pine64_sopine_defconfig: { extends: .defconfig }
211qemu_aarch64_virt_defconfig: { extends: .defconfig }
212qemu_arm_versatile_defconfig: { extends: .defconfig }
213qemu_arm_versatile_nommu_defconfig: { extends: .defconfig }
214qemu_arm_vexpress_defconfig: { extends: .defconfig }
215qemu_m68k_mcf5208_defconfig: { extends: .defconfig }
216qemu_m68k_q800_defconfig: { extends: .defconfig }
217qemu_microblazebe_mmu_defconfig: { extends: .defconfig }
218qemu_microblazeel_mmu_defconfig: { extends: .defconfig }
219qemu_mips32r2_malta_defconfig: { extends: .defconfig }
220qemu_mips32r2el_malta_defconfig: { extends: .defconfig }
221qemu_mips32r6_malta_defconfig: { extends: .defconfig }
222qemu_mips32r6el_malta_defconfig: { extends: .defconfig }
223qemu_mips64_malta_defconfig: { extends: .defconfig }
224qemu_mips64el_malta_defconfig: { extends: .defconfig }
225qemu_mips64r6_malta_defconfig: { extends: .defconfig }
226qemu_mips64r6el_malta_defconfig: { extends: .defconfig }
227qemu_nios2_10m50_defconfig: { extends: .defconfig }
228qemu_or1k_defconfig: { extends: .defconfig }
229qemu_ppc64_e5500_defconfig: { extends: .defconfig }
230qemu_ppc64_pseries_defconfig: { extends: .defconfig }
231qemu_ppc64le_pseries_defconfig: { extends: .defconfig }
232qemu_ppc_g3beige_defconfig: { extends: .defconfig }
233qemu_ppc_mpc8544ds_defconfig: { extends: .defconfig }
234qemu_ppc_virtex_ml507_defconfig: { extends: .defconfig }
235qemu_riscv32_virt_defconfig: { extends: .defconfig }
236qemu_riscv64_virt_defconfig: { extends: .defconfig }
237qemu_sh4_r2d_defconfig: { extends: .defconfig }
238qemu_sh4eb_r2d_defconfig: { extends: .defconfig }
239qemu_sparc64_sun4u_defconfig: { extends: .defconfig }
240qemu_sparc_ss10_defconfig: { extends: .defconfig }
241qemu_x86_64_defconfig: { extends: .defconfig }
242qemu_x86_defconfig: { extends: .defconfig }
243qemu_xtensa_lx60_defconfig: { extends: .defconfig }
244qemu_xtensa_lx60_nommu_defconfig: { extends: .defconfig }
245raspberrypi0_defconfig: { extends: .defconfig }
246raspberrypi0w_defconfig: { extends: .defconfig }
247raspberrypi2_defconfig: { extends: .defconfig }
248raspberrypi3_64_defconfig: { extends: .defconfig }
249raspberrypi3_defconfig: { extends: .defconfig }
250raspberrypi3_qt5we_defconfig: { extends: .defconfig }
251raspberrypi_defconfig: { extends: .defconfig }
252riotboard_defconfig: { extends: .defconfig }
Michał Łyszczek97babe52019-02-06 17:20:34 +0100253rock64_defconfig: { extends: .defconfig }
Ricardo Martincoskie2d1c382019-01-20 23:11:11 -0200254roseapplepi_defconfig: { extends: .defconfig }
255s6lx9_microboard_defconfig: { extends: .defconfig }
256sheevaplug_defconfig: { extends: .defconfig }
257snps_aarch64_vdk_defconfig: { extends: .defconfig }
258snps_arc700_axs101_defconfig: { extends: .defconfig }
259snps_archs38_axs103_defconfig: { extends: .defconfig }
260snps_archs38_haps_defconfig: { extends: .defconfig }
261snps_archs38_hsdk_defconfig: { extends: .defconfig }
262snps_archs38_vdk_defconfig: { extends: .defconfig }
263socrates_cyclone5_defconfig: { extends: .defconfig }
264solidrun_clearfog_defconfig: { extends: .defconfig }
265solidrun_macchiatobin_mainline_defconfig: { extends: .defconfig }
266solidrun_macchiatobin_marvell_defconfig: { extends: .defconfig }
267stm32f429_disco_defconfig: { extends: .defconfig }
268stm32f469_disco_defconfig: { extends: .defconfig }
269toradex_apalis_imx6_defconfig: { extends: .defconfig }
270ts4800_defconfig: { extends: .defconfig }
271ts4900_defconfig: { extends: .defconfig }
272ts5500_defconfig: { extends: .defconfig }
273ts7680_defconfig: { extends: .defconfig }
274wandboard_defconfig: { extends: .defconfig }
275warp7_defconfig: { extends: .defconfig }
276warpboard_defconfig: { extends: .defconfig }
277zynq_microzed_defconfig: { extends: .defconfig }
278zynq_zc706_defconfig: { extends: .defconfig }
279zynq_zed_defconfig: { extends: .defconfig }
Ricardo Martincoskie2d1c382019-01-20 23:11:11 -0200280zynqmp_zcu106_defconfig: { extends: .defconfig }
281tests.boot.test_atf.TestATFAllwinner: { extends: .runtime_test }
282tests.boot.test_atf.TestATFMarvell: { extends: .runtime_test }
283tests.boot.test_atf.TestATFVexpress: { extends: .runtime_test }
284tests.core.test_file_capabilities.TestFileCapabilities: { extends: .runtime_test }
285tests.core.test_hardening.TestFortifyConserv: { extends: .runtime_test }
286tests.core.test_hardening.TestFortifyNone: { extends: .runtime_test }
287tests.core.test_hardening.TestRelro: { extends: .runtime_test }
288tests.core.test_hardening.TestRelroPartial: { extends: .runtime_test }
289tests.core.test_hardening.TestSspNone: { extends: .runtime_test }
290tests.core.test_hardening.TestSspStrong: { extends: .runtime_test }
291tests.core.test_post_scripts.TestPostScripts: { extends: .runtime_test }
292tests.core.test_rootfs_overlay.TestRootfsOverlay: { extends: .runtime_test }
293tests.core.test_timezone.TestGlibcAllTimezone: { extends: .runtime_test }
294tests.core.test_timezone.TestGlibcNonDefaultLimitedTimezone: { extends: .runtime_test }
295tests.core.test_timezone.TestNoTimezone: { extends: .runtime_test }
296tests.download.test_git.TestGitHash: { extends: .runtime_test }
297tests.download.test_git.TestGitRefs: { extends: .runtime_test }
298tests.fs.test_ext.TestExt2: { extends: .runtime_test }
299tests.fs.test_ext.TestExt2r1: { extends: .runtime_test }
300tests.fs.test_ext.TestExt3: { extends: .runtime_test }
301tests.fs.test_ext.TestExt4: { extends: .runtime_test }
302tests.fs.test_f2fs.TestF2FS: { extends: .runtime_test }
303tests.fs.test_iso9660.TestIso9660Grub2External: { extends: .runtime_test }
304tests.fs.test_iso9660.TestIso9660Grub2ExternalCompress: { extends: .runtime_test }
305tests.fs.test_iso9660.TestIso9660Grub2Internal: { extends: .runtime_test }
306tests.fs.test_iso9660.TestIso9660SyslinuxExternal: { extends: .runtime_test }
307tests.fs.test_iso9660.TestIso9660SyslinuxExternalCompress: { extends: .runtime_test }
308tests.fs.test_iso9660.TestIso9660SyslinuxInternal: { extends: .runtime_test }
309tests.fs.test_jffs2.TestJffs2: { extends: .runtime_test }
310tests.fs.test_squashfs.TestSquashfs: { extends: .runtime_test }
311tests.fs.test_ubi.TestUbi: { extends: .runtime_test }
312tests.fs.test_yaffs2.TestYaffs2: { extends: .runtime_test }
313tests.init.test_busybox.TestInitSystemBusyboxRo: { extends: .runtime_test }
314tests.init.test_busybox.TestInitSystemBusyboxRoNet: { extends: .runtime_test }
315tests.init.test_busybox.TestInitSystemBusyboxRw: { extends: .runtime_test }
316tests.init.test_busybox.TestInitSystemBusyboxRwNet: { extends: .runtime_test }
317tests.init.test_none.TestInitSystemNone: { extends: .runtime_test }
318tests.init.test_systemd.TestInitSystemSystemdRoFull: { extends: .runtime_test }
319tests.init.test_systemd.TestInitSystemSystemdRoIfupdown: { extends: .runtime_test }
320tests.init.test_systemd.TestInitSystemSystemdRoNetworkd: { extends: .runtime_test }
321tests.init.test_systemd.TestInitSystemSystemdRwFull: { extends: .runtime_test }
322tests.init.test_systemd.TestInitSystemSystemdRwIfupdown: { extends: .runtime_test }
323tests.init.test_systemd.TestInitSystemSystemdRwNetworkd: { extends: .runtime_test }
324tests.package.test_atop.TestAtop: { extends: .runtime_test }
325tests.package.test_docker_compose.TestDockerCompose: { extends: .runtime_test }
326tests.package.test_dropbear.TestDropbear: { extends: .runtime_test }
327tests.package.test_ipython.TestIPythonPy2: { extends: .runtime_test }
328tests.package.test_ipython.TestIPythonPy3: { extends: .runtime_test }
Francois Perradac2bfe72019-02-19 16:43:02 +0100329tests.package.test_lpeg.TestLuaLPeg: { extends: .runtime_test }
330tests.package.test_lpeg.TestLuajitLPeg: { extends: .runtime_test }
Francois Perrade7e6b242019-02-19 16:43:03 +0100331tests.package.test_lsqlite3.TestLuaLsqlite3: { extends: .runtime_test }
332tests.package.test_lsqlite3.TestLuajitLsqlite3: { extends: .runtime_test }
Ricardo Martincoskie2d1c382019-01-20 23:11:11 -0200333tests.package.test_lua.TestLua: { extends: .runtime_test }
334tests.package.test_lua.TestLuajit: { extends: .runtime_test }
Francois Perradf830d892019-02-19 16:43:04 +0100335tests.package.test_lua_curl.TestLuaLuacURL: { extends: .runtime_test }
336tests.package.test_lua_curl.TestLuajitLuacURL: { extends: .runtime_test }
Francois Perradf4dc9452019-02-19 16:43:05 +0100337tests.package.test_lua_utf8.TestLuaUtf8: { extends: .runtime_test }
338tests.package.test_lua_utf8.TestLuajitUtf8: { extends: .runtime_test }
Adam Duskettdf7bf8f2019-03-15 16:52:33 -0400339tests.package.test_openjdk.TestOpenJdk: { extends: .runtime_test }
Ricardo Martincoskie2d1c382019-01-20 23:11:11 -0200340tests.package.test_perl.TestPerl: { extends: .runtime_test }
341tests.package.test_perl_class_load.TestPerlClassLoad: { extends: .runtime_test }
342tests.package.test_perl_dbd_mysql.TestPerlDBDmysql: { extends: .runtime_test }
343tests.package.test_perl_encode_detect.TestPerlEncodeDetect: { extends: .runtime_test }
344tests.package.test_perl_gdgraph.TestPerlGDGraph: { extends: .runtime_test }
345tests.package.test_perl_io_socket_multicast.TestPerlIOSocketMulticast: { extends: .runtime_test }
346tests.package.test_perl_io_socket_ssl.TestPerlIOSocketSSL: { extends: .runtime_test }
347tests.package.test_perl_libwww_perl.TestPerllibwwwperl: { extends: .runtime_test }
348tests.package.test_perl_mail_dkim.TestPerlMailDKIM: { extends: .runtime_test }
349tests.package.test_perl_x10.TestPerlX10: { extends: .runtime_test }
350tests.package.test_perl_xml_libxml.TestPerlXMLLibXML: { extends: .runtime_test }
351tests.package.test_prosody.TestProsodyLua51: { extends: .runtime_test }
352tests.package.test_prosody.TestProsodyLuajit: { extends: .runtime_test }
353tests.package.test_python.TestPython2: { extends: .runtime_test }
354tests.package.test_python.TestPython3: { extends: .runtime_test }
355tests.package.test_python_argh.TestPythonPy2Argh: { extends: .runtime_test }
356tests.package.test_python_argh.TestPythonPy3Argh: { extends: .runtime_test }
357tests.package.test_python_attrs.TestPythonPy2Attrs: { extends: .runtime_test }
358tests.package.test_python_attrs.TestPythonPy3Attrs: { extends: .runtime_test }
359tests.package.test_python_autobahn.TestPythonPy2Autobahn: { extends: .runtime_test }
360tests.package.test_python_autobahn.TestPythonPy3Autobahn: { extends: .runtime_test }
361tests.package.test_python_automat.TestPythonPy2Automat: { extends: .runtime_test }
362tests.package.test_python_automat.TestPythonPy3Automat: { extends: .runtime_test }
363tests.package.test_python_bitstring.TestPythonPy2Bitstring: { extends: .runtime_test }
364tests.package.test_python_bitstring.TestPythonPy3Bitstring: { extends: .runtime_test }
365tests.package.test_python_cbor.TestPythonPy2Cbor: { extends: .runtime_test }
366tests.package.test_python_cbor.TestPythonPy3Cbor: { extends: .runtime_test }
367tests.package.test_python_click.TestPythonPy2Click: { extends: .runtime_test }
368tests.package.test_python_click.TestPythonPy3Click: { extends: .runtime_test }
369tests.package.test_python_constantly.TestPythonPy2Constantly: { extends: .runtime_test }
370tests.package.test_python_constantly.TestPythonPy3Constantly: { extends: .runtime_test }
371tests.package.test_python_crossbar.TestPythonPy3Crossbar: { extends: .runtime_test }
372tests.package.test_python_cryptography.TestPythonPy2Cryptography: { extends: .runtime_test }
373tests.package.test_python_cryptography.TestPythonPy3Cryptography: { extends: .runtime_test }
374tests.package.test_python_incremental.TestPythonPy2Incremental: { extends: .runtime_test }
375tests.package.test_python_incremental.TestPythonPy3Incremental: { extends: .runtime_test }
376tests.package.test_python_passlib.TestPythonPy2Passlib: { extends: .runtime_test }
377tests.package.test_python_passlib.TestPythonPy3Passlib: { extends: .runtime_test }
378tests.package.test_python_pexpect.TestPythonPy2Pexpect: { extends: .runtime_test }
379tests.package.test_python_pexpect.TestPythonPy3Pexpect: { extends: .runtime_test }
380tests.package.test_python_pynacl.TestPythonPy2Pynacl: { extends: .runtime_test }
381tests.package.test_python_pynacl.TestPythonPy3Pynacl: { extends: .runtime_test }
382tests.package.test_python_pyyaml.TestPythonPy2Pyyaml: { extends: .runtime_test }
383tests.package.test_python_pyyaml.TestPythonPy3Pyyaml: { extends: .runtime_test }
384tests.package.test_python_service_identity.TestPythonPy2ServiceIdentity: { extends: .runtime_test }
385tests.package.test_python_service_identity.TestPythonPy3ServiceIdentity: { extends: .runtime_test }
386tests.package.test_python_subprocess32.TestPythonPy2Subprocess32: { extends: .runtime_test }
387tests.package.test_python_treq.TestPythonPy2Treq: { extends: .runtime_test }
388tests.package.test_python_treq.TestPythonPy3Treq: { extends: .runtime_test }
389tests.package.test_python_twisted.TestPythonPy2Twisted: { extends: .runtime_test }
390tests.package.test_python_twisted.TestPythonPy3Twisted: { extends: .runtime_test }
391tests.package.test_python_txaio.TestPythonPy2Txaio: { extends: .runtime_test }
392tests.package.test_python_txaio.TestPythonPy3Txaio: { extends: .runtime_test }
393tests.package.test_python_txtorcon.TestPythonPy2Txtorcon: { extends: .runtime_test }
394tests.package.test_python_txtorcon.TestPythonPy3Txtorcon: { extends: .runtime_test }
395tests.package.test_python_ubjson.TestPythonPy2Ubjson: { extends: .runtime_test }
396tests.package.test_python_ubjson.TestPythonPy3Ubjson: { extends: .runtime_test }
397tests.package.test_rust.TestRust: { extends: .runtime_test }
398tests.package.test_rust.TestRustBin: { extends: .runtime_test }
399tests.package.test_syslog_ng.TestSyslogNg: { extends: .runtime_test }
400tests.toolchain.test_external.TestExternalToolchainBuildrootMusl: { extends: .runtime_test }
401tests.toolchain.test_external.TestExternalToolchainBuildrootuClibc: { extends: .runtime_test }
402tests.toolchain.test_external.TestExternalToolchainCCache: { extends: .runtime_test }
403tests.toolchain.test_external.TestExternalToolchainCtngMusl: { extends: .runtime_test }
404tests.toolchain.test_external.TestExternalToolchainLinaroArm: { extends: .runtime_test }
405tests.toolchain.test_external.TestExternalToolchainSourceryArmv4: { extends: .runtime_test }
406tests.toolchain.test_external.TestExternalToolchainSourceryArmv5: { extends: .runtime_test }
407tests.toolchain.test_external.TestExternalToolchainSourceryArmv7: { extends: .runtime_test }