Eric Engestrom | 329f5cd | 2019-01-20 11:21:45 +0000 | [diff] [blame] | 1 | variables: |
Eric Anholt | af7dca3 | 2020-03-06 13:23:20 -0800 | [diff] [blame] | 2 | FDO_UPSTREAM_REPO: mesa/mesa |
Benjamin Tissoires | 0b6e03b | 2020-06-11 17:16:28 +0200 | [diff] [blame^] | 3 | CI_PRE_CLONE_SCRIPT: |- |
| 4 | set -o xtrace |
| 5 | /usr/bin/wget -q -O- ${CI_PROJECT_URL}/-/raw/${CI_COMMIT_SHA}/.gitlab-ci/download-git-cache.sh | sh - |
| 6 | set +o xtrace |
Benjamin Tissoires | 7f8a9a1 | 2019-04-02 09:24:00 +0200 | [diff] [blame] | 7 | |
| 8 | include: |
Eric Anholt | af7dca3 | 2020-03-06 13:23:20 -0800 | [diff] [blame] | 9 | - project: 'freedesktop/ci-templates' |
Benjamin Tissoires | 0b6e03b | 2020-06-11 17:16:28 +0200 | [diff] [blame^] | 10 | ref: &ci-templates-sha 52dd4a94044449c8481d18dcdc221a3c636366d2 |
Michel Dänzer | d00b1c4 | 2019-04-02 16:56:54 +0200 | [diff] [blame] | 11 | file: '/templates/debian.yml' |
Benjamin Tissoires | 0b6e03b | 2020-06-11 17:16:28 +0200 | [diff] [blame^] | 12 | - project: 'freedesktop/ci-templates' |
| 13 | ref: *ci-templates-sha |
| 14 | file: '/templates/alpine.yml' |
Dylan Baker | 19851c9 | 2019-10-23 14:36:19 -0700 | [diff] [blame] | 15 | - local: '.gitlab-ci/lava-gitlab-ci.yml' |
Pierre-Eric Pelloux-Prayer | 2a9d6fd | 2019-10-30 20:39:08 +0100 | [diff] [blame] | 16 | - local: '.gitlab-ci/test-source-dep.yml' |
Tomeu Vizoso | 7b01f72 | 2019-09-18 16:03:36 +0200 | [diff] [blame] | 17 | |
Eric Engestrom | 329f5cd | 2019-01-20 11:21:45 +0000 | [diff] [blame] | 18 | stages: |
Erik Faye-Lund | 196ac4c | 2020-06-22 11:10:40 +0200 | [diff] [blame] | 19 | - container+docs |
Michel Dänzer | c2366f0 | 2020-05-16 17:17:23 +0200 | [diff] [blame] | 20 | - container-2 |
Benjamin Tissoires | 0b6e03b | 2020-06-11 17:16:28 +0200 | [diff] [blame^] | 21 | - git-archive |
Michel Dänzer | 3cdc0d5 | 2020-07-01 17:37:49 +0200 | [diff] [blame] | 22 | - deploy |
Michel Dänzer | cc9493f | 2020-02-27 18:27:56 +0100 | [diff] [blame] | 23 | - meson-x86_64 |
| 24 | - scons |
| 25 | - meson-misc |
| 26 | - llvmpipe |
| 27 | - softpipe |
| 28 | - freedreno |
| 29 | - panfrost |
Samuel Pitoiset | 48e9203 | 2020-03-06 08:39:25 +0100 | [diff] [blame] | 30 | - radv |
| 31 | - lima |
Tomeu Vizoso | ad3ef6d | 2020-04-01 09:17:25 +0200 | [diff] [blame] | 32 | - virgl |
Michel Dänzer | 8775b74 | 2020-01-13 09:45:57 +0100 | [diff] [blame] | 33 | - success |
Eric Engestrom | 329f5cd | 2019-01-20 11:21:45 +0000 | [diff] [blame] | 34 | |
Erik Faye-Lund | 8774707 | 2020-06-22 11:10:29 +0200 | [diff] [blame] | 35 | .docs-base: |
Michel Dänzer | 8e2cb8e | 2020-06-22 11:21:06 +0200 | [diff] [blame] | 36 | extends: .ci-run-policy |
Erik Faye-Lund | 064fe5f | 2019-05-27 17:12:10 +0200 | [diff] [blame] | 37 | image: alpine |
Erik Faye-Lund | 064fe5f | 2019-05-27 17:12:10 +0200 | [diff] [blame] | 38 | script: |
| 39 | - apk --no-cache add py3-pip |
| 40 | - pip3 install sphinx sphinx_rtd_theme |
| 41 | - sphinx-build -b html docs public |
Erik Faye-Lund | 8774707 | 2020-06-22 11:10:29 +0200 | [diff] [blame] | 42 | |
| 43 | pages: |
| 44 | extends: .docs-base |
Erik Faye-Lund | 196ac4c | 2020-06-22 11:10:40 +0200 | [diff] [blame] | 45 | stage: deploy |
Erik Faye-Lund | 064fe5f | 2019-05-27 17:12:10 +0200 | [diff] [blame] | 46 | artifacts: |
| 47 | paths: |
| 48 | - public |
Michel Dänzer | 8e2cb8e | 2020-06-22 11:21:06 +0200 | [diff] [blame] | 49 | rules: |
| 50 | - if: '$CI_PROJECT_NAMESPACE == "mesa" && $CI_COMMIT_REF_NAME == "master"' |
| 51 | changes: &docs-or-ci |
| 52 | - docs/**/* |
| 53 | - .gitlab-ci.yml |
Michel Dänzer | fc41ec1 | 2020-07-01 17:41:06 +0200 | [diff] [blame] | 54 | when: always |
Michel Dänzer | 8e2cb8e | 2020-06-22 11:21:06 +0200 | [diff] [blame] | 55 | # Other cases default to never |
Eric Engestrom | 329f5cd | 2019-01-20 11:21:45 +0000 | [diff] [blame] | 56 | |
Erik Faye-Lund | 8774707 | 2020-06-22 11:10:29 +0200 | [diff] [blame] | 57 | test-docs: |
| 58 | extends: .docs-base |
Erik Faye-Lund | 196ac4c | 2020-06-22 11:10:40 +0200 | [diff] [blame] | 59 | stage: container+docs |
Michel Dänzer | 1c612e8 | 2020-06-22 11:13:05 +0200 | [diff] [blame] | 60 | rules: |
| 61 | - if: '$CI_PROJECT_NAMESPACE == "mesa"' |
| 62 | when: never |
| 63 | - if: '$GITLAB_USER_LOGIN == "marge-bot"' |
Michel Dänzer | 8e2cb8e | 2020-06-22 11:21:06 +0200 | [diff] [blame] | 64 | changes: *docs-or-ci |
Michel Dänzer | 1c612e8 | 2020-06-22 11:13:05 +0200 | [diff] [blame] | 65 | when: on_success |
| 66 | - changes: *docs-or-ci |
| 67 | when: manual |
| 68 | # Other cases default to never |
Erik Faye-Lund | 8774707 | 2020-06-22 11:10:29 +0200 | [diff] [blame] | 69 | |
Eric Engestrom | 7f5d9c2 | 2019-02-22 15:52:08 +0000 | [diff] [blame] | 70 | # When to automatically run the CI |
Michel Dänzer | e426f40 | 2019-09-06 17:35:52 +0200 | [diff] [blame] | 71 | .ci-run-policy: |
Michel Dänzer | 41797a1 | 2019-09-26 09:27:27 +0200 | [diff] [blame] | 72 | rules: |
Michel Dänzer | 42fe600 | 2020-04-03 12:50:11 +0200 | [diff] [blame] | 73 | # If any files affecting the pipeline are changed, build/test jobs run |
| 74 | # automatically once all dependency jobs have passed |
| 75 | - changes: &all_paths |
Michel Dänzer | 8775b74 | 2020-01-13 09:45:57 +0100 | [diff] [blame] | 76 | - VERSION |
Eric Engestrom | 576bff5 | 2020-05-14 22:51:38 +0200 | [diff] [blame] | 77 | - bin/git_sha1_gen.py |
| 78 | - bin/install_megadrivers.py |
| 79 | - bin/meson_get_version.py |
| 80 | - bin/symbols-check.py |
Michel Dänzer | 8775b74 | 2020-01-13 09:45:57 +0100 | [diff] [blame] | 81 | # GitLab CI |
| 82 | - .gitlab-ci.yml |
| 83 | - .gitlab-ci/**/* |
| 84 | # Meson |
| 85 | - meson* |
| 86 | - build-support/**/* |
| 87 | - subprojects/**/* |
| 88 | # SCons |
| 89 | - SConstruct |
| 90 | - scons/**/* |
| 91 | - common.py |
| 92 | # Source code |
| 93 | - include/**/* |
| 94 | - src/**/* |
| 95 | when: on_success |
Michel Dänzer | 42fe600 | 2020-04-03 12:50:11 +0200 | [diff] [blame] | 96 | # Otherwise, build/test jobs won't run |
Michel Dänzer | 8775b74 | 2020-01-13 09:45:57 +0100 | [diff] [blame] | 97 | - when: never |
Michel Dänzer | 6140ed3 | 2019-03-26 18:39:41 +0100 | [diff] [blame] | 98 | retry: |
| 99 | max: 2 |
| 100 | when: |
| 101 | - runner_system_failure |
Eric Engestrom | ac78ca4 | 2019-11-12 23:42:21 +0000 | [diff] [blame] | 102 | # Cancel CI run if a newer commit is pushed to the same branch |
| 103 | interruptible: true |
Eric Engestrom | 7f5d9c2 | 2019-02-22 15:52:08 +0000 | [diff] [blame] | 104 | |
Michel Dänzer | 8775b74 | 2020-01-13 09:45:57 +0100 | [diff] [blame] | 105 | success: |
| 106 | stage: success |
| 107 | image: debian:stable-slim |
Michel Dänzer | 6cba468 | 2020-06-22 11:16:17 +0200 | [diff] [blame] | 108 | rules: |
| 109 | - if: '$CI_PROJECT_NAMESPACE == "mesa"' |
| 110 | when: never |
| 111 | - if: '$GITLAB_USER_LOGIN == "marge-bot"' |
| 112 | changes: *docs-or-ci |
| 113 | when: never |
| 114 | - changes: *all_paths |
| 115 | when: never |
| 116 | - when: on_success |
Michel Dänzer | 2dd0cc6 | 2020-01-20 18:34:34 +0100 | [diff] [blame] | 117 | variables: |
| 118 | GIT_STRATEGY: none |
Michel Dänzer | 8775b74 | 2020-01-13 09:45:57 +0100 | [diff] [blame] | 119 | script: |
| 120 | - echo "Dummy job to make sure every merge request pipeline runs at least one job" |
| 121 | |
| 122 | |
Michel Dänzer | e426f40 | 2019-09-06 17:35:52 +0200 | [diff] [blame] | 123 | .ci-deqp-artifacts: |
Eric Anholt | 46daaca | 2019-06-28 16:35:32 -0700 | [diff] [blame] | 124 | artifacts: |
Michel Dänzer | 0103f02 | 2020-03-06 12:35:17 +0100 | [diff] [blame] | 125 | name: "mesa_${CI_JOB_NAME}" |
Eric Anholt | 46daaca | 2019-06-28 16:35:32 -0700 | [diff] [blame] | 126 | when: always |
| 127 | untracked: false |
| 128 | paths: |
| 129 | # Watch out! Artifacts are relative to the build dir. |
| 130 | # https://gitlab.com/gitlab-org/gitlab-ce/commit/8788fb925706cad594adf6917a6c5f6587dd1521 |
| 131 | - artifacts |
Eric Engestrom | 7f5d9c2 | 2019-02-22 15:52:08 +0000 | [diff] [blame] | 132 | |
Tomeu Vizoso | 22d9764 | 2019-12-17 11:50:14 +0100 | [diff] [blame] | 133 | # Build the CI docker images. |
Michel Dänzer | c6c7652 | 2019-11-11 18:13:28 +0100 | [diff] [blame] | 134 | # |
Eric Anholt | af7dca3 | 2020-03-06 13:23:20 -0800 | [diff] [blame] | 135 | # FDO_DISTRIBUTION_TAG is the tag of the docker image used by later stage jobs. If the |
Michel Dänzer | c6c7652 | 2019-11-11 18:13:28 +0100 | [diff] [blame] | 136 | # image doesn't exist yet, the container stage job generates it. |
| 137 | # |
| 138 | # In order to generate a new image, one should generally change the tag. |
| 139 | # While removing the image from the registry would also work, that's not |
| 140 | # recommended except for ephemeral images during development: Replacing |
| 141 | # an image after a significant amount of time might pull in newer |
| 142 | # versions of gcc/clang or other packages, which might break the build |
| 143 | # with older commits using the same tag. |
| 144 | # |
| 145 | # After merging a change resulting in generating a new image to the |
| 146 | # main repository, it's recommended to remove the image from the source |
| 147 | # repository's container registry, so that the image from the main |
| 148 | # repository's registry will be used there as well. |
Michel Dänzer | 8a19992 | 2019-09-06 17:04:47 +0200 | [diff] [blame] | 149 | |
Eric Engestrom | 81b98e9 | 2019-10-14 23:04:14 +0100 | [diff] [blame] | 150 | .container: |
Erik Faye-Lund | 196ac4c | 2020-06-22 11:10:40 +0200 | [diff] [blame] | 151 | stage: container+docs |
Eric Engestrom | 81b98e9 | 2019-10-14 23:04:14 +0100 | [diff] [blame] | 152 | extends: |
| 153 | - .ci-run-policy |
Michel Dänzer | 42fe600 | 2020-04-03 12:50:11 +0200 | [diff] [blame] | 154 | rules: |
Michel Dänzer | 549b4a3 | 2020-06-29 11:33:13 +0200 | [diff] [blame] | 155 | # Run pipeline by default in the main project if any CI pipeline |
| 156 | # configuration files were changed, to ensure docker images are up to date |
Michel Dänzer | 42fe600 | 2020-04-03 12:50:11 +0200 | [diff] [blame] | 157 | - if: '$CI_PROJECT_PATH == "mesa/mesa"' |
| 158 | changes: |
Michel Dänzer | 549b4a3 | 2020-06-29 11:33:13 +0200 | [diff] [blame] | 159 | - .gitlab-ci.yml |
| 160 | - .gitlab-ci/**/* |
| 161 | when: on_success |
| 162 | # Run pipeline by default if it was triggered by Marge Bot, is for a |
| 163 | # merge request, and any files affecting the pipeline were changed |
| 164 | - if: '$GITLAB_USER_LOGIN == "marge-bot" && $CI_PROJECT_PATH != "mesa/mesa"' |
| 165 | changes: |
Michel Dänzer | 42fe600 | 2020-04-03 12:50:11 +0200 | [diff] [blame] | 166 | *all_paths |
| 167 | when: on_success |
Michel Dänzer | 549b4a3 | 2020-06-29 11:33:13 +0200 | [diff] [blame] | 168 | # Run pipeline by default in the main project if it was not triggered by |
| 169 | # Marge Bot, and any files affecting the pipeline were changed |
| 170 | - if: '$GITLAB_USER_LOGIN != "marge-bot" && $CI_PROJECT_PATH == "mesa/mesa"' |
| 171 | changes: |
| 172 | *all_paths |
| 173 | when: on_success |
| 174 | # Allow triggering jobs manually in other cases if any files affecting the |
| 175 | # pipeline were changed |
Michel Dänzer | 4176dfa | 2020-04-03 11:46:12 +0200 | [diff] [blame] | 176 | - changes: |
Michel Dänzer | 42fe600 | 2020-04-03 12:50:11 +0200 | [diff] [blame] | 177 | *all_paths |
| 178 | when: manual |
| 179 | # Otherwise, container jobs won't run |
| 180 | - when: never |
Eric Engestrom | 81b98e9 | 2019-10-14 23:04:14 +0100 | [diff] [blame] | 181 | variables: |
Eric Anholt | af7dca3 | 2020-03-06 13:23:20 -0800 | [diff] [blame] | 182 | FDO_DISTRIBUTION_VERSION: buster-slim |
Michel Dänzer | fcd3377 | 2020-03-23 18:16:07 +0100 | [diff] [blame] | 183 | FDO_REPO_SUFFIX: "debian/$CI_JOB_NAME" |
Eric Anholt | af7dca3 | 2020-03-06 13:23:20 -0800 | [diff] [blame] | 184 | FDO_DISTRIBUTION_EXEC: 'bash .gitlab-ci/container/${CI_JOB_NAME}.sh' |
Eric Engestrom | 81b98e9 | 2019-10-14 23:04:14 +0100 | [diff] [blame] | 185 | # no need to pull the whole repo to build the container image |
| 186 | GIT_STRATEGY: none |
| 187 | |
Michel Dänzer | a85da8e | 2020-05-30 15:53:41 +0200 | [diff] [blame] | 188 | # Debian 10 based x86 build image base |
| 189 | x86_build-base: |
Michel Dänzer | e426f40 | 2019-09-06 17:35:52 +0200 | [diff] [blame] | 190 | extends: |
Michel Dänzer | fcd3377 | 2020-03-23 18:16:07 +0100 | [diff] [blame] | 191 | - .fdo.container-build@debian |
Eric Engestrom | 81b98e9 | 2019-10-14 23:04:14 +0100 | [diff] [blame] | 192 | - .container |
Michel Dänzer | c6c7652 | 2019-11-11 18:13:28 +0100 | [diff] [blame] | 193 | variables: |
Eric Engestrom | 4be31eb | 2020-06-12 21:06:38 +0200 | [diff] [blame] | 194 | FDO_DISTRIBUTION_TAG: &x86_build-base "2020-06-12" |
Michel Dänzer | a85da8e | 2020-05-30 15:53:41 +0200 | [diff] [blame] | 195 | |
| 196 | .use-x86_build-base: |
| 197 | extends: |
| 198 | - x86_build-base |
| 199 | - .ci-run-policy |
| 200 | stage: container-2 |
| 201 | variables: |
| 202 | BASE_TAG: *x86_build-base |
| 203 | FDO_BASE_IMAGE: "$CI_REGISTRY_IMAGE/debian/x86_build-base:$BASE_TAG" |
| 204 | needs: |
| 205 | - x86_build-base |
| 206 | |
| 207 | # Debian 10 based x86 main build image |
| 208 | x86_build: |
| 209 | extends: |
| 210 | - .use-x86_build-base |
| 211 | variables: |
Michel Dänzer | 3acd5a6 | 2020-06-01 19:08:30 +0200 | [diff] [blame] | 212 | FDO_DISTRIBUTION_TAG: &x86_build "2020-06-02" |
Eric Engestrom | 46d23c0 | 2019-01-20 11:26:53 +0000 | [diff] [blame] | 213 | |
Michel Dänzer | 3a48f45 | 2019-11-13 17:43:41 +0100 | [diff] [blame] | 214 | .use-x86_build: |
Michel Dänzer | c6c7652 | 2019-11-11 18:13:28 +0100 | [diff] [blame] | 215 | variables: |
| 216 | TAG: *x86_build |
| 217 | image: "$CI_REGISTRY_IMAGE/debian/x86_build:$TAG" |
Michel Dänzer | eb86cba | 2019-10-10 15:27:17 +0200 | [diff] [blame] | 218 | needs: |
Michel Dänzer | a85da8e | 2020-05-30 15:53:41 +0200 | [diff] [blame] | 219 | - x86_build-base |
Michel Dänzer | 3a48f45 | 2019-11-13 17:43:41 +0100 | [diff] [blame] | 220 | - x86_build |
Michel Dänzer | eb86cba | 2019-10-10 15:27:17 +0200 | [diff] [blame] | 221 | |
Michel Dänzer | 3acd5a6 | 2020-06-01 19:08:30 +0200 | [diff] [blame] | 222 | # Debian 10 based i386 cross-build image |
| 223 | i386_build: |
| 224 | extends: |
| 225 | - .use-x86_build-base |
| 226 | variables: |
| 227 | FDO_DISTRIBUTION_TAG: &i386_build "2020-06-02" |
| 228 | |
| 229 | .use-i386_build: |
| 230 | variables: |
| 231 | TAG: *i386_build |
| 232 | image: "$CI_REGISTRY_IMAGE/debian/i386_build:$TAG" |
| 233 | needs: |
| 234 | - x86_build-base |
| 235 | - i386_build |
| 236 | |
| 237 | # Debian 10 based ppc64el cross-build image |
| 238 | ppc64el_build: |
| 239 | extends: |
| 240 | - .use-x86_build-base |
| 241 | variables: |
| 242 | FDO_DISTRIBUTION_TAG: &ppc64el_build "2020-06-02" |
| 243 | |
| 244 | .use-ppc64el_build: |
| 245 | variables: |
| 246 | TAG: *ppc64el_build |
| 247 | image: "$CI_REGISTRY_IMAGE/debian/ppc64el_build:$TAG" |
| 248 | needs: |
| 249 | - x86_build-base |
| 250 | - ppc64el_build |
| 251 | |
| 252 | # Debian 10 based s390x cross-build image |
| 253 | s390x_build: |
| 254 | extends: |
| 255 | - .use-x86_build-base |
| 256 | variables: |
| 257 | FDO_DISTRIBUTION_TAG: &s390x_build "2020-06-02" |
| 258 | |
| 259 | .use-s390x_build: |
| 260 | variables: |
| 261 | TAG: *s390x_build |
| 262 | image: "$CI_REGISTRY_IMAGE/debian/s390x_build:$TAG" |
| 263 | needs: |
| 264 | - x86_build-base |
| 265 | - s390x_build |
| 266 | |
Michel Dänzer | c2366f0 | 2020-05-16 17:17:23 +0200 | [diff] [blame] | 267 | # Debian 10 based x86 test image base |
| 268 | x86_test-base: |
Michel Dänzer | a85da8e | 2020-05-30 15:53:41 +0200 | [diff] [blame] | 269 | extends: x86_build-base |
Michel Dänzer | aebf43d | 2019-11-05 18:52:24 +0100 | [diff] [blame] | 270 | variables: |
Michel Dänzer | b19c094 | 2020-05-31 00:09:18 +0200 | [diff] [blame] | 271 | FDO_DISTRIBUTION_TAG: &x86_test-base "2020-06-02" |
Michel Dänzer | c2366f0 | 2020-05-16 17:17:23 +0200 | [diff] [blame] | 272 | |
| 273 | .use-x86_test-base: |
| 274 | extends: |
Michel Dänzer | a85da8e | 2020-05-30 15:53:41 +0200 | [diff] [blame] | 275 | - x86_build-base |
Michel Dänzer | c2366f0 | 2020-05-16 17:17:23 +0200 | [diff] [blame] | 276 | - .ci-run-policy |
| 277 | stage: container-2 |
| 278 | variables: |
| 279 | BASE_TAG: *x86_test-base |
| 280 | FDO_BASE_IMAGE: "$CI_REGISTRY_IMAGE/debian/x86_test-base:$BASE_TAG" |
| 281 | needs: |
| 282 | - x86_test-base |
| 283 | |
| 284 | # Debian 10 based x86 test image for GL |
| 285 | x86_test-gl: |
| 286 | extends: .use-x86_test-base |
| 287 | variables: |
Tomeu Vizoso | e051880 | 2020-06-15 15:39:40 +0200 | [diff] [blame] | 288 | FDO_DISTRIBUTION_TAG: &x86_test-gl "2020-06-23-virgl" |
Michel Dänzer | aebf43d | 2019-11-05 18:52:24 +0100 | [diff] [blame] | 289 | |
Samuel Pitoiset | f2a594f | 2019-11-18 09:23:18 +0100 | [diff] [blame] | 290 | # Debian 10 based x86 test image for VK |
| 291 | x86_test-vk: |
Michel Dänzer | c2366f0 | 2020-05-16 17:17:23 +0200 | [diff] [blame] | 292 | extends: .use-x86_test-base |
Samuel Pitoiset | f2a594f | 2019-11-18 09:23:18 +0100 | [diff] [blame] | 293 | variables: |
Eric Anholt | 6ee80d8 | 2020-06-18 12:21:44 -0700 | [diff] [blame] | 294 | FDO_DISTRIBUTION_TAG: &x86_test-vk "2020-06-18-vkcts" |
Samuel Pitoiset | f2a594f | 2019-11-18 09:23:18 +0100 | [diff] [blame] | 295 | |
Michel Dänzer | c6c7652 | 2019-11-11 18:13:28 +0100 | [diff] [blame] | 296 | # Debian 9 based x86 build image (old LLVM) |
Michel Dänzer | 3a48f45 | 2019-11-13 17:43:41 +0100 | [diff] [blame] | 297 | x86_build_old: |
Michel Dänzer | a85da8e | 2020-05-30 15:53:41 +0200 | [diff] [blame] | 298 | extends: x86_build-base |
Michel Dänzer | 8a19992 | 2019-09-06 17:04:47 +0200 | [diff] [blame] | 299 | variables: |
Eric Engestrom | 4be31eb | 2020-06-12 21:06:38 +0200 | [diff] [blame] | 300 | FDO_DISTRIBUTION_TAG: &x86_build_old "2020-06-12" |
Eric Anholt | af7dca3 | 2020-03-06 13:23:20 -0800 | [diff] [blame] | 301 | FDO_DISTRIBUTION_VERSION: stretch-slim |
Michel Dänzer | 8a19992 | 2019-09-06 17:04:47 +0200 | [diff] [blame] | 302 | |
Michel Dänzer | 3a48f45 | 2019-11-13 17:43:41 +0100 | [diff] [blame] | 303 | .use-x86_build_old: |
Michel Dänzer | c6c7652 | 2019-11-11 18:13:28 +0100 | [diff] [blame] | 304 | variables: |
| 305 | TAG: *x86_build_old |
| 306 | image: "$CI_REGISTRY_IMAGE/debian/x86_build_old:$TAG" |
Michel Dänzer | 88319f2 | 2019-09-18 16:17:01 +0200 | [diff] [blame] | 307 | needs: |
Michel Dänzer | 3a48f45 | 2019-11-13 17:43:41 +0100 | [diff] [blame] | 308 | - x86_build_old |
Michel Dänzer | 88319f2 | 2019-09-18 16:17:01 +0200 | [diff] [blame] | 309 | |
Michel Dänzer | c6c7652 | 2019-11-11 18:13:28 +0100 | [diff] [blame] | 310 | # Debian 10 based ARM build image |
Michel Dänzer | 3a48f45 | 2019-11-13 17:43:41 +0100 | [diff] [blame] | 311 | arm_build: |
Michel Dänzer | e426f40 | 2019-09-06 17:35:52 +0200 | [diff] [blame] | 312 | extends: |
Michel Dänzer | fcd3377 | 2020-03-23 18:16:07 +0100 | [diff] [blame] | 313 | - .fdo.container-build@debian@arm64v8 |
Eric Engestrom | 81b98e9 | 2019-10-14 23:04:14 +0100 | [diff] [blame] | 314 | - .container |
Eric Anholt | 6f0dc08 | 2019-06-28 16:35:32 -0700 | [diff] [blame] | 315 | variables: |
Rohan Garg | 7406d62 | 2020-01-28 15:19:53 +0100 | [diff] [blame] | 316 | FDO_DISTRIBUTION_TAG: &arm_build "2020-06-22-tracie" |
Eric Engestrom | 46d23c0 | 2019-01-20 11:26:53 +0000 | [diff] [blame] | 317 | |
Michel Dänzer | c6c7652 | 2019-11-11 18:13:28 +0100 | [diff] [blame] | 318 | .use-arm_build: |
Michel Dänzer | b4d3ae2 | 2019-11-04 09:54:09 +0100 | [diff] [blame] | 319 | variables: |
Michel Dänzer | c6c7652 | 2019-11-11 18:13:28 +0100 | [diff] [blame] | 320 | TAG: *arm_build |
| 321 | image: "$CI_REGISTRY_IMAGE/debian/arm_build:$TAG" |
| 322 | needs: |
| 323 | - arm_build |
| 324 | |
Christian Gmeiner | 408b36a | 2020-06-07 22:03:34 +0200 | [diff] [blame] | 325 | # Debian 10 based x86 baremetal image base |
| 326 | arm_test-base: |
| 327 | extends: |
| 328 | - .fdo.container-build@debian |
| 329 | - .container |
| 330 | variables: |
Rohan Garg | 7406d62 | 2020-01-28 15:19:53 +0100 | [diff] [blame] | 331 | FDO_DISTRIBUTION_TAG: &arm_test-base "2020-06-22-tracie" |
Christian Gmeiner | 408b36a | 2020-06-07 22:03:34 +0200 | [diff] [blame] | 332 | |
| 333 | .use-arm_test-base: |
| 334 | extends: |
| 335 | - arm_test-base |
| 336 | - .ci-run-policy |
| 337 | stage: container-2 |
| 338 | variables: |
| 339 | BASE_TAG: *arm_test-base |
| 340 | FDO_BASE_IMAGE: "$CI_REGISTRY_IMAGE/debian/arm_test-base:$BASE_TAG" |
| 341 | needs: |
| 342 | - arm_test-base |
| 343 | |
Christian Gmeiner | 839bc2d | 2020-06-07 23:19:50 +0200 | [diff] [blame] | 344 | # x86 image with ARM64 rootfs for baremetal testing. |
| 345 | arm64_test: |
Christian Gmeiner | 408b36a | 2020-06-07 22:03:34 +0200 | [diff] [blame] | 346 | extends: |
| 347 | - .use-arm_test-base |
Eric Anholt | 68b3b5b | 2020-05-13 11:08:08 -0700 | [diff] [blame] | 348 | variables: |
Eric Anholt | 6283da3 | 2020-06-16 12:05:23 -0700 | [diff] [blame] | 349 | FDO_DISTRIBUTION_TAG: &arm64_test "2020-06-25-kernelfix" |
Eric Anholt | 68b3b5b | 2020-05-13 11:08:08 -0700 | [diff] [blame] | 350 | |
Christian Gmeiner | 839bc2d | 2020-06-07 23:19:50 +0200 | [diff] [blame] | 351 | .use-arm64_test: |
Eric Anholt | 68b3b5b | 2020-05-13 11:08:08 -0700 | [diff] [blame] | 352 | variables: |
Christian Gmeiner | 839bc2d | 2020-06-07 23:19:50 +0200 | [diff] [blame] | 353 | TAG: *arm64_test |
| 354 | image: "$CI_REGISTRY_IMAGE/debian/arm64_test:$TAG" |
Eric Anholt | 68b3b5b | 2020-05-13 11:08:08 -0700 | [diff] [blame] | 355 | needs: |
Christian Gmeiner | 456e810 | 2020-06-09 19:05:21 +0200 | [diff] [blame] | 356 | - arm_test-base |
Christian Gmeiner | 839bc2d | 2020-06-07 23:19:50 +0200 | [diff] [blame] | 357 | - arm64_test |
Eric Anholt | 68b3b5b | 2020-05-13 11:08:08 -0700 | [diff] [blame] | 358 | |
Daniel Stone | 07885cb | 2020-03-24 11:11:36 +0000 | [diff] [blame] | 359 | # Native Windows docker builds |
Dylan Baker | 138c003 | 2020-05-19 14:01:47 -0700 | [diff] [blame] | 360 | # |
Daniel Stone | 07885cb | 2020-03-24 11:11:36 +0000 | [diff] [blame] | 361 | # Unlike the above Linux-based builds - including MinGW/SCons builds which |
| 362 | # cross-compile for Windows - which use the freedesktop ci-templates, we |
| 363 | # cannot use the same scheme here. As Windows lacks support for |
| 364 | # Docker-in-Docker, and Podman does not run natively on Windows, we have |
| 365 | # to open-code much of the same ourselves. |
| 366 | # |
| 367 | # This is achieved by first running in a native Windows shell instance |
| 368 | # (host PowerShell) in the container stage to build and push the image, |
| 369 | # then in the build stage by executing inside Docker. |
| 370 | |
| 371 | .windows-docker-vs2019: |
| 372 | variables: |
Daniel Stone | 0f46a31 | 2020-05-05 15:49:22 +0100 | [diff] [blame] | 373 | WINDOWS_TAG: "2020-05-05-llvm" |
Daniel Stone | 07885cb | 2020-03-24 11:11:36 +0000 | [diff] [blame] | 374 | WINDOWS_IMAGE: "$CI_REGISTRY_IMAGE/windows/x64_build:$WINDOWS_TAG" |
| 375 | WINDOWS_UPSTREAM_IMAGE: "$CI_REGISTRY/$FDO_UPSTREAM_REPO/windows/x64_build:$WINDOWS_TAG" |
| 376 | |
Daniel Stone | efec833 | 2020-07-02 08:21:33 +0100 | [diff] [blame] | 377 | .windows_build_vs2019: |
Daniel Stone | 07885cb | 2020-03-24 11:11:36 +0000 | [diff] [blame] | 378 | extends: |
| 379 | - .container |
| 380 | - .windows-docker-vs2019 |
Erik Faye-Lund | 196ac4c | 2020-06-22 11:10:40 +0200 | [diff] [blame] | 381 | stage: container+docs |
Daniel Stone | 07885cb | 2020-03-24 11:11:36 +0000 | [diff] [blame] | 382 | variables: |
| 383 | GIT_STRATEGY: fetch # we do actually need the full repository though |
Daniel Stone | 0f46a31 | 2020-05-05 15:49:22 +0100 | [diff] [blame] | 384 | timeout: 4h # LLVM takes ages |
Daniel Stone | 07885cb | 2020-03-24 11:11:36 +0000 | [diff] [blame] | 385 | tags: |
| 386 | - windows |
| 387 | - shell |
| 388 | - "1809" |
Daniel Stone | 2db1d73 | 2020-03-30 10:16:18 +0100 | [diff] [blame] | 389 | - mesa |
Daniel Stone | 07885cb | 2020-03-24 11:11:36 +0000 | [diff] [blame] | 390 | script: |
| 391 | - .\.gitlab-ci\windows\mesa_container.ps1 $CI_REGISTRY $CI_REGISTRY_USER $CI_REGISTRY_PASSWORD $WINDOWS_IMAGE $WINDOWS_UPSTREAM_IMAGE |
Dylan Baker | 138c003 | 2020-05-19 14:01:47 -0700 | [diff] [blame] | 392 | |
Daniel Stone | 07885cb | 2020-03-24 11:11:36 +0000 | [diff] [blame] | 393 | .use-windows_build_vs2019: |
| 394 | extends: .windows-docker-vs2019 |
| 395 | image: "$WINDOWS_IMAGE" |
| 396 | needs: |
Daniel Stone | 7911346 | 2020-04-16 14:56:18 +0100 | [diff] [blame] | 397 | - windows_build_vs2019 |
Eric Engestrom | 81b98e9 | 2019-10-14 23:04:14 +0100 | [diff] [blame] | 398 | |
Benjamin Tissoires | 0b6e03b | 2020-06-11 17:16:28 +0200 | [diff] [blame^] | 399 | git_archive: |
| 400 | extends: .fdo.container-build@alpine |
| 401 | stage: container+docs |
| 402 | only: |
| 403 | - schedules |
| 404 | variables: |
| 405 | FDO_REPO_SUFFIX: &git-archive-suffix "alpine/git_archive" |
| 406 | FDO_DISTRIBUTION_EXEC: 'pip3 install git+http://gitlab.freedesktop.org/freedesktop/ci-templates@52dd4a94044449c8481d18dcdc221a3c636366d2' |
| 407 | # no need to pull the whole repo to build the container image |
| 408 | GIT_STRATEGY: none |
| 409 | FDO_DISTRIBUTION_TAG: &git-archive-tag "2020-07-02" |
| 410 | FDO_DISTRIBUTION_PACKAGES: git py3-pip |
| 411 | |
| 412 | |
| 413 | # Git archive |
| 414 | |
| 415 | make git archive: |
| 416 | stage: git-archive |
| 417 | extends: .fdo.suffixed-image@alpine |
| 418 | only: |
| 419 | - schedules |
| 420 | # ensure we are running on packet |
| 421 | tags: |
| 422 | - packet.net |
| 423 | variables: |
| 424 | FDO_DISTRIBUTION_TAG: *git-archive-tag |
| 425 | FDO_REPO_SUFFIX: *git-archive-suffix |
| 426 | needs: |
| 427 | - git_archive |
| 428 | |
| 429 | script: |
| 430 | # compress the current folder |
| 431 | - tar -cvzf ../$CI_PROJECT_NAME.tar.gz . |
| 432 | |
| 433 | # login with the JWT token |
| 434 | - ci-fairy minio login $CI_JOB_JWT |
| 435 | - ci-fairy minio cp ../$CI_PROJECT_NAME.tar.gz minio://minio-packet.freedesktop.org/git-cache/$CI_PROJECT_NAMESPACE/$CI_PROJECT_NAME/$CI_PROJECT_NAME.tar.gz |
| 436 | |
| 437 | |
Eric Engestrom | 46d23c0 | 2019-01-20 11:26:53 +0000 | [diff] [blame] | 438 | # BUILD |
| 439 | |
Dylan Baker | 06e4647 | 2019-10-23 14:21:31 -0700 | [diff] [blame] | 440 | # Shared between windows and Linux |
| 441 | .build-common: |
Eric Engestrom | aba78c2 | 2019-10-14 23:52:58 +0100 | [diff] [blame] | 442 | extends: .ci-run-policy |
Eric Engestrom | 46d23c0 | 2019-01-20 11:26:53 +0000 | [diff] [blame] | 443 | artifacts: |
Michel Dänzer | 0103f02 | 2020-03-06 12:35:17 +0100 | [diff] [blame] | 444 | name: "mesa_${CI_JOB_NAME}" |
Eric Anholt | dd3d0b2 | 2019-07-24 09:27:48 -0700 | [diff] [blame] | 445 | when: always |
| 446 | paths: |
| 447 | - _build/meson-logs/*.txt |
| 448 | # scons: |
Michel Dänzer | 5229f27 | 2019-07-26 12:20:41 +0200 | [diff] [blame] | 449 | - build/*/config.log |
Eric Anholt | f60defa | 2019-04-10 15:59:12 -0700 | [diff] [blame] | 450 | - shader-db |
Dylan Baker | 06e4647 | 2019-10-23 14:21:31 -0700 | [diff] [blame] | 451 | |
| 452 | # Just Linux |
| 453 | .build-linux: |
| 454 | extends: .build-common |
Michel Dänzer | e9de19f | 2019-04-04 18:01:27 +0200 | [diff] [blame] | 455 | variables: |
| 456 | CCACHE_COMPILERCHECK: "content" |
Michel Dänzer | 32618ee | 2019-11-20 09:11:35 +0100 | [diff] [blame] | 457 | CCACHE_COMPRESS: "true" |
| 458 | CCACHE_DIR: /cache/mesa/ccache |
Eric Engestrom | 23b485c | 2019-02-12 16:59:27 +0000 | [diff] [blame] | 459 | # Use ccache transparently, and print stats before/after |
| 460 | before_script: |
| 461 | - export PATH="/usr/lib/ccache:$PATH" |
| 462 | - export CCACHE_BASEDIR="$PWD" |
Michel Dänzer | 32618ee | 2019-11-20 09:11:35 +0100 | [diff] [blame] | 463 | - ccache --show-stats |
Eric Engestrom | 23b485c | 2019-02-12 16:59:27 +0000 | [diff] [blame] | 464 | after_script: |
Eric Engestrom | 23b485c | 2019-02-12 16:59:27 +0000 | [diff] [blame] | 465 | - ccache --show-stats |
Eric Engestrom | 46d23c0 | 2019-01-20 11:26:53 +0000 | [diff] [blame] | 466 | |
Dylan Baker | 19851c9 | 2019-10-23 14:36:19 -0700 | [diff] [blame] | 467 | .build-windows: |
| 468 | extends: .build-common |
| 469 | tags: |
Daniel Stone | 07885cb | 2020-03-24 11:11:36 +0000 | [diff] [blame] | 470 | - windows |
| 471 | - docker |
| 472 | - "1809" |
Daniel Stone | 9197fd5 | 2020-03-30 15:58:51 +0100 | [diff] [blame] | 473 | - mesa |
Dylan Baker | 19851c9 | 2019-10-23 14:36:19 -0700 | [diff] [blame] | 474 | cache: |
| 475 | key: ${CI_JOB_NAME} |
| 476 | paths: |
| 477 | - subprojects/packagecache |
| 478 | |
Eric Engestrom | 46d23c0 | 2019-01-20 11:26:53 +0000 | [diff] [blame] | 479 | .meson-build: |
Eric Engestrom | aba78c2 | 2019-10-14 23:52:58 +0100 | [diff] [blame] | 480 | extends: |
Dylan Baker | 06e4647 | 2019-10-23 14:21:31 -0700 | [diff] [blame] | 481 | - .build-linux |
Michel Dänzer | 3a48f45 | 2019-11-13 17:43:41 +0100 | [diff] [blame] | 482 | - .use-x86_build |
Michel Dänzer | cc9493f | 2020-02-27 18:27:56 +0100 | [diff] [blame] | 483 | stage: meson-x86_64 |
Michel Dänzer | 5f0ff00 | 2019-12-13 11:02:16 +0100 | [diff] [blame] | 484 | variables: |
| 485 | LLVM_VERSION: 9 |
Eric Engestrom | 23b485c | 2019-02-12 16:59:27 +0000 | [diff] [blame] | 486 | script: |
Michel Dänzer | cc2b3a9 | 2019-05-03 10:49:43 +0200 | [diff] [blame] | 487 | - .gitlab-ci/meson-build.sh |
Eric Engestrom | 46d23c0 | 2019-01-20 11:26:53 +0000 | [diff] [blame] | 488 | |
Eric Engestrom | 06b245b | 2019-01-23 15:46:10 +0000 | [diff] [blame] | 489 | .scons-build: |
Eric Engestrom | aba78c2 | 2019-10-14 23:52:58 +0100 | [diff] [blame] | 490 | extends: |
Dylan Baker | 06e4647 | 2019-10-23 14:21:31 -0700 | [diff] [blame] | 491 | - .build-linux |
Michel Dänzer | 3a48f45 | 2019-11-13 17:43:41 +0100 | [diff] [blame] | 492 | - .use-x86_build |
Michel Dänzer | cc9493f | 2020-02-27 18:27:56 +0100 | [diff] [blame] | 493 | stage: scons |
Eric Engestrom | 06b245b | 2019-01-23 15:46:10 +0000 | [diff] [blame] | 494 | variables: |
Eric Anholt | cb655d2 | 2019-11-06 11:14:14 -0800 | [diff] [blame] | 495 | SCONSFLAGS: "-j4" |
Eric Engestrom | 06b245b | 2019-01-23 15:46:10 +0000 | [diff] [blame] | 496 | script: |
Michel Dänzer | 0374aac | 2019-09-12 11:34:43 +0200 | [diff] [blame] | 497 | - .gitlab-ci/scons-build.sh |
Eric Engestrom | 06b245b | 2019-01-23 15:46:10 +0000 | [diff] [blame] | 498 | |
Samuel Pitoiset | 66b5627 | 2019-11-19 12:23:41 +0100 | [diff] [blame] | 499 | meson-testing: |
Michel Dänzer | e426f40 | 2019-09-06 17:35:52 +0200 | [diff] [blame] | 500 | extends: |
| 501 | - .meson-build |
| 502 | - .ci-deqp-artifacts |
Michel Dänzer | 42f8d5a | 2019-08-28 12:01:02 +0200 | [diff] [blame] | 503 | variables: |
Dylan Baker | 138c003 | 2020-05-19 14:01:47 -0700 | [diff] [blame] | 504 | UNWIND: "enabled" |
Michel Dänzer | 42f8d5a | 2019-08-28 12:01:02 +0200 | [diff] [blame] | 505 | DRI_LOADERS: > |
| 506 | -D glx=dri |
Dylan Baker | 138c003 | 2020-05-19 14:01:47 -0700 | [diff] [blame] | 507 | -D gbm=enabled |
| 508 | -D egl=enabled |
Samuel Pitoiset | 66b5627 | 2019-11-19 12:23:41 +0100 | [diff] [blame] | 509 | -D platforms=x11,drm,surfaceless |
| 510 | GALLIUM_ST: > |
Dylan Baker | 138c003 | 2020-05-19 14:01:47 -0700 | [diff] [blame] | 511 | -D dri3=enabled |
Tomeu Vizoso | ad3ef6d | 2020-04-01 09:17:25 +0200 | [diff] [blame] | 512 | GALLIUM_DRIVERS: "swrast,virgl" |
Samuel Pitoiset | 40c6a56 | 2019-11-19 14:46:53 +0100 | [diff] [blame] | 513 | VULKAN_DRIVERS: amd |
Samuel Pitoiset | 66b5627 | 2019-11-19 12:23:41 +0100 | [diff] [blame] | 514 | BUILDTYPE: "debugoptimized" |
Eric Anholt | 3c7c021 | 2019-12-16 21:23:02 -0800 | [diff] [blame] | 515 | EXTRA_OPTION: > |
| 516 | -D werror=true |
Samuel Pitoiset | 66b5627 | 2019-11-19 12:23:41 +0100 | [diff] [blame] | 517 | script: |
| 518 | - .gitlab-ci/meson-build.sh |
| 519 | - .gitlab-ci/prepare-artifacts.sh |
| 520 | |
Michel Dänzer | c56f091 | 2020-03-12 12:29:40 +0100 | [diff] [blame] | 521 | meson-gallium: |
Samuel Pitoiset | 66b5627 | 2019-11-19 12:23:41 +0100 | [diff] [blame] | 522 | extends: .meson-build |
| 523 | variables: |
Dylan Baker | 138c003 | 2020-05-19 14:01:47 -0700 | [diff] [blame] | 524 | UNWIND: "enabled" |
Samuel Pitoiset | 66b5627 | 2019-11-19 12:23:41 +0100 | [diff] [blame] | 525 | DRI_LOADERS: > |
| 526 | -D glx=dri |
Dylan Baker | 138c003 | 2020-05-19 14:01:47 -0700 | [diff] [blame] | 527 | -D gbm=enabled |
| 528 | -D egl=enabled |
Michel Dänzer | 42f8d5a | 2019-08-28 12:01:02 +0200 | [diff] [blame] | 529 | -D platforms=x11,wayland,drm,surfaceless |
Michel Dänzer | 42f8d5a | 2019-08-28 12:01:02 +0200 | [diff] [blame] | 530 | GALLIUM_ST: > |
Dylan Baker | 138c003 | 2020-05-19 14:01:47 -0700 | [diff] [blame] | 531 | -D dri3=enabled |
Michel Dänzer | 42f8d5a | 2019-08-28 12:01:02 +0200 | [diff] [blame] | 532 | -D gallium-extra-hud=true |
Dylan Baker | 138c003 | 2020-05-19 14:01:47 -0700 | [diff] [blame] | 533 | -D gallium-vdpau=enabled |
| 534 | -D gallium-xvmc=enabled |
Michel Dänzer | 42f8d5a | 2019-08-28 12:01:02 +0200 | [diff] [blame] | 535 | -D gallium-omx=bellagio |
Dylan Baker | 138c003 | 2020-05-19 14:01:47 -0700 | [diff] [blame] | 536 | -D gallium-va=enabled |
| 537 | -D gallium-xa=enabled |
Michel Dänzer | 42f8d5a | 2019-08-28 12:01:02 +0200 | [diff] [blame] | 538 | -D gallium-nine=true |
| 539 | -D gallium-opencl=disabled |
Samuel Pitoiset | e6d26d7 | 2019-11-19 14:36:02 +0100 | [diff] [blame] | 540 | GALLIUM_DRIVERS: "iris,nouveau,kmsro,r300,r600,freedreno,swr,swrast,svga,v3d,vc4,virgl,etnaviv,panfrost,lima,zink" |
Michel Dänzer | 42f8d5a | 2019-08-28 12:01:02 +0200 | [diff] [blame] | 541 | EXTRA_OPTION: > |
| 542 | -D osmesa=gallium |
| 543 | -D tools=all |
Michel Dänzer | 59fcb01 | 2019-10-23 18:42:53 +0200 | [diff] [blame] | 544 | script: |
| 545 | - .gitlab-ci/meson-build.sh |
| 546 | - .gitlab-ci/run-shader-db.sh |
Michel Dänzer | 42f8d5a | 2019-08-28 12:01:02 +0200 | [diff] [blame] | 547 | |
Michel Dänzer | c56f091 | 2020-03-12 12:29:40 +0100 | [diff] [blame] | 548 | meson-classic: |
| 549 | extends: .meson-build |
| 550 | variables: |
Dylan Baker | 138c003 | 2020-05-19 14:01:47 -0700 | [diff] [blame] | 551 | UNWIND: "enabled" |
Michel Dänzer | c56f091 | 2020-03-12 12:29:40 +0100 | [diff] [blame] | 552 | DRI_LOADERS: > |
| 553 | -D glx=dri |
Dylan Baker | 138c003 | 2020-05-19 14:01:47 -0700 | [diff] [blame] | 554 | -D gbm=enabled |
| 555 | -D egl=enabled |
Michel Dänzer | c56f091 | 2020-03-12 12:29:40 +0100 | [diff] [blame] | 556 | -D platforms=x11,wayland,drm,surfaceless |
| 557 | DRI_DRIVERS: "auto" |
| 558 | EXTRA_OPTION: > |
| 559 | -D osmesa=classic |
| 560 | -D tools=all |
| 561 | |
Michel Dänzer | e536446 | 2019-09-13 11:59:43 +0200 | [diff] [blame] | 562 | .meson-cross: |
| 563 | extends: |
| 564 | - .meson-build |
Michel Dänzer | cc9493f | 2020-02-27 18:27:56 +0100 | [diff] [blame] | 565 | stage: meson-misc |
Michel Dänzer | e536446 | 2019-09-13 11:59:43 +0200 | [diff] [blame] | 566 | variables: |
Dylan Baker | 138c003 | 2020-05-19 14:01:47 -0700 | [diff] [blame] | 567 | UNWIND: "disabled" |
Michel Dänzer | e536446 | 2019-09-13 11:59:43 +0200 | [diff] [blame] | 568 | DRI_LOADERS: > |
| 569 | -D glx=disabled |
Dylan Baker | 138c003 | 2020-05-19 14:01:47 -0700 | [diff] [blame] | 570 | -D gbm=disabled |
| 571 | -D egl=enabled |
Michel Dänzer | e536446 | 2019-09-13 11:59:43 +0200 | [diff] [blame] | 572 | -D platforms=surfaceless |
| 573 | -D osmesa=none |
| 574 | GALLIUM_ST: > |
Dylan Baker | 138c003 | 2020-05-19 14:01:47 -0700 | [diff] [blame] | 575 | -D dri3=disabled |
| 576 | -D gallium-vdpau=disabled |
| 577 | -D gallium-xvmc=disabled |
Michel Dänzer | e536446 | 2019-09-13 11:59:43 +0200 | [diff] [blame] | 578 | -D gallium-omx=disabled |
Dylan Baker | 138c003 | 2020-05-19 14:01:47 -0700 | [diff] [blame] | 579 | -D gallium-va=disabled |
| 580 | -D gallium-xa=disabled |
Michel Dänzer | e536446 | 2019-09-13 11:59:43 +0200 | [diff] [blame] | 581 | -D gallium-nine=false |
Michel Dänzer | 65610ec | 2020-01-30 18:21:15 +0100 | [diff] [blame] | 582 | LLVM_VERSION: "8" |
Michel Dänzer | e536446 | 2019-09-13 11:59:43 +0200 | [diff] [blame] | 583 | |
Michel Dänzer | 163ec5d | 2019-10-08 19:46:11 +0200 | [diff] [blame] | 584 | .meson-arm: |
Michel Dänzer | c6c7652 | 2019-11-11 18:13:28 +0100 | [diff] [blame] | 585 | extends: |
| 586 | - .meson-cross |
| 587 | - .use-arm_build |
Michel Dänzer | e536446 | 2019-09-13 11:59:43 +0200 | [diff] [blame] | 588 | variables: |
Michel Dänzer | e536446 | 2019-09-13 11:59:43 +0200 | [diff] [blame] | 589 | VULKAN_DRIVERS: freedreno |
Michel Dänzer | 793f6b3 | 2019-10-08 19:48:41 +0200 | [diff] [blame] | 590 | GALLIUM_DRIVERS: "etnaviv,freedreno,kmsro,lima,nouveau,panfrost,swrast,tegra,v3d,vc4" |
Tomeu Vizoso | 22d9764 | 2019-12-17 11:50:14 +0100 | [diff] [blame] | 591 | BUILDTYPE: "debugoptimized" |
Michel Dänzer | 163ec5d | 2019-10-08 19:46:11 +0200 | [diff] [blame] | 592 | tags: |
| 593 | - aarch64 |
| 594 | |
| 595 | meson-armhf: |
Tomeu Vizoso | 22d9764 | 2019-12-17 11:50:14 +0100 | [diff] [blame] | 596 | extends: |
| 597 | - .meson-arm |
| 598 | - .ci-deqp-artifacts |
Michel Dänzer | 163ec5d | 2019-10-08 19:46:11 +0200 | [diff] [blame] | 599 | variables: |
| 600 | CROSS: armhf |
Michel Dänzer | 793f6b3 | 2019-10-08 19:48:41 +0200 | [diff] [blame] | 601 | LLVM_VERSION: "7" |
Eric Anholt | 2574158 | 2020-02-24 10:31:33 -0800 | [diff] [blame] | 602 | EXTRA_OPTION: > |
Dylan Baker | 138c003 | 2020-05-19 14:01:47 -0700 | [diff] [blame] | 603 | -D llvm=disabled |
Tomeu Vizoso | 22d9764 | 2019-12-17 11:50:14 +0100 | [diff] [blame] | 604 | script: |
| 605 | - .gitlab-ci/meson-build.sh |
| 606 | - .gitlab-ci/prepare-artifacts.sh |
Michel Dänzer | e536446 | 2019-09-13 11:59:43 +0200 | [diff] [blame] | 607 | |
| 608 | meson-arm64: |
Michel Dänzer | 163ec5d | 2019-10-08 19:46:11 +0200 | [diff] [blame] | 609 | extends: |
| 610 | - .meson-arm |
| 611 | - .ci-deqp-artifacts |
Michel Dänzer | e536446 | 2019-09-13 11:59:43 +0200 | [diff] [blame] | 612 | variables: |
Rohan Garg | 9c0bbba | 2020-02-20 16:37:48 +0100 | [diff] [blame] | 613 | VULKAN_DRIVERS: "freedreno" |
Eric Anholt | 2574158 | 2020-02-24 10:31:33 -0800 | [diff] [blame] | 614 | EXTRA_OPTION: > |
Dylan Baker | 138c003 | 2020-05-19 14:01:47 -0700 | [diff] [blame] | 615 | -D llvm=disabled |
Michel Dänzer | 59fcb01 | 2019-10-23 18:42:53 +0200 | [diff] [blame] | 616 | script: |
| 617 | - .gitlab-ci/meson-build.sh |
| 618 | - .gitlab-ci/prepare-artifacts.sh |
Michel Dänzer | e536446 | 2019-09-13 11:59:43 +0200 | [diff] [blame] | 619 | |
Rohan Garg | 9c0bbba | 2020-02-20 16:37:48 +0100 | [diff] [blame] | 620 | meson-arm64-build-test: |
| 621 | extends: |
| 622 | - .meson-arm |
| 623 | - .ci-deqp-artifacts |
| 624 | variables: |
| 625 | VULKAN_DRIVERS: "amd" |
| 626 | script: |
| 627 | - .gitlab-ci/meson-build.sh |
| 628 | |
Michel Dänzer | a2cce70 | 2019-03-20 15:58:31 +0100 | [diff] [blame] | 629 | meson-clang: |
| 630 | extends: .meson-build |
| 631 | variables: |
Dylan Baker | 138c003 | 2020-05-19 14:01:47 -0700 | [diff] [blame] | 632 | UNWIND: "enabled" |
Samuel Pitoiset | 7362176 | 2019-11-19 14:37:32 +0100 | [diff] [blame] | 633 | DRI_LOADERS: > |
| 634 | -D glvnd=true |
Michel Dänzer | a2cce70 | 2019-03-20 15:58:31 +0100 | [diff] [blame] | 635 | DRI_DRIVERS: "auto" |
| 636 | GALLIUM_DRIVERS: "auto" |
Eric Engestrom | 47f419d | 2019-05-01 12:09:26 +0100 | [diff] [blame] | 637 | VULKAN_DRIVERS: intel,amd,freedreno |
Michel Dänzer | 5f0ff00 | 2019-12-13 11:02:16 +0100 | [diff] [blame] | 638 | CC: "ccache clang-9" |
| 639 | CXX: "ccache clang++-9" |
Michel Dänzer | a2cce70 | 2019-03-20 15:58:31 +0100 | [diff] [blame] | 640 | |
Daniel Stone | efec833 | 2020-07-02 08:21:33 +0100 | [diff] [blame] | 641 | .meson-windows-vs2019: |
Dylan Baker | 19851c9 | 2019-10-23 14:36:19 -0700 | [diff] [blame] | 642 | extends: |
| 643 | - .build-windows |
Daniel Stone | 07885cb | 2020-03-24 11:11:36 +0000 | [diff] [blame] | 644 | - .use-windows_build_vs2019 |
Michel Dänzer | cc9493f | 2020-02-27 18:27:56 +0100 | [diff] [blame] | 645 | stage: meson-misc |
Dylan Baker | 19851c9 | 2019-10-23 14:36:19 -0700 | [diff] [blame] | 646 | script: |
Daniel Stone | 07885cb | 2020-03-24 11:11:36 +0000 | [diff] [blame] | 647 | - . .\.gitlab-ci\windows\mesa_build.ps1 |
Dylan Baker | 19851c9 | 2019-10-23 14:36:19 -0700 | [diff] [blame] | 648 | |
Michel Dänzer | 82b3009 | 2019-05-03 18:19:25 +0200 | [diff] [blame] | 649 | scons-win64: |
| 650 | extends: .scons-build |
| 651 | variables: |
Jose Fonseca | 27d58a1 | 2020-03-28 10:36:28 +0000 | [diff] [blame] | 652 | SCONS_TARGET: platform=windows machine=x86_64 debug=1 |
Michel Dänzer | 82b3009 | 2019-05-03 18:19:25 +0200 | [diff] [blame] | 653 | SCONS_CHECK_COMMAND: "true" |
Jose Fonseca | 27d58a1 | 2020-03-28 10:36:28 +0000 | [diff] [blame] | 654 | allow_failure: true |
Eric Engestrom | 89a7467 | 2019-01-21 09:42:37 +0000 | [diff] [blame] | 655 | |
Michel Dänzer | 6897715 | 2019-05-03 10:58:48 +0200 | [diff] [blame] | 656 | meson-clover: |
Eric Engestrom | b5a70af | 2019-01-28 18:05:22 +0000 | [diff] [blame] | 657 | extends: .meson-build |
| 658 | variables: |
Dylan Baker | 138c003 | 2020-05-19 14:01:47 -0700 | [diff] [blame] | 659 | UNWIND: "enabled" |
Eric Engestrom | b5a70af | 2019-01-28 18:05:22 +0000 | [diff] [blame] | 660 | DRI_LOADERS: > |
| 661 | -D glx=disabled |
Dylan Baker | 138c003 | 2020-05-19 14:01:47 -0700 | [diff] [blame] | 662 | -D egl=disabled |
| 663 | -D gbm=disabled |
Michel Dänzer | 262e388 | 2020-05-30 23:55:28 +0200 | [diff] [blame] | 664 | GALLIUM_DRIVERS: "r600,radeonsi" |
Eric Engestrom | b5a70af | 2019-01-28 18:05:22 +0000 | [diff] [blame] | 665 | GALLIUM_ST: > |
Dylan Baker | 138c003 | 2020-05-19 14:01:47 -0700 | [diff] [blame] | 666 | -D dri3=disabled |
| 667 | -D gallium-vdpau=disabled |
| 668 | -D gallium-xvmc=disabled |
Eric Engestrom | b5a70af | 2019-01-28 18:05:22 +0000 | [diff] [blame] | 669 | -D gallium-omx=disabled |
Dylan Baker | 138c003 | 2020-05-19 14:01:47 -0700 | [diff] [blame] | 670 | -D gallium-va=disabled |
| 671 | -D gallium-xa=disabled |
Eric Engestrom | b5a70af | 2019-01-28 18:05:22 +0000 | [diff] [blame] | 672 | -D gallium-nine=false |
| 673 | -D gallium-opencl=icd |
Michel Dänzer | 6897715 | 2019-05-03 10:58:48 +0200 | [diff] [blame] | 674 | script: |
Michel Dänzer | 6897715 | 2019-05-03 10:58:48 +0200 | [diff] [blame] | 675 | - .gitlab-ci/meson-build.sh |
Samuel Pitoiset | 7d1c091 | 2019-08-21 11:45:25 +0200 | [diff] [blame] | 676 | - LLVM_VERSION=8 .gitlab-ci/meson-build.sh |
Michel Dänzer | 8a19992 | 2019-09-06 17:04:47 +0200 | [diff] [blame] | 677 | |
| 678 | meson-clover-old-llvm: |
Michel Dänzer | 88319f2 | 2019-09-18 16:17:01 +0200 | [diff] [blame] | 679 | extends: |
| 680 | - meson-clover |
Michel Dänzer | 3a48f45 | 2019-11-13 17:43:41 +0100 | [diff] [blame] | 681 | - .use-x86_build_old |
Michel Dänzer | 8a19992 | 2019-09-06 17:04:47 +0200 | [diff] [blame] | 682 | variables: |
Dylan Baker | 138c003 | 2020-05-19 14:01:47 -0700 | [diff] [blame] | 683 | UNWIND: "disabled" |
Michel Dänzer | 8a19992 | 2019-09-06 17:04:47 +0200 | [diff] [blame] | 684 | DRI_LOADERS: > |
| 685 | -D glx=disabled |
Dylan Baker | 138c003 | 2020-05-19 14:01:47 -0700 | [diff] [blame] | 686 | -D egl=disabled |
| 687 | -D gbm=disabled |
Michel Dänzer | 8a19992 | 2019-09-06 17:04:47 +0200 | [diff] [blame] | 688 | -D platforms=drm,surfaceless |
| 689 | GALLIUM_DRIVERS: "i915,r600" |
| 690 | script: |
Michel Dänzer | 6897715 | 2019-05-03 10:58:48 +0200 | [diff] [blame] | 691 | - LLVM_VERSION=3.9 .gitlab-ci/meson-build.sh |
| 692 | - LLVM_VERSION=4.0 .gitlab-ci/meson-build.sh |
| 693 | - LLVM_VERSION=5.0 .gitlab-ci/meson-build.sh |
Michel Dänzer | 262e388 | 2020-05-30 23:55:28 +0200 | [diff] [blame] | 694 | - LLVM_VERSION=6.0 .gitlab-ci/meson-build.sh |
| 695 | - LLVM_VERSION=7 .gitlab-ci/meson-build.sh |
Eric Engestrom | 8dab707 | 2019-01-28 18:09:24 +0000 | [diff] [blame] | 696 | |
Michel Dänzer | 82b3009 | 2019-05-03 18:19:25 +0200 | [diff] [blame] | 697 | meson-vulkan: |
| 698 | extends: .meson-build |
| 699 | variables: |
Dylan Baker | 138c003 | 2020-05-19 14:01:47 -0700 | [diff] [blame] | 700 | UNWIND: "disabled" |
Michel Dänzer | 82b3009 | 2019-05-03 18:19:25 +0200 | [diff] [blame] | 701 | DRI_LOADERS: > |
| 702 | -D glx=disabled |
Dylan Baker | 138c003 | 2020-05-19 14:01:47 -0700 | [diff] [blame] | 703 | -D gbm=disabled |
| 704 | -D egl=disabled |
Michel Dänzer | 82b3009 | 2019-05-03 18:19:25 +0200 | [diff] [blame] | 705 | -D platforms=x11,wayland,drm |
| 706 | -D osmesa=none |
| 707 | GALLIUM_ST: > |
Dylan Baker | 138c003 | 2020-05-19 14:01:47 -0700 | [diff] [blame] | 708 | -D dri3=enabled |
| 709 | -D gallium-vdpau=disabled |
| 710 | -D gallium-xvmc=disabled |
Michel Dänzer | 82b3009 | 2019-05-03 18:19:25 +0200 | [diff] [blame] | 711 | -D gallium-omx=disabled |
Dylan Baker | 138c003 | 2020-05-19 14:01:47 -0700 | [diff] [blame] | 712 | -D gallium-va=disabled |
| 713 | -D gallium-xa=disabled |
Michel Dänzer | 82b3009 | 2019-05-03 18:19:25 +0200 | [diff] [blame] | 714 | -D gallium-nine=false |
| 715 | -D gallium-opencl=disabled |
Michel Dänzer | 75cc8c0 | 2019-09-25 12:56:58 +0200 | [diff] [blame] | 716 | -D b_sanitize=undefined |
| 717 | -D c_args=-fno-sanitize-recover=all |
| 718 | -D cpp_args=-fno-sanitize-recover=all |
| 719 | UBSAN_OPTIONS: "print_stacktrace=1" |
Michel Dänzer | 82b3009 | 2019-05-03 18:19:25 +0200 | [diff] [blame] | 720 | VULKAN_DRIVERS: intel,amd,freedreno |
Eric Engestrom | 5f8d29a | 2019-05-08 18:17:23 +0200 | [diff] [blame] | 721 | EXTRA_OPTION: > |
| 722 | -D vulkan-overlay-layer=true |
Eric Anholt | 3c7c021 | 2019-12-16 21:23:02 -0800 | [diff] [blame] | 723 | -D werror=true |
Michel Dänzer | 82b3009 | 2019-05-03 18:19:25 +0200 | [diff] [blame] | 724 | |
Eric Anholt | 11aa32a | 2019-07-11 12:58:28 -0700 | [diff] [blame] | 725 | meson-i386: |
Michel Dänzer | 3acd5a6 | 2020-06-01 19:08:30 +0200 | [diff] [blame] | 726 | extends: |
| 727 | - .meson-cross |
| 728 | - .use-i386_build |
Eric Anholt | 11aa32a | 2019-07-11 12:58:28 -0700 | [diff] [blame] | 729 | variables: |
Eric Engestrom | 1c82fa0 | 2019-08-09 23:46:50 +0100 | [diff] [blame] | 730 | CROSS: i386 |
Samuel Pitoiset | 529c0ba | 2020-03-04 09:37:46 +0100 | [diff] [blame] | 731 | VULKAN_DRIVERS: intel,amd |
Michel Dänzer | a059186 | 2020-03-12 12:31:05 +0100 | [diff] [blame] | 732 | GALLIUM_DRIVERS: "iris,r300,radeonsi,swrast,virgl" |
Eric Anholt | 11aa32a | 2019-07-11 12:58:28 -0700 | [diff] [blame] | 733 | EXTRA_OPTION: > |
Eric Anholt | 11aa32a | 2019-07-11 12:58:28 -0700 | [diff] [blame] | 734 | -D vulkan-overlay-layer=true |
Eric Anholt | f6e5991 | 2019-12-16 21:23:02 -0800 | [diff] [blame] | 735 | -D werror=true |
Eric Anholt | 11aa32a | 2019-07-11 12:58:28 -0700 | [diff] [blame] | 736 | |
Michel Dänzer | 65610ec | 2020-01-30 18:21:15 +0100 | [diff] [blame] | 737 | meson-s390x: |
| 738 | extends: |
| 739 | - .meson-cross |
Michel Dänzer | 3acd5a6 | 2020-06-01 19:08:30 +0200 | [diff] [blame] | 740 | - .use-s390x_build |
Michel Dänzer | 130c0ba | 2020-03-18 18:41:43 +0100 | [diff] [blame] | 741 | tags: |
| 742 | - kvm |
Michel Dänzer | 65610ec | 2020-01-30 18:21:15 +0100 | [diff] [blame] | 743 | variables: |
| 744 | CROSS: s390x |
Michel Dänzer | 6c99de98 | 2020-05-23 16:07:53 +0200 | [diff] [blame] | 745 | EXTRA_OPTION: > |
| 746 | -D werror=true |
Michel Dänzer | 65610ec | 2020-01-30 18:21:15 +0100 | [diff] [blame] | 747 | GALLIUM_DRIVERS: "swrast" |
Michel Dänzer | 65610ec | 2020-01-30 18:21:15 +0100 | [diff] [blame] | 748 | |
| 749 | meson-ppc64el: |
| 750 | extends: |
| 751 | - meson-s390x |
Michel Dänzer | 3acd5a6 | 2020-06-01 19:08:30 +0200 | [diff] [blame] | 752 | - .use-ppc64el_build |
Michel Dänzer | 65610ec | 2020-01-30 18:21:15 +0100 | [diff] [blame] | 753 | variables: |
| 754 | CROSS: ppc64el |
Michel Dänzer | 6c99de98 | 2020-05-23 16:07:53 +0200 | [diff] [blame] | 755 | EXTRA_OPTION: "" |
Michel Dänzer | 8be81f8 | 2020-01-31 16:07:10 +0100 | [diff] [blame] | 756 | GALLIUM_DRIVERS: "nouveau,radeonsi,swrast,virgl" |
Michel Dänzer | 8be81f8 | 2020-01-31 16:07:10 +0100 | [diff] [blame] | 757 | VULKAN_DRIVERS: "amd" |
Michel Dänzer | 65610ec | 2020-01-30 18:21:15 +0100 | [diff] [blame] | 758 | |
Dylan Baker | 449f831 | 2019-10-11 09:04:14 -0700 | [diff] [blame] | 759 | meson-mingw32-x86_64: |
Dylan Baker | d905d9b | 2019-09-19 10:21:51 -0700 | [diff] [blame] | 760 | extends: .meson-build |
Michel Dänzer | cc9493f | 2020-02-27 18:27:56 +0100 | [diff] [blame] | 761 | stage: meson-misc |
Dylan Baker | d905d9b | 2019-09-19 10:21:51 -0700 | [diff] [blame] | 762 | variables: |
Dylan Baker | 138c003 | 2020-05-19 14:01:47 -0700 | [diff] [blame] | 763 | UNWIND: "disabled" |
Dylan Baker | d905d9b | 2019-09-19 10:21:51 -0700 | [diff] [blame] | 764 | DRI_DRIVERS: "" |
| 765 | GALLIUM_DRIVERS: "swrast" |
| 766 | EXTRA_OPTION: > |
Dylan Baker | 138c003 | 2020-05-19 14:01:47 -0700 | [diff] [blame] | 767 | -Dllvm=disabled |
Dylan Baker | d905d9b | 2019-09-19 10:21:51 -0700 | [diff] [blame] | 768 | -Dosmesa=gallium |
| 769 | --cross-file=.gitlab-ci/x86_64-w64-mingw32 |
| 770 | |
Samuel Pitoiset | 0b246d3 | 2019-11-18 09:30:27 +0100 | [diff] [blame] | 771 | .test: |
Michel Dänzer | 576f7b6 | 2019-10-22 17:16:52 +0200 | [diff] [blame] | 772 | extends: |
| 773 | - .ci-run-policy |
Eric Anholt | 46daaca | 2019-06-28 16:35:32 -0700 | [diff] [blame] | 774 | variables: |
| 775 | GIT_STRATEGY: none # testing doesn't build anything from source |
Michel Dänzer | 576f7b6 | 2019-10-22 17:16:52 +0200 | [diff] [blame] | 776 | before_script: |
Eric Anholt | 46daaca | 2019-06-28 16:35:32 -0700 | [diff] [blame] | 777 | # Note: Build dir (and thus install) may be dirty due to GIT_STRATEGY |
| 778 | - rm -rf install |
| 779 | - tar -xf artifacts/install.tar |
Samuel Pitoiset | eab328f | 2019-11-14 14:00:46 +0100 | [diff] [blame] | 780 | - LD_LIBRARY_PATH=install/lib find install/lib -name "*.so" -print -exec ldd {} \; |
Eric Anholt | 46daaca | 2019-06-28 16:35:32 -0700 | [diff] [blame] | 781 | artifacts: |
Rob Clark | fdaf777 | 2019-11-17 11:33:01 -0800 | [diff] [blame] | 782 | when: always |
Michel Dänzer | 0103f02 | 2020-03-06 12:35:17 +0100 | [diff] [blame] | 783 | name: "mesa_${CI_JOB_NAME}" |
Eric Anholt | 46daaca | 2019-06-28 16:35:32 -0700 | [diff] [blame] | 784 | paths: |
| 785 | - results/ |
Samuel Pitoiset | 0b246d3 | 2019-11-18 09:30:27 +0100 | [diff] [blame] | 786 | |
| 787 | .test-gl: |
| 788 | extends: |
| 789 | - .test |
| 790 | variables: |
| 791 | TAG: *x86_test-gl |
| 792 | image: "$CI_REGISTRY_IMAGE/debian/x86_test-gl:$TAG" |
Michel Dänzer | c5aa271 | 2019-10-22 11:19:17 +0200 | [diff] [blame] | 793 | needs: |
Michel Dänzer | a85da8e | 2020-05-30 15:53:41 +0200 | [diff] [blame] | 794 | - x86_build-base |
Michel Dänzer | 43111ea | 2020-05-16 12:07:42 +0200 | [diff] [blame] | 795 | - x86_build |
Samuel Pitoiset | 66b5627 | 2019-11-19 12:23:41 +0100 | [diff] [blame] | 796 | - meson-testing |
Michel Dänzer | c2366f0 | 2020-05-16 17:17:23 +0200 | [diff] [blame] | 797 | - x86_test-base |
Samuel Pitoiset | 520a77d | 2019-11-18 09:15:12 +0100 | [diff] [blame] | 798 | - x86_test-gl |
Eric Anholt | 109816b | 2020-06-08 15:09:51 -0700 | [diff] [blame] | 799 | dependencies: |
| 800 | - meson-testing |
Eric Anholt | 46daaca | 2019-06-28 16:35:32 -0700 | [diff] [blame] | 801 | |
Samuel Pitoiset | 0b246d3 | 2019-11-18 09:30:27 +0100 | [diff] [blame] | 802 | .test-vk: |
| 803 | extends: |
| 804 | - .test |
| 805 | variables: |
| 806 | TAG: *x86_test-vk |
| 807 | image: "$CI_REGISTRY_IMAGE/debian/x86_test-vk:$TAG" |
| 808 | needs: |
Michel Dänzer | a85da8e | 2020-05-30 15:53:41 +0200 | [diff] [blame] | 809 | - x86_build-base |
Michel Dänzer | 43111ea | 2020-05-16 12:07:42 +0200 | [diff] [blame] | 810 | - x86_build |
Samuel Pitoiset | 0b246d3 | 2019-11-18 09:30:27 +0100 | [diff] [blame] | 811 | - meson-testing |
Michel Dänzer | c2366f0 | 2020-05-16 17:17:23 +0200 | [diff] [blame] | 812 | - x86_test-base |
Samuel Pitoiset | 0b246d3 | 2019-11-18 09:30:27 +0100 | [diff] [blame] | 813 | - x86_test-vk |
Eric Anholt | 109816b | 2020-06-08 15:09:51 -0700 | [diff] [blame] | 814 | dependencies: |
| 815 | - meson-testing |
Samuel Pitoiset | 0b246d3 | 2019-11-18 09:30:27 +0100 | [diff] [blame] | 816 | |
Michel Dänzer | 576f7b6 | 2019-10-22 17:16:52 +0200 | [diff] [blame] | 817 | .piglit-test: |
Pierre-Eric Pelloux-Prayer | 2a9d6fd | 2019-10-30 20:39:08 +0100 | [diff] [blame] | 818 | extends: |
| 819 | - .test-gl |
| 820 | - .llvmpipe-rules |
Michel Dänzer | a3b3d3b | 2019-11-25 18:42:10 +0100 | [diff] [blame] | 821 | artifacts: |
| 822 | when: on_failure |
Michel Dänzer | 0103f02 | 2020-03-06 12:35:17 +0100 | [diff] [blame] | 823 | name: "mesa_${CI_JOB_NAME}" |
Michel Dänzer | a3b3d3b | 2019-11-25 18:42:10 +0100 | [diff] [blame] | 824 | paths: |
| 825 | - summary/ |
Michel Dänzer | 576f7b6 | 2019-10-22 17:16:52 +0200 | [diff] [blame] | 826 | variables: |
| 827 | LIBGL_ALWAYS_SOFTWARE: 1 |
| 828 | PIGLIT_NO_WINDOW: 1 |
| 829 | script: |
Tomeu Vizoso | 92f3c51 | 2020-03-24 12:58:30 +0100 | [diff] [blame] | 830 | - install/piglit/run.sh |
Michel Dänzer | 576f7b6 | 2019-10-22 17:16:52 +0200 | [diff] [blame] | 831 | |
| 832 | piglit-quick_gl: |
| 833 | extends: .piglit-test |
| 834 | variables: |
| 835 | LP_NUM_THREADS: 0 |
Dave Airlie | e6b2af5 | 2019-12-03 15:23:45 +1000 | [diff] [blame] | 836 | NIR_VALIDATE: 0 |
Michel Dänzer | 576f7b6 | 2019-10-22 17:16:52 +0200 | [diff] [blame] | 837 | PIGLIT_OPTIONS: > |
Michel Dänzer | 5585b8e | 2019-12-03 10:45:28 +0100 | [diff] [blame] | 838 | --process-isolation false |
Michel Dänzer | 576f7b6 | 2019-10-22 17:16:52 +0200 | [diff] [blame] | 839 | -x arb_gpu_shader5 |
Eric Anholt | 3097efe | 2019-12-04 16:13:38 -0800 | [diff] [blame] | 840 | -x egl_ext_device_ |
| 841 | -x egl_ext_platform_device |
Matt Turner | 17c9ec9 | 2020-01-21 15:23:39 -0800 | [diff] [blame] | 842 | -x ext_timer_query@time-elapsed |
Michel Dänzer | 576f7b6 | 2019-10-22 17:16:52 +0200 | [diff] [blame] | 843 | -x glx-multithread-clearbuffer |
| 844 | -x glx-multithread-shader-compile |
| 845 | -x max-texture-size |
| 846 | -x maxsize |
| 847 | PIGLIT_PROFILES: quick_gl |
| 848 | |
Michel Dänzer | 5585b8e | 2019-12-03 10:45:28 +0100 | [diff] [blame] | 849 | piglit-glslparser: |
| 850 | extends: .piglit-test |
| 851 | variables: |
| 852 | LP_NUM_THREADS: 0 |
Dave Airlie | e6b2af5 | 2019-12-03 15:23:45 +1000 | [diff] [blame] | 853 | NIR_VALIDATE: 0 |
Michel Dänzer | 5585b8e | 2019-12-03 10:45:28 +0100 | [diff] [blame] | 854 | PIGLIT_PROFILES: glslparser |
| 855 | |
| 856 | piglit-quick_shader: |
Michel Dänzer | 576f7b6 | 2019-10-22 17:16:52 +0200 | [diff] [blame] | 857 | extends: .piglit-test |
| 858 | variables: |
| 859 | LP_NUM_THREADS: 1 |
Dave Airlie | e6b2af5 | 2019-12-03 15:23:45 +1000 | [diff] [blame] | 860 | NIR_VALIDATE: 0 |
Michel Dänzer | 5585b8e | 2019-12-03 10:45:28 +0100 | [diff] [blame] | 861 | PIGLIT_PROFILES: quick_shader |
Michel Dänzer | 576f7b6 | 2019-10-22 17:16:52 +0200 | [diff] [blame] | 862 | |
Samuel Pitoiset | 16b999b | 2019-11-19 08:39:00 +0100 | [diff] [blame] | 863 | .deqp-test: |
Michel Dänzer | 576f7b6 | 2019-10-22 17:16:52 +0200 | [diff] [blame] | 864 | variables: |
| 865 | DEQP_SKIPS: deqp-default-skips.txt |
| 866 | script: |
Tomeu Vizoso | 92f3c51 | 2020-03-24 12:58:30 +0100 | [diff] [blame] | 867 | - ./install/deqp-runner.sh |
Michel Dänzer | 576f7b6 | 2019-10-22 17:16:52 +0200 | [diff] [blame] | 868 | |
Samuel Pitoiset | 16b999b | 2019-11-19 08:39:00 +0100 | [diff] [blame] | 869 | .deqp-test-gl: |
| 870 | extends: |
| 871 | - .test-gl |
| 872 | - .deqp-test |
| 873 | |
| 874 | .deqp-test-vk: |
| 875 | extends: |
| 876 | - .test-vk |
| 877 | - .deqp-test |
| 878 | variables: |
| 879 | DEQP_VER: vk |
| 880 | |
Samuel Pitoiset | 1cdb6ed | 2020-02-26 09:33:14 +0100 | [diff] [blame] | 881 | .fossilize-test: |
| 882 | extends: .test-vk |
| 883 | script: |
Tomeu Vizoso | 92f3c51 | 2020-03-24 12:58:30 +0100 | [diff] [blame] | 884 | - ./install/fossilize-runner.sh |
Samuel Pitoiset | 276e6d7 | 2020-06-25 11:21:12 +0200 | [diff] [blame] | 885 | artifacts: |
| 886 | when: on_failure |
| 887 | name: "mesa_${CI_JOB_NAME}" |
| 888 | paths: |
| 889 | - results/ |
Samuel Pitoiset | 1cdb6ed | 2020-02-26 09:33:14 +0100 | [diff] [blame] | 890 | |
Michel Dänzer | 71436f9 | 2020-03-03 18:17:12 +0100 | [diff] [blame] | 891 | llvmpipe-gles2: |
Eric Anholt | 46daaca | 2019-06-28 16:35:32 -0700 | [diff] [blame] | 892 | variables: |
| 893 | DEQP_VER: gles2 |
Eric Anholt | f08c810 | 2019-11-04 10:54:41 -0800 | [diff] [blame] | 894 | DEQP_PARALLEL: 4 |
Dave Airlie | e6b2af5 | 2019-12-03 15:23:45 +1000 | [diff] [blame] | 895 | NIR_VALIDATE: 0 |
Eric Anholt | f08c810 | 2019-11-04 10:54:41 -0800 | [diff] [blame] | 896 | # Don't use threads inside llvmpipe, we've already got all 4 cores |
| 897 | # busy with DEQP_PARALLEL. |
| 898 | LP_NUM_THREADS: 0 |
Eric Anholt | 46daaca | 2019-06-28 16:35:32 -0700 | [diff] [blame] | 899 | DEQP_EXPECTED_FAILS: deqp-llvmpipe-fails.txt |
| 900 | LIBGL_ALWAYS_SOFTWARE: "true" |
Eric Anholt | 8b221e0 | 2020-04-17 12:39:32 -0700 | [diff] [blame] | 901 | DEQP_EXPECTED_RENDERER: llvmpipe |
Pierre-Eric Pelloux-Prayer | 2a9d6fd | 2019-10-30 20:39:08 +0100 | [diff] [blame] | 902 | extends: |
| 903 | - .deqp-test-gl |
| 904 | - .llvmpipe-rules |
Eric Anholt | 553cd82 | 2019-08-09 10:32:40 -0700 | [diff] [blame] | 905 | |
Michel Dänzer | 71436f9 | 2020-03-03 18:17:12 +0100 | [diff] [blame] | 906 | softpipe-gles2: |
Pierre-Eric Pelloux-Prayer | 2a9d6fd | 2019-10-30 20:39:08 +0100 | [diff] [blame] | 907 | extends: |
| 908 | - llvmpipe-gles2 |
| 909 | - .softpipe-rules |
Eric Anholt | 553cd82 | 2019-08-09 10:32:40 -0700 | [diff] [blame] | 910 | variables: |
Eric Anholt | 553cd82 | 2019-08-09 10:32:40 -0700 | [diff] [blame] | 911 | DEQP_EXPECTED_FAILS: deqp-softpipe-fails.txt |
Eric Anholt | f08c810 | 2019-11-04 10:54:41 -0800 | [diff] [blame] | 912 | DEQP_SKIPS: deqp-softpipe-skips.txt |
Eric Anholt | 553cd82 | 2019-08-09 10:32:40 -0700 | [diff] [blame] | 913 | GALLIUM_DRIVER: "softpipe" |
Eric Anholt | 8b221e0 | 2020-04-17 12:39:32 -0700 | [diff] [blame] | 914 | DEQP_EXPECTED_RENDERER: softpipe |
Eric Anholt | 553cd82 | 2019-08-09 10:32:40 -0700 | [diff] [blame] | 915 | |
Michel Dänzer | 71436f9 | 2020-03-03 18:17:12 +0100 | [diff] [blame] | 916 | softpipe-gles3: |
Eric Anholt | 52843ec | 2019-11-05 10:31:29 -0800 | [diff] [blame] | 917 | parallel: 2 |
Eric Anholt | 553cd82 | 2019-08-09 10:32:40 -0700 | [diff] [blame] | 918 | variables: |
| 919 | DEQP_VER: gles3 |
Michel Dänzer | 71436f9 | 2020-03-03 18:17:12 +0100 | [diff] [blame] | 920 | extends: softpipe-gles2 |
Eric Anholt | 52843ec | 2019-11-05 10:31:29 -0800 | [diff] [blame] | 921 | |
Michel Dänzer | 71436f9 | 2020-03-03 18:17:12 +0100 | [diff] [blame] | 922 | softpipe-gles31: |
Eric Anholt | 52843ec | 2019-11-05 10:31:29 -0800 | [diff] [blame] | 923 | parallel: 4 |
| 924 | variables: |
| 925 | DEQP_VER: gles31 |
Michel Dänzer | 71436f9 | 2020-03-03 18:17:12 +0100 | [diff] [blame] | 926 | extends: softpipe-gles2 |
Eric Anholt | 6f0dc08 | 2019-06-28 16:35:32 -0700 | [diff] [blame] | 927 | |
Tomeu Vizoso | 2102d5e | 2020-05-12 10:18:48 +0200 | [diff] [blame] | 928 | virgl-gles2-on-gl: |
Tomeu Vizoso | ad3ef6d | 2020-04-01 09:17:25 +0200 | [diff] [blame] | 929 | variables: |
| 930 | DEQP_VER: gles2 |
| 931 | DEQP_PARALLEL: 4 |
| 932 | NIR_VALIDATE: 0 |
| 933 | DEQP_NO_SAVE_RESULTS: 1 |
Tomeu Vizoso | ad3ef6d | 2020-04-01 09:17:25 +0200 | [diff] [blame] | 934 | # Don't use threads inside llvmpipe, we've already got all 4 cores |
| 935 | # busy with DEQP_PARALLEL. |
| 936 | LP_NUM_THREADS: 0 |
Tomeu Vizoso | 2102d5e | 2020-05-12 10:18:48 +0200 | [diff] [blame] | 937 | DEQP_EXPECTED_FAILS: deqp-virgl-gl-fails.txt |
| 938 | DEQP_OPTIONS: "--deqp-log-images=disable" |
Tomeu Vizoso | ad3ef6d | 2020-04-01 09:17:25 +0200 | [diff] [blame] | 939 | LIBGL_ALWAYS_SOFTWARE: "true" |
| 940 | GALLIUM_DRIVER: "virpipe" |
Eric Anholt | 8b221e0 | 2020-04-17 12:39:32 -0700 | [diff] [blame] | 941 | DEQP_EXPECTED_RENDERER: virgl |
Tomeu Vizoso | ad3ef6d | 2020-04-01 09:17:25 +0200 | [diff] [blame] | 942 | extends: |
| 943 | - .deqp-test-gl |
| 944 | - .virgl-rules |
| 945 | |
Tomeu Vizoso | 2102d5e | 2020-05-12 10:18:48 +0200 | [diff] [blame] | 946 | virgl-gles3-on-gl: |
Tomeu Vizoso | 4417e92 | 2020-05-12 10:03:25 +0200 | [diff] [blame] | 947 | parallel: 2 |
Tomeu Vizoso | ad3ef6d | 2020-04-01 09:17:25 +0200 | [diff] [blame] | 948 | variables: |
| 949 | DEQP_VER: gles3 |
Tomeu Vizoso | 2102d5e | 2020-05-12 10:18:48 +0200 | [diff] [blame] | 950 | DEQP_RUNNER_OPTIONS: "--timeout 180" |
| 951 | extends: virgl-gles2-on-gl |
Tomeu Vizoso | ad3ef6d | 2020-04-01 09:17:25 +0200 | [diff] [blame] | 952 | |
Tomeu Vizoso | 2102d5e | 2020-05-12 10:18:48 +0200 | [diff] [blame] | 953 | virgl-gles31-on-gl: |
Tomeu Vizoso | 4417e92 | 2020-05-12 10:03:25 +0200 | [diff] [blame] | 954 | parallel: 4 |
Tomeu Vizoso | 5a5316e | 2020-04-21 14:51:59 +0200 | [diff] [blame] | 955 | variables: |
| 956 | DEQP_VER: gles31 |
Tomeu Vizoso | 5a5316e | 2020-04-21 14:51:59 +0200 | [diff] [blame] | 957 | MESA_GLES_VERSION_OVERRIDE: "3.1" |
| 958 | MESA_GLSL_VERSION_OVERRIDE: "310" |
Dave Airlie | c8c7450 | 2020-06-04 12:10:40 +1000 | [diff] [blame] | 959 | MESA_EXTENSION_OVERRIDE: "-GL_OES_tessellation_shader" |
Tomeu Vizoso | 2102d5e | 2020-05-12 10:18:48 +0200 | [diff] [blame] | 960 | extends: virgl-gles3-on-gl |
Tomeu Vizoso | 5a5316e | 2020-04-21 14:51:59 +0200 | [diff] [blame] | 961 | |
Tomeu Vizoso | 287bf5f | 2020-05-13 09:46:06 +0200 | [diff] [blame] | 962 | virgl-gl30-on-gl: |
| 963 | variables: |
| 964 | DEQP_VER: gl30 |
| 965 | extends: virgl-gles2-on-gl |
| 966 | |
| 967 | virgl-gl31-on-gl: |
| 968 | variables: |
| 969 | DEQP_VER: gl31 |
| 970 | extends: virgl-gles2-on-gl |
| 971 | |
| 972 | virgl-gl32-on-gl: |
| 973 | variables: |
| 974 | DEQP_VER: gl32 |
| 975 | extends: virgl-gles2-on-gl |
| 976 | |
Eric Anholt | 8edaa84 | 2020-03-19 11:45:01 -0700 | [diff] [blame] | 977 | # Rules for tests that should not be present in MRs or the main |
| 978 | # project's pipeline (don't block marge or report red on |
| 979 | # mesa/mesamaster) but should be present on pipelines in personal |
| 980 | # branches (so you can opt in to running the flaky test when you want |
| 981 | # to). |
| 982 | .test-manual: |
| 983 | rules: |
Michel Dänzer | 6a8e5dd | 2020-04-11 15:32:02 +0200 | [diff] [blame] | 984 | - if: '$CI_PROJECT_PATH != "mesa/mesa" && $CI_MERGE_REQUEST_SOURCE_BRANCH_NAME != $CI_COMMIT_REF_NAME' |
| 985 | changes: |
| 986 | *all_paths |
| 987 | when: manual |
| 988 | - when: never |
Eric Anholt | 8edaa84 | 2020-03-19 11:45:01 -0700 | [diff] [blame] | 989 | |
Tomeu Vizoso | 2102d5e | 2020-05-12 10:18:48 +0200 | [diff] [blame] | 990 | virgl-gles2-on-gles: |
| 991 | variables: |
| 992 | VIRGL_HOST_API: GLES |
| 993 | DEQP_EXPECTED_FAILS: deqp-virgl-gles-fails.txt |
| 994 | extends: |
| 995 | - virgl-gles2-on-gl |
| 996 | - .test-manual |
| 997 | |
| 998 | virgl-gles3-on-gles: |
| 999 | variables: |
| 1000 | VIRGL_HOST_API: GLES |
| 1001 | DEQP_EXPECTED_FAILS: deqp-virgl-gles-fails.txt |
| 1002 | extends: |
| 1003 | - virgl-gles3-on-gl |
| 1004 | - .test-manual |
| 1005 | |
| 1006 | virgl-gles31-on-gles: |
| 1007 | variables: |
| 1008 | VIRGL_HOST_API: GLES |
| 1009 | DEQP_EXPECTED_FAILS: deqp-virgl-gles-fails.txt |
| 1010 | extends: |
| 1011 | - virgl-gles31-on-gl |
| 1012 | - .test-manual |
| 1013 | |
Fritz Koenig | 2a98cf3 | 2020-02-12 19:31:24 +0000 | [diff] [blame] | 1014 | arm64_a630_gles2: |
Michel Dänzer | c6c7652 | 2019-11-11 18:13:28 +0100 | [diff] [blame] | 1015 | extends: |
Eric Anholt | 6f4fc4f | 2020-05-15 11:22:37 -0700 | [diff] [blame] | 1016 | - arm64_a306_gles2 |
Eric Anholt | 6f0dc08 | 2019-06-28 16:35:32 -0700 | [diff] [blame] | 1017 | variables: |
Eric Anholt | 6f4fc4f | 2020-05-15 11:22:37 -0700 | [diff] [blame] | 1018 | BM_KERNEL: /lava-files/cheza-kernel |
| 1019 | BM_CMDLINE: "ip=dhcp console=ttyMSM0,115200n8 root=/dev/nfs rw nfsrootdebug nfsroot=,tcp,nfsvers=4.2 init=/init" |
Eric Anholt | 6f0dc08 | 2019-06-28 16:35:32 -0700 | [diff] [blame] | 1020 | DEQP_EXPECTED_FAILS: deqp-freedreno-a630-fails.txt |
| 1021 | DEQP_SKIPS: deqp-freedreno-a630-skips.txt |
Eric Anholt | 72fe7b9 | 2020-06-08 15:36:16 -0700 | [diff] [blame] | 1022 | GIT_STRATEGY: none |
Eric Anholt | 8b221e0 | 2020-04-17 12:39:32 -0700 | [diff] [blame] | 1023 | DEQP_EXPECTED_RENDERER: FD630 |
Eric Anholt | 6f4fc4f | 2020-05-15 11:22:37 -0700 | [diff] [blame] | 1024 | DEQP_NO_SAVE_RESULTS: "" |
Eric Anholt | 6f0dc08 | 2019-06-28 16:35:32 -0700 | [diff] [blame] | 1025 | tags: |
Eric Anholt | 6f4fc4f | 2020-05-15 11:22:37 -0700 | [diff] [blame] | 1026 | - google-freedreno-cheza |
| 1027 | script: |
Eric Anholt | 72fe7b9 | 2020-06-08 15:36:16 -0700 | [diff] [blame] | 1028 | - ./install/bare-metal/cros-servo.sh |
Eric Anholt | 6f0dc08 | 2019-06-28 16:35:32 -0700 | [diff] [blame] | 1029 | |
Fritz Koenig | 2a98cf3 | 2020-02-12 19:31:24 +0000 | [diff] [blame] | 1030 | arm64_a630_gles31: |
| 1031 | extends: arm64_a630_gles2 |
Eric Anholt | 6f0dc08 | 2019-06-28 16:35:32 -0700 | [diff] [blame] | 1032 | variables: |
Michel Dänzer | 128581d | 2019-09-11 18:55:43 +0200 | [diff] [blame] | 1033 | DEQP_VER: gles31 |
Eric Anholt | d9f7fce | 2020-06-18 12:55:41 -0700 | [diff] [blame] | 1034 | # gles31 is about 12 minutes with validation enabled. |
| 1035 | NIR_VALIDATE: 0 |
Eric Anholt | 6f0dc08 | 2019-06-28 16:35:32 -0700 | [diff] [blame] | 1036 | |
Fritz Koenig | 2a98cf3 | 2020-02-12 19:31:24 +0000 | [diff] [blame] | 1037 | arm64_a630_gles3: |
| 1038 | extends: arm64_a630_gles2 |
Eric Anholt | 6f0dc08 | 2019-06-28 16:35:32 -0700 | [diff] [blame] | 1039 | variables: |
| 1040 | DEQP_VER: gles3 |
Eric Anholt | d9f7fce | 2020-06-18 12:55:41 -0700 | [diff] [blame] | 1041 | # gles3 is about 15 minutes with validation enabled. |
| 1042 | NIR_VALIDATE: 0 |
Eric Anholt | 6f0dc08 | 2019-06-28 16:35:32 -0700 | [diff] [blame] | 1043 | |
Eric Anholt | 6f4fc4f | 2020-05-15 11:22:37 -0700 | [diff] [blame] | 1044 | # We almost always manage to lower UBOs back to constant uploads in |
| 1045 | # the test suite, so get a little testing for it here. |
| 1046 | arm64_a630_noubo: |
| 1047 | extends: arm64_a630_gles31 |
Eric Anholt | 5082ac0 | 2020-04-17 12:02:37 -0700 | [diff] [blame] | 1048 | variables: |
| 1049 | DEQP_VER: gles31 |
Eric Anholt | 6f4fc4f | 2020-05-15 11:22:37 -0700 | [diff] [blame] | 1050 | IR3_SHADER_DEBUG: nouboopt |
| 1051 | DEQP_CASELIST_FILTER: "functional.*ubo" |
Eric Anholt | 6f4fc4f | 2020-05-15 11:22:37 -0700 | [diff] [blame] | 1052 | |
| 1053 | # The driver does some guessing as to whether to render using gmem |
| 1054 | # or bypass, and some GLES3.1 features interact with either one. |
| 1055 | # Do a little testing with gmem and bypass forced. |
| 1056 | arm64_a630_bypass: |
| 1057 | extends: arm64_a630_gles31 |
| 1058 | variables: |
Eric Anholt | 5082ac0 | 2020-04-17 12:02:37 -0700 | [diff] [blame] | 1059 | CI_NODE_INDEX: 1 |
| 1060 | CI_NODE_TOTAL: 5 |
Eric Anholt | 6f4fc4f | 2020-05-15 11:22:37 -0700 | [diff] [blame] | 1061 | FD_MESA_DEBUG: nogmem |
| 1062 | DEQP_EXPECTED_FAILS: deqp-freedreno-a630-bypass-fails.txt |
| 1063 | |
Eric Anholt | b88c46f | 2020-06-08 14:51:59 -0700 | [diff] [blame] | 1064 | arm64_a630_traces: |
| 1065 | extends: |
| 1066 | - arm64_a630_gles2 |
| 1067 | variables: |
| 1068 | BARE_METAL_TEST_SCRIPT: "/install/tracie-runner-gl.sh" |
| 1069 | DEVICE_NAME: "freedreno-a630" |
| 1070 | TRACIE_NO_UNIT_TESTS: 1 |
| 1071 | # This lets us run several more traces which don't use any features we're |
| 1072 | # missing. |
| 1073 | MESA_GLSL_VERSION_OVERRIDE: "460" |
| 1074 | MESA_GL_VERSION_OVERRIDE: "4.6" |
Eric Anholt | b88c46f | 2020-06-08 14:51:59 -0700 | [diff] [blame] | 1075 | |
Eric Anholt | 6f4fc4f | 2020-05-15 11:22:37 -0700 | [diff] [blame] | 1076 | # Along with checking gmem path, check that we don't get obvious nir |
| 1077 | # validation failures (though it's too expensive to have it on for the |
| 1078 | # full CTS) |
| 1079 | arm64_a630_gmem: |
| 1080 | extends: arm64_a630_gles31 |
| 1081 | variables: |
| 1082 | CI_NODE_INDEX: 1 |
| 1083 | CI_NODE_TOTAL: 5 |
| 1084 | FD_MESA_DEBUG: nobypass |
| 1085 | NIR_VALIDATE: 1 |
Eric Anholt | 5082ac0 | 2020-04-17 12:02:37 -0700 | [diff] [blame] | 1086 | |
Eric Anholt | 9e11cce | 2020-05-25 12:57:25 -0700 | [diff] [blame] | 1087 | arm64_a630_vk: |
| 1088 | extends: arm64_a630_gles2 |
| 1089 | variables: |
| 1090 | DEQP_VER: vk |
| 1091 | CI_NODE_INDEX: 1 |
| 1092 | CI_NODE_TOTAL: 50 |
| 1093 | VK_DRIVER: freedreno |
| 1094 | # Force binning in the main run, which makes sure we render at |
| 1095 | # least 2 bins. This is the path that impacts the most different |
| 1096 | # features. However, we end up with flaky results in |
| 1097 | # dEQP-VK.binding_model.*.geometry and dEQP-VK.glsl.*_vertex. |
| 1098 | TU_DEBUG: forcebin |
| 1099 | |
| 1100 | # Do a separate sysmem pass over the testcases that really affect sysmem |
| 1101 | # rendering. This is currently very flaky, leave it as an option for devs |
| 1102 | # to click play on in their branches. |
| 1103 | arm64_a630_vk_sysmem: |
| 1104 | extends: |
| 1105 | - arm64_a630_vk |
| 1106 | variables: |
| 1107 | CI_NODE_INDEX: 1 |
| 1108 | CI_NODE_TOTAL: 10 |
| 1109 | DEQP_CASELIST_FILTER: "dEQP-VK.renderpass.*" |
| 1110 | DEQP_EXPECTED_FAILS: deqp-freedreno-a630-bypass-fails.txt |
| 1111 | TU_DEBUG: sysmem |
| 1112 | |
Eric Anholt | cf5ba9d | 2020-03-03 14:38:09 -0800 | [diff] [blame] | 1113 | .baremetal-test: |
| 1114 | extends: |
| 1115 | - .ci-run-policy |
Eric Anholt | 109816b | 2020-06-08 15:09:51 -0700 | [diff] [blame] | 1116 | - .test |
Eric Anholt | cf5ba9d | 2020-03-03 14:38:09 -0800 | [diff] [blame] | 1117 | stage: test |
Eric Anholt | 6f4fc4f | 2020-05-15 11:22:37 -0700 | [diff] [blame] | 1118 | artifacts: |
| 1119 | when: always |
| 1120 | name: "mesa_${CI_JOB_NAME}" |
| 1121 | paths: |
| 1122 | - results/ |
| 1123 | - serial*.txt |
Eric Anholt | cf5ba9d | 2020-03-03 14:38:09 -0800 | [diff] [blame] | 1124 | |
Eric Anholt | aea8c9c | 2020-03-03 11:44:45 -0800 | [diff] [blame] | 1125 | arm64_a306_gles2: |
Eric Anholt | cf5ba9d | 2020-03-03 14:38:09 -0800 | [diff] [blame] | 1126 | extends: |
| 1127 | - .baremetal-test |
Christian Gmeiner | 839bc2d | 2020-06-07 23:19:50 +0200 | [diff] [blame] | 1128 | - .use-arm64_test |
Eric Anholt | f778c48 | 2020-03-18 09:51:03 -0700 | [diff] [blame] | 1129 | - .freedreno-rules |
Eric Anholt | aea8c9c | 2020-03-03 11:44:45 -0800 | [diff] [blame] | 1130 | variables: |
Eric Anholt | 4bc15e7 | 2020-03-03 14:38:09 -0800 | [diff] [blame] | 1131 | BM_KERNEL: /lava-files/Image.gz |
Eric Anholt | cf5ba9d | 2020-03-03 14:38:09 -0800 | [diff] [blame] | 1132 | BM_DTB: /lava-files/apq8016-sbc.dtb |
| 1133 | BM_ROOTFS: /lava-files/rootfs-arm64 |
| 1134 | BM_CMDLINE: "ip=dhcp console=ttyMSM0,115200n8" |
Eric Anholt | 3b5e71c | 2020-05-01 09:57:00 -0700 | [diff] [blame] | 1135 | FLAKES_CHANNEL: "#freedreno-ci" |
Eric Anholt | 109816b | 2020-06-08 15:09:51 -0700 | [diff] [blame] | 1136 | BARE_METAL_TEST_SCRIPT: "/install/deqp-runner.sh" |
Eric Anholt | aea8c9c | 2020-03-03 11:44:45 -0800 | [diff] [blame] | 1137 | DEQP_EXPECTED_FAILS: deqp-freedreno-a307-fails.txt |
Eric Anholt | cf5ba9d | 2020-03-03 14:38:09 -0800 | [diff] [blame] | 1138 | DEQP_SKIPS: deqp-freedreno-a307-skips.txt |
| 1139 | DEQP_VER: gles2 |
| 1140 | DEQP_PARALLEL: 4 |
Eric Anholt | 8b221e0 | 2020-04-17 12:39:32 -0700 | [diff] [blame] | 1141 | DEQP_EXPECTED_RENDERER: FD307 |
Eric Anholt | 46d9b50 | 2020-05-22 15:48:55 -0700 | [diff] [blame] | 1142 | # Since we can't get artifacts back yet, skip making them. |
| 1143 | DEQP_NO_SAVE_RESULTS: 1 |
Eric Anholt | b4bccbd | 2020-05-15 11:20:44 -0700 | [diff] [blame] | 1144 | # NIR_VALIDATE=0 left intentionally unset as a3xx is fast enough at its small testsuite. |
Eric Anholt | cf5ba9d | 2020-03-03 14:38:09 -0800 | [diff] [blame] | 1145 | script: |
Eric Anholt | 72fe7b9 | 2020-06-08 15:36:16 -0700 | [diff] [blame] | 1146 | - ./install/bare-metal/fastboot.sh |
Eric Anholt | cf5ba9d | 2020-03-03 14:38:09 -0800 | [diff] [blame] | 1147 | needs: |
Christian Gmeiner | 456e810 | 2020-06-09 19:05:21 +0200 | [diff] [blame] | 1148 | - arm_test-base |
Christian Gmeiner | 839bc2d | 2020-06-07 23:19:50 +0200 | [diff] [blame] | 1149 | - arm64_test |
Eric Anholt | 68b3b5b | 2020-05-13 11:08:08 -0700 | [diff] [blame] | 1150 | - arm_build |
Eric Anholt | cf5ba9d | 2020-03-03 14:38:09 -0800 | [diff] [blame] | 1151 | - meson-arm64 |
Eric Anholt | aea8c9c | 2020-03-03 11:44:45 -0800 | [diff] [blame] | 1152 | tags: |
Eric Anholt | cf5ba9d | 2020-03-03 14:38:09 -0800 | [diff] [blame] | 1153 | - google-freedreno-db410c |
| 1154 | |
Eric Anholt | b4bccbd | 2020-05-15 11:20:44 -0700 | [diff] [blame] | 1155 | # Fractional run, single threaded, due to flaky results |
Eric Anholt | 8edaa84 | 2020-03-19 11:45:01 -0700 | [diff] [blame] | 1156 | arm64_a306_gles3: |
Eric Anholt | cf5ba9d | 2020-03-03 14:38:09 -0800 | [diff] [blame] | 1157 | extends: |
| 1158 | - arm64_a306_gles2 |
Eric Anholt | cf5ba9d | 2020-03-03 14:38:09 -0800 | [diff] [blame] | 1159 | variables: |
| 1160 | DEQP_VER: gles3 |
Eric Anholt | fa49a50 | 2020-04-22 11:30:38 -0700 | [diff] [blame] | 1161 | DEQP_PARALLEL: 1 |
| 1162 | CI_NODE_INDEX: 1 |
Eric Anholt | b4bccbd | 2020-05-15 11:20:44 -0700 | [diff] [blame] | 1163 | CI_NODE_TOTAL: 25 |
| 1164 | NIR_VALIDATE: 0 |
Eric Anholt | aea8c9c | 2020-03-03 11:44:45 -0800 | [diff] [blame] | 1165 | |
Eric Anholt | ae442c3 | 2020-05-15 16:15:07 -0700 | [diff] [blame] | 1166 | # Fractional runs with debug options. Note that since we're not |
| 1167 | # hitting the iommu faults, we can run in parallel (derive from gles2, not gles3). |
| 1168 | arm64_a306_gles3_options: |
| 1169 | extends: arm64_a306_gles2 |
| 1170 | variables: |
| 1171 | DEQP_VER: gles3 |
| 1172 | script: |
| 1173 | # Check that the non-constbuf UBO case works. |
Eric Anholt | 72fe7b9 | 2020-06-08 15:36:16 -0700 | [diff] [blame] | 1174 | - DEQP_RUN_SUFFIX=-nouboopt IR3_SHADER_DEBUG=nouboopt DEQP_CASELIST_FILTER="functional.*ubo" ./install/bare-metal/fastboot.sh |
Eric Anholt | ae442c3 | 2020-05-15 16:15:07 -0700 | [diff] [blame] | 1175 | |
Eric Anholt | 4bc15e7 | 2020-03-03 14:38:09 -0800 | [diff] [blame] | 1176 | arm64_a530_gles2: |
| 1177 | extends: |
| 1178 | - arm64_a306_gles2 |
Eric Anholt | 4bc15e7 | 2020-03-03 14:38:09 -0800 | [diff] [blame] | 1179 | variables: |
| 1180 | BM_KERNEL: /lava-files/db820c-kernel |
| 1181 | BM_DTB: /lava-files/db820c.dtb |
Eric Anholt | 6033c10 | 2020-05-19 16:33:10 -0700 | [diff] [blame] | 1182 | # Disable SMP because only CPU 0 is at a freq higher than 19mhz on |
| 1183 | # current upstream kernel. |
| 1184 | BM_CMDLINE: "ip=dhcp console=ttyMSM0,115200n8 nosmp" |
Eric Anholt | 4bc15e7 | 2020-03-03 14:38:09 -0800 | [diff] [blame] | 1185 | DEQP_EXPECTED_FAILS: deqp-freedreno-a530-fails.txt |
| 1186 | DEQP_SKIPS: deqp-freedreno-a530-skips.txt |
Eric Anholt | 8b221e0 | 2020-04-17 12:39:32 -0700 | [diff] [blame] | 1187 | DEQP_EXPECTED_RENDERER: FD530 |
Eric Anholt | b4bccbd | 2020-05-15 11:20:44 -0700 | [diff] [blame] | 1188 | NIR_VALIDATE: 0 |
Eric Anholt | 4bc15e7 | 2020-03-03 14:38:09 -0800 | [diff] [blame] | 1189 | tags: |
| 1190 | - google-freedreno-db820c |
| 1191 | |
| 1192 | arm64_a530_gles3: |
| 1193 | extends: |
| 1194 | - arm64_a530_gles2 |
Eric Anholt | 4bc15e7 | 2020-03-03 14:38:09 -0800 | [diff] [blame] | 1195 | variables: |
| 1196 | DEQP_VER: gles3 |
Eric Anholt | fa49a50 | 2020-04-22 11:30:38 -0700 | [diff] [blame] | 1197 | DEQP_PARALLEL: 1 |
| 1198 | CI_NODE_INDEX: 1 |
Eric Anholt | 6bf40c2 | 2020-05-19 16:44:14 -0700 | [diff] [blame] | 1199 | CI_NODE_TOTAL: 40 |
Eric Anholt | 4bc15e7 | 2020-03-03 14:38:09 -0800 | [diff] [blame] | 1200 | |
Eric Anholt | 6c01152 | 2020-04-22 12:08:06 -0700 | [diff] [blame] | 1201 | arm64_a530_gles31: |
| 1202 | extends: |
| 1203 | - arm64_a530_gles3 |
| 1204 | variables: |
| 1205 | DEQP_VER: gles31 |
Eric Anholt | 6bf40c2 | 2020-05-19 16:44:14 -0700 | [diff] [blame] | 1206 | CI_NODE_INDEX: 1 |
| 1207 | CI_NODE_TOTAL: 10 |
Eric Anholt | 6c01152 | 2020-04-22 12:08:06 -0700 | [diff] [blame] | 1208 | |
Samuel Pitoiset | c1a3627 | 2019-11-13 11:03:52 +0100 | [diff] [blame] | 1209 | # RADV CI |
| 1210 | .test-radv: |
Samuel Pitoiset | 8f55439 | 2020-03-09 17:53:51 +0100 | [diff] [blame] | 1211 | extends: .radv-rules |
Samuel Pitoiset | 48e9203 | 2020-03-06 08:39:25 +0100 | [diff] [blame] | 1212 | stage: radv |
Samuel Pitoiset | c1a3627 | 2019-11-13 11:03:52 +0100 | [diff] [blame] | 1213 | variables: |
| 1214 | VK_DRIVER: radeon |
Samuel Pitoiset | a44cfac | 2020-05-04 11:44:45 +0200 | [diff] [blame] | 1215 | ACO_DEBUG: validateir,validatera |
Samuel Pitoiset | 42a3d82 | 2020-02-05 17:04:20 +0100 | [diff] [blame] | 1216 | |
Eric Anholt | 8edaa84 | 2020-03-19 11:45:01 -0700 | [diff] [blame] | 1217 | # Can only be triggered manually on personal branches because RADV is the only |
| 1218 | # driver that does Vulkan testing at the moment. |
Samuel Pitoiset | c1a3627 | 2019-11-13 11:03:52 +0100 | [diff] [blame] | 1219 | radv_polaris10_vkcts: |
| 1220 | extends: |
| 1221 | - .deqp-test-vk |
Eric Anholt | 8edaa84 | 2020-03-19 11:45:01 -0700 | [diff] [blame] | 1222 | - .test-radv |
| 1223 | - .test-manual |
Samuel Pitoiset | c1a3627 | 2019-11-13 11:03:52 +0100 | [diff] [blame] | 1224 | variables: |
Samuel Pitoiset | c1a3627 | 2019-11-13 11:03:52 +0100 | [diff] [blame] | 1225 | DEQP_SKIPS: deqp-radv-polaris10-skips.txt |
| 1226 | tags: |
| 1227 | - polaris10 |
Alexandros Frantzis | 803ab5d | 2020-01-08 17:46:46 +0200 | [diff] [blame] | 1228 | |
Samuel Pitoiset | e22d562 | 2020-03-06 08:36:14 +0100 | [diff] [blame] | 1229 | radv-fossils: |
| 1230 | extends: |
| 1231 | - .fossilize-test |
| 1232 | - .test-radv |
| 1233 | script: |
Samuel Pitoiset | f9dbca8 | 2020-05-04 11:48:46 +0200 | [diff] [blame] | 1234 | # Pitcairn (GFX6) |
| 1235 | - export RADV_FORCE_FAMILY="pitcairn" |
| 1236 | - ./install/fossilize-runner.sh |
Samuel Pitoiset | f9dbca8 | 2020-05-04 11:48:46 +0200 | [diff] [blame] | 1237 | # Bonaire (GFX7) |
| 1238 | - export RADV_FORCE_FAMILY="bonaire" |
| 1239 | - ./install/fossilize-runner.sh |
Samuel Pitoiset | f9dbca8 | 2020-05-04 11:48:46 +0200 | [diff] [blame] | 1240 | # Polaris10 (GFX8) |
Samuel Pitoiset | e22d562 | 2020-03-06 08:36:14 +0100 | [diff] [blame] | 1241 | - export RADV_FORCE_FAMILY="polaris10" |
Tomeu Vizoso | 92f3c51 | 2020-03-24 12:58:30 +0100 | [diff] [blame] | 1242 | - ./install/fossilize-runner.sh |
Samuel Pitoiset | f9dbca8 | 2020-05-04 11:48:46 +0200 | [diff] [blame] | 1243 | # Vega10 (GFX9) |
Samuel Pitoiset | e22d562 | 2020-03-06 08:36:14 +0100 | [diff] [blame] | 1244 | - export RADV_FORCE_FAMILY="gfx900" |
Tomeu Vizoso | 92f3c51 | 2020-03-24 12:58:30 +0100 | [diff] [blame] | 1245 | - ./install/fossilize-runner.sh |
Samuel Pitoiset | f9dbca8 | 2020-05-04 11:48:46 +0200 | [diff] [blame] | 1246 | # Navi10 (GFX10) |
Samuel Pitoiset | e22d562 | 2020-03-06 08:36:14 +0100 | [diff] [blame] | 1247 | - export RADV_FORCE_FAMILY="gfx1010" |
Tomeu Vizoso | 92f3c51 | 2020-03-24 12:58:30 +0100 | [diff] [blame] | 1248 | - ./install/fossilize-runner.sh |
Samuel Pitoiset | 42a3d82 | 2020-02-05 17:04:20 +0100 | [diff] [blame] | 1249 | |
Andres Gomez | 0ac731b1 | 2020-02-20 18:26:30 +0200 | [diff] [blame] | 1250 | # Traces CI |
Alexandros Frantzis | 803ab5d | 2020-01-08 17:46:46 +0200 | [diff] [blame] | 1251 | .traces-test: |
Alexandros Frantzis | 803ab5d | 2020-01-08 17:46:46 +0200 | [diff] [blame] | 1252 | cache: |
| 1253 | key: ${CI_JOB_NAME} |
| 1254 | paths: |
Rohan Garg | 90a39af | 2020-02-28 13:48:53 +0100 | [diff] [blame] | 1255 | - traces-db/ |
Andres Gomez | 0ac731b1 | 2020-02-20 18:26:30 +0200 | [diff] [blame] | 1256 | |
| 1257 | .traces-test-gl: |
| 1258 | extends: |
| 1259 | - .test-gl |
| 1260 | - .traces-test |
Alexandros Frantzis | 803ab5d | 2020-01-08 17:46:46 +0200 | [diff] [blame] | 1261 | script: |
Tomeu Vizoso | 92f3c51 | 2020-03-24 12:58:30 +0100 | [diff] [blame] | 1262 | - ./install/tracie-runner-gl.sh |
Andres Gomez | 0ac731b1 | 2020-02-20 18:26:30 +0200 | [diff] [blame] | 1263 | |
| 1264 | .traces-test-vk: |
| 1265 | extends: |
| 1266 | - .test-vk |
| 1267 | - .traces-test |
| 1268 | script: |
Tomeu Vizoso | 92f3c51 | 2020-03-24 12:58:30 +0100 | [diff] [blame] | 1269 | - ./install/tracie-runner-vk.sh |
Alexandros Frantzis | 803ab5d | 2020-01-08 17:46:46 +0200 | [diff] [blame] | 1270 | |
| 1271 | llvmpipe-traces: |
Pierre-Eric Pelloux-Prayer | 2a9d6fd | 2019-10-30 20:39:08 +0100 | [diff] [blame] | 1272 | extends: |
| 1273 | - .traces-test-gl |
| 1274 | - .llvmpipe-rules |
Alexandros Frantzis | 803ab5d | 2020-01-08 17:46:46 +0200 | [diff] [blame] | 1275 | variables: |
| 1276 | LIBGL_ALWAYS_SOFTWARE: "true" |
| 1277 | GALLIUM_DRIVER: "llvmpipe" |
Andres Gomez | 1d75595 | 2020-02-20 17:32:08 +0200 | [diff] [blame] | 1278 | DEVICE_NAME: "gl-vmware-llvmpipe" |
Andres Gomez | 0ac731b1 | 2020-02-20 18:26:30 +0200 | [diff] [blame] | 1279 | |
| 1280 | radv-polaris10-traces: |
| 1281 | extends: |
| 1282 | - .traces-test-vk |
Eric Anholt | 8edaa84 | 2020-03-19 11:45:01 -0700 | [diff] [blame] | 1283 | - .test-radv |
| 1284 | - .test-manual |
Andres Gomez | 0ac731b1 | 2020-02-20 18:26:30 +0200 | [diff] [blame] | 1285 | variables: |
| 1286 | DEVICE_NAME: "vk-amd-polaris10" |
| 1287 | tags: |
| 1288 | - polaris10 |
Tomeu Vizoso | 8cba1a1 | 2020-04-21 15:44:03 +0200 | [diff] [blame] | 1289 | |
| 1290 | virgl-traces: |
| 1291 | extends: |
| 1292 | - .traces-test-gl |
| 1293 | - .virgl-rules |
| 1294 | variables: |
| 1295 | LIBGL_ALWAYS_SOFTWARE: "true" |
| 1296 | GALLIUM_DRIVER: "virpipe" |
| 1297 | DEVICE_NAME: "gl-virgl" |
| 1298 | MESA_GLES_VERSION_OVERRIDE: "3.1" |
| 1299 | MESA_GLSL_VERSION_OVERRIDE: "310" |