jjb: Make scan-build a common script
[lttng-ci.git] / jobs / lttng-tools.yaml
1 - defaults:
2 name: lttng-tools
3 description: |
4 The lttng-tools project provides a session daemon (lttng-sessiond)
5 that acts as a tracing registry, the "lttng" command line for tracing
6 control, a lttng-ctl library for tracing control and a lttng-relayd
7 for network streaming.
8
9 <p>Job is managed by Jenkins Job Builder.</p>
10
11 project-type: freestyle
12
13 wrappers:
14 - workspace-cleanup
15 - timestamps
16 - ansicolor
17
18 scm:
19 - git:
20 url: git://github.com/{github_user}/{github_name}.git
21 browser: githubweb
22 browser-url: https://github.com/{github_user}/{github_name}
23 branches:
24 - origin/{version}
25 skip-tag: true
26
27 triggers:
28 - pollscm:
29 cron: "@hourly"
30
31 properties:
32 - inject:
33 properties-content: |
34 PROJECT_NAME=lttng-tools
35 - github:
36 url: https://github.com/{github_user}/{github_name}
37 - build-discarder:
38 num-to-keep: 20
39 artifact-num-to-keep: 2
40
41
42 ## Templates
43
44 - lttng-tools_version_buildtype_anchor: &lttng-tools_version_buildtype_anchor
45 name: 'lttng-tools_version_buildtype_anchor'
46 defaults: lttng-tools
47
48 project-type: matrix
49 node: 'master' # Applies only to matrix flyweight task
50 axes:
51 - axis:
52 type: slave
53 name: arch
54 values: '{obj:arch}'
55 - axis:
56 type: user-defined
57 name: conf
58 values: '{obj:conf}'
59 - axis:
60 type: user-defined
61 name: liburcu_version
62 values: '{obj:urcuversion}'
63 - axis:
64 type: user-defined
65 name: babeltrace_version
66 values: '{obj:babelversion}'
67 - axis:
68 type: user-defined
69 name: build
70 values: '{obj:build}'
71
72 properties:
73 - github:
74 url: https://github.com/{github_user}/{github_name}
75 - build-discarder:
76 num-to-keep: 20
77 artifact-num-to-keep: 2
78 - throttle:
79 max-per-node: 1
80 option: 'category'
81 categories:
82 - 'lttng-tools'
83 matrix-builds: false
84 matrix-configs: true
85
86 builders:
87 - conditional-step:
88 condition-kind: regex-match
89 label: '$conf'
90 regex: (std|static)
91 on-evaluation-failure: run
92 steps:
93 - copyartifact:
94 project: liburcu_${{liburcu_version}}_{buildtype}/arch=${{arch}},conf=${{conf}},build=std
95 which-build: last-successful
96 stable: true
97 filter: 'build/**'
98 target: 'deps/liburcu'
99 do-not-fingerprint: true
100 - copyartifact:
101 project: babeltrace_${{babeltrace_version}}_{buildtype}/arch=${{arch}},conf=${{conf}},build=std
102 which-build: last-successful
103 stable: true
104 filter: 'build/**'
105 target: 'deps/babeltrace'
106 do-not-fingerprint: true
107 - copyartifact:
108 project: lttng-ust_{ustversion}_{buildtype}/liburcu_version=${{liburcu_version}},arch=${{arch}},conf=${{conf}},build=std
109 which-build: last-successful
110 stable: true
111 filter: 'build/**'
112 target: 'deps/lttng-ust'
113 do-not-fingerprint: true
114 - conditional-step:
115 condition-kind: regex-match
116 label: '$conf'
117 regex: (python-bindings|no-ust)
118 on-evaluation-failure: run
119 steps:
120 - copyartifact:
121 project: liburcu_${{liburcu_version}}_{buildtype}/arch=${{arch}},conf=std,build=std
122 which-build: last-successful
123 stable: true
124 filter: 'build/**'
125 target: 'deps/liburcu'
126 do-not-fingerprint: true
127 - copyartifact:
128 project: babeltrace_${{babeltrace_version}}_{buildtype}/arch=${{arch}},conf=std,build=std
129 which-build: last-successful
130 stable: true
131 filter: 'build/**'
132 target: 'deps/babeltrace'
133 do-not-fingerprint: true
134 - copyartifact:
135 project: lttng-ust_{ustversion}_{buildtype}/liburcu_version=${{liburcu_version}},arch=${{arch}},conf=std,build=std
136 which-build: last-successful
137 stable: true
138 filter: 'build/**'
139 target: 'deps/lttng-ust'
140 do-not-fingerprint: true
141 - conditional-step:
142 condition-kind: regex-match
143 label: '$conf'
144 regex: (java-agent|python-agent)
145 on-evaluation-failure: run
146 steps:
147 - copyartifact:
148 project: liburcu_${{liburcu_version}}_{buildtype}/arch=${{arch}},conf=std,build=std
149 which-build: last-successful
150 stable: true
151 filter: 'build/**'
152 target: 'deps/liburcu'
153 do-not-fingerprint: true
154 - copyartifact:
155 project: babeltrace_${{babeltrace_version}}_{buildtype}/arch=${{arch}},conf=std,build=std
156 which-build: last-successful
157 stable: true
158 filter: 'build/**'
159 target: 'deps/babeltrace'
160 do-not-fingerprint: true
161 - copyartifact:
162 project: lttng-ust_{ustversion}_{buildtype}/liburcu_version=${{liburcu_version}},arch=${{arch}},conf=${{conf}},build=std
163 which-build: last-successful
164 stable: true
165 filter: 'build/**'
166 target: 'deps/lttng-ust'
167 do-not-fingerprint: true
168 - conditional-step:
169 condition-kind: regex-match
170 label: '$conf'
171 regex: (relayd-only)
172 on-evaluation-failure: run
173 steps:
174 - copyartifact:
175 project: liburcu_${{liburcu_version}}_{buildtype}/arch=${{arch}},conf=std,build=std
176 which-build: last-successful
177 stable: true
178 filter: 'build/**'
179 target: 'deps/liburcu'
180 do-not-fingerprint: true
181 - copyartifact:
182 project: babeltrace_${{babeltrace_version}}_{buildtype}/arch=${{arch}},conf=std,build=std
183 which-build: last-successful
184 stable: true
185 filter: 'build/**'
186 target: 'deps/babeltrace'
187 do-not-fingerprint: true
188 - shell:
189 !include-raw-escape: scripts/lttng-tools/build.sh
190
191
192 - job-template:
193 name: lttng-tools_{version}_{buildtype}
194 <<: *lttng-tools_version_buildtype_anchor
195 triggers:
196 - pollscm:
197 cron: "@hourly"
198 - reverse:
199 jobs: 'lttng-ust_{version}_{buildtype}'
200 result: 'success'
201
202 publishers:
203 - tap:
204 results: 'tap/**/*.tap'
205 failed-tests-mark-build-as-failure: true
206 todo-is-failure: false
207 - warnings:
208 console-log-parsers:
209 - 'GNU Make + GNU C Compiler (gcc)'
210 total-thresholds:
211 unstable:
212 total-all: 0
213 total-high: 0
214 total-normal: 0
215 total-low: 0
216 - archive:
217 artifacts: 'build/**'
218 allow-empty: false
219 - workspace-cleanup:
220 clean-if:
221 - failure: false
222 - ircbot:
223 strategy: new-failure-and-fixed
224 matrix-notifier: only-parent
225 channels:
226 - name: '#lttng'
227
228
229 - job-template:
230 name: dev_{user}_lttng-tools_{version}_{buildtype}
231 <<: *lttng-tools_version_buildtype_anchor
232
233 publishers:
234 - tap:
235 results: 'tap/**/*.tap'
236 failed-tests-mark-build-as-failure: true
237 todo-is-failure: false
238 - warnings:
239 console-log-parsers:
240 - 'GNU Make + GNU C Compiler (gcc)'
241 total-thresholds:
242 unstable:
243 total-all: 0
244 total-high: 0
245 total-normal: 0
246 total-low: 0
247 - workspace-cleanup:
248 clean-if:
249 - failure: false
250
251
252 - job-template:
253 name: lttng-tools_{version}_cppcheck
254 defaults: lttng-tools
255
256 triggers:
257 - pollscm:
258 cron: "@daily"
259
260 builders:
261 - shell: |
262 rm -f lttng-tools-cppcheck.xml
263 cppcheck --enable=all --xml --xml-version=2 $WORKSPACE 2> lttng-tools-cppcheck.xml
264
265 publishers:
266 - archive:
267 artifacts: 'lttng-tools-cppcheck.xml'
268 allow-empty: false
269 - cppcheck:
270 pattern: 'lttng-tools-cppcheck.xml'
271 - email:
272 recipients: 'ci-notification@lists.lttng.org'
273 notify-every-unstable-build: true
274 send-to-individuals: false
275
276 - job-template:
277 name: lttng-tools_{version}_scan-build
278 defaults: lttng-tools
279 node: 'x86-64'
280
281 triggers:
282 - pollscm:
283 cron: "@daily"
284
285 builders:
286 - copyartifact:
287 project: liburcu_{urcuversion}_build/arch=x86-64,conf=std,build=std
288 which-build: last-successful
289 stable: true
290 filter: 'build/**'
291 target: 'deps/liburcu'
292 do-not-fingerprint: true
293 - copyartifact:
294 project: lttng-ust_{ustversion}_build/liburcu_version={urcuversion},arch=x86-64,conf=std,build=std
295 which-build: last-successful
296 stable: true
297 filter: 'build/**'
298 target: 'deps/lttng-ust'
299 do-not-fingerprint: true
300 - shell:
301 !include-raw-escape: scripts/common/scan-build.sh
302
303 publishers:
304 - html-publisher:
305 name: 'HTML Report'
306 dir: 'scan-build-archive/'
307 files: 'index.html'
308
309 - job-template:
310 name: lttng-tools_{version}_coverity
311 defaults: lttng-tools
312 node: 'x86-64'
313
314 triggers:
315 - pollscm:
316 cron: "@daily"
317
318 wrappers:
319 - workspace-cleanup
320 - timestamps
321 - ansicolor:
322 colormap: xterm
323 - credentials-binding:
324 - username-password-separated:
325 credential-id: lttng-tools_coverity_token
326 username: COVERITY_SCAN_PROJECT_NAME
327 password: COVERITY_SCAN_TOKEN
328
329 builders:
330 - copyartifact:
331 project: liburcu_{urcuversion}_build/arch=x86-64,conf=std,build=std
332 which-build: last-successful
333 stable: true
334 filter: 'build/**'
335 target: 'deps/liburcu'
336 do-not-fingerprint: true
337 - copyartifact:
338 project: lttng-ust_{ustversion}_build/liburcu_version={urcuversion},arch=x86-64,conf=std,build=std
339 which-build: last-successful
340 stable: true
341 filter: 'build/**'
342 target: 'deps/lttng-ust'
343 do-not-fingerprint: true
344 - shell:
345 !include-raw-escape: scripts/common/coverity.sh
346
347 publishers:
348 - workspace-cleanup
349
350 # TODO
351 - job-template:
352 name: lttng-tools_{version}_pylint
353 defaults: lttng-tools
354 node: 'x86-64'
355
356 scm: []
357
358 triggers:
359 - pollscm:
360 cron: "@daily"
361
362 builders:
363 - copyartifact:
364 project: lttng-tools-{version}/arch=x86-64,build=std,conf=python-agent
365 which-build: last-successful
366 stable: true
367 filter: 'build/**'
368 target: 'deps/lttng-tools'
369 do-not-fingerprint: true
370 - shell:
371 !include-raw-escape: scripts/lttng-tools/pylint.sh
372
373 publishers:
374 - archive:
375 artifacts: 'pep8.out,pylint.out'
376 - violations:
377 pep8:
378 pattern: pep8.out
379 min: 10
380 max: 999
381 unstable: 999
382 pylint:
383 pattern: pylint.out
384 min: 10
385 max: 999
386 unstable: 999
387 - email:
388 recipients: 'ci-notification@lists.lttng.org'
389 notify-every-unstable-build: true
390 send-to-individuals: false
391
392
393 ## Project
394 - project:
395 name: lttng-tools
396 github_user: lttng
397 github_name: lttng-tools
398 version:
399 - stable-2.7
400 - stable-2.8
401 - master
402 jobs:
403 - 'lttng-tools_{version}_{buildtype}':
404 buildtype: build
405 version: master
406 ustversion: master
407 arch: !!python/tuple [x86-32, x86-64]
408 build: !!python/tuple [std, oot, dist]
409 conf: !!python/tuple [std, no-ust, python-bindings, java-agent, python-agent]
410 urcuversion: !!python/tuple [master]
411 babelversion: !!python/tuple [master]
412 - 'lttng-tools_{version}_{buildtype}':
413 buildtype: portbuild
414 version: master
415 ustversion: master
416 arch: !!python/tuple [armhf, arm64, powerpc, ppc64el]
417 build: !!python/tuple [std]
418 conf: !!python/tuple [std, no-ust, python-bindings, java-agent, python-agent]
419 urcuversion: !!python/tuple [master]
420 babelversion: !!python/tuple [master]
421 - 'lttng-tools_{version}_{buildtype}':
422 buildtype: macosxbuild
423 version: master
424 ustversion: master
425 arch: !!python/tuple [macosx]
426 build: !!python/tuple [std]
427 conf: !!python/tuple [relayd-only]
428 urcuversion: !!python/tuple [master]
429 babelversion: !!python/tuple [master]
430 - 'lttng-tools_{version}_{buildtype}':
431 buildtype: solarisbuild
432 version: master
433 ustversion: master
434 arch: !!python/tuple [solaris10, solaris11]
435 build: !!python/tuple [std]
436 conf: !!python/tuple [relayd-only]
437 urcuversion: !!python/tuple [master]
438 babelversion: !!python/tuple [master]
439 - 'lttng-tools_{version}_{buildtype}':
440 buildtype: build
441 version: stable-2.8
442 ustversion: stable-2.8
443 arch: !!python/tuple [x86-32, x86-64]
444 build: !!python/tuple [std, oot, dist]
445 conf: !!python/tuple [std, no-ust, python-bindings, java-agent, python-agent]
446 urcuversion: !!python/tuple [stable-0.9]
447 babelversion: !!python/tuple [stable-1.4]
448 - 'lttng-tools_{version}_{buildtype}':
449 buildtype: portbuild
450 version: stable-2.8
451 ustversion: stable-2.8
452 arch: !!python/tuple [armhf, arm64, powerpc, ppc64el]
453 build: !!python/tuple [std]
454 conf: !!python/tuple [std, no-ust, python-bindings, java-agent, python-agent]
455 urcuversion: !!python/tuple [stable-0.9]
456 babelversion: !!python/tuple [stable-1.4]
457 - 'lttng-tools_{version}_{buildtype}':
458 buildtype: solarisbuild
459 version: stable-2.8
460 ustversion: stable-2.8
461 arch: !!python/tuple [solaris10, solaris11]
462 build: !!python/tuple [std]
463 conf: !!python/tuple [relayd-only]
464 urcuversion: !!python/tuple [stable-0.9]
465 babelversion: !!python/tuple [stable-1.4]
466 - 'lttng-tools_{version}_{buildtype}':
467 buildtype: build
468 version: stable-2.7
469 ustversion: stable-2.7
470 arch: !!python/tuple [x86-32, x86-64]
471 build: !!python/tuple [std, oot, dist]
472 conf: !!python/tuple [std, no-ust, python-bindings, java-agent, python-agent]
473 urcuversion: !!python/tuple [stable-0.9]
474 babelversion: !!python/tuple [stable-1.3]
475 - 'lttng-tools_{version}_{buildtype}':
476 buildtype: portbuild
477 version: stable-2.7
478 ustversion: stable-2.7
479 arch: !!python/tuple [armhf, arm64, powerpc]
480 build: !!python/tuple [std]
481 conf: !!python/tuple [std, no-ust, python-bindings, java-agent, python-agent]
482 urcuversion: !!python/tuple [stable-0.9]
483 babelversion: !!python/tuple [stable-1.3]
484 - 'dev_{user}_lttng-tools_{version}_{buildtype}':
485 user: jgalar
486 github_user: jgalar
487 github_name: lttng-tools
488 buildtype: build
489 version: master-staging
490 ustversion: master
491 arch: !!python/tuple [x86-32, x86-64]
492 build: !!python/tuple [std, oot, dist]
493 conf: !!python/tuple [std, no-ust, python-bindings, java-agent, python-agent]
494 urcuversion: !!python/tuple [master]
495 babelversion: !!python/tuple [master]
496 - 'dev_{user}_lttng-tools_{version}_{buildtype}':
497 user: jgalar
498 github_user: jgalar
499 github_name: lttng-tools
500 buildtype: build
501 version: stable-2.8-staging
502 ustversion: stable-2.8
503 arch: !!python/tuple [x86-32, x86-64]
504 build: !!python/tuple [std, oot, dist]
505 conf: !!python/tuple [std, no-ust, python-bindings, java-agent, python-agent]
506 urcuversion: !!python/tuple [stable-0.9]
507 babelversion: !!python/tuple [stable-1.4]
508 - 'dev_{user}_lttng-tools_{version}_{buildtype}':
509 user: jgalar
510 github_user: jgalar
511 github_name: lttng-tools
512 buildtype: build
513 version: stable-2.7-staging
514 ustversion: stable-2.7
515 arch: !!python/tuple [x86-32, x86-64]
516 build: !!python/tuple [std, oot, dist]
517 conf: !!python/tuple [std, no-ust, python-bindings, java-agent, python-agent]
518 urcuversion: !!python/tuple [stable-0.9]
519 babelversion: !!python/tuple [stable-1.3]
520 - 'dev_{user}_lttng-tools_{version}_{buildtype}':
521 user: jgalar
522 github_user: jgalar
523 github_name: lttng-tools
524 buildtype: portbuild
525 version: master-staging
526 ustversion: master
527 arch: !!python/tuple [armhf, arm64, powerpc, ppc64el]
528 build: !!python/tuple [std]
529 conf: !!python/tuple [std, no-ust, python-bindings, java-agent, python-agent]
530 urcuversion: !!python/tuple [master]
531 babelversion: !!python/tuple [master]
532 - 'dev_{user}_lttng-tools_{version}_{buildtype}':
533 user: jgalar
534 github_user: jgalar
535 github_name: lttng-tools
536 buildtype: portbuild
537 version: stable-2.8-staging
538 ustversion: stable-2.8
539 arch: !!python/tuple [armhf, arm64, powerpc, ppc64el]
540 build: !!python/tuple [std]
541 conf: !!python/tuple [std, no-ust, python-bindings, java-agent, python-agent]
542 urcuversion: !!python/tuple [stable-0.9]
543 babelversion: !!python/tuple [stable-1.4]
544 - 'dev_{user}_lttng-tools_{version}_{buildtype}':
545 user: jgalar
546 github_user: jgalar
547 github_name: lttng-tools
548 buildtype: portbuild
549 version: stable-2.7-staging
550 ustversion: stable-2.7
551 arch: !!python/tuple [armhf, arm64, powerpc, ppc64el]
552 build: !!python/tuple [std]
553 conf: !!python/tuple [std, no-ust, python-bindings, java-agent, python-agent]
554 urcuversion: !!python/tuple [stable-0.9]
555 babelversion: !!python/tuple [stable-1.3]
556 - 'lttng-tools_{version}_cppcheck'
557 - 'lttng-tools_{version}_scan-build':
558 version: master
559 urcuversion: master
560 ustversion: master
561 - 'lttng-tools_{version}_scan-build':
562 version: stable-2.8
563 urcuversion: stable-0.9
564 ustversion: stable-2.8
565 - 'lttng-tools_{version}_scan-build':
566 version: stable-2.7
567 urcuversion: stable-0.9
568 ustversion: stable-2.7
569 #- 'lttng-tools_{version}_pylint'
570 - 'lttng-tools_{version}_coverity':
571 version: master
572 urcuversion: master
573 ustversion: master
574
This page took 0.0416 seconds and 5 git commands to generate.