d5c0a2c6cf7593df2f1e9e757b7704856200d134
[mesa.git] / .gitlab-ci / lava-deqp.yml.jinja2
1 job_name: mesa-deqp-{{ deqp_version }}-{{ gpu_version }} {{ pipeline_info }}
2 device_type: {{ device_type }}
3 context:
4 extra_nfsroot_args: " init=/init rootwait"
5 timeouts:
6 job:
7 minutes: 40
8 action:
9 minutes: 10
10 actions:
11 power-off:
12 seconds: 30
13 priority: 75
14 visibility: public
15 {% if tags %}
16 {% set lavatags = tags.split(',') %}
17 tags:
18 {% for tag in lavatags %}
19 - {{ tag }}
20 {% endfor %}
21 {% endif %}
22 actions:
23 - deploy:
24 timeout:
25 minutes: 10
26 to: tftp
27 kernel:
28 url: {{ base_artifacts_url }}/{{ kernel_image_name }}
29 {% if kernel_image_type %}
30 {{ kernel_image_type }}
31 {% endif %}
32 nfsrootfs:
33 url: {{ base_artifacts_url }}/lava-rootfs.tgz
34 compression: gz
35 {% if dtb %}
36 dtb:
37 url: {{ base_artifacts_url }}/{{ dtb }}.dtb
38 {% endif %}
39 os: oe
40 - boot:
41 timeout:
42 minutes: 5
43 method: {{ boot_method }}
44 {% if boot_method == "fastboot" %}
45 {#
46 For fastboot, LAVA doesn't know how to unpack the rootfs/apply overlay/repack,
47 so we transfer the overlay over the network after boot.
48 #}
49 transfer_overlay:
50 download_command: wget -S --progress=dot:giga
51 unpack_command: tar -C / -xzf
52 {% else %}
53 commands: nfs
54 {% endif %}
55 prompts:
56 - 'lava-shell:'
57 - test:
58 timeout:
59 minutes: 60
60 definitions:
61 - repository:
62 metadata:
63 format: Lava-Test Test Definition 1.0
64 name: deqp
65 description: "Mesa dEQP test plan"
66 os:
67 - oe
68 scope:
69 - functional
70 run:
71 steps:
72 - mount -t proc none /proc
73 - mount -t sysfs none /sys
74 - mount -t devtmpfs none /dev || echo possibly already mounted
75 - mkdir -p /dev/pts
76 - mount -t devpts devpts /dev/pts
77 - echo "nameserver 8.8.8.8" > /etc/resolv.conf
78 - for i in 1 2 3; do sntp -sS pool.ntp.org && break || sleep 2; done
79
80
81 {% if env_vars %}
82 - export {{ env_vars }}
83 {% endif %}
84
85 # deqp-runner.sh assumes some stuff is in pwd
86 - cd /
87
88 - wget -S --progress=dot:giga -O- {{ mesa_url }} | tar -xz
89
90 - export DEQP_NO_SAVE_RESULTS=1
91 - 'export DEQP_RUNNER_OPTIONS="--shuffle false"'
92 - export DEQP_EXPECTED_FAILS=deqp-{{ gpu_version }}-fails.txt
93 - export DEQP_SKIPS=deqp-{{ gpu_version }}-skips.txt
94 - export DEQP_VER={{ deqp_version }}
95 - export LIBGL_DRIVERS_PATH=`pwd`/install/lib/dri
96
97 - "if sh /install/deqp-runner.sh; then
98 echo 'deqp: pass';
99 else
100 echo 'deqp: fail';
101 fi"
102 parse:
103 pattern: '(?P<test_case_id>\S*):\s+(?P<result>(pass|fail))'
104 from: inline
105 name: deqp
106 path: inline/mesa-deqp.yaml