ab498f9c657f89c04163ccd4653d40dd82e0d229
[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: baremetal_tests
165 description: |
166 Runs baremetal kernel tests over different combination of kernel and lttng configurations.
167 project-type: freestyle
168 node: 'master'
169 properties:
170 - throttle:
171 max-total: 2
172 option: 'category'
173 categories:
174 - 'baremetal-tests'
175 triggers:
176 - pollscm:
177 cron: "H * * * 1-5"
178 logrotate:
179 numToKeep: 10
180
181 wrappers:
182 - workspace-cleanup
183 - timestamps
184 - ansicolor
185 - credentials-binding:
186 - text:
187 credential-id: jenkins_lava_key
188 variable: LAVA_JENKINS_TOKEN
189 - inject:
190 properties-content: |
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/stable/linux-stable.git
212 branches:
213 - "{kversion}"
214 shallow-clone: true
215 skip-tag: true
216 fastpoll: true
217 basedir: src/linux
218
219 publishers:
220 - email:
221 recipients: 'francis.deslauriers@efficios.com'
222 - ircbot:
223 strategy: new-failure-and-fixed
224 message-type: summary
225 channels:
226 - name: '#lttng'
227 - workspace-cleanup
228
229 builders:
230 - shell: !include-raw-escape: scripts/lttng-baremetal-tests/generate-properties-master.sh
231 - trigger-builds:
232 - project: "build_kernel_PARAM"
233 property-file: 'properties.txt'
234 block: true
235 - inject:
236 properties-file: properties.txt
237 - shell: !include-raw-escape: scripts/lttng-baremetal-tests/run-baremetal-tests.sh
238
239 - job-template:
240 name: baremetal_benchmarks_k{kversion}_l{lttngversion}
241 defaults: baremetal_benchmarks
242 - job-template:
243 name: vm_tests_k{kversion}_l{lttngversion}
244 defaults: vm_tests
245 - job-template:
246 name: baremetal_tests_k{kversion}_l{lttngversion}
247 defaults: baremetal_tests
248
249 # Canary jobs are made to confirm that the whole Lava pipeline is working.
250 # They are scheduled once a day always on the same (LTTng, Kernel) code. If any
251 # of those jobs fails, it means that there is an issue with the configuration
252 - job-template:
253 name: baremetal_tests_k{kversion}_l{lttngversion}_canary
254 defaults: baremetal_tests
255 triggers:
256 - timed: "0 1 * * 1-5"
257 - job-template:
258 name: vm_tests_k{kversion}_l{lttngversion}_canary
259 defaults: vm_tests
260 triggers:
261 - timed: "0 1 * * 1-5"
262 - job-template:
263 name: baremetal_benchmarks_k{kversion}_l{lttngversion}_canary
264 defaults: baremetal_benchmarks
265 triggers:
266 - timed: "0 1 * * 1-5"
267
268 - job-template:
269 name: vm_tests_kmainline_t{toolsversion}_m{modulesversion}_u{ustversion}
270 defaults: vm_tests
271 triggers:
272 - pollscm:
273 cron: "0 1 * * 1-5"
274 wrappers:
275 - workspace-cleanup
276 - timestamps
277 - ansicolor
278 - credentials-binding:
279 - text:
280 credential-id: jenkins_lava_key
281 variable: LAVA_JENKINS_TOKEN
282 - inject:
283 properties-content: |
284 TOOLS_BRANCH={toolsversion}
285 MODULES_BRANCH={modulesversion}
286 UST_BRANCH={ustversion}
287 BUILD_DEVICE=baremetal
288 scm:
289 - git:
290 url: git://git-mirror.internal.efficios.com/lttng/lttng-tools.git
291 branches:
292 - "{toolsversion}"
293 shallow-clone: true
294 skip-tag: true
295 fastpoll: true
296 basedir: src/lttng-tools
297 - git:
298 url: git://git-mirror.internal.efficios.com/lttng/lttng-modules.git
299 branches:
300 - "{modulesversion}"
301 shallow-clone: true
302 skip-tag: true
303 fastpoll: true
304 basedir: src/lttng-modules
305 - git:
306 url: git://git-mirror.internal.efficios.com/kernel/torvalds/linux.git
307 refspec: "+refs/tags/*:refs/remotes/origin/tags/*"
308 branches:
309 - "master"
310 fastpoll: true
311 basedir: src/linux
312
313 - job-template:
314 name: baremetal_tests_kmainline_t{toolsversion}_m{modulesversion}_u{ustversion}
315 defaults: baremetal_tests
316 triggers:
317 - pollscm:
318 cron: "0 1 * * 1-5"
319 wrappers:
320 - workspace-cleanup
321 - timestamps
322 - ansicolor
323 - credentials-binding:
324 - text:
325 credential-id: jenkins_lava_key
326 variable: LAVA_JENKINS_TOKEN
327 - inject:
328 properties-content: |
329 TOOLS_BRANCH={toolsversion}
330 MODULES_BRANCH={modulesversion}
331 UST_BRANCH={ustversion}
332 BUILD_DEVICE=baremetal
333 scm:
334 - git:
335 url: git://git-mirror.internal.efficios.com/lttng/lttng-tools.git
336 branches:
337 - "{toolsversion}"
338 shallow-clone: true
339 skip-tag: true
340 fastpoll: true
341 basedir: src/lttng-tools
342 - git:
343 url: git://git-mirror.internal.efficios.com/lttng/lttng-modules.git
344 branches:
345 - "{modulesversion}"
346 shallow-clone: true
347 skip-tag: true
348 fastpoll: true
349 basedir: src/lttng-modules
350 - git:
351 url: git://git-mirror.internal.efficios.com/kernel/torvalds/linux.git
352 refspec: "+refs/tags/*:refs/remotes/origin/tags/*"
353 branches:
354 - "master"
355 fastpoll: true
356 basedir: src/linux
357 - job-template:
358 name: baremetal_benchmarks_kmainline_t{toolsversion}_m{modulesversion}_u{ustversion}
359 defaults: baremetal_benchmarks
360 triggers:
361 - pollscm:
362 cron: "0 1 * * 1-5"
363 wrappers:
364 - workspace-cleanup
365 - timestamps
366 - ansicolor
367 - credentials-binding:
368 - text:
369 credential-id: jenkins_lava_key
370 variable: LAVA_JENKINS_TOKEN
371 - file:
372 credential-id: system_tests_storage_key
373 variable: identity_file
374 - inject:
375 properties-content: |
376 TOOLS_BRANCH={toolsversion}
377 MODULES_BRANCH={modulesversion}
378 UST_BRANCH={ustversion}
379 BUILD_DEVICE=baremetal
380 scm:
381 - git:
382 url: git://git-mirror.internal.efficios.com/lttng/lttng-tools.git
383 branches:
384 - "{toolsversion}"
385 shallow-clone: true
386 skip-tag: true
387 fastpoll: true
388 basedir: src/lttng-tools
389 - git:
390 url: git://git-mirror.internal.efficios.com/lttng/lttng-modules.git
391 branches:
392 - "{modulesversion}"
393 shallow-clone: true
394 skip-tag: true
395 fastpoll: true
396 basedir: src/lttng-modules
397 - git:
398 url: git://git-mirror.internal.efficios.com/kernel/torvalds/linux.git
399 refspec: "+refs/tags/*:refs/remotes/origin/tags/*"
400 branches:
401 - "master"
402 fastpoll: true
403 basedir: src/linux
404
405 - job:
406 name: build_kernel_PARAM
407 description: |
408 Builds a Linux Kernel and LTTng Modules if necessary
409 defaults: global
410 concurrent: true
411
412 logrotate:
413 numToKeep: 100
414 node: 'x86-64'
415
416 wrappers:
417 - workspace-cleanup
418 - timestamps
419 - ansicolor
420 - credentials-binding:
421 - file:
422 credential-id: system_tests_storage_key
423 variable: identity_file
424 builders:
425 - shell: !include-raw-escape: scripts/lttng-baremetal-tests/generate-properties-slave.sh
426 - inject:
427 properties-file: properties.txt
428 - shell: !include-raw-escape: scripts/lttng-baremetal-tests/check-build-needs.sh
429 - conditional-step:
430 condition-kind: not
431 condition-operand:
432 condition-kind: file-exists
433 condition-filename: kernel-built.txt
434 condition-basedir: workspace
435 steps:
436 - shell: !include-raw-escape: scripts/lttng-baremetal-tests/build-kernel.sh
437 - conditional-step:
438 condition-kind: not
439 condition-operand:
440 condition-kind: file-exists
441 condition-filename: modules-built.txt
442 condition-basedir: workspace
443 steps:
444 - shell: !include-raw-escape: scripts/lttng-baremetal-tests/build-modules.sh
445
446 parameters:
447 - string:
448 name: 'LTTNG_MODULES_COMMIT_ID'
449 description: 'The lttng-modules commmit to build.'
450 - string:
451 name: 'LTTNG_MODULES_REPO'
452 description: 'The LTTng Modules git repo to fetch from'
453 default: 'git://git-mirror.internal.efficios.com/lttng/lttng-modules.git'
454 - string:
455 name: 'KERNEL_COMMIT_ID'
456 description: 'The kernel commit to build.'
457 - string:
458 name: 'KGITREPO'
459 description: 'The kernel git repo to fetch from'
460 - string:
461 name: 'STORAGE_KERNEL_FOLDER'
462 description: 'Path to store the Kernel image'
463 - string:
464 name: 'STORAGE_KERNEL_IMAGE'
465 description: 'Path to store the Kernel IMAGE'
466 - string:
467 name: 'STORAGE_LINUX_MODULES'
468 description: 'Path to store the Kernel Modules'
469 - string:
470 name: 'STORAGE_LTTNG_MODULES'
471 description: 'Path to store the LTTng Modules'
472 - string:
473 name: 'BUILD_DEVICE'
474 description: 'The target device. (kvm or baremetal)'
475 publishers:
476 - workspace-cleanup
477
478 ## Project
479 - project:
480 name: lttng-kernel-tests
481 kversion:
482 - linux-4.4.y
483 - linux-4.9.y
484 - v4.8.1
485 lttngversion:
486 - master
487 - stable-2.8
488 - stable-2.9
489 jobs:
490 - 'vm_tests_k{kversion}_l{lttngversion}'
491 - 'baremetal_benchmarks_k{kversion}_l{lttngversion}'
492 - 'baremetal_tests_k{kversion}_l{lttngversion}'
493
494 - project:
495 name: lttng-kernel-tests-oldkernel
496 kversion:
497 - linux-3.18.y
498 - linux-4.4.y
499 lttngversion:
500 - stable-2.7
501 jobs:
502 - 'vm_tests_k{kversion}_l{lttngversion}':
503 - 'baremetal_tests_k{kversion}_l{lttngversion}':
504 - 'baremetal_benchmarks_k{kversion}_l{lttngversion}':
505
506 - project:
507 name: lttng-kernel-tests-canary
508 kversion:
509 - v4.4.9
510 lttngversion:
511 - v2.8.1
512 jobs:
513 - 'vm_tests_k{kversion}_l{lttngversion}_canary'
514 - 'baremetal_tests_k{kversion}_l{lttngversion}_canary'
515 - 'baremetal_benchmarks_k{kversion}_l{lttngversion}_canary'
516
517 - project:
518 name: lttng-kernel-tests-mainline
519 toolsversion:
520 - v2.9.3
521 ustversion:
522 - v2.9.0
523 modulesversion:
524 - stable-2.9
525 jobs:
526 - 'vm_tests_kmainline_t{toolsversion}_m{modulesversion}_u{ustversion}'
527 - 'baremetal_tests_kmainline_t{toolsversion}_m{modulesversion}_u{ustversion}'
528 - 'baremetal_benchmarks_kmainline_t{toolsversion}_m{modulesversion}_u{ustversion}'
This page took 0.041144 seconds and 3 git commands to generate.