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