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