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