3 - system_tests_parameters_defaults: &system_tests_parameters_defaults
4 name: 'system_tests_parameters_defaults'
7 name: 'LTTNG_TOOLS_COMMIT_ID'
9 description: 'The lttng-tools commit id to build.'
11 name: 'LTTNG_MODULES_COMMIT_ID'
13 description: 'The lttng-modules commit id to build.'
15 name: 'LTTNG_UST_COMMIT_ID'
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'
27 name: 'LTTNG_TOOLS_REPO'
28 default: 'https://github.com/lttng/lttng-tools.git'
29 description: 'LTTng-Tools git repo to checkout the tools id'
31 name: 'LTTNG_MODULES_REPO'
32 default: 'https://github.com/lttng/lttng-modules.git'
33 description: 'LTTng-Modules git repo to checkout the Modules id'
35 name: 'LTTNG_UST_REPO'
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 url: https://github.com/lttng/lttng-ci
101 basedir: src/lttng-ci/
104 - shell: !include-raw-escape: scripts/system-tests/generate-properties-master.sh
105 - shell: !include-raw-escape: scripts/system-tests/inject-ssh-commands.sh
107 - project: "build_kernel_PARAM"
108 property-file: 'properties.txt'
111 properties-file: properties.txt
112 - shell: !include-raw-escape: scripts/system-tests/run-baremetal-benchmarks.sh
113 - shell: !include-raw-escape: scripts/system-tests/summarize-results.sh
117 artifacts: '*.png,*.csv'
119 do-not-fingerprint: true
121 - gallery-type: archived-images-gallery
129 Runs virtual machine kernel tests over different combination of kernel and lttng configurations.
130 project-type: freestyle
132 <<: *system_tests_parameters_defaults
147 - credentials-binding:
149 credential-id: jenkins_lava_key
150 variable: LAVA_JENKINS_TOKEN
152 properties-content: |
157 url: https://github.com/lttng/lttng-ci
158 basedir: src/lttng-ci/
161 - shell: !include-raw-escape: scripts/system-tests/generate-properties-master.sh
163 - project: "build_kernel_PARAM"
164 property-file: 'properties.txt'
167 properties-file: properties.txt
168 - shell: !include-raw-escape: scripts/system-tests/run-kvm-tests.sh
174 name: vm_tests_fuzzing
176 Runs virtual machine fuzzing tests over different combination of kernel and lttng configurations.
177 project-type: freestyle
179 <<: *system_tests_parameters_defaults
194 - credentials-binding:
196 credential-id: jenkins_lava_key
197 variable: LAVA_JENKINS_TOKEN
199 properties-content: |
204 url: https://github.com/lttng/lttng-ci
205 basedir: src/lttng-ci/
208 - shell: !include-raw-escape: scripts/system-tests/generate-properties-master.sh
210 - project: "build_kernel_PARAM"
211 property-file: 'properties.txt'
214 properties-file: properties.txt
215 - shell: !include-raw-escape: scripts/system-tests/run-kvm-fuzzing-tests.sh
221 name: baremetal_tests
223 Runs baremetal kernel tests over different combination of kernel and lttng configurations.
224 project-type: freestyle
227 <<: *system_tests_parameters_defaults
242 - credentials-binding:
244 credential-id: jenkins_lava_key
245 variable: LAVA_JENKINS_TOKEN
247 properties-content: |
248 BUILD_DEVICE=baremetal
252 url: https://github.com/lttng/lttng-ci
253 basedir: src/lttng-ci/
256 - shell: !include-raw-escape: scripts/system-tests/generate-properties-master.sh
258 - project: "build_kernel_PARAM"
259 property-file: 'properties.txt'
262 properties-file: properties.txt
263 - shell: !include-raw-escape: scripts/system-tests/run-baremetal-tests.sh
270 name: build_kernel_PARAM
272 Builds a Linux Kernel and LTTng Modules if necessary
278 name: 'LTTNG_MODULES_COMMIT_ID'
279 description: 'The lttng-modules commmit to build.'
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'
285 name: 'KERNEL_COMMIT_ID'
286 description: 'The kernel commit to build.'
289 description: 'The kernel git repo to fetch from'
291 name: 'STORAGE_KERNEL_FOLDER'
292 description: 'Path to store the Kernel image'
294 name: 'STORAGE_KERNEL_IMAGE'
295 description: 'Path to store the Kernel IMAGE'
297 name: 'STORAGE_LINUX_MODULES'
298 description: 'Path to store the Kernel Modules'
300 name: 'STORAGE_LTTNG_MODULES'
301 description: 'Path to store the LTTng Modules'
304 description: 'The target device. (kvm or baremetal)'
314 - credentials-binding:
316 credential-id: system_tests_storage_key
317 variable: identity_file
321 url: https://github.com/lttng/lttng-ci
322 basedir: src/lttng-ci/
329 url : $LTTNG_MODULES_REPO
330 basedir: src/lttng-modules/
332 - $LTTNG_MODULES_COMMIT_ID
335 - shell: !include-raw-escape: scripts/system-tests/generate-properties-slave.sh
337 properties-file: properties.txt
338 - shell: !include-raw-escape: scripts/system-tests/check-build-needs.sh
342 condition-kind: file-exists
343 condition-filename: kernel-built.txt
344 condition-basedir: workspace
346 - shell: !include-raw-escape: scripts/system-tests/build-kernel.sh
350 condition-kind: file-exists
351 condition-filename: modules-built.txt
352 condition-basedir: workspace
354 - shell: !include-raw-escape: scripts/system-tests/build-modules.sh
360 name: system_ALL_{test_type}_trigger
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
365 project-type: freestyle
373 - timed: "H H * * 1-5"
382 !include-raw-escape: scripts/system-tests/system-trigger.groovy
385 - system_tests_email_ext_default
388 name: baremetal_benchmarks_k{kversion}_l{lttngversion}
389 defaults: baremetal_benchmarks
391 name: vm_tests_k{kversion}_l{lttngversion}
394 name: baremetal_tests_k{kversion}_l{lttngversion}
395 defaults: baremetal_tests
398 name: vm_tests_fuzzing_k{kversion}_l{lttngversion}
399 defaults: vm_tests_fuzzing
401 # Canary jobs are made to confirm that the whole Lava pipeline is working.
402 # They are scheduled once a day always on the same (LTTng, Kernel) code. If any
403 # of those jobs fails, it means that there is an issue with the configuration
405 name: baremetal_benchmarks_canary
406 defaults: baremetal_benchmarks
409 name: baremetal_tests_canary
410 defaults: baremetal_tests
413 name: vm_tests_canary
428 - 'vm_tests_k{kversion}_l{lttngversion}'
429 - 'baremetal_benchmarks_k{kversion}_l{lttngversion}'
430 - 'baremetal_tests_k{kversion}_l{lttngversion}'
433 name: system-tests-oldkernel
439 - 'vm_tests_k{kversion}_l{lttngversion}':
440 - 'baremetal_tests_k{kversion}_l{lttngversion}':
441 - 'baremetal_benchmarks_k{kversion}_l{lttngversion}':
444 name: system-tests-canary
447 - 'baremetal_tests_canary'
448 - 'baremetal_benchmarks_canary'
451 name: system-fuzzing-tests
455 - 'vm_tests_fuzzing_k{kversion}_l{lttngversion}'
461 - baremetal_benchmarks
463 - 'build_kernel_PARAM'
464 - 'system_ALL_{test_type}_trigger'