File: .gitlab-ci.yml

package info (click to toggle)
virglrenderer 0.8.2-5
  • links: PTS, VCS
  • area: main
  • in suites: bullseye, sid
  • size: 58,348 kB
  • sloc: ansic: 46,856; sh: 1,062; python: 460; makefile: 274
file content (160 lines) | stat: -rw-r--r-- 3,390 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
image: docker:latest

cache:
  paths:
    - ccache

variables:
  DOCKER_DRIVER: overlay
# When running CI jobs, don't allow
# HW backed renderes, due to the
# variability it introduces.
#  RENDER_DEVICE: /dev/dri/renderD128

.docker-setup: &docker-setup
    - mkdir -p ccache
    - mkdir -p results
    - export DOCKER_IMAGE_DIGEST=$(cat results/docker_image_digest.txt)
    - echo $DOCKER_IMAGE_DIGEST
    - echo core > /proc/sys/kernel/core_pattern || true
    - echo 0 > /proc/sys/kernel/core_uses_pid || true
    - if [[ -n "$RENDER_DEVICE" ]]; then RD_CONFIG="--device=$RENDER_DEVICE -e RENDER_DEVICE=$RENDER_DEVICE"; fi
    - echo RD_CONFIG=$RD_CONFIG

stages:
  - build
  - sanity test
  - test

build docker image:
  stage: build
  services:
    - docker:dind
  before_script:
    - mkdir -p results
  script:
    - docker login -u gitlab-ci-token -p $CI_BUILD_TOKEN $CI_REGISTRY
    - time docker pull $CI_REGISTRY_IMAGE:latest || true

    - docker build
             --build-arg KNOWN_GOOD_MESA=$MESA_COMMIT
             --build-arg MESA_REPO=$MESA_REPO
             -t $CI_REGISTRY_IMAGE
             --cache-from $CI_REGISTRY_IMAGE:latest ci

    - docker history $CI_REGISTRY_IMAGE:latest

    - time docker push $CI_REGISTRY_IMAGE:latest 2>&1 | tee results/docker_push_log.txt

    - "grep -o 'digest: sha256:[0-9a-f]\\+' results/docker_push_log.txt |
       cut -f 2 -d ' ' |
       tee results/docker_image_digest.txt"
  only:
    - branches
    - tags
    - merge_requests
    - schedules

  artifacts:
    when: always
    paths:
      - results/


.tests_base: 
  services:
    - docker:dind
  before_script:
    *docker-setup
  script:
    - docker run
             --ulimit core=99999999999:99999999999
             $RD_CONFIG
             -v $PWD:/virglrenderer
             $CI_REGISTRY_IMAGE@$DOCKER_IMAGE_DIGEST
             bash -c "/virglrenderer/ci/run_tests.sh $TEST_SUITE"
    - echo -e "\nThat's all folks\n"
  only:
    - branches
    - tags
    - merge_requests
    - schedules

  artifacts:
    when: always
    paths:
      - results/

.make_check_base:
  stage: sanity test
  extends: .tests_base

make check:
  variables:
    TEST_SUITE: '--make-check'
  extends: .make_check_base

mesa check meson:
  variables:
    TEST_SUITE: '--make-check-meson'
  extends: .make_check_base

make check clang-fuzzer:
  variables:
    TEST_SUITE: '--make-check-clang-fuzzer'
  extends: .make_check_base

.tests:
  stage: test
  extends: .tests_base

piglit - gl host:
  variables:
    TEST_SUITE: '--piglit-gl'
  extends: .tests

piglit - gles host:
  variables:
    TEST_SUITE: '--piglit-gles'
  extends: .tests

cts gl - gl host:
  variables:
    TEST_SUITE: '--deqp-gl-gl-tests'
  extends: .tests

cts gles2 - gl host:
  variables:
    TEST_SUITE: '--deqp-gl-gles2-tests'
  extends: .tests

cts gles3 - gl host:
  variables:
    TEST_SUITE: '--deqp-gl-gles3-tests'
  extends: .tests

cts gles31 - gl host:
  variables:
    TEST_SUITE: '--deqp-gl-gles31-tests'
  extends: .tests


cts gl - gles host:
  variables:
    TEST_SUITE: '--deqp-gles-gl-tests'
  extends: .tests

cts gles2 - gles host:
  variables:
    TEST_SUITE: '--deqp-gles-gles2-tests'
  extends: .tests

cts gles3 - gles host:
  variables:
    TEST_SUITE: '--deqp-gles-gles3-tests'
  extends: .tests

cts gles31 - gles host:
  variables:
    TEST_SUITE: '--deqp-gles-gles31-tests'
  extends: .tests