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: | |
962ee225 | 129 | Runs virtual machine kernel tests over different combination 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 FD |
222 | description: | |
223 | Runs baremetal kernel tests over different combination 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)' | |
305 | ||
d6d1423b MJ |
306 | properties: |
307 | - build-discarder: | |
308 | num-to-keep: 100 | |
309 | ||
a2a6063c FD |
310 | wrappers: |
311 | - workspace-cleanup | |
312 | - timestamps | |
313 | - ansicolor | |
314 | - credentials-binding: | |
315 | - file: | |
fe4acd56 | 316 | credential-id: system_tests_storage_key |
a2a6063c | 317 | variable: identity_file |
d6d1423b | 318 | |
b33f21f4 FD |
319 | scm: |
320 | - git: | |
321 | url: https://github.com/lttng/lttng-ci | |
322 | basedir: src/lttng-ci/ | |
323 | - git: | |
324 | url : $KGITREPO | |
325 | basedir: src/linux/ | |
326 | branches: | |
327 | - $KERNEL_COMMIT_ID | |
328 | - git: | |
329 | url : $LTTNG_MODULES_REPO | |
330 | basedir: src/lttng-modules/ | |
331 | branches: | |
332 | - $LTTNG_MODULES_COMMIT_ID | |
333 | ||
a2a6063c | 334 | builders: |
02126236 | 335 | - shell: !include-raw-escape: scripts/system-tests/generate-properties-slave.sh |
a2a6063c FD |
336 | - inject: |
337 | properties-file: properties.txt | |
02126236 | 338 | - shell: !include-raw-escape: scripts/system-tests/check-build-needs.sh |
a2a6063c FD |
339 | - conditional-step: |
340 | condition-kind: not | |
341 | condition-operand: | |
342 | condition-kind: file-exists | |
343 | condition-filename: kernel-built.txt | |
344 | condition-basedir: workspace | |
345 | steps: | |
02126236 | 346 | - shell: !include-raw-escape: scripts/system-tests/build-kernel.sh |
a2a6063c FD |
347 | - conditional-step: |
348 | condition-kind: not | |
349 | condition-operand: | |
350 | condition-kind: file-exists | |
351 | condition-filename: modules-built.txt | |
352 | condition-basedir: workspace | |
353 | steps: | |
02126236 | 354 | - shell: !include-raw-escape: scripts/system-tests/build-modules.sh |
a2a6063c | 355 | |
62c50903 FD |
356 | publishers: |
357 | - workspace-cleanup | |
a2a6063c | 358 | |
962ee225 | 359 | - job-template: |
5a754cf7 | 360 | name: system_ALL_{test_type}_trigger |
962ee225 FD |
361 | description: | |
362 | This job will trigger the build of jobs when a new tag is push specific | |
363 | tracked Linux branches and new commits on LTTng tracked branches | |
364 | ||
365 | project-type: freestyle | |
366 | node: 'master' | |
367 | ||
368 | properties: | |
369 | - build-discarder: | |
370 | num-to-keep: 10 | |
371 | ||
372 | triggers: | |
086a82d5 FD |
373 | - pollscm: |
374 | cron: "* * * * 1-5" | |
962ee225 FD |
375 | |
376 | wrappers: | |
377 | - timestamps | |
378 | - ansicolor | |
379 | ||
380 | builders: | |
381 | - system-groovy: | |
382 | command: | |
02126236 | 383 | !include-raw-escape: scripts/system-tests/system-trigger.groovy |
962ee225 | 384 | |
f494aee6 FD |
385 | publishers: |
386 | - system_tests_email_ext_default | |
962ee225 FD |
387 | |
388 | - job-template: | |
389 | name: baremetal_benchmarks_k{kversion}_l{lttngversion} | |
390 | defaults: baremetal_benchmarks | |
391 | - job-template: | |
392 | name: vm_tests_k{kversion}_l{lttngversion} | |
393 | defaults: vm_tests | |
394 | - job-template: | |
395 | name: baremetal_tests_k{kversion}_l{lttngversion} | |
396 | defaults: baremetal_tests | |
397 | ||
398 | - job-template: | |
399 | name: vm_tests_fuzzing_k{kversion}_l{lttngversion} | |
400 | defaults: vm_tests_fuzzing | |
401 | ||
402 | # Canary jobs are made to confirm that the whole Lava pipeline is working. | |
403 | # They are scheduled once a day always on the same (LTTng, Kernel) code. If any | |
404 | # of those jobs fails, it means that there is an issue with the configuration | |
405 | - job-template: | |
406 | name: baremetal_benchmarks_canary | |
407 | defaults: baremetal_benchmarks | |
408 | ||
409 | - job-template: | |
410 | name: baremetal_tests_canary | |
411 | defaults: baremetal_tests | |
412 | ||
413 | - job-template: | |
414 | name: vm_tests_canary | |
415 | defaults: vm_tests | |
d6d1423b | 416 | |
a2a6063c FD |
417 | ## Project |
418 | - project: | |
02126236 | 419 | name: system-tests |
a2a6063c | 420 | kversion: |
962ee225 | 421 | - master |
a2a6063c | 422 | - linux-4.4.y |
47446c7f | 423 | - linux-4.9.y |
a2a6063c FD |
424 | lttngversion: |
425 | - master | |
a2a6063c | 426 | - stable-2.9 |
767b9687 | 427 | - stable-2.10 |
a2a6063c | 428 | jobs: |
48ddcc03 | 429 | - 'vm_tests_k{kversion}_l{lttngversion}' |
a2a6063c | 430 | - 'baremetal_benchmarks_k{kversion}_l{lttngversion}' |
1ac7fa2c | 431 | - 'baremetal_tests_k{kversion}_l{lttngversion}' |
a2a6063c FD |
432 | |
433 | - project: | |
02126236 | 434 | name: system-tests-oldkernel |
a2a6063c FD |
435 | kversion: |
436 | - linux-3.18.y | |
a2a6063c FD |
437 | lttngversion: |
438 | - stable-2.7 | |
439 | jobs: | |
48ddcc03 | 440 | - 'vm_tests_k{kversion}_l{lttngversion}': |
a2a6063c FD |
441 | - 'baremetal_tests_k{kversion}_l{lttngversion}': |
442 | - 'baremetal_benchmarks_k{kversion}_l{lttngversion}': | |
95326029 FD |
443 | |
444 | - project: | |
02126236 | 445 | name: system-tests-canary |
95326029 | 446 | jobs: |
962ee225 FD |
447 | - 'vm_tests_canary' |
448 | - 'baremetal_tests_canary' | |
449 | - 'baremetal_benchmarks_canary' | |
95326029 FD |
450 | |
451 | - project: | |
02126236 | 452 | name: system-fuzzing-tests |
962ee225 FD |
453 | kversion: master |
454 | lttngversion: master | |
455 | jobs: | |
456 | - 'vm_tests_fuzzing_k{kversion}_l{lttngversion}' | |
457 | - project: | |
02126236 | 458 | name: system-general |
5a754cf7 FD |
459 | test_type: |
460 | - vm_tests | |
461 | - baremetal_tests | |
462 | - baremetal_benchmarks | |
95326029 | 463 | jobs: |
962ee225 | 464 | - 'build_kernel_PARAM' |
5a754cf7 | 465 | - 'system_ALL_{test_type}_trigger' |