Commit | Line | Data |
---|---|---|
962ee225 FD |
1 | --- |
2 | ## Anchors | |
02126236 FD |
3 | - system_tests_parameters_defaults: &system_tests_parameters_defaults |
4 | name: 'system_tests_parameters_defaults' | |
962ee225 FD |
5 | parameters: |
6 | - string: | |
7 | name: 'tools_commit_id' | |
8 | default: '' | |
9 | description: 'The lttng-tools commit id to build.' | |
10 | - string: | |
11 | name: 'modules_commit_id' | |
12 | default: '' | |
13 | description: 'The lttng-modules commit id to build.' | |
14 | - string: | |
15 | name: 'ust_commit_id' | |
16 | default: '' | |
17 | description: 'The lttng-ust commit id to build.' | |
18 | - string: | |
19 | name: 'kernel_tag_id' | |
20 | default: '' | |
21 | description: 'The linux kernel git tag to build against.' | |
22 | - string: | |
23 | name: 'kernel_repo' | |
24 | default: 'git://git-mirror.internal.efficios.com/kernel/stable/linux-stable.git' | |
25 | description: 'Linux kernel git repo to checkout the kernel id' | |
26 | - string: | |
27 | name: 'tools_repo' | |
28 | default: 'https://github.com/lttng/lttng-tools.git' | |
29 | description: 'LTTng-Tools git repo to checkout the tools id' | |
30 | - string: | |
31 | name: 'modules_repo' | |
32 | default: 'https://github.com/lttng/lttng-modules.git' | |
33 | description: 'LTTng-Modules git repo to checkout the Modules id' | |
34 | - string: | |
35 | name: 'ust_repo' | |
36 | default: 'https://github.com/lttng/lttng-ust.git' | |
37 | description: 'LTTng-UST git repo to checkout the UST id' | |
38 | ||
f494aee6 FD |
39 | - publisher: |
40 | name: 'system_tests_email_ext_default' | |
962ee225 FD |
41 | publishers: |
42 | - email-ext: | |
5a754cf7 | 43 | recipients: 'ci-notification@lists.lttng.org, cc:francis.deslauriers@efficios.com' |
962ee225 FD |
44 | reply-to: ci-notification@lists.lttng.org |
45 | always: false | |
46 | unstable: false | |
47 | first-failure: true | |
48 | first-unstable: true | |
49 | not-built: false | |
50 | aborted: false | |
51 | regression: false | |
52 | failure: false | |
53 | second-failure: false | |
54 | improvement: false | |
55 | still-failing: false | |
56 | success: false | |
57 | fixed: false | |
58 | fixed-unhealthy: true | |
59 | still-unstable: false | |
60 | pre-build: false | |
61 | matrix-trigger: only-parent | |
62 | send-to: | |
63 | - recipients | |
962ee225 FD |
64 | |
65 | ## Defaults | |
a2a6063c | 66 | - defaults: |
1ac7fa2c | 67 | name: baremetal_benchmarks |
95326029 | 68 | description: | |
962ee225 FD |
69 | Runs baremetal kernel benchmarks over different combination of kernel and lttng configurations. |
70 | project-type: freestyle | |
71 | node: 'x86-64' | |
a2a6063c | 72 | |
02126236 | 73 | <<: *system_tests_parameters_defaults |
95326029 | 74 | |
95326029 | 75 | properties: |
d6d1423b MJ |
76 | - build-discarder: |
77 | num-to-keep: 10 | |
95326029 FD |
78 | - throttle: |
79 | max-total: 2 | |
80 | option: 'category' | |
81 | categories: | |
1ac7fa2c | 82 | - 'baremetal-tests' |
d6d1423b | 83 | |
95326029 FD |
84 | wrappers: |
85 | - workspace-cleanup | |
86 | - timestamps | |
87 | - ansicolor | |
88 | - credentials-binding: | |
89 | - text: | |
90 | credential-id: jenkins_lava_key | |
30003819 | 91 | variable: LAVA_JENKINS_TOKEN |
cfceede2 | 92 | - file: |
fe4acd56 | 93 | credential-id: system_tests_storage_key |
cfceede2 | 94 | variable: identity_file |
95326029 FD |
95 | - inject: |
96 | properties-content: | | |
1ac7fa2c | 97 | BUILD_DEVICE=baremetal |
d6d1423b | 98 | |
962ee225 | 99 | builders: |
02126236 FD |
100 | - shell: !include-raw-escape: scripts/system-tests/generate-properties-master.sh |
101 | - shell: !include-raw-escape: scripts/system-tests/inject-ssh-commands.sh | |
962ee225 FD |
102 | - trigger-builds: |
103 | - project: "build_kernel_PARAM" | |
104 | property-file: 'properties.txt' | |
105 | block: true | |
106 | - inject: | |
107 | properties-file: properties.txt | |
02126236 FD |
108 | - shell: !include-raw-escape: scripts/system-tests/run-baremetal-benchmarks.sh |
109 | - shell: !include-raw-escape: scripts/system-tests/summarize-results.sh | |
962ee225 | 110 | |
95326029 | 111 | publishers: |
104ed94b FD |
112 | - archive: |
113 | artifacts: '*.png,*.csv' | |
114 | stable: true | |
115 | do-not-fingerprint: true | |
104ed94b FD |
116 | - image-gallery: |
117 | - gallery-type: archived-images-gallery | |
118 | title: Results | |
119 | includes: '*.png' | |
62c50903 | 120 | - workspace-cleanup |
d6d1423b | 121 | |
95326029 | 122 | - defaults: |
48ddcc03 | 123 | name: vm_tests |
95326029 | 124 | description: | |
962ee225 | 125 | Runs virtual machine kernel tests over different combination of kernel and lttng configurations. |
1ac7fa2c | 126 | project-type: freestyle |
5a754cf7 | 127 | node: 'x86-64' |
02126236 | 128 | <<: *system_tests_parameters_defaults |
d6d1423b | 129 | |
1ac7fa2c | 130 | properties: |
d6d1423b MJ |
131 | - build-discarder: |
132 | num-to-keep: 10 | |
1ac7fa2c FD |
133 | - throttle: |
134 | max-total: 2 | |
135 | option: 'category' | |
136 | categories: | |
137 | - 'kvm-tests' | |
d6d1423b | 138 | |
1ac7fa2c FD |
139 | wrappers: |
140 | - workspace-cleanup | |
141 | - timestamps | |
142 | - ansicolor | |
143 | - credentials-binding: | |
144 | - text: | |
145 | credential-id: jenkins_lava_key | |
30003819 | 146 | variable: LAVA_JENKINS_TOKEN |
1ac7fa2c FD |
147 | - inject: |
148 | properties-content: | | |
149 | BUILD_DEVICE=kvm | |
492954ee | 150 | |
1ac7fa2c | 151 | builders: |
02126236 | 152 | - shell: !include-raw-escape: scripts/system-tests/generate-properties-master.sh |
1ac7fa2c FD |
153 | - trigger-builds: |
154 | - project: "build_kernel_PARAM" | |
155 | property-file: 'properties.txt' | |
156 | block: true | |
157 | - inject: | |
158 | properties-file: properties.txt | |
02126236 | 159 | - shell: !include-raw-escape: scripts/system-tests/run-kvm-tests.sh |
1ac7fa2c | 160 | |
f494aee6 | 161 | publishers: |
f494aee6 | 162 | - workspace-cleanup |
d6d1423b | 163 | |
a2243f89 | 164 | - defaults: |
962ee225 FD |
165 | name: vm_tests_fuzzing |
166 | description: | | |
167 | Runs virtual machine fuzzing tests over different combination of kernel and lttng configurations. | |
168 | project-type: freestyle | |
5a754cf7 | 169 | node: 'x86-64' |
02126236 | 170 | <<: *system_tests_parameters_defaults |
d6d1423b | 171 | |
962ee225 FD |
172 | properties: |
173 | - build-discarder: | |
174 | num-to-keep: 10 | |
175 | - throttle: | |
176 | max-total: 2 | |
177 | option: 'category' | |
178 | categories: | |
179 | - 'kvm-tests' | |
d6d1423b | 180 | |
a2243f89 FD |
181 | wrappers: |
182 | - workspace-cleanup | |
183 | - timestamps | |
184 | - ansicolor | |
185 | - credentials-binding: | |
186 | - text: | |
187 | credential-id: jenkins_lava_key | |
188 | variable: LAVA_JENKINS_TOKEN | |
189 | - inject: | |
190 | properties-content: | | |
962ee225 FD |
191 | BUILD_DEVICE=kvm |
192 | ||
193 | builders: | |
02126236 | 194 | - shell: !include-raw-escape: scripts/system-tests/generate-properties-master.sh |
962ee225 FD |
195 | - trigger-builds: |
196 | - project: "build_kernel_PARAM" | |
197 | property-file: 'properties.txt' | |
198 | block: true | |
199 | - inject: | |
200 | properties-file: properties.txt | |
02126236 | 201 | - shell: !include-raw-escape: scripts/system-tests/run-kvm-fuzzing-tests.sh |
a2243f89 | 202 | |
f494aee6 | 203 | publishers: |
f494aee6 | 204 | - workspace-cleanup |
d6d1423b | 205 | |
1ac7fa2c FD |
206 | - defaults: |
207 | name: baremetal_tests | |
a2a6063c FD |
208 | description: | |
209 | Runs baremetal kernel tests over different combination of kernel and lttng configurations. | |
1ac7fa2c | 210 | project-type: freestyle |
5a754cf7 | 211 | node: 'x86-64' |
d6d1423b | 212 | |
02126236 | 213 | <<: *system_tests_parameters_defaults |
962ee225 | 214 | |
dc9700c9 | 215 | properties: |
d6d1423b MJ |
216 | - build-discarder: |
217 | num-to-keep: 10 | |
dc9700c9 FD |
218 | - throttle: |
219 | max-total: 2 | |
220 | option: 'category' | |
221 | categories: | |
95326029 | 222 | - 'baremetal-tests' |
d6d1423b | 223 | |
a2a6063c FD |
224 | wrappers: |
225 | - workspace-cleanup | |
226 | - timestamps | |
227 | - ansicolor | |
228 | - credentials-binding: | |
229 | - text: | |
230 | credential-id: jenkins_lava_key | |
30003819 | 231 | variable: LAVA_JENKINS_TOKEN |
a2a6063c FD |
232 | - inject: |
233 | properties-content: | | |
95326029 | 234 | BUILD_DEVICE=baremetal |
d6d1423b | 235 | |
a2a6063c | 236 | builders: |
02126236 | 237 | - shell: !include-raw-escape: scripts/system-tests/generate-properties-master.sh |
a2a6063c FD |
238 | - trigger-builds: |
239 | - project: "build_kernel_PARAM" | |
240 | property-file: 'properties.txt' | |
241 | block: true | |
242 | - inject: | |
243 | properties-file: properties.txt | |
02126236 | 244 | - shell: !include-raw-escape: scripts/system-tests/run-baremetal-tests.sh |
a2a6063c | 245 | |
f494aee6 | 246 | publishers: |
f494aee6 | 247 | - workspace-cleanup |
d6d1423b | 248 | |
962ee225 | 249 | ## Templates |
a2a6063c | 250 | - job-template: |
a2a6063c FD |
251 | name: build_kernel_PARAM |
252 | description: | | |
253 | Builds a Linux Kernel and LTTng Modules if necessary | |
a2a6063c | 254 | concurrent: true |
a2a6063c FD |
255 | node: 'x86-64' |
256 | ||
afd0d7f8 FD |
257 | parameters: |
258 | - string: | |
259 | name: 'LTTNG_MODULES_COMMIT_ID' | |
260 | description: 'The lttng-modules commmit to build.' | |
261 | - string: | |
262 | name: 'LTTNG_MODULES_REPO' | |
263 | description: 'The LTTng Modules git repo to fetch from' | |
264 | default: 'git://git-mirror.internal.efficios.com/lttng/lttng-modules.git' | |
265 | - string: | |
266 | name: 'KERNEL_COMMIT_ID' | |
267 | description: 'The kernel commit to build.' | |
268 | - string: | |
269 | name: 'KGITREPO' | |
270 | description: 'The kernel git repo to fetch from' | |
271 | - string: | |
272 | name: 'STORAGE_KERNEL_FOLDER' | |
273 | description: 'Path to store the Kernel image' | |
274 | - string: | |
275 | name: 'STORAGE_KERNEL_IMAGE' | |
276 | description: 'Path to store the Kernel IMAGE' | |
277 | - string: | |
278 | name: 'STORAGE_LINUX_MODULES' | |
279 | description: 'Path to store the Kernel Modules' | |
280 | - string: | |
281 | name: 'STORAGE_LTTNG_MODULES' | |
282 | description: 'Path to store the LTTng Modules' | |
283 | - string: | |
284 | name: 'BUILD_DEVICE' | |
285 | description: 'The target device. (kvm or baremetal)' | |
286 | ||
d6d1423b MJ |
287 | properties: |
288 | - build-discarder: | |
289 | num-to-keep: 100 | |
290 | ||
a2a6063c FD |
291 | wrappers: |
292 | - workspace-cleanup | |
293 | - timestamps | |
294 | - ansicolor | |
295 | - credentials-binding: | |
296 | - file: | |
fe4acd56 | 297 | credential-id: system_tests_storage_key |
a2a6063c | 298 | variable: identity_file |
d6d1423b | 299 | |
a2a6063c | 300 | builders: |
02126236 | 301 | - shell: !include-raw-escape: scripts/system-tests/generate-properties-slave.sh |
a2a6063c FD |
302 | - inject: |
303 | properties-file: properties.txt | |
02126236 | 304 | - shell: !include-raw-escape: scripts/system-tests/check-build-needs.sh |
a2a6063c FD |
305 | - conditional-step: |
306 | condition-kind: not | |
307 | condition-operand: | |
308 | condition-kind: file-exists | |
309 | condition-filename: kernel-built.txt | |
310 | condition-basedir: workspace | |
311 | steps: | |
02126236 | 312 | - shell: !include-raw-escape: scripts/system-tests/build-kernel.sh |
a2a6063c FD |
313 | - conditional-step: |
314 | condition-kind: not | |
315 | condition-operand: | |
316 | condition-kind: file-exists | |
317 | condition-filename: modules-built.txt | |
318 | condition-basedir: workspace | |
319 | steps: | |
02126236 | 320 | - shell: !include-raw-escape: scripts/system-tests/build-modules.sh |
a2a6063c | 321 | |
62c50903 FD |
322 | publishers: |
323 | - workspace-cleanup | |
a2a6063c | 324 | |
962ee225 | 325 | - job-template: |
5a754cf7 | 326 | name: system_ALL_{test_type}_trigger |
962ee225 FD |
327 | description: | |
328 | This job will trigger the build of jobs when a new tag is push specific | |
329 | tracked Linux branches and new commits on LTTng tracked branches | |
330 | ||
331 | project-type: freestyle | |
332 | node: 'master' | |
333 | ||
334 | properties: | |
335 | - build-discarder: | |
336 | num-to-keep: 10 | |
337 | ||
338 | triggers: | |
339 | - timed: "@daily" | |
340 | ||
341 | wrappers: | |
342 | - timestamps | |
343 | - ansicolor | |
344 | ||
345 | builders: | |
346 | - system-groovy: | |
347 | command: | |
02126236 | 348 | !include-raw-escape: scripts/system-tests/system-trigger.groovy |
962ee225 | 349 | |
f494aee6 FD |
350 | publishers: |
351 | - system_tests_email_ext_default | |
962ee225 FD |
352 | |
353 | - job-template: | |
354 | name: baremetal_benchmarks_k{kversion}_l{lttngversion} | |
355 | defaults: baremetal_benchmarks | |
356 | - job-template: | |
357 | name: vm_tests_k{kversion}_l{lttngversion} | |
358 | defaults: vm_tests | |
359 | - job-template: | |
360 | name: baremetal_tests_k{kversion}_l{lttngversion} | |
361 | defaults: baremetal_tests | |
362 | ||
363 | - job-template: | |
364 | name: vm_tests_fuzzing_k{kversion}_l{lttngversion} | |
365 | defaults: vm_tests_fuzzing | |
366 | ||
367 | # Canary jobs are made to confirm that the whole Lava pipeline is working. | |
368 | # They are scheduled once a day always on the same (LTTng, Kernel) code. If any | |
369 | # of those jobs fails, it means that there is an issue with the configuration | |
370 | - job-template: | |
371 | name: baremetal_benchmarks_canary | |
372 | defaults: baremetal_benchmarks | |
373 | ||
374 | - job-template: | |
375 | name: baremetal_tests_canary | |
376 | defaults: baremetal_tests | |
377 | ||
378 | - job-template: | |
379 | name: vm_tests_canary | |
380 | defaults: vm_tests | |
d6d1423b | 381 | |
a2a6063c FD |
382 | ## Project |
383 | - project: | |
02126236 | 384 | name: system-tests |
a2a6063c | 385 | kversion: |
962ee225 | 386 | - master |
a2a6063c | 387 | - linux-4.4.y |
47446c7f | 388 | - linux-4.9.y |
a2a6063c FD |
389 | lttngversion: |
390 | - master | |
a2a6063c | 391 | - stable-2.9 |
767b9687 | 392 | - stable-2.10 |
a2a6063c | 393 | jobs: |
48ddcc03 | 394 | - 'vm_tests_k{kversion}_l{lttngversion}' |
a2a6063c | 395 | - 'baremetal_benchmarks_k{kversion}_l{lttngversion}' |
1ac7fa2c | 396 | - 'baremetal_tests_k{kversion}_l{lttngversion}' |
a2a6063c FD |
397 | |
398 | - project: | |
02126236 | 399 | name: system-tests-oldkernel |
a2a6063c FD |
400 | kversion: |
401 | - linux-3.18.y | |
402 | - linux-4.4.y | |
403 | lttngversion: | |
404 | - stable-2.7 | |
405 | jobs: | |
48ddcc03 | 406 | - 'vm_tests_k{kversion}_l{lttngversion}': |
a2a6063c FD |
407 | - 'baremetal_tests_k{kversion}_l{lttngversion}': |
408 | - 'baremetal_benchmarks_k{kversion}_l{lttngversion}': | |
95326029 FD |
409 | |
410 | - project: | |
02126236 | 411 | name: system-tests-canary |
95326029 | 412 | jobs: |
962ee225 FD |
413 | - 'vm_tests_canary' |
414 | - 'baremetal_tests_canary' | |
415 | - 'baremetal_benchmarks_canary' | |
95326029 FD |
416 | |
417 | - project: | |
02126236 | 418 | name: system-fuzzing-tests |
962ee225 FD |
419 | kversion: master |
420 | lttngversion: master | |
421 | jobs: | |
422 | - 'vm_tests_fuzzing_k{kversion}_l{lttngversion}' | |
423 | - project: | |
02126236 | 424 | name: system-general |
5a754cf7 FD |
425 | test_type: |
426 | - vm_tests | |
427 | - baremetal_tests | |
428 | - baremetal_benchmarks | |
95326029 | 429 | jobs: |
962ee225 | 430 | - 'build_kernel_PARAM' |
5a754cf7 | 431 | - 'system_ALL_{test_type}_trigger' |