ci: Generate MinIO credentials within LAVA jobs
[mesa.git] / .gitlab-ci / lava-gitlab-ci.yml
1 variables:
2 DISTRIBUTION_TAG: "2020-07-28-x86"
3
4 .kernel+rootfs:
5 stage: container-2
6 extends:
7 - .ci-run-policy
8 variables:
9 GIT_STRATEGY: fetch
10 KERNEL_URL: "https://gitlab.freedesktop.org/tomeu/linux/-/archive/v5.5-panfrost-fixes/linux-v5.5-panfrost-fixes.tar.gz"
11 UPLOAD_FOR_LAVA: 1
12 script:
13 - .gitlab-ci/container/lava_build.sh
14
15 kernel+rootfs_amd64:
16 extends:
17 - .use-x86_build-base
18 - .kernel+rootfs
19 image: "$CI_REGISTRY_IMAGE/debian/x86_build-base:$BASE_TAG"
20 variables:
21 DEBIAN_ARCH: "amd64"
22
23 kernel+rootfs_arm64:
24 extends:
25 - .use-arm_build
26 - .kernel+rootfs
27 tags:
28 - aarch64
29 variables:
30 DEBIAN_ARCH: "arm64"
31
32 kernel+rootfs_armhf:
33 extends:
34 - kernel+rootfs_arm64
35 variables:
36 DEBIAN_ARCH: "armhf"
37
38 .lava-test:
39 extends:
40 - .ci-run-policy
41 # Cancel job if a newer commit is pushed to the same branch
42 interruptible: true
43 variables:
44 GIT_STRATEGY: none # testing doesn't build anything from source
45 ENV_VARS: "DEQP_PARALLEL=6"
46 FIXED_ENV_VARS: "CI_PIPELINE_ID=${CI_PIPELINE_ID} CI_JOB_ID=${CI_JOB_ID} CI_PROJECT_PATH=${CI_PROJECT_PATH} CI_JOB_JWT=${CI_JOB_JWT} TRACIE_NO_UNIT_TESTS=1 TRACIE_UPLOAD_TO_MINIO=1"
47 DEQP_VERSION: gles2
48 ARTIFACTS_PREFIX: "https://minio-packet.freedesktop.org/mesa-lava/"
49 MESA_URL: "https://minio-packet.freedesktop.org/artifacts/${CI_PROJECT_PATH}/${CI_PIPELINE_ID}/mesa-${ARCH}.tar.gz"
50 script:
51 # Try to use the kernel and rootfs built in mainline first, to save cycles
52 - >
53 if wget -q --method=HEAD "${ARTIFACTS_PREFIX}/mesa/mesa/${DISTRIBUTION_TAG}/${ARCH}/done"; then
54 ARTIFACTS_URL="${ARTIFACTS_PREFIX}/mesa/mesa/${DISTRIBUTION_TAG}/${ARCH}"
55 else
56 ARTIFACTS_URL="${ARTIFACTS_PREFIX}/${CI_PROJECT_PATH}/${DISTRIBUTION_TAG}/${ARCH}"
57 fi
58 - >
59 artifacts/generate_lava.py \
60 --template artifacts/lava-${TEST_SUITE}.yml.jinja2 \
61 --pipeline-info "$CI_PIPELINE_URL on $CI_COMMIT_REF_NAME ${CI_NODE_INDEX}/${CI_NODE_TOTAL}" \
62 --base-artifacts-url ${ARTIFACTS_URL} \
63 --mesa-url ${MESA_URL} \
64 --device-type ${DEVICE_TYPE} \
65 --dtb ${DTB} \
66 --env-vars "${ENV_VARS} ${FIXED_ENV_VARS}" \
67 --deqp-version ${DEQP_VERSION} \
68 --kernel-image-name ${KERNEL_IMAGE_NAME} \
69 --kernel-image-type "${KERNEL_IMAGE_TYPE}" \
70 --gpu-version ${GPU_VERSION} \
71 --boot-method ${BOOT_METHOD} \
72 --lava-tags "${LAVA_TAGS}" \
73 --ci-node-index "${CI_NODE_INDEX}" \
74 --ci-node-total "${CI_NODE_TOTAL}"
75 - lava_job_id=`lavacli jobs submit lava-${TEST_SUITE}.yml` || lavacli jobs submit lava-${TEST_SUITE}.yml
76 - echo $lava_job_id
77 - rm -rf artifacts/*
78 - cp lava-${TEST_SUITE}.yml artifacts/.
79 - lavacli jobs logs $lava_job_id | tee artifacts/lava-${TEST_SUITE}-$lava_job_id.log
80 - lavacli jobs show $lava_job_id
81 - result=`lavacli results $lava_job_id 0_${TEST_SUITE} ${TEST_SUITE} | head -1`
82 - echo $result
83 - '[[ "$result" == "pass" ]]'
84 artifacts:
85 name: "mesa_${CI_JOB_NAME}"
86 when: always
87 paths:
88 - artifacts/
89
90 .lava-test:armhf:
91 variables:
92 ARCH: armhf
93 KERNEL_IMAGE_NAME: zImage
94 KERNEL_IMAGE_TYPE: "type:\ zimage"
95 BOOT_METHOD: u-boot
96 TEST_SUITE: "deqp"
97 extends:
98 - .lava-test
99 - .use-arm_build
100 needs:
101 - kernel+rootfs_armhf
102 - meson-armhf
103
104 .lava-test:arm64:
105 variables:
106 ARCH: arm64
107 KERNEL_IMAGE_NAME: Image
108 KERNEL_IMAGE_TYPE: "type:\ image"
109 BOOT_METHOD: u-boot
110 TEST_SUITE: "deqp"
111 extends:
112 - .lava-test
113 - .use-arm_build
114 dependencies:
115 - meson-arm64
116 needs:
117 - kernel+rootfs_arm64
118 - meson-arm64
119
120 .lava-test:amd64:
121 variables:
122 ARCH: amd64
123 KERNEL_IMAGE_NAME: bzImage
124 KERNEL_IMAGE_TYPE: "type:\ zimage"
125 BOOT_METHOD: u-boot
126 TEST_SUITE: "deqp"
127 extends:
128 - .lava-test
129 - .use-arm_build
130 needs:
131 - kernel+rootfs_amd64
132 - meson-testing
133
134 .lava-traces:amd64:
135 variables:
136 TEST_SUITE: "tracie"
137 extends:
138 - .lava-test:amd64
139
140 .lava-traces:armhf:
141 variables:
142 TEST_SUITE: "tracie"
143 extends:
144 - .lava-test:armhf
145
146 .lava-traces:arm64:
147 variables:
148 TEST_SUITE: "tracie"
149 extends:
150 - .lava-test:arm64
151
152 panfrost-t720-gles2:arm64:
153 extends:
154 - .lava-test:arm64
155 - .panfrost-rules
156 variables:
157 DEVICE_TYPE: sun50i-h6-pine-h64
158 DTB: ${DEVICE_TYPE}
159 GPU_VERSION: panfrost-t720
160 ENV_VARS: "PAN_MESA_DEBUG=gles3 DEQP_PARALLEL=6 DEQP_EXPECTED_RENDERER=T720"
161 tags:
162 - mesa-ci-aarch64-lava-collabora
163
164 panfrost-t760-gles2:armhf:
165 extends:
166 - .lava-test:armhf
167 - .panfrost-rules
168 variables:
169 DEVICE_TYPE: rk3288-veyron-jaq
170 DTB: ${DEVICE_TYPE}
171 GPU_VERSION: panfrost-t760
172 BOOT_METHOD: depthcharge
173 KERNEL_IMAGE_TYPE: ""
174 ENV_VARS: "PAN_MESA_DEBUG=gles3 DEQP_PARALLEL=6 DEQP_EXPECTED_RENDERER=T760"
175 tags:
176 - mesa-ci-aarch64-lava-collabora
177
178 .panfrost-t760-traces:armhf:
179 extends:
180 - .lava-traces:armhf
181 - .panfrost-rules
182 variables:
183 DEVICE_TYPE: rk3288-veyron-jaq
184 DTB: ${DEVICE_TYPE}
185 GPU_VERSION: panfrost-t760
186 BOOT_METHOD: depthcharge
187 KERNEL_IMAGE_TYPE: ""
188 ENV_VARS: "PAN_MESA_DEBUG=deqp MESA_GLES_VERSION_OVERRIDE=3.1 MESA_GL_VERSION_OVERRIDE=3.3 MESA_GLSL_VERSION_OVERRIDE=330"
189 tags:
190 - mesa-ci-aarch64-lava-collabora
191
192 .lava-rk3399-gru-kevin:
193 extends:
194 - .panfrost-rules
195 variables:
196 DEVICE_TYPE: rk3399-gru-kevin
197 DTB: ${DEVICE_TYPE}
198 GPU_VERSION: panfrost-t860
199 BOOT_METHOD: depthcharge
200 KERNEL_IMAGE_TYPE: ""
201 tags:
202 - mesa-ci-aarch64-lava-collabora
203
204 panfrost-t860-gles2:arm64:
205 extends:
206 - .lava-test:arm64
207 - .lava-rk3399-gru-kevin
208 variables:
209 ENV_VARS: "PAN_MESA_DEBUG=gles3 DEQP_PARALLEL=6 DEQP_EXPECTED_RENDERER=T860"
210
211 panfrost-t860-gles3:arm64:
212 parallel: 2
213 extends:
214 - .lava-test:arm64
215 - .lava-rk3399-gru-kevin
216 variables:
217 DEQP_VERSION: gles3
218 ENV_VARS: "PAN_MESA_DEBUG=gles3 DEQP_PARALLEL=6 DEQP_EXPECTED_RENDERER=T860"
219
220 panfrost-t860-traces:arm64:
221 extends:
222 - .lava-traces:arm64
223 - .lava-rk3399-gru-kevin
224 variables:
225 ENV_VARS: "PAN_MESA_DEBUG=deqp MESA_GLES_VERSION_OVERRIDE=3.1 MESA_GL_VERSION_OVERRIDE=3.3 MESA_GLSL_VERSION_OVERRIDE=330"
226
227 .panfrost-t820-gles2:arm64:
228 extends:
229 - .lava-test:arm64
230 - .panfrost-rules
231 variables:
232 DEVICE_TYPE: meson-gxm-khadas-vim2
233 DTB: ${DEVICE_TYPE}
234 GPU_VERSION: panfrost-t820
235 LAVA_TAGS: panfrost
236 ENV_VARS: "PAN_MESA_DEBUG=gles3 DEQP_PARALLEL=6 DEQP_EXPECTED_RENDERER=T820"
237 tags:
238 - mesa-ci-aarch64-lava-baylibre
239
240 .lima-mali400-test:armhf:
241 parallel: 2
242 extends:
243 - .lava-test:armhf
244 - .lima-rules
245 variables:
246 DEVICE_TYPE: sun8i-h3-libretech-all-h3-cc
247 DTB: ${DEVICE_TYPE}
248 GPU_VERSION: lima
249 ENV_VARS: "DEQP_PARALLEL=3 DEQP_EXPECTED_RENDERER=Mali400"
250 tags:
251 - mesa-ci-aarch64-lava-baylibre
252
253 .lima-mali450-test:arm64:
254 extends:
255 - .lava-test:arm64
256 - .lima-rules
257 variables:
258 DEVICE_TYPE: meson-gxl-s905x-libretech-cc
259 DTB: ${DEVICE_TYPE}
260 GPU_VERSION: lima
261 ENV_VARS: "DEQP_PARALLEL=6 DEQP_EXPECTED_RENDERER=Mali450"
262 tags:
263 - mesa-ci-aarch64-lava-baylibre
264
265 # Commented out while waiting for more DUTs to come online
266 .radeonsi-stoney-gles2:amd64:
267 extends:
268 - .lava-test:amd64
269 - .radeonsi-rules
270 variables:
271 DEVICE_TYPE: hp-11A-G6-EE-grunt
272 DTB: ""
273 GPU_VERSION: radeonsi-stoney
274 BOOT_METHOD: depthcharge
275 KERNEL_IMAGE_TYPE: ""
276 ENV_VARS: "DEQP_PARALLEL=4 DEQP_EXPECTED_RENDERER=STONEY NIR_VALIDATE=0"
277 tags:
278 - mesa-ci-aarch64-lava-collabora
279
280 # Commented out while waiting for more DUTs to come online
281 .radeonsi-stoney-gles3:amd64:
282 extends:
283 - .radeonsi-stoney-gles2:amd64
284 variables:
285 DEQP_VERSION: gles3
286 tags:
287 - mesa-ci-aarch64-lava-collabora
288
289 radeonsi-stoney-traces:amd64:
290 extends:
291 - .lava-traces:amd64
292 - .radeonsi-rules
293 variables:
294 DEVICE_TYPE: hp-11A-G6-EE-grunt
295 DTB: ""
296 GPU_VERSION: radeonsi-stoney
297 BOOT_METHOD: depthcharge
298 KERNEL_IMAGE_TYPE: ""
299 tags:
300 - mesa-ci-aarch64-lava-collabora