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'
40 name: 'system_tests_email_ext_default'
43 recipients: 'ci-notification@lists.lttng.org, cc:francis.deslauriers@efficios.com'
44 reply-to: ci-notification@lists.lttng.org
61 matrix-trigger: only-parent
67 name: baremetal_benchmarks
69 Runs baremetal kernel benchmarks over different combination of kernel and lttng configurations.
70 project-type: freestyle
73 <<: *system_tests_parameters_defaults
88 - credentials-binding:
90 credential-id: jenkins_lava_key
91 variable: LAVA_JENKINS_TOKEN
93 credential-id: system_tests_storage_key
94 variable: identity_file
97 BUILD_DEVICE=baremetal
100 - shell: !include-raw-escape: scripts/system-tests/generate-properties-master.sh
101 - shell: !include-raw-escape: scripts/system-tests/inject-ssh-commands.sh
103 - project: "build_kernel_PARAM"
104 property-file: 'properties.txt'
107 properties-file: properties.txt
108 - shell: !include-raw-escape: scripts/system-tests/run-baremetal-benchmarks.sh
109 - shell: !include-raw-escape: scripts/system-tests/summarize-results.sh
113 artifacts: '*.png,*.csv'
115 do-not-fingerprint: true
116 - system_tests_email_ext_default
118 - gallery-type: archived-images-gallery
126 Runs virtual machine kernel tests over different combination of kernel and lttng configurations.
127 project-type: freestyle
129 <<: *system_tests_parameters_defaults
144 - credentials-binding:
146 credential-id: jenkins_lava_key
147 variable: LAVA_JENKINS_TOKEN
149 properties-content: |
153 - shell: !include-raw-escape: scripts/system-tests/generate-properties-master.sh
155 - project: "build_kernel_PARAM"
156 property-file: 'properties.txt'
159 properties-file: properties.txt
160 - shell: !include-raw-escape: scripts/system-tests/run-kvm-tests.sh
163 - system_tests_email_ext_default
167 name: vm_tests_fuzzing
169 Runs virtual machine fuzzing tests over different combination of kernel and lttng configurations.
170 project-type: freestyle
172 <<: *system_tests_parameters_defaults
187 - credentials-binding:
189 credential-id: jenkins_lava_key
190 variable: LAVA_JENKINS_TOKEN
192 properties-content: |
196 - shell: !include-raw-escape: scripts/system-tests/generate-properties-master.sh
198 - project: "build_kernel_PARAM"
199 property-file: 'properties.txt'
202 properties-file: properties.txt
203 - shell: !include-raw-escape: scripts/system-tests/run-kvm-fuzzing-tests.sh
206 - system_tests_email_ext_default
210 name: baremetal_tests
212 Runs baremetal kernel tests over different combination of kernel and lttng configurations.
213 project-type: freestyle
216 <<: *system_tests_parameters_defaults
231 - credentials-binding:
233 credential-id: jenkins_lava_key
234 variable: LAVA_JENKINS_TOKEN
236 properties-content: |
237 BUILD_DEVICE=baremetal
240 - shell: !include-raw-escape: scripts/system-tests/generate-properties-master.sh
242 - project: "build_kernel_PARAM"
243 property-file: 'properties.txt'
246 properties-file: properties.txt
247 - shell: !include-raw-escape: scripts/system-tests/run-baremetal-tests.sh
250 - system_tests_email_ext_default
255 name: build_kernel_PARAM
257 Builds a Linux Kernel and LTTng Modules if necessary
263 name: 'LTTNG_MODULES_COMMIT_ID'
264 description: 'The lttng-modules commmit to build.'
266 name: 'LTTNG_MODULES_REPO'
267 description: 'The LTTng Modules git repo to fetch from'
268 default: 'git://git-mirror.internal.efficios.com/lttng/lttng-modules.git'
270 name: 'KERNEL_COMMIT_ID'
271 description: 'The kernel commit to build.'
274 description: 'The kernel git repo to fetch from'
276 name: 'STORAGE_KERNEL_FOLDER'
277 description: 'Path to store the Kernel image'
279 name: 'STORAGE_KERNEL_IMAGE'
280 description: 'Path to store the Kernel IMAGE'
282 name: 'STORAGE_LINUX_MODULES'
283 description: 'Path to store the Kernel Modules'
285 name: 'STORAGE_LTTNG_MODULES'
286 description: 'Path to store the LTTng Modules'
289 description: 'The target device. (kvm or baremetal)'
299 - credentials-binding:
301 credential-id: system_tests_storage_key
302 variable: identity_file
305 - shell: !include-raw-escape: scripts/system-tests/generate-properties-slave.sh
307 properties-file: properties.txt
308 - shell: !include-raw-escape: scripts/system-tests/check-build-needs.sh
312 condition-kind: file-exists
313 condition-filename: kernel-built.txt
314 condition-basedir: workspace
316 - shell: !include-raw-escape: scripts/system-tests/build-kernel.sh
320 condition-kind: file-exists
321 condition-filename: modules-built.txt
322 condition-basedir: workspace
324 - shell: !include-raw-escape: scripts/system-tests/build-modules.sh
330 name: system_ALL_{test_type}_trigger
332 This job will trigger the build of jobs when a new tag is push specific
333 tracked Linux branches and new commits on LTTng tracked branches
335 project-type: freestyle
352 !include-raw-escape: scripts/system-tests/system-trigger.groovy
355 - system_tests_email_ext_default
358 name: baremetal_benchmarks_k{kversion}_l{lttngversion}
359 defaults: baremetal_benchmarks
361 name: vm_tests_k{kversion}_l{lttngversion}
364 name: baremetal_tests_k{kversion}_l{lttngversion}
365 defaults: baremetal_tests
368 name: vm_tests_fuzzing_k{kversion}_l{lttngversion}
369 defaults: vm_tests_fuzzing
371 # Canary jobs are made to confirm that the whole Lava pipeline is working.
372 # They are scheduled once a day always on the same (LTTng, Kernel) code. If any
373 # of those jobs fails, it means that there is an issue with the configuration
375 name: baremetal_benchmarks_canary
376 defaults: baremetal_benchmarks
379 name: baremetal_tests_canary
380 defaults: baremetal_tests
383 name: vm_tests_canary
398 - 'vm_tests_k{kversion}_l{lttngversion}'
399 - 'baremetal_benchmarks_k{kversion}_l{lttngversion}'
400 - 'baremetal_tests_k{kversion}_l{lttngversion}'
403 name: system-tests-oldkernel
410 - 'vm_tests_k{kversion}_l{lttngversion}':
411 - 'baremetal_tests_k{kversion}_l{lttngversion}':
412 - 'baremetal_benchmarks_k{kversion}_l{lttngversion}':
415 name: system-tests-canary
418 - 'baremetal_tests_canary'
419 - 'baremetal_benchmarks_canary'
422 name: system-fuzzing-tests
426 - 'vm_tests_fuzzing_k{kversion}_l{lttngversion}'
432 - baremetal_benchmarks
434 - 'build_kernel_PARAM'
435 - 'system_ALL_{test_type}_trigger'