jjb: babeltrace: refactor dev jobs
[lttng-ci.git] / jobs / babeltrace.yaml
1 - defaults:
2 name: babeltrace
3 description: |
4 The Babeltrace project provides trace read and write libraries, as well
5 as a trace converter. Plugins can be created for any trace format to
6 allow its conversion to/from another trace format.
7
8 The main format expected to be converted to/from is the Common Trace
9 Format (CTF). The default input format of the "babeltrace" command is
10 CTF, and its default output format is a human-readable text log. The
11 "babeltrace-log" command converts from a text log to a CTF trace.
12
13 <p>Job is managed by Jenkins Job Builder.</p>
14
15 project-type: freestyle
16
17 wrappers:
18 - ansicolor
19 - timeout:
20 timeout: 20
21 fail: true
22 type: no-activity
23 - timestamps
24 - workspace-cleanup:
25 clean-if:
26 - failure: false
27
28 scm:
29 - git:
30 url: https://github.com/{github_user}/{github_name}.git
31 browser: githubweb
32 browser-url: https://github.com/{github_user}/{github_name}
33 branches:
34 - origin/{version}
35 basedir: src/babeltrace
36 skip-tag: true
37
38 triggers:
39 - pollscm:
40 cron: "@hourly"
41
42 properties:
43 - inject:
44 properties-content: |
45 PROJECT_NAME=babeltrace
46 - build-discarder:
47 num-to-keep: 2
48 - github:
49 url: https://github.com/{github_user}/{github_name}
50
51
52 ## Anchors
53 - babeltrace_build_axes_defaults: &babeltrace_build_axes_defaults
54 name: 'babeltrace_build_axes_defaults'
55 project-type: matrix
56 node: 'master' # Applies only to matrix flyweight task
57 axes:
58 - axis:
59 type: slave
60 name: arch
61 values: '{obj:arch}'
62 - axis:
63 type: user-defined
64 name: conf
65 values: '{obj:conf}'
66 - axis:
67 type: user-defined
68 name: build
69 values: '{obj:build}'
70
71 - babeltrace_build_axes_cc: &babeltrace_build_axes_cc
72 name: 'babeltrace_build_axes_cc'
73 project-type: matrix
74 node: 'master' # Applies only to matrix flyweight task
75 axes:
76 - axis:
77 type: slave
78 name: arch
79 values: '{obj:arch}'
80 - axis:
81 type: user-defined
82 name: conf
83 values: '{obj:conf}'
84 - axis:
85 type: user-defined
86 name: build
87 values: '{obj:build}'
88 - axis:
89 type: user-defined
90 name: cc
91 values: '{obj:cc}'
92
93 - babeltrace_build_builders_defaults: &babeltrace_build_builders_defaults
94 name: 'babeltrace_build_builders_defaults'
95 builders:
96 - shell:
97 !include-raw-escape:
98 - scripts/common/print.sh
99 - scripts/babeltrace/build.sh
100
101 - babeltrace_build_builders_win: &babeltrace_build_builders_win
102 name: 'babeltrace_build_builders_win'
103 builders:
104 - conditional-step:
105 condition-kind: strings-match
106 on-evaluation-failure: run
107 condition-string1: '${{arch}}'
108 condition-string2: 'cygwin64'
109 steps:
110 - shell:
111 !include-raw-escape:
112 - scripts/common/cygwin64-shebang
113 - scripts/common/cygpath-prefix
114 - scripts/common/print.sh
115 - scripts/babeltrace/build.sh
116 - conditional-step:
117 condition-kind: strings-match
118 on-evaluation-failure: run
119 condition-string1: '${{arch}}'
120 condition-string2: 'msys2-mingw32'
121 steps:
122 - inject:
123 properties-content: 'MSYSTEM=MINGW32'
124 - shell:
125 !include-raw-escape:
126 - scripts/common/msys2-shebang
127 - scripts/common/cygpath-prefix
128 - scripts/common/print.sh
129 - scripts/babeltrace/build.sh
130 - conditional-step:
131 condition-kind: strings-match
132 on-evaluation-failure: run
133 condition-string1: '${{arch}}'
134 condition-string2: 'msys2-mingw64'
135 steps:
136 - inject:
137 properties-content: 'MSYSTEM=MINGW64'
138 - shell:
139 !include-raw-escape:
140 - scripts/common/msys2-shebang
141 - scripts/common/cygpath-prefix
142 - scripts/common/print.sh
143 - scripts/babeltrace/build.sh
144
145 # Use - in version number since yaml anchor do not support dot
146 - babeltrace_build_builders_glib-2-28-6: &babeltrace_build_builders_glib-2-28-6
147 name: 'babeltrace_build_builders_glib-2-28-6'
148 builders:
149 - inject:
150 properties-content: |
151 LD_LIBRARY_PATH=$WORKSPACE/glib-2.28.6/BUILD_RESULT/lib
152 PKG_CONFIG_PATH=$WORKSPACE/glib-2.28.6/BUILD_RESULT/lib/pkgconfig
153 arch=amd64
154 conf=std
155 build=std
156 - shell: |
157 wget http://ftp.gnome.org/pub/gnome/sources/glib/2.28/glib-2.28.6.tar.gz
158 tar xvf glib-2.28.6.tar.gz
159 cd glib-2.28.6
160 mkdir BUILD_RESULT
161 ./configure --prefix=$WORKSPACE/glib-2.28.6/BUILD_RESULT
162 make -j `nproc` >/dev/null 2>&1 # Hide warnings
163 make install
164 - shell:
165 !include-raw-escape:
166 - scripts/common/print.sh
167 - scripts/babeltrace/build.sh
168
169 - babeltrace_build_publishers_defaults: &babeltrace_build_publishers_defaults
170 name: 'babeltrace_build_publishers_defaults'
171 publishers:
172 - tap:
173 results: 'tap/**/*.log'
174 fail-if-no-results: true
175 failed-tests-mark-build-as-failure: true
176 todo-is-failure: false
177 - warnings:
178 console-log-parsers:
179 - 'GNU Make + GNU C Compiler (gcc)'
180 total-thresholds:
181 unstable:
182 total-all: 0
183 total-high: 0
184 total-normal: 0
185 total-low: 0
186 - archive:
187 artifacts: 'build/**,tap/**'
188 allow-empty: false
189 - email-ext:
190 recipients: '{obj:email_to}'
191 reply-to: ci-notification@lists.lttng.org
192 always: false
193 unstable: false
194 first-failure: true
195 first-unstable: true
196 not-built: false
197 aborted: false
198 regression: false
199 failure: false
200 second-failure: false
201 improvement: false
202 still-failing: false
203 success: false
204 fixed: false
205 fixed-unhealthy: true
206 still-unstable: false
207 pre-build: false
208 matrix-trigger: only-parent
209 send-to:
210 - recipients
211
212 - babeltrace_build_publishers_gerrit: &babeltrace_build_publishers_gerrit
213 name: 'babeltrace_build_publishers_gerrit'
214 publishers:
215 - tap:
216 results: 'tap/**/*.log'
217 fail-if-no-results: true
218 failed-tests-mark-build-as-failure: true
219 todo-is-failure: false
220 - warnings:
221 console-log-parsers:
222 - 'GNU Make + GNU C Compiler (gcc)'
223 total-thresholds:
224 failed:
225 total-all: 0
226 total-high: 0
227 total-normal: 0
228 total-low: 0
229 - archive:
230 artifacts: 'build/**,tap/**'
231 allow-empty: false
232
233
234 ## Templates
235
236 - job-template:
237 name: babeltrace_{version}_{buildtype}
238 defaults: babeltrace
239
240 <<: *babeltrace_build_axes_defaults
241 <<: *babeltrace_build_builders_defaults
242 <<: *babeltrace_build_publishers_defaults
243
244 - job-template:
245 name: '{job_prefix}babeltrace_{version}_{buildtype}'
246 defaults: babeltrace
247
248 <<: *babeltrace_build_axes_defaults
249 <<: *babeltrace_build_builders_defaults
250 <<: *babeltrace_build_publishers_defaults
251
252 - job-template:
253 name: babeltrace_{version}_{cctype}
254 defaults: babeltrace
255
256 <<: *babeltrace_build_axes_cc
257 <<: *babeltrace_build_builders_defaults
258 <<: *babeltrace_build_publishers_defaults
259
260 - job-template:
261 name: babeltrace_{version}_winbuild
262 defaults: babeltrace
263
264 <<: *babeltrace_build_axes_defaults
265 <<: *babeltrace_build_builders_win
266 <<: *babeltrace_build_publishers_defaults
267
268 - job-template:
269 name: dev_gerrit_babeltrace_{buildtype}
270 defaults: babeltrace
271 concurrent: true
272
273 scm:
274 - git:
275 url: https://review.lttng.org/babeltrace
276 refspec: 'refs/changes/*:refs/changes/*'
277 branches:
278 - '$GERRIT_REFSPEC'
279 basedir: src/babeltrace
280 skip-tag: true
281
282 triggers:
283 - gerrit:
284 trigger-on:
285 - comment-added-event:
286 approval-category: 'CI-Build'
287 approval-value: 1
288 projects:
289 - project-compare-type: 'PLAIN'
290 project-pattern: 'babeltrace'
291 branches:
292 - branch-compare-type: 'ANT'
293 branch-pattern: '**'
294
295 project-type: matrix
296 node: 'master' # Applies only to matrix flyweight task
297 execution-strategy:
298 combination-filter: |
299 {filter}
300 axes:
301 - axis:
302 type: slave
303 name: arch
304 values: '{obj:arch}'
305 - axis:
306 type: user-defined
307 name: conf
308 values: '{obj:conf}'
309 - axis:
310 type: user-defined
311 name: build
312 values: '{obj:build}'
313
314 <<: *babeltrace_build_builders_defaults
315 <<: *babeltrace_build_publishers_gerrit
316
317 properties:
318 - inject:
319 properties-content: |
320 PROJECT_NAME=babeltrace
321 - build-discarder:
322 days-to-keep: 1
323 - throttle:
324 option: 'category'
325 categories:
326 - 'gerrit-{buildtype}'
327
328 - job-template:
329 name: dev_gerrit_babeltrace_winbuild
330 defaults: babeltrace
331 concurrent: true
332
333 scm:
334 - git:
335 url: https://review.lttng.org/babeltrace
336 refspec: 'refs/changes/*:refs/changes/*'
337 branches:
338 - '$GERRIT_REFSPEC'
339 basedir: src/babeltrace
340 skip-tag: true
341
342 triggers:
343 - gerrit:
344 trigger-on:
345 - comment-added-event:
346 approval-category: 'CI-Build'
347 approval-value: 1
348 projects:
349 - project-compare-type: 'PLAIN'
350 project-pattern: 'babeltrace'
351 branches:
352 - branch-compare-type: 'ANT'
353 branch-pattern: '**'
354
355 properties:
356 - inject:
357 properties-content: |
358 PROJECT_NAME=babeltrace
359 - build-discarder:
360 days-to-keep: 1
361 - throttle:
362 option: 'category'
363 categories:
364 - 'gerrit-winbuild'
365
366 <<: *babeltrace_build_axes_defaults
367 <<: *babeltrace_build_builders_win
368 <<: *babeltrace_build_publishers_gerrit
369
370 - job-template:
371 name: babeltrace_{version}_release
372 defaults: babeltrace
373 node: 'amd64'
374
375 triggers:
376 - pollscm:
377 cron: "@daily"
378
379 scm:
380 - git:
381 url: https://github.com/{github_user}/{github_name}.git
382 browser: githubweb
383 browser-url: https://github.com/{github_user}/{github_name}
384 refspec: '+refs/tags/*:refs/remotes/origin/tags/*'
385 branches:
386 - '*/tags/{version}.*'
387 basedir: src/babeltrace
388
389 builders:
390 - shell:
391 !include-raw-escape: scripts/babeltrace/release.sh
392
393 publishers:
394 - tap:
395 results: 'tap/**/*.log'
396 fail-if-no-results: true
397 failed-tests-mark-build-as-failure: true
398 todo-is-failure: false
399 - warnings:
400 console-log-parsers:
401 - 'GNU Make + GNU C Compiler (gcc)'
402 total-thresholds:
403 unstable:
404 total-all: 0
405 total-high: 0
406 total-normal: 0
407 total-low: 0
408 - workspace-cleanup:
409 clean-if:
410 - failure: false
411 - archive:
412 artifacts: 'out/**,tap/**'
413 allow-empty: false
414
415 - job-template:
416 name: dev_gerrit_babeltrace_pylint
417 defaults: babeltrace
418 concurrent: true
419
420 scm:
421 - git:
422 url: https://review.lttng.org/babeltrace
423 refspec: 'refs/changes/*:refs/changes/*'
424 branches:
425 - '$GERRIT_REFSPEC'
426 basedir: src/babeltrace
427 skip-tag: true
428
429 triggers:
430 - gerrit:
431 trigger-on:
432 - comment-added-event:
433 approval-category: 'CI-Build'
434 approval-value: 1
435 projects:
436 - project-compare-type: 'PLAIN'
437 project-pattern: 'babeltrace'
438 branches:
439 - branch-compare-type: 'ANT'
440 branch-pattern: '**'
441
442 node: 'amd64'
443
444 builders:
445 - shell:
446 !include-raw-escape: scripts/babeltrace/pylint.sh
447
448 properties:
449 - inject:
450 properties-content: |
451 PROJECT_NAME=babeltrace
452 - build-discarder:
453 days-to-keep: 1
454
455 - job-template:
456 name: babeltrace_{version}_cppcheck
457 defaults: babeltrace
458
459 triggers:
460 - pollscm:
461 cron: "@daily"
462
463 builders:
464 - shell: |
465 rm -f cppcheck-result.xml
466 cppcheck --enable=all --xml --xml-version=2 $WORKSPACE/src/babeltrace 2> cppcheck-result.xml
467
468 publishers:
469 - archive:
470 artifacts: 'cppcheck-result.xml'
471 allow-empty: false
472 - cppcheck:
473 pattern: 'cppcheck-result.xml'
474
475 - job-template:
476 name: babeltrace_{version}_scan-build
477 defaults: babeltrace
478 node: 'amd64'
479
480 triggers:
481 - pollscm:
482 cron: "@daily"
483
484 builders:
485 - shell:
486 !include-raw-escape: scripts/common/scan-build.sh
487
488 publishers:
489 - html-publisher:
490 name: 'HTML Report'
491 dir: 'scan-build-archive/'
492 files: 'index.html'
493
494 - job-template:
495 name: babeltrace_{version}_coverity
496 defaults: babeltrace
497 node: 'amd64'
498
499 triggers:
500 - pollscm:
501 cron: "@daily"
502
503 wrappers:
504 - workspace-cleanup
505 - timestamps
506 - ansicolor:
507 colormap: xterm
508 - credentials-binding:
509 - username-password-separated:
510 credential-id: babeltrace_coverity_token
511 username: COVERITY_SCAN_PROJECT_NAME
512 password: COVERITY_SCAN_TOKEN
513 builders:
514 - shell:
515 !include-raw-escape: scripts/common/coverity.sh
516
517 publishers:
518 - workspace-cleanup
519 - archive:
520 artifacts: 'analysis-results.tgz,cov-int/**'
521 allow-empty: false
522
523 - job-template:
524 name: babeltrace_{version}_pylint
525 defaults: babeltrace
526 node: 'amd64'
527
528 triggers:
529 - pollscm:
530 cron: "@daily"
531
532 builders:
533 - shell:
534 !include-raw-escape: scripts/babeltrace/pylint.sh
535
536 publishers:
537 - archive:
538 artifacts: 'black.out,flake8.out'
539 - email-ext:
540 recipients: '{obj:email_to}'
541 reply-to: ci-notification@lists.lttng.org
542 always: false
543 unstable: false
544 first-failure: true
545 first-unstable: true
546 not-built: false
547 aborted: false
548 regression: false
549 failure: false
550 second-failure: false
551 improvement: false
552 still-failing: false
553 success: false
554 fixed: false
555 fixed-unhealthy: true
556 still-unstable: false
557 pre-build: false
558 matrix-trigger: only-parent
559 send-to:
560 - recipients
561
562 - job-template:
563 name: babeltrace_{version}_glib-2.28.6
564 defaults: babeltrace
565 node: 'amd64'
566
567 <<: *babeltrace_build_builders_glib-2-28-6
568 <<: *babeltrace_build_publishers_defaults
569
570 - job-template:
571 name: '{job_prefix}babeltrace_{version}_glib-2.28.6'
572 defaults: babeltrace
573 node: 'amd64'
574
575 <<: *babeltrace_build_builders_glib-2-28-6
576 <<: *babeltrace_build_publishers_defaults
577
578
579 ## Views
580 - view-template:
581 name: 'Babeltrace'
582 view-type: list
583 regex: 'babeltrace[-_].*'
584
585
586 ## Projects
587 - project:
588 name: babeltrace2
589 job_prefix: ''
590 github_user: efficios
591 github_name: babeltrace
592 email_to: 'ci-notification@lists.lttng.org, cc:jgalar@efficios.com'
593 version:
594 - stable-2.0
595 - master
596 jobs:
597 - 'babeltrace_{version}_{buildtype}':
598 buildtype: build
599 arch: !!python/tuple [amd64]
600 build: !!python/tuple [std, oot, dist, oot-dist]
601 conf: !!python/tuple [std, static, prod, min]
602 - 'babeltrace_{version}_{buildtype}':
603 buildtype: portbuild
604 arch: !!python/tuple [armhf, arm64, powerpc, ppc64el, i386]
605 build: !!python/tuple [std]
606 conf: !!python/tuple [std, prod]
607 - 'babeltrace_{version}_{buildtype}':
608 buildtype: slesbuild
609 arch: !!python/tuple [sles12sp5]
610 build: !!python/tuple [std]
611 conf: !!python/tuple [std, prod]
612 - 'babeltrace_{version}_{buildtype}':
613 buildtype: elbuild
614 arch: !!python/tuple [el8]
615 build: !!python/tuple [std]
616 conf: !!python/tuple [std, prod]
617 - 'babeltrace_{version}_{buildtype}':
618 buildtype: macosbuild
619 arch: !!python/tuple [macos-amd64, macos-arm64]
620 build: !!python/tuple [std]
621 conf: !!python/tuple [std, prod]
622 - 'babeltrace_{version}_{buildtype}':
623 buildtype: freebsdbuild
624 arch: !!python/tuple [freebsd]
625 build: !!python/tuple [std]
626 conf: !!python/tuple [std, prod]
627 - 'babeltrace_{version}_{cctype}':
628 cctype: clangbuild
629 arch: !!python/tuple [amd64]
630 build: !!python/tuple [std]
631 conf: !!python/tuple [std, static, prod]
632 cc: !!python/tuple [clang-3.9, clang-4.0, clang-6.0, clang-7]
633 - 'babeltrace_{version}_winbuild':
634 arch: !!python/tuple [cygwin64, msys2-mingw32, msys2-mingw64]
635 build: !!python/tuple [std]
636 conf: !!python/tuple [std]
637 - 'babeltrace_{version}_release':
638 version: v2.0
639 - 'babeltrace_{version}_cppcheck'
640 - 'babeltrace_{version}_scan-build'
641 - 'babeltrace_{version}_pylint'
642 - 'babeltrace_{version}_coverity':
643 version: master
644 - 'babeltrace_{version}_glib-2.28.6':
645 version: master
646
647 - project:
648 name: gerrit-babeltrace
649 job_prefix: ''
650 github_user: efficios
651 github_name: babeltrace
652 jobs:
653 - 'dev_gerrit_babeltrace_{buildtype}':
654 buildtype: build
655 arch: !!python/tuple [amd64, armhf, arm64, powerpc, ppc64el, i386]
656 build: !!python/tuple [std, oot, dist, oot-dist]
657 conf: !!python/tuple [std, static, prod, min]
658 filter: '(build=="std" && conf=="std") || (arch=="amd64")'
659 - 'dev_gerrit_babeltrace_{buildtype}':
660 buildtype: macosbuild
661 arch: !!python/tuple [macos-amd64, macos-arm64]
662 build: !!python/tuple [std]
663 conf: !!python/tuple [std, prod]
664 filter: ''
665 - 'dev_gerrit_babeltrace_winbuild':
666 arch: !!python/tuple [cygwin64, msys2-mingw64]
667 build: !!python/tuple [std]
668 conf: !!python/tuple [std]
669 - 'dev_gerrit_babeltrace_pylint'
670
671
672 - project:
673 name: dev_upstream_babeltrace
674 job_prefix: dev_upstream_
675 github_user: efficios
676 github_name: babeltrace
677 email_to: 'ci-notification@lists.lttng.org, cc:jgalar@efficios.com'
678 version:
679 - stable-1.5
680 jobs:
681 - '{job_prefix}babeltrace_{version}_{buildtype}':
682 buildtype: build
683 arch: !!python/tuple [amd64]
684 build: !!python/tuple [std, oot, dist, oot-dist]
685 conf: !!python/tuple [std, static, python-bindings]
686 - '{job_prefix}babeltrace_{version}_{buildtype}':
687 buildtype: portbuild
688 arch: !!python/tuple [armhf, arm64, powerpc, ppc64el, i386]
689 build: !!python/tuple [std]
690 conf: !!python/tuple [std, python-bindings]
691 - '{job_prefix}babeltrace_{version}_{buildtype}':
692 buildtype: slesbuild
693 arch: !!python/tuple [sles12sp5]
694 build: !!python/tuple [std]
695 conf: !!python/tuple [std]
696 - '{job_prefix}babeltrace_{version}_{buildtype}':
697 buildtype: elbuild
698 arch: !!python/tuple [el8]
699 build: !!python/tuple [std]
700 conf: !!python/tuple [std]
701
702
703 - project:
704 name: babeltrace-jgalar-staging
705 job_prefix: 'dev_jgalar_'
706 github_user: jgalar
707 github_name: babeltrace
708 email_to: "jgalar@efficios.com"
709 version:
710 - stable-1.5-staging
711 jobs:
712 - '{job_prefix}babeltrace_{version}_{buildtype}':
713 buildtype: build
714 arch: !!python/tuple [amd64]
715 build: !!python/tuple [std, oot, dist, oot-dist]
716 conf: !!python/tuple [std, static, python-bindings]
717 - '{job_prefix}babeltrace_{version}_{buildtype}':
718 buildtype: macosbuild
719 arch: !!python/tuple [macos-amd64, macos-arm64]
720 build: !!python/tuple [std]
721 conf: !!python/tuple [std]
722
723
724 - project:
725 name: babeltrace2-jgalar-staging
726 job_prefix: 'dev_jgalar_'
727 github_user: jgalar
728 github_name: babeltrace
729 email_to: "jgalar@efficios.com"
730 version:
731 - stable-2.0-staging
732 - master-staging
733 jobs:
734 - '{job_prefix}babeltrace_{version}_glib-2.28.6':
735 version:
736 - master-staging
737 - '{job_prefix}babeltrace_{version}_{buildtype}':
738 buildtype: build
739 arch: !!python/tuple [amd64]
740 build: !!python/tuple [std, oot, dist, oot-dist]
741 conf: !!python/tuple [std, static, prod, min]
742 - '{job_prefix}babeltrace_{version}_{buildtype}':
743 buildtype: macosbuild
744 arch: !!python/tuple [macos-amd64, macos-arm64]
745 build: !!python/tuple [std]
746 conf: !!python/tuple [std, prod]
747
748 - project:
749 name: babeltrace-views
750 views:
751 - Babeltrace
This page took 0.046036 seconds and 5 git commands to generate.