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