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