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