Merge pull request #44 from frdeso/lava_fuzzing_remove_coredump
[lttng-ci.git] / jobs / latency-tracker.yaml
1 ---
2 - defaults:
3 name: latency-tracker
4 description: |
5
6 <p>Job is managed by Jenkins Job Builder.</p>
7
8 project-type: freestyle
9
10 wrappers:
11 - workspace-cleanup
12 - timestamps
13 - ansicolor
14
15 scm:
16 - git:
17 url: git://github.com/{github_user}/{github_name}.git
18 browser: githubweb
19 browser-url: https://github.com/{github_user}/{github_name}
20 branches:
21 - "{mversion}"
22 shallow-clone: true
23 skip-tag: true
24 fastpoll: true
25 basedir: src/latency-tracker
26
27 triggers:
28 - pollscm:
29 cron: "@hourly"
30
31 properties:
32 - build-discarder:
33 num-to-keep: 2
34 - github:
35 url: https://github.com/{github_user}/{github_name}
36
37
38 ## Templates
39 - job-template:
40 name: latency-tracker_{mversion}_{kversion}_{buildtype}
41 defaults: latency-tracker
42
43 project-type: matrix
44 node: 'master' # Applies only to matrix flyweight task
45 axes:
46 - axis:
47 type: slave
48 name: arch
49 values: '{obj:arch}'
50
51 builders:
52 - copyartifact:
53 project: kernel_{kversion}_{buildtype}/arch=$arch
54 which-build: last-successful
55 stable: false
56 filter: 'build/**'
57 target: 'deps/linux'
58 do-not-fingerprint: true
59 - shell: |
60 git clone --depth=1 -b "v{kversion}" --reference $HOME/gitcache/linux-stable.git/ git://git-mirror.internal.efficios.com/git/linux-all.git src/linux
61 - shell:
62 !include-raw-escape: scripts/latency-tracker/build.sh
63
64 publishers:
65 - archive:
66 artifacts: 'build/**'
67 allow-empty: false
68 - workspace-cleanup
69 - email-ext:
70 recipients: '{obj:email_to}'
71 reply-to: ci-notification@lists.lttng.org
72 always: false
73 unstable: false
74 first-failure: true
75 first-unstable: true
76 not-built: false
77 aborted: false
78 regression: false
79 failure: false
80 second-failure: false
81 improvement: false
82 still-failing: false
83 success: false
84 fixed: false
85 fixed-unhealthy: true
86 still-unstable: false
87 pre-build: false
88 matrix-trigger: only-parent
89 send-to:
90 - recipients
91
92
93 - job-template:
94 name: latency-tracker_{mversion}_{buildtype}-vanilla
95 defaults: latency-tracker
96 description: |
97 The LTTng modules provide Linux kernel tracing capability to the LTTng
98 2.0 tracer toolset.
99
100 This job will build the {mversion} branch against all stable vanilla
101 kernel tags.
102
103 <p>Job is managed by Jenkins Job Builder.</p>
104
105 node: 'master'
106
107 parameters:
108 - string:
109 name: 'mversion'
110 default: '{mversion}'
111 description: 'The latency-tracker branch to build.'
112 - string:
113 name: 'maxConcurrentBuild'
114 default: '20'
115 description: 'The maximum number of concurrent child build to run.'
116 - string:
117 name: 'kverfloor'
118 default: 'v3.12'
119 description: 'The lowest kernel version to build.'
120 - string:
121 name: 'kverceil'
122 default: ''
123 description: 'The highest kernel version to build. (excluded)'
124 - string:
125 name: 'kverfilter'
126 default: 'stable-head'
127 description: 'Kernel versions list filtering strategy.'
128 - string:
129 name: 'kgitrepo'
130 default: 'git://git-mirror.internal.efficios.com/git/linux-all.git'
131 description: 'The linux kernel git repository url.'
132 - string:
133 name: 'kbuildjob'
134 default: 'latency-tracker_VERSION_param-{buildtype}'
135 description: 'The parametrized job to use for child builds.'
136
137 builders:
138 - system-groovy:
139 command:
140 !include-raw-escape: scripts/latency-tracker/master.groovy
141
142 publishers:
143 - workspace-cleanup
144 - email-ext:
145 recipients: '{obj:email_to}'
146 reply-to: ci-notification@lists.lttng.org
147 always: false
148 unstable: false
149 first-failure: true
150 first-unstable: true
151 not-built: false
152 aborted: false
153 regression: false
154 failure: false
155 second-failure: false
156 improvement: false
157 still-failing: false
158 success: false
159 fixed: false
160 fixed-unhealthy: true
161 still-unstable: false
162 pre-build: false
163 matrix-trigger: only-parent
164 send-to:
165 - recipients
166
167 - job-template:
168 name: latency-tracker_{mversion}_build-{uversion}
169 defaults: latency-tracker
170 description: |
171 The LTTng modules provide Linux kernel tracing capability to the LTTng
172 2.0 tracer toolset.
173
174 This job will build the {mversion} branch against all Ubuntu {uversion}
175 released kernels, including the LTS backport kernels.
176
177 <p>Job is managed by Jenkins Job Builder.</p>
178
179 node: 'master'
180
181 parameters:
182 - string:
183 name: 'mversion'
184 default: '{mversion}'
185 description: 'The latency-tracker branch to build.'
186 - string:
187 name: 'maxConcurrentBuild'
188 default: '20'
189 description: 'The maximum number of concurrent child build to run.'
190 - string:
191 name: 'kverfloor'
192 default: ''
193 description: 'The lowest kernel version to build.'
194 - string:
195 name: 'kverceil'
196 default: ''
197 description: 'The highest kernel version to build. (excluded)'
198 - string:
199 name: 'kverfilter'
200 default: 'stable-head'
201 description: 'Kernel versions list filtering strategy.'
202 - string:
203 name: 'kgitrepo'
204 default: 'git://git-mirror.internal.efficios.com/git/ubuntu-{uversion}.git'
205 description: 'The linux kernel git repository url.'
206 - string:
207 name: 'kbuildjob'
208 default: 'latency-tracker_VERSION_param-build'
209 description: 'The parametrized job to use for child builds.'
210 - string:
211 name: 'uversion'
212 default: '{uversion}'
213 description: 'The lowest kernel version to build.'
214
215 builders:
216 - system-groovy:
217 command:
218 !include-raw-escape: scripts/latency-tracker/master.groovy
219
220 publishers:
221 - workspace-cleanup
222 - email-ext:
223 recipients: '{obj:email_to}'
224 reply-to: ci-notification@lists.lttng.org
225 always: false
226 unstable: false
227 first-failure: true
228 first-unstable: true
229 not-built: false
230 aborted: false
231 regression: false
232 failure: false
233 second-failure: false
234 improvement: false
235 still-failing: false
236 success: false
237 fixed: false
238 fixed-unhealthy: true
239 still-unstable: false
240 pre-build: false
241 matrix-trigger: only-parent
242 send-to:
243 - recipients
244
245
246 - job-template:
247 name: latency-tracker_{mversion}_build-rt
248 defaults: latency-tracker
249 description: |
250 The LTTng modules provide Linux kernel tracing capability to the LTTng
251 2.0 tracer toolset.
252
253 This job will build the {mversion} branch against all Linutronix RT
254 kernels.
255
256 <p>Job is managed by Jenkins Job Builder.</p>
257
258 node: 'master'
259
260 parameters:
261 - string:
262 name: 'mversion'
263 default: '{mversion}'
264 description: 'The latency-tracker branch to build.'
265 - string:
266 name: 'maxConcurrentBuild'
267 default: '20'
268 description: 'The maximum number of concurrent child build to run.'
269 - string:
270 name: 'kverfloor'
271 default: 'v2.6.36-rt0-rebase'
272 description: 'The lowest kernel version to build.'
273 - string:
274 name: 'kverceil'
275 default: ''
276 description: 'The highest kernel version to build. (excluded)'
277 - string:
278 name: 'kverfilter'
279 default: 'stable-head'
280 description: 'Kernel versions list filtering strategy.'
281 - string:
282 name: 'kgitrepo'
283 default: 'git://git-mirror.internal.efficios.com/kernel/rt/linux-rt-devel.git'
284 description: 'The linux kernel git repository url.'
285 - string:
286 name: 'kbuildjob'
287 default: 'latency-tracker_VERSION_param-build'
288 description: 'The parametrized job to use for child builds.'
289
290 builders:
291 - system-groovy:
292 command:
293 !include-raw-escape: scripts/latency-tracker/master-rt.groovy
294
295 publishers:
296 - workspace-cleanup
297 - email-ext:
298 recipients: '{obj:email_to}'
299 reply-to: ci-notification@lists.lttng.org
300 always: false
301 unstable: false
302 first-failure: true
303 first-unstable: true
304 not-built: false
305 aborted: false
306 regression: false
307 failure: false
308 second-failure: false
309 improvement: false
310 still-failing: false
311 success: false
312 fixed: false
313 fixed-unhealthy: true
314 still-unstable: false
315 pre-build: false
316 matrix-trigger: only-parent
317 send-to:
318 - recipients
319
320 - job-template:
321 name: latency-tracker_VERSION_param-build
322 defaults: latency-tracker
323 description: |
324 This is a parametrized job used by 'master' jobs to build any combinations
325 of latency-tracker and linux kernel versions.
326
327 <p>Job is managed by Jenkins Job Builder.</p>
328
329 project-type: matrix
330 node: 'master' # Applies only to matrix flyweight task
331 axes:
332 - axis:
333 type: slave
334 name: arch
335 values: '{obj:arch}'
336
337 properties:
338 - build-discarder:
339 days-to-keep: 2
340
341 parameters:
342 - string:
343 name: 'mversion'
344 default: 'master'
345 description: 'The latency-tracker branch to build.'
346 - string:
347 name: 'ktag'
348 default: ''
349 description: 'The linux kernel git tag to build against.'
350 - string:
351 name: 'kgitrepo'
352 default: 'git://git-mirror.internal.efficios.com/git/linux-all.git'
353 description: 'The linux kernel git repository url.'
354
355 concurrent: true
356
357 scm:
358 - git:
359 url: git://github.com/efficios/latency-tracker.git
360 browser: githubweb
361 browser-url: https://github.com/efficios/latency-tracker
362 branches:
363 - "${{mversion}}"
364 skip-tag: true
365 basedir: src/latency-tracker
366
367 triggers:
368
369 builders:
370 - shell: |
371 git clone --depth=1 -b "$ktag" --reference $HOME/gitcache/linux-stable.git/ "$kgitrepo" src/linux
372 - shell:
373 !include-raw-escape: scripts/latency-tracker/param-build.sh
374
375 publishers:
376 - workspace-cleanup
377
378 - job-template:
379 name: latency-tracker_VERSION_param-crossbuild
380 defaults: latency-tracker
381 description: |
382 This is a parametrized job used by 'master' jobs to build any combinations
383 of latency-tracker and linux kernel versions.
384
385 <p>Job is managed by Jenkins Job Builder.</p>
386
387 project-type: matrix
388 node: 'master' # Applies only to matrix flyweight task
389 axes:
390 - axis:
391 type: user-defined
392 name: cross_arch
393 values: '{obj:cross_arch}'
394
395 properties:
396 - build-discarder:
397 days-to-keep: 2
398
399 parameters:
400 - string:
401 name: 'mversion'
402 default: 'master'
403 description: 'The latency-tracker branch to build.'
404 - string:
405 name: 'ktag'
406 default: ''
407 description: 'The linux kernel git tag to build against.'
408 - string:
409 name: 'kgitrepo'
410 default: 'git://git-mirror.internal.efficios.com/git/linux-all.git'
411 description: 'The linux kernel git repository url.'
412
413 concurrent: true
414
415 scm:
416 - git:
417 url: git://github.com/efficios/latency-tracker.git
418 browser: githubweb
419 browser-url: https://github.com/efficios/latency-tracker
420 branches:
421 - "${{mversion}}"
422 skip-tag: true
423 basedir: src/latency-tracker
424
425 triggers:
426
427 builders:
428 - shell: |
429 git clone --depth=1 -b "$ktag" --reference $HOME/gitcache/linux-stable.git/ "$kgitrepo" src/linux
430 - shell:
431 !include-raw-escape: scripts/latency-tracker/param-build.sh
432
433 publishers:
434 - workspace-cleanup
435
436 - job-template:
437 name: latency-tracker_{mversion}_coverity
438 defaults: latency-tracker
439 node: 'x86-64'
440
441 triggers:
442 - pollscm:
443 cron: "@daily"
444
445 wrappers:
446 - workspace-cleanup
447 - timestamps
448 - ansicolor:
449 colormap: xterm
450 - credentials-binding:
451 - username-password-separated:
452 credential-id: latency-tracker_coverity_token
453 username: COVERITY_SCAN_PROJECT_NAME
454 password: COVERITY_SCAN_TOKEN
455
456 builders:
457 - shell: |
458 git clone --depth=1 -b v4.9 --reference $HOME/gitcache/linux-stable.git/ git://git-mirror.internal.efficios.com/kernel/stable/linux-stable.git src/linux
459 cd src/linux
460 make defconfig
461 sed -i "s/# CONFIG_KALLSYMS_ALL is not set/CONFIG_KALLSYMS_ALL=y/g" .config
462 make modules_prepare
463 - shell:
464 !include-raw-escape: scripts/common/coverity.sh
465
466 publishers:
467 - workspace-cleanup
468
469 - job-template:
470 name: latency-tracker_{mversion}_cppcheck
471 defaults: latency-tracker
472
473 triggers:
474 - pollscm:
475 cron: "@daily"
476
477 builders:
478 - shell: |
479 rm -f cppcheck.xml
480 cppcheck --enable=all --xml --xml-version=2 $WORKSPACE/src/latency-tracker 2> cppcheck.xml
481
482 publishers:
483 - archive:
484 artifacts: 'cppcheck.xml'
485 allow-empty: false
486 - cppcheck:
487 pattern: 'cppcheck.xml'
488 - email-ext:
489 recipients: '{obj:email_to}'
490 reply-to: ci-notification@lists.lttng.org
491 always: false
492 unstable: false
493 first-failure: true
494 first-unstable: true
495 not-built: false
496 aborted: false
497 regression: false
498 failure: false
499 second-failure: false
500 improvement: false
501 still-failing: false
502 success: false
503 fixed: false
504 fixed-unhealthy: true
505 still-unstable: false
506 pre-build: false
507 matrix-trigger: only-parent
508 send-to:
509 - recipients
510
511 - job-template:
512 name: latency-tracker_{mversion}_sloccount
513 defaults: latency-tracker
514 description: |
515 The LTTng modules provide Linux kernel tracing capability to the LTTng
516 2.0 tracer toolset.
517
518 This job runs the sloccount utility and generates a trend report.
519
520 <p>Job is managed by Jenkins Job Builder.</p>
521
522 triggers:
523 - pollscm:
524 cron: "@daily"
525
526 builders:
527 - shell: |
528 cloc --by-file --xml --out=cloc.xml src/latency-tracker/
529
530 publishers:
531 - archive:
532 artifacts: 'cloc.xml'
533 allow-empty: false
534 - sloccount:
535 report-files: 'cloc.xml'
536
537
538 ## Project
539 - project:
540 name: latency-tracker
541 github_user: efficios
542 github_name: latency-tracker
543 email_to: 'ci-notification@lists.lttng.org, cc:jdesfossez@efficios.com'
544 mversion:
545 - master
546 jobs:
547 - 'latency-tracker_{mversion}_{buildtype}-vanilla':
548 buildtype: build
549 - 'latency-tracker_{mversion}_build-rt':
550 - 'latency-tracker_{mversion}_build-{uversion}':
551 uversion:
552 - xenial
553 - 'latency-tracker_{mversion}_{buildtype}-vanilla':
554 buildtype: crossbuild
555 - 'latency-tracker_VERSION_param-build':
556 arch: !!python/tuple [x86-32, x86-64]
557 - 'latency-tracker_VERSION_param-crossbuild':
558 cross_arch: !!python/tuple [armhf, arm64]
559 - 'latency-tracker_{mversion}_cppcheck'
560 - 'latency-tracker_{mversion}_sloccount':
561 mversion: master
562 - 'latency-tracker_{mversion}_coverity':
563 mversion: master
This page took 0.045945 seconds and 4 git commands to generate.