dbbf1ea7c0965d7707c5260e04a81288fa3c771c
[mesa.git] / .gitlab-ci / lava-gitlab-ci.yml
1 variables:
2 DISTRIBUTION_TAG: "2020-07-18"
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_arm.sh
14
15 kernel+rootfs_arm64:
16 extends:
17 - .use-arm_build
18 - .kernel+rootfs
19 tags:
20 - aarch64
21 variables:
22 DEBIAN_ARCH: "arm64"
23
24 kernel+rootfs_armhf:
25 extends:
26 - kernel+rootfs_arm64
27 variables:
28 DEBIAN_ARCH: "armhf"
29
30 .lava-test:
31 extends:
32 - .ci-run-policy
33 variables:
34 GIT_STRATEGY: none # testing doesn't build anything from source
35 ENV_VARS: "DEQP_PARALLEL=6"
36 DEQP_VERSION: gles2
37 ARTIFACTS_PREFIX: "https://minio-packet.freedesktop.org/mesa-lava/"
38 MESA_URL: "https://minio-packet.freedesktop.org/artifacts/${CI_PROJECT_PATH}/${CI_PIPELINE_ID}/mesa-${ARCH}.tar.gz"
39 script:
40 # Try to use the kernel and rootfs built in mainline first, to save cycles
41 - >
42 if wget -q --method=HEAD "${ARTIFACTS_PREFIX}/mesa/mesa/${DISTRIBUTION_TAG}/${ARCH}/done"; then
43 ARTIFACTS_URL="${ARTIFACTS_PREFIX}/mesa/mesa/${DISTRIBUTION_TAG}/${ARCH}"
44 else
45 ARTIFACTS_URL="${ARTIFACTS_PREFIX}/${CI_PROJECT_PATH}/${DISTRIBUTION_TAG}/${ARCH}"
46 fi
47 - >
48 artifacts/generate_lava.py \
49 --template artifacts/lava-${TEST_SUITE}.yml.jinja2 \
50 --pipeline-info "$CI_PIPELINE_URL on $CI_COMMIT_REF_NAME ${CI_NODE_INDEX}/${CI_NODE_TOTAL}" \
51 --base-artifacts-url ${ARTIFACTS_URL} \
52 --mesa-url ${MESA_URL} \
53 --device-type ${DEVICE_TYPE} \
54 --env-vars "${ENV_VARS}" \
55 --deqp-version ${DEQP_VERSION} \
56 --kernel-image-name ${KERNEL_IMAGE_NAME} \
57 --kernel-image-type "${KERNEL_IMAGE_TYPE}" \
58 --gpu-version ${GPU_VERSION} \
59 --boot-method ${BOOT_METHOD} \
60 --lava-tags "${LAVA_TAGS}" \
61 --ci-node-index "${CI_NODE_INDEX}" \
62 --ci-node-total "${CI_NODE_TOTAL}"
63 - lava_job_id=`lavacli jobs submit lava-${TEST_SUITE}.yml` || lavacli jobs submit lava-${TEST_SUITE}.yml
64 - echo $lava_job_id
65 - rm -rf artifacts/*
66 - cp lava-${TEST_SUITE}.yml artifacts/.
67 - lavacli jobs logs $lava_job_id | tee artifacts/lava-${TEST_SUITE}-$lava_job_id.log
68 - lavacli jobs show $lava_job_id
69 - result=`lavacli results $lava_job_id 0_${TEST_SUITE} ${TEST_SUITE} | head -1`
70 - echo $result
71 - '[[ "$result" == "pass" ]]'
72 artifacts:
73 name: "mesa_${CI_JOB_NAME}"
74 when: always
75 paths:
76 - artifacts/
77
78 .lava-test:armhf:
79 variables:
80 ARCH: armhf
81 KERNEL_IMAGE_NAME: zImage
82 KERNEL_IMAGE_TYPE: "type:\ zimage"
83 BOOT_METHOD: u-boot
84 TEST_SUITE: "deqp"
85 extends:
86 - .lava-test
87 - .use-arm_build
88 needs:
89 - kernel+rootfs_armhf
90 - meson-armhf
91
92 .lava-test:arm64:
93 variables:
94 ARCH: arm64
95 KERNEL_IMAGE_NAME: Image
96 KERNEL_IMAGE_TYPE: "type:\ image"
97 BOOT_METHOD: u-boot
98 TEST_SUITE: "deqp"
99 extends:
100 - .lava-test
101 - .use-arm_build
102 dependencies:
103 - meson-arm64
104 needs:
105 - arm_build
106 - meson-arm64
107
108 .lava-traces:armhf:
109 variables:
110 TEST_SUITE: "tracie"
111 extends:
112 - .lava-test:armhf
113
114 .lava-traces:arm64:
115 variables:
116 TEST_SUITE: "tracie"
117 extends:
118 - .lava-test:arm64
119
120 panfrost-t720-gles2:arm64:
121 extends:
122 - .lava-test:arm64
123 - .panfrost-rules
124 variables:
125 DEVICE_TYPE: sun50i-h6-pine-h64
126 GPU_VERSION: panfrost-t720
127 ENV_VARS: "PAN_MESA_DEBUG=gles3 DEQP_PARALLEL=6 DEQP_EXPECTED_RENDERER=T720"
128 tags:
129 - mesa-ci-aarch64-lava-collabora
130
131 panfrost-t760-gles2:armhf:
132 extends:
133 - .lava-test:armhf
134 - .panfrost-rules
135 variables:
136 DEVICE_TYPE: rk3288-veyron-jaq
137 GPU_VERSION: panfrost-t760
138 BOOT_METHOD: depthcharge
139 KERNEL_IMAGE_TYPE: ""
140 ENV_VARS: "PAN_MESA_DEBUG=gles3 DEQP_PARALLEL=6 DEQP_EXPECTED_RENDERER=T760"
141 tags:
142 - mesa-ci-aarch64-lava-collabora
143
144 panfrost-t760-traces:armhf:
145 extends:
146 - .lava-traces:armhf
147 - .panfrost-rules
148 variables:
149 DEVICE_TYPE: rk3288-veyron-jaq
150 GPU_VERSION: panfrost-t760
151 BOOT_METHOD: depthcharge
152 KERNEL_IMAGE_TYPE: ""
153 ENV_VARS: "PAN_MESA_DEBUG=deqp MESA_GLES_VERSION_OVERRIDE=3.1 MESA_GLSL_VERSION_OVERRIDE=310"
154 tags:
155 - mesa-ci-aarch64-lava-collabora
156
157 .lava-rk3399-gru-kevin:
158 extends:
159 - .panfrost-rules
160 variables:
161 DEVICE_TYPE: rk3399-gru-kevin
162 GPU_VERSION: panfrost-t860
163 BOOT_METHOD: depthcharge
164 KERNEL_IMAGE_TYPE: ""
165 tags:
166 - mesa-ci-aarch64-lava-collabora
167
168 panfrost-t860-gles2:arm64:
169 extends:
170 - .lava-test:arm64
171 - .lava-rk3399-gru-kevin
172 variables:
173 ENV_VARS: "PAN_MESA_DEBUG=gles3 DEQP_PARALLEL=6 DEQP_EXPECTED_RENDERER=T860"
174
175 panfrost-t860-gles3:arm64:
176 parallel: 2
177 extends:
178 - .lava-test:arm64
179 - .lava-rk3399-gru-kevin
180 variables:
181 DEQP_VERSION: gles3
182 ENV_VARS: "PAN_MESA_DEBUG=gles3 DEQP_PARALLEL=6 DEQP_EXPECTED_RENDERER=T860"
183
184 panfrost-t860-traces:arm64:
185 extends:
186 - .lava-traces:arm64
187 - .lava-rk3399-gru-kevin
188 variables:
189 ENV_VARS: "PAN_MESA_DEBUG=deqp MESA_GLES_VERSION_OVERRIDE=3.1 MESA_GLSL_VERSION_OVERRIDE=310"
190
191 .panfrost-t820-gles2:arm64:
192 extends:
193 - .lava-test:arm64
194 - .panfrost-rules
195 variables:
196 DEVICE_TYPE: meson-gxm-khadas-vim2
197 GPU_VERSION: panfrost-t820
198 LAVA_TAGS: panfrost
199 ENV_VARS: "PAN_MESA_DEBUG=gles3 DEQP_PARALLEL=6 DEQP_EXPECTED_RENDERER=T820"
200 tags:
201 - mesa-ci-aarch64-lava-baylibre
202
203 .lima-mali400-test:armhf:
204 parallel: 2
205 extends:
206 - .lava-test:armhf
207 - .lima-rules
208 variables:
209 DEVICE_TYPE: sun8i-h3-libretech-all-h3-cc
210 GPU_VERSION: lima
211 ENV_VARS: "DEQP_PARALLEL=3 DEQP_EXPECTED_RENDERER=Mali400"
212 tags:
213 - mesa-ci-aarch64-lava-baylibre
214
215 .lima-mali450-test:arm64:
216 extends:
217 - .lava-test:arm64
218 - .lima-rules
219 variables:
220 DEVICE_TYPE: meson-gxl-s905x-libretech-cc
221 GPU_VERSION: lima
222 ENV_VARS: "DEQP_PARALLEL=6 DEQP_EXPECTED_RENDERER=Mali450"
223 tags:
224 - mesa-ci-aarch64-lava-baylibre