jjb: Add elbuild 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: 90
21 fail: true
22 type: absolute
23 - timestamps
24 - workspace-cleanup:
25 clean-if:
26 - failure: false
27
28 scm:
29 - git:
30 url: git://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: scripts/babeltrace/build.sh
98
99 - babeltrace_build_builders_win: &babeltrace_build_builders_win
100 name: 'babeltrace_build_builders_win'
101 builders:
102 - conditional-step:
103 condition-kind: strings-match
104 on-evaluation-failure: run
105 condition-string1: '${{arch}}'
106 condition-string2: 'cygwin'
107 steps:
108 - shell:
109 !include-raw-escape:
110 - scripts/common/cygwin-shebang
111 - scripts/common/cygwin-prefix
112 - scripts/babeltrace/build.sh
113 - conditional-step:
114 condition-kind: strings-match
115 on-evaluation-failure: run
116 condition-string1: '${{arch}}'
117 condition-string2: 'cygwin64'
118 steps:
119 - shell:
120 !include-raw-escape:
121 - scripts/common/cygwin64-shebang
122 - scripts/common/cygwin-prefix
123 - scripts/babeltrace/build.sh
124 - conditional-step:
125 condition-kind: strings-match
126 on-evaluation-failure: run
127 condition-string1: '${{arch}}'
128 condition-string2: 'msys2-mingw32'
129 steps:
130 - inject:
131 properties-content: 'MSYSTEM=MINGW32'
132 - shell:
133 !include-raw-escape:
134 - scripts/common/msys2-shebang
135 - scripts/common/cygwin-prefix
136 - scripts/babeltrace/build.sh
137 - conditional-step:
138 condition-kind: strings-match
139 on-evaluation-failure: run
140 condition-string1: '${{arch}}'
141 condition-string2: 'msys2-mingw64'
142 steps:
143 - inject:
144 properties-content: 'MSYSTEM=MINGW64'
145 - shell:
146 !include-raw-escape:
147 - scripts/common/msys2-shebang
148 - scripts/common/cygwin-prefix
149 - scripts/babeltrace/build.sh
150
151
152 - babeltrace_build_publishers_dev: &babeltrace_build_publishers_dev
153 name: 'babeltrace_build_publishers_dev'
154 publishers:
155 - tap:
156 results: 'tap/**/*.log'
157 fail-if-no-results: true
158 failed-tests-mark-build-as-failure: true
159 todo-is-failure: false
160 - warnings:
161 console-log-parsers:
162 - 'GNU Make + GNU C Compiler (gcc)'
163 total-thresholds:
164 unstable:
165 total-all: 0
166 total-high: 0
167 total-normal: 0
168 total-low: 0
169 - archive:
170 artifacts: 'tap/**'
171 allow-empty: false
172 - email-ext:
173 recipients: '{obj:email_to}'
174 always: false
175 unstable: false
176 first-failure: true
177 first-unstable: true
178 not-built: false
179 aborted: false
180 regression: false
181 failure: false
182 second-failure: false
183 improvement: false
184 still-failing: false
185 success: false
186 fixed: false
187 fixed-unhealthy: true
188 still-unstable: false
189 pre-build: false
190 matrix-trigger: only-parent
191 send-to:
192 - recipients
193
194
195 - babeltrace_build_publishers_prod: &babeltrace_build_publishers_prod
196 name: 'babeltrace_build_publishers_prod'
197 publishers:
198 - tap:
199 results: 'tap/**/*.log'
200 fail-if-no-results: true
201 failed-tests-mark-build-as-failure: true
202 todo-is-failure: false
203 - warnings:
204 console-log-parsers:
205 - 'GNU Make + GNU C Compiler (gcc)'
206 total-thresholds:
207 unstable:
208 total-all: 0
209 total-high: 0
210 total-normal: 0
211 total-low: 0
212 - archive:
213 artifacts: 'build/**,tap/**'
214 allow-empty: false
215 - email-ext:
216 recipients: '{obj:email_to}'
217 reply-to: ci-notification@lists.lttng.org
218 always: false
219 unstable: false
220 first-failure: true
221 first-unstable: true
222 not-built: false
223 aborted: false
224 regression: false
225 failure: false
226 second-failure: false
227 improvement: false
228 still-failing: false
229 success: false
230 fixed: false
231 fixed-unhealthy: true
232 still-unstable: false
233 pre-build: false
234 matrix-trigger: only-parent
235 send-to:
236 - recipients
237
238 - babeltrace_build_publishers_gerrit: &babeltrace_build_publishers_gerrit
239 name: 'babeltrace_build_publishers_gerrit'
240 publishers:
241 - tap:
242 results: 'tap/**/*.log'
243 fail-if-no-results: true
244 failed-tests-mark-build-as-failure: true
245 todo-is-failure: false
246 - warnings:
247 console-log-parsers:
248 - 'GNU Make + GNU C Compiler (gcc)'
249 total-thresholds:
250 failed:
251 total-all: 0
252 total-high: 0
253 total-normal: 0
254 total-low: 0
255 - archive:
256 artifacts: 'build/**,tap/**'
257 allow-empty: false
258
259
260 ## Templates
261
262 - job-template:
263 name: babeltrace_{version}_{buildtype}
264 defaults: babeltrace
265
266 <<: *babeltrace_build_axes_defaults
267 <<: *babeltrace_build_builders_defaults
268 <<: *babeltrace_build_publishers_prod
269
270 - job-template:
271 name: babeltrace_{version}_{cctype}
272 defaults: babeltrace
273
274 <<: *babeltrace_build_axes_cc
275 <<: *babeltrace_build_builders_defaults
276 <<: *babeltrace_build_publishers_prod
277
278 - job-template:
279 name: babeltrace_{version}_winbuild
280 defaults: babeltrace
281
282 # Use jgit on windows to work around path too long error
283 scm:
284 - git:
285 url: git://github.com/{github_user}/{github_name}.git
286 browser: githubweb
287 browser-url: https://github.com/{github_user}/{github_name}
288 branches:
289 - origin/{version}
290 basedir: src/babeltrace
291 skip-tag: true
292 git-tool: jgit
293
294 <<: *babeltrace_build_axes_defaults
295 <<: *babeltrace_build_builders_win
296 <<: *babeltrace_build_publishers_prod
297
298 - job-template:
299 name: dev_{user}_babeltrace_{version}_{buildtype}
300 defaults: babeltrace
301
302 <<: *babeltrace_build_axes_defaults
303 <<: *babeltrace_build_builders_defaults
304 <<: *babeltrace_build_publishers_dev
305
306 - job-template:
307 name: dev_gerrit_babeltrace_{buildtype}
308 defaults: babeltrace
309 concurrent: true
310
311 scm:
312 - git:
313 url: https://review.lttng.org/babeltrace
314 refspec: 'refs/changes/*:refs/changes/*'
315 branches:
316 - '$GERRIT_REFSPEC'
317 basedir: src/babeltrace
318 skip-tag: true
319
320 triggers:
321 - gerrit:
322 trigger-on:
323 - comment-added-event:
324 approval-category: 'CI-Build'
325 approval-value: 1
326 projects:
327 - project-compare-type: 'PLAIN'
328 project-pattern: 'babeltrace'
329 branches:
330 - branch-compare-type: 'ANT'
331 branch-pattern: '**'
332 trigger-for-unreviewed-patches: true
333
334 project-type: matrix
335 node: 'master' # Applies only to matrix flyweight task
336 execution-strategy:
337 combination-filter: |
338 {filter}
339 axes:
340 - axis:
341 type: slave
342 name: arch
343 values: '{obj:arch}'
344 - axis:
345 type: user-defined
346 name: conf
347 values: '{obj:conf}'
348 - axis:
349 type: user-defined
350 name: build
351 values: '{obj:build}'
352
353 <<: *babeltrace_build_builders_defaults
354 <<: *babeltrace_build_publishers_gerrit
355
356 properties:
357 - inject:
358 properties-content: |
359 PROJECT_NAME=babeltrace
360 - build-discarder:
361 days-to-keep: 1
362 - throttle:
363 option: 'category'
364 categories:
365 - 'gerrit'
366
367 - job-template:
368 name: dev_gerrit_babeltrace_black
369 defaults: babeltrace
370 concurrent: true
371
372 scm:
373 - git:
374 url: https://review.lttng.org/babeltrace
375 refspec: 'refs/changes/*:refs/changes/*'
376 branches:
377 - '$GERRIT_REFSPEC'
378 basedir: src/babeltrace
379 skip-tag: true
380
381 triggers:
382 - gerrit:
383 trigger-on:
384 - comment-added-event:
385 approval-category: 'CI-Build'
386 approval-value: 1
387 projects:
388 - project-compare-type: 'PLAIN'
389 project-pattern: 'babeltrace'
390 branches:
391 - branch-compare-type: 'ANT'
392 branch-pattern: '**'
393 trigger-for-unreviewed-patches: true
394
395 node: 'amd64'
396
397 builders:
398 - shell:
399 !include-raw-escape: scripts/babeltrace/black.sh
400
401 properties:
402 - inject:
403 properties-content: |
404 PROJECT_NAME=babeltrace
405 - build-discarder:
406 days-to-keep: 1
407
408 - job-template:
409 name: babeltrace_{version}_cppcheck
410 defaults: babeltrace
411
412 triggers:
413 - pollscm:
414 cron: "@daily"
415
416 builders:
417 - shell: |
418 rm -f cppcheck-result.xml
419 cppcheck --enable=all --xml --xml-version=2 $WORKSPACE/src/babeltrace 2> cppcheck-result.xml
420
421 publishers:
422 - archive:
423 artifacts: 'cppcheck-result.xml'
424 allow-empty: false
425 - cppcheck:
426 pattern: 'cppcheck-result.xml'
427
428 - job-template:
429 name: babeltrace_{version}_scan-build
430 defaults: babeltrace
431 node: 'amd64'
432
433 triggers:
434 - pollscm:
435 cron: "@daily"
436
437 builders:
438 - shell:
439 !include-raw-escape: scripts/common/scan-build.sh
440
441 publishers:
442 - html-publisher:
443 name: 'HTML Report'
444 dir: 'scan-build-archive/'
445 files: 'index.html'
446
447 - job-template:
448 name: babeltrace_{version}_coverity
449 defaults: babeltrace
450 node: 'amd64'
451
452 triggers:
453 - pollscm:
454 cron: "@daily"
455
456 wrappers:
457 - workspace-cleanup
458 - timestamps
459 - ansicolor:
460 colormap: xterm
461 - credentials-binding:
462 - username-password-separated:
463 credential-id: babeltrace_coverity_token
464 username: COVERITY_SCAN_PROJECT_NAME
465 password: COVERITY_SCAN_TOKEN
466 builders:
467 - shell:
468 !include-raw-escape: scripts/common/coverity.sh
469
470 publishers:
471 - workspace-cleanup
472 - archive:
473 artifacts: 'analysis-results.tgz,cov-int/**'
474 allow-empty: false
475
476 - job-template:
477 name: babeltrace_{version}_pylint
478 defaults: babeltrace
479 node: 'amd64'
480
481 scm: []
482
483 triggers:
484 - pollscm:
485 cron: "@daily"
486
487 builders:
488 - copyartifact:
489 project: babeltrace_{version}_build/arch=amd64,build=std,conf=python-bindings
490 which-build: last-successful
491 stable: false
492 filter: 'build/**'
493 target: 'deps/babeltrace'
494 - shell:
495 !include-raw-escape: scripts/babeltrace/pylint.sh
496
497 publishers:
498 - archive:
499 artifacts: 'pep8.out,pylint.out'
500 - violations:
501 pep8:
502 pattern: pep8.out
503 min: 10
504 max: 999
505 unstable: 999
506 pylint:
507 pattern: pylint.out
508 min: 10
509 max: 999
510 unstable: 999
511 - email-ext:
512 recipients: '{obj:email_to}'
513 reply-to: ci-notification@lists.lttng.org
514 always: false
515 unstable: false
516 first-failure: true
517 first-unstable: true
518 not-built: false
519 aborted: false
520 regression: false
521 failure: false
522 second-failure: false
523 improvement: false
524 still-failing: false
525 success: false
526 fixed: false
527 fixed-unhealthy: true
528 still-unstable: false
529 pre-build: false
530 matrix-trigger: only-parent
531 send-to:
532 - recipients
533
534 # Use - in version number since yaml anchor do not support dot
535 - babeltrace_version_glib-2-22-5_anchor: &babeltrace_version_glib-2-22-5_anchor
536 name: 'babeltrace_version_glib_anchor'
537 defaults: babeltrace
538 node: 'amd64'
539
540 builders:
541 - inject:
542 properties-content: |
543 LD_LIBRARY_PATH=$WORKSPACE/glib-2.22.5/BUILD_RESULT/lib
544 PKG_CONFIG_PATH=$WORKSPACE/glib-2.22.5/BUILD_RESULT/lib/pkgconfig
545 arch=amd64
546 conf=std
547 build=std
548 - shell: |
549 wget http://ftp.gnome.org/pub/gnome/sources/glib/2.22/glib-2.22.5.tar.gz
550 tar xvf glib-2.22.5.tar.gz
551 cd glib-2.22.5
552 mkdir BUILD_RESULT
553 ./configure --prefix=$WORKSPACE/glib-2.22.5/BUILD_RESULT
554 make -j `nproc`
555 make install
556
557 - shell:
558 !include-raw-escape: scripts/babeltrace/build.sh
559
560 - job-template:
561 name: babeltrace_{version}_glib-2.22.5
562 triggers:
563 - pollscm:
564 cron: "@daily"
565 <<: *babeltrace_version_glib-2-22-5_anchor
566 publishers:
567 - archive:
568 artifacts: 'tap/**'
569 allow-empty: false
570 - email-ext:
571 recipients: '{obj:email_to}'
572 reply-to: ci-notification@lists.lttng.org
573 always: false
574 unstable: false
575 first-failure: true
576 first-unstable: true
577 not-built: false
578 aborted: false
579 regression: false
580 failure: false
581 second-failure: false
582 improvement: false
583 still-failing: false
584 success: false
585 fixed: false
586 fixed-unhealthy: true
587 still-unstable: false
588 pre-build: false
589 matrix-trigger: only-parent
590 send-to:
591 - recipients
592
593 - job-template:
594 name: dev_{user}_babeltrace_{version}_glib-2.22.5
595 <<: *babeltrace_version_glib-2-22-5_anchor
596
597 publishers:
598 - email-ext:
599 recipients: '{obj:email_to}'
600 reply-to: ci-notification@lists.lttng.org
601 always: false
602 unstable: false
603 first-failure: true
604 first-unstable: true
605 not-built: false
606 aborted: false
607 regression: false
608 failure: false
609 second-failure: false
610 improvement: false
611 still-failing: false
612 success: false
613 fixed: false
614 fixed-unhealthy: true
615 still-unstable: false
616 pre-build: false
617 matrix-trigger: only-parent
618 send-to:
619 - recipients
620
621
622 ## Views
623 - view-template:
624 name: 'Babeltrace'
625 view-type: list
626 regex: 'babeltrace[-_].*'
627
628
629 ## Projects
630 - project:
631 name: babeltrace1
632 github_user: efficios
633 github_name: babeltrace
634 email_to: 'ci-notification@lists.lttng.org, cc:jgalar@efficios.com'
635 version:
636 - stable-1.5
637 jobs:
638 - 'babeltrace_{version}_{buildtype}':
639 buildtype: build
640 arch: !!python/tuple [amd64]
641 build: !!python/tuple [std, oot, dist, oot-dist]
642 conf: !!python/tuple [std, static, python-bindings]
643 - 'babeltrace_{version}_{buildtype}':
644 buildtype: portbuild
645 arch: !!python/tuple [armhf, arm64, powerpc, ppc64el, i386]
646 build: !!python/tuple [std]
647 conf: !!python/tuple [std, python-bindings]
648 - 'babeltrace_{version}_{buildtype}':
649 buildtype: slesbuild
650 arch: !!python/tuple [sles12sp2]
651 build: !!python/tuple [std]
652 conf: !!python/tuple [std]
653 version: # // support 1.3 on SLES12
654 - stable-1.3
655 - stable-1.5
656 - 'babeltrace_{version}_{buildtype}':
657 buildtype: elbuild
658 arch: !!python/tuple [el8]
659 build: !!python/tuple [std]
660 conf: !!python/tuple [std]
661 - 'babeltrace_{version}_{buildtype}':
662 buildtype: solarisbuild
663 arch: !!python/tuple [sol10-i386, sol11-i386]
664 build: !!python/tuple [std]
665 conf: !!python/tuple [std, static]
666 - 'babeltrace_{version}_{buildtype}':
667 buildtype: macosxbuild
668 arch: !!python/tuple [macosx]
669 build: !!python/tuple [std]
670 conf: !!python/tuple [std]
671 - 'babeltrace_{version}_{cctype}':
672 cctype: clangbuild
673 arch: !!python/tuple [amd64]
674 build: !!python/tuple [std]
675 conf: !!python/tuple [std, static]
676 cc: !!python/tuple [clang-3.9, clang-4.0, clang-6.0, clang-7]
677 - 'babeltrace_{version}_winbuild':
678 arch: !!python/tuple [cygwin, cygwin64]
679 build: !!python/tuple [std]
680 conf: !!python/tuple [std]
681 - 'babeltrace_{version}_cppcheck'
682 - 'babeltrace_{version}_scan-build'
683 - 'babeltrace_{version}_pylint'
684
685 - project:
686 name: babeltrace2
687 github_user: efficios
688 github_name: babeltrace
689 email_to: 'ci-notification@lists.lttng.org, cc:jgalar@efficios.com'
690 version:
691 - stable-2.0
692 - master
693 jobs:
694 - 'babeltrace_{version}_{buildtype}':
695 buildtype: build
696 arch: !!python/tuple [amd64]
697 build: !!python/tuple [std, oot, dist, oot-dist]
698 conf: !!python/tuple [std, static, prod, min]
699 - 'babeltrace_{version}_{buildtype}':
700 buildtype: portbuild
701 arch: !!python/tuple [armhf, arm64, powerpc, ppc64el, i386]
702 build: !!python/tuple [std]
703 conf: !!python/tuple [std, prod]
704 - 'babeltrace_{version}_{buildtype}':
705 buildtype: slesbuild
706 arch: !!python/tuple [sles12sp2]
707 build: !!python/tuple [std]
708 conf: !!python/tuple [std, prod]
709 - 'babeltrace_{version}_{buildtype}':
710 buildtype: elbuild
711 arch: !!python/tuple [el8]
712 build: !!python/tuple [std]
713 conf: !!python/tuple [std, prod]
714 - 'babeltrace_{version}_{buildtype}':
715 buildtype: macosxbuild
716 arch: !!python/tuple [macosx]
717 build: !!python/tuple [std]
718 conf: !!python/tuple [std, prod]
719 - 'babeltrace_{version}_{cctype}':
720 cctype: clangbuild
721 arch: !!python/tuple [amd64]
722 build: !!python/tuple [std]
723 conf: !!python/tuple [std, static, prod]
724 cc: !!python/tuple [clang-3.9, clang-4.0, clang-6.0, clang-7]
725 - 'babeltrace_{version}_winbuild':
726 arch: !!python/tuple [cygwin, cygwin64, msys2-mingw32, msys2-mingw64]
727 build: !!python/tuple [std]
728 conf: !!python/tuple [std]
729 - 'babeltrace_{version}_cppcheck'
730 - 'babeltrace_{version}_scan-build'
731 - 'babeltrace_{version}_pylint'
732 - 'babeltrace_{version}_coverity':
733 version: master
734 - 'babeltrace_{version}_glib-2.22.5':
735 version: master
736
737 - project:
738 name: gerrit-babeltrace
739 github_user: efficios
740 github_name: babeltrace
741 jobs:
742 - 'dev_gerrit_babeltrace_{buildtype}':
743 buildtype: build
744 arch: !!python/tuple [amd64, armhf, arm64, powerpc, ppc64el, i386]
745 build: !!python/tuple [std, oot, dist, oot-dist]
746 conf: !!python/tuple [std, static, prod, min]
747 filter: '(build=="std" && conf=="std") || (arch=="amd64")'
748 - 'dev_gerrit_babeltrace_{buildtype}':
749 buildtype: macosxbuild
750 arch: !!python/tuple [macosx]
751 build: !!python/tuple [std]
752 conf: !!python/tuple [std, prod]
753 filter: ''
754 - 'dev_gerrit_babeltrace_black'
755
756
757 - project:
758 name: babeltrace-jgalar-staging
759 user: jgalar
760 github_user: jgalar
761 github_name: babeltrace
762 email_to: "jgalar@efficios.com"
763 version:
764 - stable-1.3-staging
765 - stable-1.5-staging
766 jobs:
767 - 'dev_{user}_babeltrace_{version}_{buildtype}':
768 buildtype: build
769 arch: !!python/tuple [amd64]
770 build: !!python/tuple [std, oot, dist, oot-dist]
771 conf: !!python/tuple [std, static, python-bindings]
772 - 'dev_{user}_babeltrace_{version}_{buildtype}':
773 buildtype: macosxbuild
774 version: # macOS support was introduced in 1.4
775 - stable-1.5-staging
776 arch: !!python/tuple [macosx]
777 build: !!python/tuple [std]
778 conf: !!python/tuple [std]
779
780
781 - project:
782 name: babeltrace2-jgalar-staging
783 user: jgalar
784 github_user: jgalar
785 github_name: babeltrace
786 email_to: "jgalar@efficios.com"
787 version:
788 - stable-2.0-staging
789 - master-staging
790 jobs:
791 - 'dev_{user}_babeltrace_{version}_glib-2.22.5':
792 version:
793 - master-staging
794 - 'dev_{user}_babeltrace_{version}_{buildtype}':
795 buildtype: build
796 arch: !!python/tuple [amd64]
797 build: !!python/tuple [std, oot, dist, oot-dist]
798 conf: !!python/tuple [std, static, prod, min]
799 - 'dev_{user}_babeltrace_{version}_{buildtype}':
800 buildtype: macosxbuild
801 arch: !!python/tuple [macosx]
802 build: !!python/tuple [std]
803 conf: !!python/tuple [std, prod]
804
805 - project:
806 name: babeltrace-views
807 views:
808 - Babeltrace
This page took 0.044607 seconds and 5 git commands to generate.