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: | |
fdbdb52a | 7 | name: 'LTTNG_TOOLS_COMMIT_ID' |
962ee225 FD |
8 | default: '' |
9 | description: 'The lttng-tools commit id to build.' | |
10 | - string: | |
fdbdb52a | 11 | name: 'LTTNG_MODULES_COMMIT_ID' |
962ee225 FD |
12 | default: '' |
13 | description: 'The lttng-modules commit id to build.' | |
14 | - string: | |
fdbdb52a | 15 | name: 'LTTNG_UST_COMMIT_ID' |
962ee225 FD |
16 | default: '' |
17 | description: 'The lttng-ust commit id to build.' | |
18 | - string: | |
fdbdb52a | 19 | name: 'KERNEL_TAG_ID' |
962ee225 FD |
20 | default: '' |
21 | description: 'The linux kernel git tag to build against.' | |
22 | - string: | |
fdbdb52a | 23 | name: 'KERNEL_REPO' |
962ee225 FD |
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: | |
fdbdb52a | 27 | name: 'LTTNG_TOOLS_REPO' |
962ee225 FD |
28 | default: 'https://github.com/lttng/lttng-tools.git' |
29 | description: 'LTTng-Tools git repo to checkout the tools id' | |
30 | - string: | |
fdbdb52a | 31 | name: 'LTTNG_MODULES_REPO' |
962ee225 FD |
32 | default: 'https://github.com/lttng/lttng-modules.git' |
33 | description: 'LTTng-Modules git repo to checkout the Modules id' | |
34 | - string: | |
fdbdb52a | 35 | name: 'LTTNG_UST_REPO' |
962ee225 FD |
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 | |
16844a6d | 71 | node: 'amd64' |
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 |
d02bd6c0 JR |
92 | - text: |
93 | credential-id: jenkins_lava2_key | |
94 | variable: LAVA2_JENKINS_TOKEN | |
cfceede2 | 95 | - file: |
fe4acd56 | 96 | credential-id: system_tests_storage_key |
cfceede2 | 97 | variable: identity_file |
95326029 FD |
98 | - inject: |
99 | properties-content: | | |
1ac7fa2c | 100 | BUILD_DEVICE=baremetal |
b33f21f4 FD |
101 | scm: |
102 | - git: | |
103 | url: https://github.com/lttng/lttng-ci | |
104 | basedir: src/lttng-ci/ | |
d6d1423b | 105 | |
962ee225 | 106 | builders: |
02126236 FD |
107 | - shell: !include-raw-escape: scripts/system-tests/generate-properties-master.sh |
108 | - shell: !include-raw-escape: scripts/system-tests/inject-ssh-commands.sh | |
962ee225 FD |
109 | - trigger-builds: |
110 | - project: "build_kernel_PARAM" | |
111 | property-file: 'properties.txt' | |
112 | block: true | |
113 | - inject: | |
114 | properties-file: properties.txt | |
02126236 FD |
115 | - shell: !include-raw-escape: scripts/system-tests/run-baremetal-benchmarks.sh |
116 | - shell: !include-raw-escape: scripts/system-tests/summarize-results.sh | |
962ee225 | 117 | |
95326029 | 118 | publishers: |
104ed94b FD |
119 | - archive: |
120 | artifacts: '*.png,*.csv' | |
121 | stable: true | |
122 | do-not-fingerprint: true | |
104ed94b FD |
123 | - image-gallery: |
124 | - gallery-type: archived-images-gallery | |
125 | title: Results | |
126 | includes: '*.png' | |
62c50903 | 127 | - workspace-cleanup |
d6d1423b | 128 | |
95326029 | 129 | - defaults: |
48ddcc03 | 130 | name: vm_tests |
95326029 | 131 | description: | |
af8278b2 | 132 | Runs root_regression and root_destructive_tests on a virtual machine over different combinations of kernel and lttng configurations. |
1ac7fa2c | 133 | project-type: freestyle |
16844a6d | 134 | node: 'amd64' |
02126236 | 135 | <<: *system_tests_parameters_defaults |
d6d1423b | 136 | |
1ac7fa2c | 137 | properties: |
d6d1423b MJ |
138 | - build-discarder: |
139 | num-to-keep: 10 | |
1ac7fa2c | 140 | - throttle: |
e78c69f3 | 141 | max-total: 4 |
1ac7fa2c FD |
142 | option: 'category' |
143 | categories: | |
144 | - 'kvm-tests' | |
d6d1423b | 145 | |
1ac7fa2c FD |
146 | wrappers: |
147 | - workspace-cleanup | |
148 | - timestamps | |
149 | - ansicolor | |
150 | - credentials-binding: | |
151 | - text: | |
152 | credential-id: jenkins_lava_key | |
30003819 | 153 | variable: LAVA_JENKINS_TOKEN |
d02bd6c0 JR |
154 | - text: |
155 | credential-id: jenkins_lava2_key | |
156 | variable: LAVA2_JENKINS_TOKEN | |
1ac7fa2c FD |
157 | - inject: |
158 | properties-content: | | |
159 | BUILD_DEVICE=kvm | |
492954ee | 160 | |
b33f21f4 FD |
161 | scm: |
162 | - git: | |
163 | url: https://github.com/lttng/lttng-ci | |
164 | basedir: src/lttng-ci/ | |
165 | ||
1ac7fa2c | 166 | builders: |
02126236 | 167 | - shell: !include-raw-escape: scripts/system-tests/generate-properties-master.sh |
1ac7fa2c FD |
168 | - trigger-builds: |
169 | - project: "build_kernel_PARAM" | |
170 | property-file: 'properties.txt' | |
171 | block: true | |
172 | - inject: | |
173 | properties-file: properties.txt | |
02126236 | 174 | - shell: !include-raw-escape: scripts/system-tests/run-kvm-tests.sh |
1ac7fa2c | 175 | |
f494aee6 | 176 | publishers: |
f494aee6 | 177 | - workspace-cleanup |
d6d1423b | 178 | |
a2243f89 | 179 | - defaults: |
962ee225 FD |
180 | name: vm_tests_fuzzing |
181 | description: | | |
182 | Runs virtual machine fuzzing tests over different combination of kernel and lttng configurations. | |
183 | project-type: freestyle | |
16844a6d | 184 | node: 'amd64' |
02126236 | 185 | <<: *system_tests_parameters_defaults |
d6d1423b | 186 | |
962ee225 FD |
187 | properties: |
188 | - build-discarder: | |
189 | num-to-keep: 10 | |
190 | - throttle: | |
1ea9b07a | 191 | max-total: 4 |
962ee225 FD |
192 | option: 'category' |
193 | categories: | |
194 | - 'kvm-tests' | |
d6d1423b | 195 | |
a2243f89 FD |
196 | wrappers: |
197 | - workspace-cleanup | |
198 | - timestamps | |
199 | - ansicolor | |
200 | - credentials-binding: | |
201 | - text: | |
202 | credential-id: jenkins_lava_key | |
203 | variable: LAVA_JENKINS_TOKEN | |
d02bd6c0 JR |
204 | - text: |
205 | credential-id: jenkins_lava2_key | |
206 | variable: LAVA2_JENKINS_TOKEN | |
a2243f89 FD |
207 | - inject: |
208 | properties-content: | | |
962ee225 FD |
209 | BUILD_DEVICE=kvm |
210 | ||
b33f21f4 FD |
211 | scm: |
212 | - git: | |
213 | url: https://github.com/lttng/lttng-ci | |
214 | basedir: src/lttng-ci/ | |
215 | ||
962ee225 | 216 | builders: |
02126236 | 217 | - shell: !include-raw-escape: scripts/system-tests/generate-properties-master.sh |
962ee225 FD |
218 | - trigger-builds: |
219 | - project: "build_kernel_PARAM" | |
220 | property-file: 'properties.txt' | |
221 | block: true | |
222 | - inject: | |
223 | properties-file: properties.txt | |
02126236 | 224 | - shell: !include-raw-escape: scripts/system-tests/run-kvm-fuzzing-tests.sh |
a2243f89 | 225 | |
f494aee6 | 226 | publishers: |
f494aee6 | 227 | - workspace-cleanup |
d6d1423b | 228 | |
1ac7fa2c FD |
229 | - defaults: |
230 | name: baremetal_tests | |
a2a6063c | 231 | description: | |
af8278b2 | 232 | Runs perf_regression tests on a baremetal machine over different combinations of kernel and lttng configurations. |
1ac7fa2c | 233 | project-type: freestyle |
16844a6d | 234 | node: 'amd64' |
d6d1423b | 235 | |
02126236 | 236 | <<: *system_tests_parameters_defaults |
962ee225 | 237 | |
dc9700c9 | 238 | properties: |
d6d1423b MJ |
239 | - build-discarder: |
240 | num-to-keep: 10 | |
dc9700c9 FD |
241 | - throttle: |
242 | max-total: 2 | |
243 | option: 'category' | |
244 | categories: | |
95326029 | 245 | - 'baremetal-tests' |
d6d1423b | 246 | |
a2a6063c FD |
247 | wrappers: |
248 | - workspace-cleanup | |
249 | - timestamps | |
250 | - ansicolor | |
251 | - credentials-binding: | |
252 | - text: | |
253 | credential-id: jenkins_lava_key | |
30003819 | 254 | variable: LAVA_JENKINS_TOKEN |
d02bd6c0 JR |
255 | - text: |
256 | credential-id: jenkins_lava2_key | |
257 | variable: LAVA2_JENKINS_TOKEN | |
a2a6063c FD |
258 | - inject: |
259 | properties-content: | | |
95326029 | 260 | BUILD_DEVICE=baremetal |
d6d1423b | 261 | |
b33f21f4 FD |
262 | scm: |
263 | - git: | |
264 | url: https://github.com/lttng/lttng-ci | |
265 | basedir: src/lttng-ci/ | |
266 | ||
a2a6063c | 267 | builders: |
02126236 | 268 | - shell: !include-raw-escape: scripts/system-tests/generate-properties-master.sh |
a2a6063c FD |
269 | - trigger-builds: |
270 | - project: "build_kernel_PARAM" | |
271 | property-file: 'properties.txt' | |
272 | block: true | |
273 | - inject: | |
274 | properties-file: properties.txt | |
02126236 | 275 | - shell: !include-raw-escape: scripts/system-tests/run-baremetal-tests.sh |
a2a6063c | 276 | |
f494aee6 | 277 | publishers: |
f494aee6 | 278 | - workspace-cleanup |
d6d1423b | 279 | |
962ee225 | 280 | ## Templates |
a2a6063c | 281 | - job-template: |
a2a6063c FD |
282 | name: build_kernel_PARAM |
283 | description: | | |
284 | Builds a Linux Kernel and LTTng Modules if necessary | |
a2a6063c | 285 | concurrent: true |
16844a6d | 286 | node: 'amd64' |
a2a6063c | 287 | |
afd0d7f8 FD |
288 | parameters: |
289 | - string: | |
290 | name: 'LTTNG_MODULES_COMMIT_ID' | |
291 | description: 'The lttng-modules commmit to build.' | |
292 | - string: | |
293 | name: 'LTTNG_MODULES_REPO' | |
294 | description: 'The LTTng Modules git repo to fetch from' | |
295 | default: 'git://git-mirror.internal.efficios.com/lttng/lttng-modules.git' | |
296 | - string: | |
297 | name: 'KERNEL_COMMIT_ID' | |
298 | description: 'The kernel commit to build.' | |
299 | - string: | |
300 | name: 'KGITREPO' | |
301 | description: 'The kernel git repo to fetch from' | |
302 | - string: | |
303 | name: 'STORAGE_KERNEL_FOLDER' | |
304 | description: 'Path to store the Kernel image' | |
305 | - string: | |
306 | name: 'STORAGE_KERNEL_IMAGE' | |
307 | description: 'Path to store the Kernel IMAGE' | |
308 | - string: | |
309 | name: 'STORAGE_LINUX_MODULES' | |
310 | description: 'Path to store the Kernel Modules' | |
311 | - string: | |
312 | name: 'STORAGE_LTTNG_MODULES' | |
313 | description: 'Path to store the LTTng Modules' | |
314 | - string: | |
315 | name: 'BUILD_DEVICE' | |
316 | description: 'The target device. (kvm or baremetal)' | |
6252703b JR |
317 | - string: |
318 | name: 'S3_STORAGE_KERNEL_FOLDER' | |
319 | description: 'Path to store the Kernel image' | |
320 | - string: | |
321 | name: 'S3_STORAGE_KERNEL_IMAGE' | |
322 | description: 'Path to store the Kernel IMAGE' | |
323 | - string: | |
324 | name: 'S3_STORAGE_LINUX_MODULES' | |
325 | description: 'Path to store the Kernel Modules' | |
326 | - string: | |
327 | name: 'S3_STORAGE_LTTNG_MODULES' | |
328 | description: 'Path to store the LTTng Modules' | |
afd0d7f8 | 329 | |
d6d1423b MJ |
330 | properties: |
331 | - build-discarder: | |
332 | num-to-keep: 100 | |
333 | ||
a2a6063c FD |
334 | wrappers: |
335 | - workspace-cleanup | |
336 | - timestamps | |
337 | - ansicolor | |
338 | - credentials-binding: | |
339 | - file: | |
fe4acd56 | 340 | credential-id: system_tests_storage_key |
a2a6063c | 341 | variable: identity_file |
d6d1423b | 342 | |
b33f21f4 FD |
343 | scm: |
344 | - git: | |
345 | url: https://github.com/lttng/lttng-ci | |
346 | basedir: src/lttng-ci/ | |
b33f21f4 FD |
347 | - git: |
348 | url : $LTTNG_MODULES_REPO | |
349 | basedir: src/lttng-modules/ | |
350 | branches: | |
351 | - $LTTNG_MODULES_COMMIT_ID | |
352 | ||
a2a6063c | 353 | builders: |
02126236 | 354 | - shell: !include-raw-escape: scripts/system-tests/generate-properties-slave.sh |
a2a6063c FD |
355 | - inject: |
356 | properties-file: properties.txt | |
02126236 | 357 | - shell: !include-raw-escape: scripts/system-tests/check-build-needs.sh |
a2a6063c FD |
358 | - conditional-step: |
359 | condition-kind: not | |
360 | condition-operand: | |
361 | condition-kind: file-exists | |
362 | condition-filename: kernel-built.txt | |
363 | condition-basedir: workspace | |
364 | steps: | |
02126236 | 365 | - shell: !include-raw-escape: scripts/system-tests/build-kernel.sh |
a2a6063c FD |
366 | - conditional-step: |
367 | condition-kind: not | |
368 | condition-operand: | |
369 | condition-kind: file-exists | |
370 | condition-filename: modules-built.txt | |
371 | condition-basedir: workspace | |
372 | steps: | |
02126236 | 373 | - shell: !include-raw-escape: scripts/system-tests/build-modules.sh |
a2a6063c | 374 | |
62c50903 FD |
375 | publishers: |
376 | - workspace-cleanup | |
a2a6063c | 377 | |
962ee225 | 378 | - job-template: |
5a754cf7 | 379 | name: system_ALL_{test_type}_trigger |
962ee225 FD |
380 | description: | |
381 | This job will trigger the build of jobs when a new tag is push specific | |
382 | tracked Linux branches and new commits on LTTng tracked branches | |
383 | ||
384 | project-type: freestyle | |
385 | node: 'master' | |
e000d719 JR |
386 | parameters: |
387 | - bool: | |
388 | name: 'FORCE_JOB_RUN' | |
389 | default: false | |
390 | description: 'Force the child jobs to run' | |
962ee225 FD |
391 | |
392 | properties: | |
393 | - build-discarder: | |
394 | num-to-keep: 10 | |
395 | ||
396 | triggers: | |
d9d6e83c | 397 | - timed: "H 0 * * 1-5" |
962ee225 FD |
398 | |
399 | wrappers: | |
400 | - timestamps | |
401 | - ansicolor | |
402 | ||
403 | builders: | |
404 | - system-groovy: | |
405 | command: | |
02126236 | 406 | !include-raw-escape: scripts/system-tests/system-trigger.groovy |
962ee225 | 407 | |
f494aee6 FD |
408 | publishers: |
409 | - system_tests_email_ext_default | |
962ee225 FD |
410 | |
411 | - job-template: | |
412 | name: baremetal_benchmarks_k{kversion}_l{lttngversion} | |
413 | defaults: baremetal_benchmarks | |
414 | - job-template: | |
415 | name: vm_tests_k{kversion}_l{lttngversion} | |
416 | defaults: vm_tests | |
417 | - job-template: | |
418 | name: baremetal_tests_k{kversion}_l{lttngversion} | |
419 | defaults: baremetal_tests | |
420 | ||
421 | - job-template: | |
422 | name: vm_tests_fuzzing_k{kversion}_l{lttngversion} | |
423 | defaults: vm_tests_fuzzing | |
424 | ||
425 | # Canary jobs are made to confirm that the whole Lava pipeline is working. | |
426 | # They are scheduled once a day always on the same (LTTng, Kernel) code. If any | |
427 | # of those jobs fails, it means that there is an issue with the configuration | |
428 | - job-template: | |
429 | name: baremetal_benchmarks_canary | |
430 | defaults: baremetal_benchmarks | |
431 | ||
432 | - job-template: | |
433 | name: baremetal_tests_canary | |
434 | defaults: baremetal_tests | |
435 | ||
436 | - job-template: | |
437 | name: vm_tests_canary | |
438 | defaults: vm_tests | |
d6d1423b | 439 | |
a2a6063c FD |
440 | ## Project |
441 | - project: | |
02126236 | 442 | name: system-tests |
a2a6063c | 443 | kversion: |
962ee225 | 444 | - master |
c71443a8 | 445 | - linux-4.9.y |
f764faa2 JR |
446 | - linux-4.14.y |
447 | - linux-4.19.y | |
a2a6063c FD |
448 | lttngversion: |
449 | - master | |
a2a6063c | 450 | - stable-2.9 |
767b9687 | 451 | - stable-2.10 |
a2a6063c | 452 | jobs: |
48ddcc03 | 453 | - 'vm_tests_k{kversion}_l{lttngversion}' |
a2a6063c | 454 | - 'baremetal_benchmarks_k{kversion}_l{lttngversion}' |
1ac7fa2c | 455 | - 'baremetal_tests_k{kversion}_l{lttngversion}' |
a2a6063c FD |
456 | |
457 | - project: | |
02126236 | 458 | name: system-tests-oldkernel |
a2a6063c | 459 | kversion: |
f764faa2 | 460 | - linux-4.4.y |
a2a6063c | 461 | lttngversion: |
f764faa2 | 462 | - master |
a2a6063c | 463 | - stable-2.7 |
f764faa2 JR |
464 | - stable-2.9 |
465 | - stable-2.10 | |
a2a6063c | 466 | jobs: |
48ddcc03 | 467 | - 'vm_tests_k{kversion}_l{lttngversion}': |
a2a6063c FD |
468 | - 'baremetal_tests_k{kversion}_l{lttngversion}': |
469 | - 'baremetal_benchmarks_k{kversion}_l{lttngversion}': | |
95326029 FD |
470 | |
471 | - project: | |
02126236 | 472 | name: system-tests-canary |
95326029 | 473 | jobs: |
962ee225 FD |
474 | - 'vm_tests_canary' |
475 | - 'baremetal_tests_canary' | |
476 | - 'baremetal_benchmarks_canary' | |
95326029 FD |
477 | |
478 | - project: | |
02126236 | 479 | name: system-fuzzing-tests |
962ee225 FD |
480 | kversion: master |
481 | lttngversion: master | |
482 | jobs: | |
483 | - 'vm_tests_fuzzing_k{kversion}_l{lttngversion}' | |
484 | - project: | |
02126236 | 485 | name: system-general |
5a754cf7 FD |
486 | test_type: |
487 | - vm_tests | |
488 | - baremetal_tests | |
489 | - baremetal_benchmarks | |
95326029 | 490 | jobs: |
962ee225 | 491 | - 'build_kernel_PARAM' |
5a754cf7 | 492 | - 'system_ALL_{test_type}_trigger' |