3 - system_tests_parameters_defaults: &system_tests_parameters_defaults
4 name: 'system_tests_parameters_defaults'
7 name: 'tools_commit_id'
9 description: 'The lttng-tools commit id to build.'
11 name: 'modules_commit_id'
13 description: 'The lttng-modules commit id to build.'
17 description: 'The lttng-ust commit id to build.'
21 description: 'The linux kernel git tag to build against.'
24 default: 'git://git-mirror.internal.efficios.com/kernel/stable/linux-stable.git'
25 description: 'Linux kernel git repo to checkout the kernel id'
28 default: 'https://github.com/lttng/lttng-tools.git'
29 description: 'LTTng-Tools git repo to checkout the tools id'
32 default: 'https://github.com/lttng/lttng-modules.git'
33 description: 'LTTng-Modules git repo to checkout the Modules id'
36 default: 'https://github.com/lttng/lttng-ust.git'
37 description: 'LTTng-UST git repo to checkout the UST id'
39 - system_tests_publisher_defaults: &system_tests_publisher_defaults
40 name: 'system_tests_publisher_defaults'
43 recipients: '{obj:email_to}'
44 reply-to: ci-notification@lists.lttng.org
61 matrix-trigger: only-parent
68 name: baremetal_benchmarks
70 Runs baremetal kernel benchmarks over different combination of kernel and lttng configurations.
71 project-type: freestyle
74 <<: *system_tests_parameters_defaults
89 - credentials-binding:
91 credential-id: jenkins_lava_key
92 variable: LAVA_JENKINS_TOKEN
94 credential-id: system_tests_storage_key
95 variable: identity_file
98 BUILD_DEVICE=baremetal
101 - shell: !include-raw-escape: scripts/system-tests/generate-properties-master.sh
102 - shell: !include-raw-escape: scripts/system-tests/inject-ssh-commands.sh
104 - project: "build_kernel_PARAM"
105 property-file: 'properties.txt'
108 properties-file: properties.txt
109 - shell: !include-raw-escape: scripts/system-tests/run-baremetal-benchmarks.sh
110 - shell: !include-raw-escape: scripts/system-tests/summarize-results.sh
114 artifacts: '*.png,*.csv'
116 do-not-fingerprint: true
118 recipients: '{obj:email_to}'
119 reply-to: ci-notification@lists.lttng.org
128 second-failure: false
133 fixed-unhealthy: true
134 still-unstable: false
136 matrix-trigger: only-parent
140 - gallery-type: archived-images-gallery
148 Runs virtual machine kernel tests over different combination of kernel and lttng configurations.
149 project-type: freestyle
151 <<: *system_tests_parameters_defaults
166 - credentials-binding:
168 credential-id: jenkins_lava_key
169 variable: LAVA_JENKINS_TOKEN
171 properties-content: |
175 - shell: !include-raw-escape: scripts/system-tests/generate-properties-master.sh
177 - project: "build_kernel_PARAM"
178 property-file: 'properties.txt'
181 properties-file: properties.txt
182 - shell: !include-raw-escape: scripts/system-tests/run-kvm-tests.sh
184 <<: *system_tests_publisher_defaults
187 name: vm_tests_fuzzing
189 Runs virtual machine fuzzing tests over different combination of kernel and lttng configurations.
190 project-type: freestyle
192 <<: *system_tests_parameters_defaults
207 - credentials-binding:
209 credential-id: jenkins_lava_key
210 variable: LAVA_JENKINS_TOKEN
212 properties-content: |
216 - shell: !include-raw-escape: scripts/system-tests/generate-properties-master.sh
218 - project: "build_kernel_PARAM"
219 property-file: 'properties.txt'
222 properties-file: properties.txt
223 - shell: !include-raw-escape: scripts/system-tests/run-kvm-fuzzing-tests.sh
225 <<: *system_tests_publisher_defaults
228 name: baremetal_tests
230 Runs baremetal kernel tests over different combination of kernel and lttng configurations.
231 project-type: freestyle
234 <<: *system_tests_parameters_defaults
249 - credentials-binding:
251 credential-id: jenkins_lava_key
252 variable: LAVA_JENKINS_TOKEN
254 properties-content: |
255 BUILD_DEVICE=baremetal
258 - shell: !include-raw-escape: scripts/system-tests/generate-properties-master.sh
260 - project: "build_kernel_PARAM"
261 property-file: 'properties.txt'
264 properties-file: properties.txt
265 - shell: !include-raw-escape: scripts/system-tests/run-baremetal-tests.sh
267 <<: *system_tests_publisher_defaults
271 name: build_kernel_PARAM
273 Builds a Linux Kernel and LTTng Modules if necessary
279 name: 'LTTNG_MODULES_COMMIT_ID'
280 description: 'The lttng-modules commmit to build.'
282 name: 'LTTNG_MODULES_REPO'
283 description: 'The LTTng Modules git repo to fetch from'
284 default: 'git://git-mirror.internal.efficios.com/lttng/lttng-modules.git'
286 name: 'KERNEL_COMMIT_ID'
287 description: 'The kernel commit to build.'
290 description: 'The kernel git repo to fetch from'
292 name: 'STORAGE_KERNEL_FOLDER'
293 description: 'Path to store the Kernel image'
295 name: 'STORAGE_KERNEL_IMAGE'
296 description: 'Path to store the Kernel IMAGE'
298 name: 'STORAGE_LINUX_MODULES'
299 description: 'Path to store the Kernel Modules'
301 name: 'STORAGE_LTTNG_MODULES'
302 description: 'Path to store the LTTng Modules'
305 description: 'The target device. (kvm or baremetal)'
315 - credentials-binding:
317 credential-id: system_tests_storage_key
318 variable: identity_file
321 - shell: !include-raw-escape: scripts/system-tests/generate-properties-slave.sh
323 properties-file: properties.txt
324 - shell: !include-raw-escape: scripts/system-tests/check-build-needs.sh
328 condition-kind: file-exists
329 condition-filename: kernel-built.txt
330 condition-basedir: workspace
332 - shell: !include-raw-escape: scripts/system-tests/build-kernel.sh
336 condition-kind: file-exists
337 condition-filename: modules-built.txt
338 condition-basedir: workspace
340 - shell: !include-raw-escape: scripts/system-tests/build-modules.sh
346 name: system_ALL_trigger
348 This job will trigger the build of jobs when a new tag is push specific
349 tracked Linux branches and new commits on LTTng tracked branches
351 project-type: freestyle
368 !include-raw-escape: scripts/system-tests/system-trigger.groovy
370 <<: *system_tests_publisher_defaults
373 name: baremetal_benchmarks_k{kversion}_l{lttngversion}
374 defaults: baremetal_benchmarks
376 name: vm_tests_k{kversion}_l{lttngversion}
379 name: baremetal_tests_k{kversion}_l{lttngversion}
380 defaults: baremetal_tests
383 name: vm_tests_fuzzing_k{kversion}_l{lttngversion}
384 defaults: vm_tests_fuzzing
386 # Canary jobs are made to confirm that the whole Lava pipeline is working.
387 # They are scheduled once a day always on the same (LTTng, Kernel) code. If any
388 # of those jobs fails, it means that there is an issue with the configuration
390 name: baremetal_benchmarks_canary
391 defaults: baremetal_benchmarks
394 name: baremetal_tests_canary
395 defaults: baremetal_tests
398 name: vm_tests_canary
404 email_to: 'ci-notification@lists.lttng.org, cc:francis.deslauriers@efficios.com'
414 - 'vm_tests_k{kversion}_l{lttngversion}'
415 - 'baremetal_benchmarks_k{kversion}_l{lttngversion}'
416 - 'baremetal_tests_k{kversion}_l{lttngversion}'
419 name: system-tests-oldkernel
420 email_to: 'ci-notification@lists.lttng.org, cc:francis.deslauriers@efficios.com'
427 - 'vm_tests_k{kversion}_l{lttngversion}':
428 - 'baremetal_tests_k{kversion}_l{lttngversion}':
429 - 'baremetal_benchmarks_k{kversion}_l{lttngversion}':
432 name: system-tests-canary
433 email_to: 'ci-notification@lists.lttng.org, cc:francis.deslauriers@efficios.com'
436 - 'baremetal_tests_canary'
437 - 'baremetal_benchmarks_canary'
440 name: system-fuzzing-tests
441 email_to: 'ci-notification@lists.lttng.org, cc:francis.deslauriers@efficios.com'
445 - 'vm_tests_fuzzing_k{kversion}_l{lttngversion}'
448 email_to: 'ci-notification@lists.lttng.org, cc:francis.deslauriers@efficios.com'
450 - 'build_kernel_PARAM'
451 - 'system_ALL_trigger'