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