Add email notification to latency tracker jobs
[lttng-ci.git] / jobs / lttng-baremetal-tests.yaml
1 - defaults:
2 name: baremetal_benchmarks
3 description: |
4 Runs baremetal kernel tests over different combination of kernel and lttng configurations.
5
6 triggers:
7 - pollscm:
8 cron: "H * * * 1-5"
9
10 properties:
11 - build-discarder:
12 num-to-keep: 10
13 - throttle:
14 max-total: 2
15 option: 'category'
16 categories:
17 - 'baremetal-tests'
18
19 project-type: freestyle
20 node: 'x86-64'
21 wrappers:
22 - workspace-cleanup
23 - timestamps
24 - ansicolor
25 - credentials-binding:
26 - text:
27 credential-id: jenkins_lava_key
28 variable: LAVA_JENKINS_TOKEN
29 - file:
30 credential-id: system_tests_storage_key
31 variable: identity_file
32 - inject:
33 properties-content: |
34 TOOLS_BRANCH={lttngversion}
35 UST_BRANCH={lttngversion}
36 BUILD_DEVICE=baremetal
37
38 publishers:
39 - archive:
40 artifacts: '*.png,*.csv'
41 stable: true
42 do-not-fingerprint: true
43 - email:
44 recipients: 'francis.deslauriers@efficios.com'
45 - image-gallery:
46 - gallery-type: archived-images-gallery
47 title: Results
48 includes: '*.png'
49 - workspace-cleanup
50
51 scm:
52 - git:
53 url: git://git-mirror.internal.efficios.com/lttng/lttng-tools.git
54 branches:
55 - "{lttngversion}"
56 shallow-clone: true
57 skip-tag: true
58 fastpoll: true
59 basedir: src/lttng-tools
60 - git:
61 url: git://git-mirror.internal.efficios.com/lttng/lttng-modules.git
62 branches:
63 - "{lttngversion}"
64 shallow-clone: true
65 skip-tag: true
66 fastpoll: true
67 basedir: src/lttng-modules
68 - git:
69 url: git://git-mirror.internal.efficios.com/kernel/stable/linux-stable.git
70 branches:
71 - "{kversion}"
72 shallow-clone: true
73 skip-tag: true
74 fastpoll: true
75 basedir: src/linux
76
77 builders:
78 - shell: !include-raw-escape: scripts/lttng-baremetal-tests/generate-properties-master.sh
79 - shell: !include-raw-escape: scripts/lttng-baremetal-tests/inject-ssh-commands.sh
80 - trigger-builds:
81 - project: "build_kernel_PARAM"
82 property-file: 'properties.txt'
83 block: true
84 - inject:
85 properties-file: properties.txt
86 - shell: !include-raw-escape: scripts/lttng-baremetal-tests/run-baremetal-benchmarks.sh
87 - shell: !include-raw-escape: scripts/lttng-baremetal-tests/summarize-results.sh
88
89
90 - defaults:
91 name: vm_tests
92 description: |
93 Runs baremetal kernel tests over different combination of kernel and lttng configurations.
94 project-type: freestyle
95 node: 'master'
96
97 properties:
98 - build-discarder:
99 num-to-keep: 10
100 - throttle:
101 max-total: 2
102 option: 'category'
103 categories:
104 - 'kvm-tests'
105
106 triggers:
107 - pollscm:
108 cron: "H * * * 1-5"
109
110 wrappers:
111 - workspace-cleanup
112 - timestamps
113 - ansicolor
114 - credentials-binding:
115 - text:
116 credential-id: jenkins_lava_key
117 variable: LAVA_JENKINS_TOKEN
118 - inject:
119 properties-content: |
120 BUILD_DEVICE=kvm
121 TOOLS_BRANCH={lttngversion}
122 UST_BRANCH={lttngversion}
123
124 scm:
125 - git:
126 url: git://git-mirror.internal.efficios.com/lttng/lttng-tools.git
127 branches:
128 - "{lttngversion}"
129 shallow-clone: true
130 skip-tag: true
131 fastpoll: true
132 basedir: src/lttng-tools
133 - git:
134 url: git://git-mirror.internal.efficios.com/lttng/lttng-modules.git
135 branches:
136 - "{lttngversion}"
137 shallow-clone: true
138 skip-tag: true
139 fastpoll: true
140 basedir: src/lttng-modules
141 - git:
142 url: git://git-mirror.internal.efficios.com/kernel/stable/linux-stable.git
143 branches:
144 - "{kversion}"
145 shallow-clone: true
146 skip-tag: true
147 fastpoll: true
148 basedir: src/linux
149
150 publishers:
151 - email:
152 recipients: 'francis.deslauriers@efficios.com'
153 - ircbot:
154 strategy: new-failure-and-fixed
155 message-type: summary
156 channels:
157 - name: '#lttng'
158 - workspace-cleanup
159
160 builders:
161 - shell: !include-raw-escape: scripts/lttng-baremetal-tests/generate-properties-master.sh
162 - trigger-builds:
163 - project: "build_kernel_PARAM"
164 property-file: 'properties.txt'
165 block: true
166 - inject:
167 properties-file: properties.txt
168 - shell: !include-raw-escape: scripts/lttng-baremetal-tests/run-kvm-tests.sh
169
170
171 - defaults:
172 name: vm_tests_kmainline
173 defaults: vm_tests
174
175 triggers:
176 - pollscm:
177 cron: "0 1 * * 1-5"
178
179 wrappers:
180 - workspace-cleanup
181 - timestamps
182 - ansicolor
183 - credentials-binding:
184 - text:
185 credential-id: jenkins_lava_key
186 variable: LAVA_JENKINS_TOKEN
187 - inject:
188 properties-content: |
189 TOOLS_BRANCH={lttngversion}
190 MODULES_BRANCH={lttngversion}
191 UST_BRANCH={lttngversion}
192 BUILD_DEVICE=baremetal
193 scm:
194 - git:
195 url: git://git-mirror.internal.efficios.com/lttng/lttng-tools.git
196 branches:
197 - "{lttngversion}"
198 shallow-clone: true
199 skip-tag: true
200 fastpoll: true
201 basedir: src/lttng-tools
202 - git:
203 url: git://git-mirror.internal.efficios.com/lttng/lttng-modules.git
204 branches:
205 - "{lttngversion}"
206 shallow-clone: true
207 skip-tag: true
208 fastpoll: true
209 basedir: src/lttng-modules
210 - git:
211 url: git://git-mirror.internal.efficios.com/kernel/torvalds/linux.git
212 refspec: "+refs/tags/*:refs/remotes/origin/tags/*"
213 branches:
214 - "master"
215 fastpoll: true
216 basedir: src/linux
217
218
219 - defaults:
220 name: baremetal_tests
221 description: |
222 Runs baremetal kernel tests over different combination of kernel and lttng configurations.
223 project-type: freestyle
224 node: 'master'
225
226 properties:
227 - build-discarder:
228 num-to-keep: 10
229 - throttle:
230 max-total: 2
231 option: 'category'
232 categories:
233 - 'baremetal-tests'
234
235 triggers:
236 - pollscm:
237 cron: "H * * * 1-5"
238
239 wrappers:
240 - workspace-cleanup
241 - timestamps
242 - ansicolor
243 - credentials-binding:
244 - text:
245 credential-id: jenkins_lava_key
246 variable: LAVA_JENKINS_TOKEN
247 - inject:
248 properties-content: |
249 UST_BRANCH={lttngversion}
250 BUILD_DEVICE=baremetal
251
252 scm:
253 - git:
254 url: git://git-mirror.internal.efficios.com/lttng/lttng-tools.git
255 branches:
256 - "{lttngversion}"
257 shallow-clone: true
258 skip-tag: true
259 fastpoll: true
260 basedir: src/lttng-tools
261 - git:
262 url: git://git-mirror.internal.efficios.com/lttng/lttng-modules.git
263 branches:
264 - "{lttngversion}"
265 shallow-clone: true
266 skip-tag: true
267 fastpoll: true
268 basedir: src/lttng-modules
269 - git:
270 url: git://git-mirror.internal.efficios.com/kernel/stable/linux-stable.git
271 branches:
272 - "{kversion}"
273 shallow-clone: true
274 skip-tag: true
275 fastpoll: true
276 basedir: src/linux
277
278 publishers:
279 - email:
280 recipients: 'francis.deslauriers@efficios.com'
281 - ircbot:
282 strategy: new-failure-and-fixed
283 message-type: summary
284 channels:
285 - name: '#lttng'
286 - workspace-cleanup
287
288 builders:
289 - shell: !include-raw-escape: scripts/lttng-baremetal-tests/generate-properties-master.sh
290 - trigger-builds:
291 - project: "build_kernel_PARAM"
292 property-file: 'properties.txt'
293 block: true
294 - inject:
295 properties-file: properties.txt
296 - shell: !include-raw-escape: scripts/lttng-baremetal-tests/run-baremetal-tests.sh
297
298
299 - job-template:
300 name: baremetal_benchmarks_k{kversion}_l{lttngversion}
301 defaults: baremetal_benchmarks
302 - job-template:
303 name: vm_tests_k{kversion}_l{lttngversion}
304 defaults: vm_tests
305 - job-template:
306 name: baremetal_tests_k{kversion}_l{lttngversion}
307 defaults: baremetal_tests
308
309
310 # Canary jobs are made to confirm that the whole Lava pipeline is working.
311 # They are scheduled once a day always on the same (LTTng, Kernel) code. If any
312 # of those jobs fails, it means that there is an issue with the configuration
313 - job-template:
314 name: baremetal_tests_k{kversion}_l{lttngversion}_canary
315 defaults: baremetal_tests
316 triggers:
317 - timed: "0 1 * * 1-5"
318 - job-template:
319 name: vm_tests_k{kversion}_l{lttngversion}_canary
320 defaults: vm_tests
321 triggers:
322 - timed: "0 1 * * 1-5"
323 - job-template:
324 name: baremetal_benchmarks_k{kversion}_l{lttngversion}_canary
325 defaults: baremetal_benchmarks
326 triggers:
327 - timed: "0 1 * * 1-5"
328 - job-template:
329 name: vm_tests_kmainline_l{lttngversion}
330 defaults: vm_tests_kmainline
331
332 - job-template:
333 name: vm_tests_fuzzing_kmainline_l{lttngversion}
334 defaults: vm_tests_kmainline
335
336 builders:
337 - shell: !include-raw-escape: scripts/lttng-baremetal-tests/generate-properties-master.sh
338 - trigger-builds:
339 - project: "build_kernel_PARAM"
340 property-file: 'properties.txt'
341 block: true
342 - inject:
343 properties-file: properties.txt
344 - shell: !include-raw-escape: scripts/lttng-baremetal-tests/run-kvm-fuzzing-tests.sh
345
346 - job-template:
347 name: baremetal_tests_kmainline_l{lttngversion}
348 defaults: baremetal_tests
349
350 triggers:
351 - pollscm:
352 cron: "0 1 * * 1-5"
353
354 wrappers:
355 - workspace-cleanup
356 - timestamps
357 - ansicolor
358 - credentials-binding:
359 - text:
360 credential-id: jenkins_lava_key
361 variable: LAVA_JENKINS_TOKEN
362 - inject:
363 properties-content: |
364 TOOLS_BRANCH={lttngversion}
365 MODULES_BRANCH={lttngversion}
366 UST_BRANCH={lttngversion}
367 BUILD_DEVICE=baremetal
368
369 scm:
370 - git:
371 url: git://git-mirror.internal.efficios.com/lttng/lttng-tools.git
372 branches:
373 - "{lttngversion}"
374 shallow-clone: true
375 skip-tag: true
376 fastpoll: true
377 basedir: src/lttng-tools
378 - git:
379 url: git://git-mirror.internal.efficios.com/lttng/lttng-modules.git
380 branches:
381 - "{lttngversion}"
382 shallow-clone: true
383 skip-tag: true
384 fastpoll: true
385 basedir: src/lttng-modules
386 - git:
387 url: git://git-mirror.internal.efficios.com/kernel/torvalds/linux.git
388 refspec: "+refs/tags/*:refs/remotes/origin/tags/*"
389 branches:
390 - "master"
391 fastpoll: true
392 basedir: src/linux
393
394
395 - job-template:
396 name: baremetal_benchmarks_kmainline_l{lttngversion}
397 defaults: baremetal_benchmarks
398
399 triggers:
400 - pollscm:
401 cron: "0 1 * * 1-5"
402
403 wrappers:
404 - workspace-cleanup
405 - timestamps
406 - ansicolor
407 - credentials-binding:
408 - text:
409 credential-id: jenkins_lava_key
410 variable: LAVA_JENKINS_TOKEN
411 - file:
412 credential-id: system_tests_storage_key
413 variable: identity_file
414 - inject:
415 properties-content: |
416 TOOLS_BRANCH={lttngversion}
417 MODULES_BRANCH={lttngversion}
418 UST_BRANCH={lttngversion}
419 BUILD_DEVICE=baremetal
420
421 scm:
422 - git:
423 url: git://git-mirror.internal.efficios.com/lttng/lttng-tools.git
424 branches:
425 - "{lttngversion}"
426 shallow-clone: true
427 skip-tag: true
428 fastpoll: true
429 basedir: src/lttng-tools
430 - git:
431 url: git://git-mirror.internal.efficios.com/lttng/lttng-modules.git
432 branches:
433 - "{lttngversion}"
434 shallow-clone: true
435 skip-tag: true
436 fastpoll: true
437 basedir: src/lttng-modules
438 - git:
439 url: git://git-mirror.internal.efficios.com/kernel/torvalds/linux.git
440 refspec: "+refs/tags/*:refs/remotes/origin/tags/*"
441 branches:
442 - "master"
443 fastpoll: true
444 basedir: src/linux
445
446
447 - job:
448 name: build_kernel_PARAM
449 description: |
450 Builds a Linux Kernel and LTTng Modules if necessary
451 concurrent: true
452 node: 'x86-64'
453
454 properties:
455 - build-discarder:
456 num-to-keep: 100
457
458 wrappers:
459 - workspace-cleanup
460 - timestamps
461 - ansicolor
462 - credentials-binding:
463 - file:
464 credential-id: system_tests_storage_key
465 variable: identity_file
466
467 builders:
468 - shell: !include-raw-escape: scripts/lttng-baremetal-tests/generate-properties-slave.sh
469 - inject:
470 properties-file: properties.txt
471 - shell: !include-raw-escape: scripts/lttng-baremetal-tests/check-build-needs.sh
472 - conditional-step:
473 condition-kind: not
474 condition-operand:
475 condition-kind: file-exists
476 condition-filename: kernel-built.txt
477 condition-basedir: workspace
478 steps:
479 - shell: !include-raw-escape: scripts/lttng-baremetal-tests/build-kernel.sh
480 - conditional-step:
481 condition-kind: not
482 condition-operand:
483 condition-kind: file-exists
484 condition-filename: modules-built.txt
485 condition-basedir: workspace
486 steps:
487 - shell: !include-raw-escape: scripts/lttng-baremetal-tests/build-modules.sh
488
489 parameters:
490 - string:
491 name: 'LTTNG_MODULES_COMMIT_ID'
492 description: 'The lttng-modules commmit to build.'
493 - string:
494 name: 'LTTNG_MODULES_REPO'
495 description: 'The LTTng Modules git repo to fetch from'
496 default: 'git://git-mirror.internal.efficios.com/lttng/lttng-modules.git'
497 - string:
498 name: 'KERNEL_COMMIT_ID'
499 description: 'The kernel commit to build.'
500 - string:
501 name: 'KGITREPO'
502 description: 'The kernel git repo to fetch from'
503 - string:
504 name: 'STORAGE_KERNEL_FOLDER'
505 description: 'Path to store the Kernel image'
506 - string:
507 name: 'STORAGE_KERNEL_IMAGE'
508 description: 'Path to store the Kernel IMAGE'
509 - string:
510 name: 'STORAGE_LINUX_MODULES'
511 description: 'Path to store the Kernel Modules'
512 - string:
513 name: 'STORAGE_LTTNG_MODULES'
514 description: 'Path to store the LTTng Modules'
515 - string:
516 name: 'BUILD_DEVICE'
517 description: 'The target device. (kvm or baremetal)'
518
519 publishers:
520 - workspace-cleanup
521
522
523 ## Project
524 - project:
525 name: lttng-kernel-tests
526 kversion:
527 - linux-4.4.y
528 - linux-4.9.y
529 - v4.8.1
530 lttngversion:
531 - master
532 - stable-2.9
533 - stable-2.10
534 jobs:
535 - 'vm_tests_k{kversion}_l{lttngversion}'
536 - 'baremetal_benchmarks_k{kversion}_l{lttngversion}'
537 - 'baremetal_tests_k{kversion}_l{lttngversion}'
538
539 - project:
540 name: lttng-kernel-tests-oldkernel
541 kversion:
542 - linux-3.18.y
543 - linux-4.4.y
544 lttngversion:
545 - stable-2.7
546 jobs:
547 - 'vm_tests_k{kversion}_l{lttngversion}':
548 - 'baremetal_tests_k{kversion}_l{lttngversion}':
549 - 'baremetal_benchmarks_k{kversion}_l{lttngversion}':
550
551 - project:
552 name: lttng-kernel-tests-canary
553 kversion:
554 - v4.4.9
555 lttngversion:
556 - v2.8.1
557 jobs:
558 - 'vm_tests_k{kversion}_l{lttngversion}_canary'
559 - 'baremetal_tests_k{kversion}_l{lttngversion}_canary'
560 - 'baremetal_benchmarks_k{kversion}_l{lttngversion}_canary'
561
562 - project:
563 name: lttng-kernel-tests-mainline
564 lttngversion:
565 - master
566 jobs:
567 - 'vm_tests_kmainline_l{lttngversion}'
568 - 'vm_tests_fuzzing_kmainline_l{lttngversion}'
569 - 'baremetal_tests_kmainline_l{lttngversion}'
570 - 'baremetal_benchmarks_kmainline_l{lttngversion}'
This page took 0.051239 seconds and 4 git commands to generate.