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