167b1935461389b74fe8f86fd01e5aa832759197
[lttng-ci.git] / scripts / system-tests / template_lava_job.jinja2
1 device_type: {{ device_type }}
2 job_name: {{ job_name }}
3 timeouts:
4 job:
5 hours: 2
6 priority: medium
7 visibility: public
8
9 {% if device_type is 'qemu' -%}
10 context:
11 # tell the qemu template which architecture is being tested
12 # the template uses that to ensure that qemu-system-x86_64 is executed.
13 {# Used amd64 as a default #}
14 arch: amd64
15 {% endif -%}
16
17
18 {% if device_type is 'x86' -%}
19 tags:
20 - dev-sda1
21 {% endif -%}
22
23 metadata:
24 jenkins_jobname: {{jenkins_job}}
25 {% if test_type is 'kvm-fuzzing-tests' -%}
26 nb_iterations: {{ kprobe_round_nb }}
27 {% endif -%}
28
29
30 actions:
31 - deploy:
32 timeout:
33 minutes: 10
34 to: tftp
35 kernel:
36 url: {{ kernel_url }}
37 type: zimage
38 modules:
39 url: {{ linux_modules_url }}
40 archive: tar
41 compression: gz
42 modules:
43 url: {{ lttng_modules_url }}
44 archive: tar
45 compression: gz
46 nfsrootfs:
47 url: {{ nfsrootfs_url }}
48 compression: gz
49 os: ubuntu
50
51 - boot:
52 timeout:
53 minutes: 10
54 {% if device_type is 'x86' -%}
55 method: ipxe
56 commands: ramdisk
57 prompts:
58 - 'root@linaro-server:~#'
59 {% elif device_type is 'kvm' -%}
60 method: qemu-nfs
61 media: nfs
62 auto_login:
63 login_prompt: "kvm02 login:"
64 username: root
65 prompts:
66 - 'linaro-test'
67 {% endif -%}}
68
69 - test:
70 definitions:
71 # Base setup of environment #
72 - repository:
73 metadata:
74 format: Lava-Test Test Definition 1.0
75 name: x86-env-setup
76 description: "Basic environment setup for x86 board"
77 os:
78 - ubuntu
79 devices:
80 - x86
81 run:
82 steps:
83 - cat /etc/resolv.conf
84 - echo nameserver 172.18.0.12 > /etc/resolv.conf
85 - groupadd tracing
86 {% if device_type is 'x86' -%}
87 - mount /dev/sda1 /tmp
88 - rm -rf /tmp/*
89 {% endif -%}
90 - depmod -a
91 - locale-gen en_US.UTF-8
92 - apt-get update
93 - apt-get upgrade
94 - apt-get install -y {{ packages|join(' ') }}
95 {% if test_type is not 'kvm-fuzzing-tests' -%}
96 - pip3 install --upgrade pip
97 - hash -r
98 - pip3 install vlttng
99 - {{ vlttng_cmd }}
100 - ln -s {{ vlttng_path }} /root/lttngvenv
101 - sync
102 {% endif -%}
103 from: inline
104 name: x86-env-setup-inline
105 path: inline/x86-env-setup.yaml
106 {% if test_type is 'baremetal-benchmarks' -%}
107 - repository: https://github.com/lttng/lttng-ci.git
108 from: git
109 path: lava/system-tests/failing-close.yml
110 name: failing-close
111 - repository: https://github.com/lttng/lttng-ci.git
112 from: git
113 path: lava/system-tests/failing-ioctl.yml
114 name: failing-ioctl
115 - repository: https://github.com/lttng/lttng-ci.git
116 from: git
117 path: lava/system-tests/failing-open-efault.yml
118 name: failing-open-efault
119 - repository: https://github.com/lttng/lttng-ci.git
120 from: git
121 path: lava/system-tests/success-dup-close.yml
122 name: success-dup-close
123 - repository: https://github.com/lttng/lttng-ci.git
124 from: git
125 path: lava/system-tests/raw-syscall-getpid.yml
126 name: raw-syscall-getpid
127 - repository: https://github.com/lttng/lttng-ci.git
128 from: git
129 path: lava/system-tests/failing-open-enoent.yml
130 name: failing-open-enoent
131 - repository: https://github.com/lttng/lttng-ci.git
132 from: git
133 path: lava/system-tests/lttng-test-filter.yml
134 name: lttng-test-filter
135 {% elif test_type is 'baremetal-tests' -%}
136 - repository: https://github.com/lttng/lttng-ci.git
137 from: git
138 path: lava/system-tests/perf-tests.yml
139 name: perf-tests
140 {% elif test_type is 'kvm-tests' -%}
141 - repository: https://github.com/lttng/lttng-ci.git
142 from: git
143 path: lava/system-tests/kernel-tests.yml
144 name: kernel-tests
145 - repository: https://github.com/lttng/lttng-ci.git
146 from: git
147 path: lava/system-tests/destructive-tests.yml
148 name: destructive-tests
149 {% elif test_type is 'kvm-fuzzing-tests' -%}
150 - repository: https://github.com/lttng/lttng-ci.git
151 from: git
152 path: lava/system-tests/kprobe-fuzzing-generate-data.yml
153 name: kprobe-fuzzing-generate-data
154 params:
155 RANDOM_SEED: {{ random_seed }}
156 {% for i in range(kprobe_round_nb) i-%}
157 - repository: https://github.com/lttng/lttng-ci.git
158 from: git
159 path: lava/system-tests/kprobe-fuzzing-tests.yml
160 name: kprobe-fuzzing-tests
161 params:
162 ROUND_NB: {{ i }}
163 {% endfor %}
164 {% endif -%}
This page took 0.032535 seconds and 4 git commands to generate.