- defaults:
name: babeltrace
description: |
The Babeltrace project provides trace read and write libraries, as well
as a trace converter. Plugins can be created for any trace format to
allow its conversion to/from another trace format.
The main format expected to be converted to/from is the Common Trace
Format (CTF). The default input format of the "babeltrace" command is
CTF, and its default output format is a human-readable text log. The
"babeltrace-log" command converts from a text log to a CTF trace.
Job is managed by Jenkins Job Builder.
project-type: freestyle
wrappers:
- ansicolor: &babeltrace_wrapper_ansicolor_defaults
colormap: xterm
- timeout: &babeltrace_wrapper_timeout_defaults
timeout: 20
fail: true
type: no-activity
write-description: "This build failed due to timeout.
"
- timestamps
- workspace-cleanup
scm:
- git: &babeltrace_scm_git_default
url: https://github.com/{github_user}/{github_name}.git
browser: githubweb
browser-url: https://github.com/{github_user}/{github_name}
branches:
- origin/{version}
basedir: src/babeltrace
skip-tag: true
git-tool: '{git_tool}'
triggers:
- pollscm:
cron: "@hourly"
properties:
- inject:
properties-content: |
PROJECT_NAME=babeltrace
- build-discarder:
num-to-keep: 10
artifact-num-to-keep: 2
- github:
url: https://github.com/{github_user}/{github_name}
## Anchors
- job-template: &babeltrace_matrix_axes_defaults
name: 'babeltrace_matrix_axes_defaults'
project-type: matrix
node: 'master' # Applies only to matrix flyweight task
execution-strategy:
combination-filter: '{filter}'
touchstone:
expr: '{touchstone}'
result: unstable
axes:
- axis: &babeltrace_matrix_axis_platform
type: slave
name: platform
values: '{obj:platforms}'
- axis: &babeltrace_matrix_axis_conf
type: user-defined
name: conf
values: '{obj:confs}'
- axis: &babeltrace_matrix_axis_build
type: user-defined
name: build
values: '{obj:builds}'
- job-template: &babeltrace_matrix_axes_cc
name: 'babeltrace_matrix_axes_cc'
<<: *babeltrace_matrix_axes_defaults
axes:
- axis: *babeltrace_matrix_axis_platform
- axis: *babeltrace_matrix_axis_conf
- axis: *babeltrace_matrix_axis_build
- axis: &babeltrace_matrix_axis_cc
type: user-defined
name: cc
values: '{obj:ccs}'
- job-template: &babeltrace_builders_defaults
name: 'babeltrace_builders_defaults'
builders:
!j2-yaml: |
{% if buildtype is defined and buildtype == 'winbuild' %}
- conditional-step:
condition-kind: strings-match
on-evaluation-failure: run
condition-string1: {{ '${{platform}}' }}
condition-string2: 'cygwin64'
steps:
- shell:
!include-raw-escape:
- scripts/common/cygwin64-shebang
- scripts/common/cygpath-prefix
- scripts/common/print.sh
- scripts/babeltrace/build.sh
- conditional-step:
condition-kind: strings-match
on-evaluation-failure: run
condition-string1: {{ '${{platform}}' }}
condition-string2: 'msys2-ucrt64'
steps:
- inject:
properties-content: 'MSYSTEM=UCRT64'
- shell:
!include-raw-escape:
- scripts/common/msys2-shebang
- scripts/common/cygpath-prefix
- scripts/common/print.sh
- scripts/babeltrace/build.sh
{% else %}
- shell:
!include-raw-escape:
- scripts/common/print.sh
- scripts/babeltrace/build.sh
{% endif %}
# Use - in version number since yaml anchor do not support dot
- job-template: &babeltrace_builders_glib-2-28-6
name: 'babeltrace_builders_glib-2-28-6'
builders:
- inject:
properties-content: |
LD_LIBRARY_PATH=$WORKSPACE/glib-2.28.6/BUILD_RESULT/lib
PKG_CONFIG_PATH=$WORKSPACE/glib-2.28.6/BUILD_RESULT/lib/pkgconfig
platform=deb12-amd64
conf=std
build=std
- shell: |
curl -OL 'https://ftp.gnome.org/pub/gnome/sources/glib/2.28/glib-2.28.6.tar.gz'
tar xf glib-2.28.6.tar.gz
cd glib-2.28.6
sed -i 's/sys\/types\.h/sys\/sysmacros\.h/' gio/gdbusmessage.c # Fix build failure with recent glibc
mkdir BUILD_RESULT
./configure --prefix=$WORKSPACE/glib-2.28.6/BUILD_RESULT
make -j `nproc` >/dev/null 2>&1 # Hide warnings
make install
- shell:
!include-raw-escape:
- scripts/common/print.sh
- scripts/babeltrace/build.sh
- job-template: &babeltrace_publishers_defaults
name: 'babeltrace_publishers_defaults'
publishers:
- tap: &babeltrace_publisher_tap_defaults
results: 'tap/**/*.log'
fail-if-no-results: true
failed-tests-mark-build-as-failure: true
include-comment-diagnostics: true
output-tap-to-console: false
todo-is-failure: false
- raw: &babeltrace_publisher_warnings-ng_defaults
xml: |
false
false
true
false
0
0
LOW
true
true
false
true
false
1
TOTAL
WARNING
AGGREGATION_TOOLS
- archive: &babeltrace_publisher_archive_defaults
artifacts: 'build/**,tap/**,log/**'
follow-symlinks: true
allow-empty: false
- workspace-cleanup: &babeltrace_publisher_workspace-cleanup_defaults
clean-if:
- failure: false
- ircbot: &babeltrace_publisher_ircbot_defaults
strategy: statechange-only
message-type: summary
matrix-notifier: only-parent
- email-ext: &babeltrace_publisher_email-ext_defaults
recipients: '{obj:email_to}'
reply-to: ci-notification@lists.lttng.org
always: false
unstable: false
first-failure: true
first-unstable: true
not-built: false
aborted: false
regression: false
failure: false
second-failure: false
improvement: false
still-failing: false
success: false
fixed: false
fixed-unhealthy: true
still-unstable: false
pre-build: false
matrix-trigger: only-parent
send-to:
- recipients
- job-template: &babeltrace_publishers_review
name: 'babeltrace_publishers_review'
publishers:
- tap: *babeltrace_publisher_tap_defaults
# Fail job on any compiler warnings
- raw:
xml: |
false
false
true
false
0
0
LOW
true
true
false
true
false
1
TOTAL
{warnings_status}
AGGREGATION_TOOLS
- archive: *babeltrace_publisher_archive_defaults
- workspace-cleanup: *babeltrace_publisher_workspace-cleanup_defaults
## Job Templates
- job-template:
name: '{job_prefix}babeltrace_{version}_{buildtype}'
defaults: babeltrace
<<: *babeltrace_matrix_axes_defaults
<<: *babeltrace_builders_defaults
<<: *babeltrace_publishers_defaults
- job-template:
name: babeltrace_{version}_{cctype}
defaults: babeltrace
<<: *babeltrace_matrix_axes_cc
<<: *babeltrace_builders_defaults
<<: *babeltrace_publishers_defaults
- job-template:
name: 'dev_review_babeltrace_{version}_{buildtype}'
defaults: babeltrace
concurrent: true
scm:
- git: &babeltrace_scm_git_review
url: https://review.lttng.org/babeltrace
refspec: 'refs/changes/*:refs/changes/*'
branches:
- '$GERRIT_REFSPEC'
basedir: src/babeltrace
skip-tag: true
git-tool: '{git_tool}'
triggers:
- gerrit: &babeltrace_trigger_gerrit_defaults
trigger-on:
- comment-added-event:
approval-category: 'CI-Build'
approval-value: 1
projects:
- project-compare-type: 'PLAIN'
project-pattern: 'babeltrace'
branches:
- branch-compare-type: 'PLAIN'
branch-pattern: '{version}'
properties:
- inject:
properties-content: |
PROJECT_NAME=babeltrace
- build-discarder:
days-to-keep: 1
- throttle:
option: 'category'
categories:
- 'gerrit-{buildtype}'
<<: *babeltrace_matrix_axes_defaults
<<: *babeltrace_builders_defaults
<<: *babeltrace_publishers_review
- job-template:
name: 'dev_review_babeltrace_{version}_lint'
defaults: babeltrace
concurrent: true
scm:
- git: *babeltrace_scm_git_review
triggers:
- gerrit: *babeltrace_trigger_gerrit_defaults
node: 'deb12-amd64'
builders:
- shell:
!include-raw-escape:
- scripts/common/print.sh
- scripts/babeltrace/lint.sh
properties:
- inject:
properties-content: |
PROJECT_NAME=babeltrace
- build-discarder:
days-to-keep: 1
publishers:
- archive:
artifacts: 'black.out,flake8.out,isort.out,clang-format.out,shellcheck.out,check-include-guards.out'
allow-empty: false
- workspace-cleanup: *babeltrace_publisher_workspace-cleanup_defaults
- job-template:
name: 'dev_review_babeltrace_{version}_smokebuild'
defaults: babeltrace
concurrent: true
scm:
- git: *babeltrace_scm_git_review
triggers:
- gerrit: &babeltrace_trigger_gerrit_smoke
trigger-on:
- comment-added-event:
approval-category: 'Smoke-Build-Lvl1'
approval-value: 1
projects:
- project-compare-type: 'PLAIN'
project-pattern: 'babeltrace'
branches:
- branch-compare-type: 'PLAIN'
branch-pattern: '{version}'
skip-vote:
successful: true
failed: true
unstable: true
notbuilt: true
aborted: true
properties:
- inject:
properties-content: |
PROJECT_NAME=babeltrace
BABELTRACE_RUN_TESTS=no
- build-discarder:
days-to-keep: 1
<<: *babeltrace_matrix_axes_defaults
<<: *babeltrace_builders_defaults
publishers:
- workspace-cleanup: *babeltrace_publisher_workspace-cleanup_defaults
- job-template:
name: 'dev_review_babeltrace_{version}_check-format'
defaults: babeltrace
concurrent: true
scm:
- git: *babeltrace_scm_git_review
triggers:
- gerrit: *babeltrace_trigger_gerrit_smoke
node: 'deb12-amd64'
builders:
- shell:
!include-raw-escape: scripts/common/check-format.sh
properties:
- inject:
properties-content: |
PROJECT_NAME=babeltrace
- build-discarder:
days-to-keep: 1
publishers:
- archive:
artifacts: 'clang-format-fixes.diff'
allow-empty: true
- workspace-cleanup: *babeltrace_publisher_workspace-cleanup_defaults
- job-template:
name: babeltrace_{version}_release
defaults: babeltrace
node: 'deb12-amd64'
triggers:
- pollscm:
cron: "@daily"
scm:
- git:
<<: *babeltrace_scm_git_default
refspec: '+refs/tags/*:refs/remotes/origin/tags/*'
branches:
- '*/tags/{version}.*'
builders:
- shell:
!include-raw-escape: scripts/babeltrace/release.sh
publishers:
- tap: *babeltrace_publisher_tap_defaults
- raw: *babeltrace_publisher_warnings-ng_defaults
- workspace-cleanup: *babeltrace_publisher_workspace-cleanup_defaults
- archive:
artifacts: 'out/**,tap/**'
allow-empty: false
fingerprint: true
- ircbot: *babeltrace_publisher_ircbot_defaults
- job-template:
name: babeltrace_{version}_scan-build
defaults: babeltrace
node: 'deb12-amd64'
triggers:
- pollscm:
cron: "@daily"
builders:
- shell:
!include-raw-escape: scripts/common/scan-build.sh
publishers:
- workspace-cleanup: *babeltrace_publisher_workspace-cleanup_defaults
- html-publisher:
name: 'HTML Report'
dir: 'scan-build-archive/'
files: 'index.html'
- ircbot: *babeltrace_publisher_ircbot_defaults
- job-template:
name: babeltrace_{version}_coverity
defaults: babeltrace
node: 'deb12-amd64'
triggers:
- pollscm:
cron: "@daily"
wrappers:
- ansicolor: *babeltrace_wrapper_ansicolor_defaults
- timeout: *babeltrace_wrapper_timeout_defaults
- timestamps
- workspace-cleanup
- credentials-binding:
- username-password-separated:
credential-id: babeltrace_coverity_token
username: COVERITY_SCAN_PROJECT_NAME
password: COVERITY_SCAN_TOKEN
builders:
- shell:
!include-raw-escape: scripts/common/coverity.sh
publishers:
- workspace-cleanup: *babeltrace_publisher_workspace-cleanup_defaults
- archive:
artifacts: 'analysis-results.tgz,cov-int/**'
allow-empty: false
- ircbot: *babeltrace_publisher_ircbot_defaults
- job-template:
name: babeltrace_{version}_lint
defaults: babeltrace
node: 'deb12-amd64'
triggers:
- pollscm:
cron: "@daily"
builders:
- shell:
!include-raw-escape:
- scripts/common/print.sh
- scripts/babeltrace/lint.sh
publishers:
- workspace-cleanup: *babeltrace_publisher_workspace-cleanup_defaults
- archive:
artifacts: 'black.out,flake8.out,isort.out,clang-format.out,shellcheck.out,check-include-guards.out'
allow-empty: false
- ircbot: *babeltrace_publisher_ircbot_defaults
- email-ext: *babeltrace_publisher_email-ext_defaults
- job-template:
name: '{job_prefix}babeltrace_{version}_glib-2.28.6'
defaults: babeltrace
node: 'deb12-amd64'
<<: *babeltrace_builders_glib-2-28-6
<<: *babeltrace_publishers_defaults
## Views
- view-template:
name: 'Babeltrace'
view-type: list
regex: 'babeltrace[-_].*'
## Projects
- project:
name: babeltrace2
job_prefix: ''
github_user: efficios
github_name: babeltrace
git_tool: Default
email_to: 'ci-notification@lists.lttng.org, cc:jgalar@efficios.com'
version:
- stable-2.0
- master
jobs:
- '{job_prefix}babeltrace_{version}_{buildtype}':
buildtype: linuxbuild
platforms: !!python/tuple [deb12-amd64]
builds: !!python/tuple [std, oot, dist, oot-dist]
confs: !!python/tuple [std, static, prod, min, doc, asan]
filter: '(build=="std") || (conf=="std") || (conf=="doc")'
touchstone: '(build == "std") && (conf == "std")'
- '{job_prefix}babeltrace_{version}_{buildtype}':
buildtype: portbuild
platforms: !!python/tuple [deb12-armhf, deb12-arm64, deb12-ppc64el, deb13-riscv64, deb12-i386]
builds: !!python/tuple [std]
confs: !!python/tuple [std, prod]
filter: ''
touchstone: '(build == "std") && (conf == "std") && (platform == "deb12-i386")'
- '{job_prefix}babeltrace_{version}_{buildtype}':
buildtype: slesbuild
platforms: !!python/tuple [sles12sp5-amd64, sles15sp4-amd64, sles15sp5-amd64]
builds: !!python/tuple [std]
confs: !!python/tuple [std, prod]
filter: ''
touchstone: ''
- '{job_prefix}babeltrace_{version}_{buildtype}':
buildtype: elbuild
platforms: !!python/tuple [el8-amd64, el9-amd64, el8-arm64, el9-arm64]
builds: !!python/tuple [std]
confs: !!python/tuple [std, prod]
filter: ''
touchstone: ''
- '{job_prefix}babeltrace_{version}_{buildtype}':
buildtype: yoctobuild
platforms: !!python/tuple [yocto23-powerpcspe, yocto40-powerpc, yocto40-ppc64]
builds: !!python/tuple [std]
confs: !!python/tuple [std]
filter: ''
touchstone: ''
- '{job_prefix}babeltrace_{version}_{buildtype}':
buildtype: macosbuild
platforms: !!python/tuple [macos-arm64]
builds: !!python/tuple [std]
confs: !!python/tuple [std, prod]
filter: ''
touchstone: ''
git_tool: jgit
- '{job_prefix}babeltrace_{version}_{buildtype}':
buildtype: freebsdbuild
platforms: !!python/tuple [freebsd-amd64]
builds: !!python/tuple [std]
confs: !!python/tuple [std, prod]
filter: ''
touchstone: ''
- '{job_prefix}babeltrace_{version}_{buildtype}':
buildtype: winbuild
platforms: !!python/tuple [cygwin64, msys2-ucrt64]
builds: !!python/tuple [std]
confs: !!python/tuple [std]
filter: ''
touchstone: ''
- 'babeltrace_{version}_{cctype}':
cctype: clangbuild
platforms: !!python/tuple [deb12-amd64]
builds: !!python/tuple [std]
confs: !!python/tuple [std, static, prod]
ccs: !!python/tuple [clang-13, clang-14, clang-15, clang-16]
filter: ''
touchstone: ''
- 'babeltrace_{version}_release':
version: v2.0
- 'babeltrace_{version}_scan-build'
- 'babeltrace_{version}_lint'
- 'babeltrace_{version}_coverity':
version: master
- '{job_prefix}babeltrace_{version}_glib-2.28.6':
version: master
- project:
name: review-babeltrace
job_prefix: ''
github_user: efficios
github_name: babeltrace
git_tool: Default
version:
- stable-2.0
- master
jobs:
## Master ##
- 'dev_review_babeltrace_{version}_{buildtype}':
version: master
buildtype: linuxbuild
platforms: !!python/tuple [deb12-amd64]
builds: !!python/tuple [std, oot, dist, oot-dist]
confs: !!python/tuple [std, static, prod, min]
filter: ''
touchstone: ''
warnings_status: FAILED
- 'dev_review_babeltrace_{version}_{buildtype}':
version: master
buildtype: portbuild
platforms: !!python/tuple [deb12-armhf, deb12-arm64, deb12-ppc64el, deb12-i386]
builds: !!python/tuple [std]
confs: !!python/tuple [std]
filter: ''
touchstone: ''
warnings_status: FAILED
- 'dev_review_babeltrace_{version}_{buildtype}':
version: master
buildtype: macosbuild
platforms: !!python/tuple [macos-arm64]
builds: !!python/tuple [std]
confs: !!python/tuple [std, prod]
filter: ''
touchstone: ''
warnings_status: FAILED
git_tool: jgit
- 'dev_review_babeltrace_{version}_{buildtype}':
buildtype: slesbuild
platforms: !!python/tuple [sles12sp5-amd64, sles15sp4-amd64, sles15sp5-amd64]
builds: !!python/tuple [std]
confs: !!python/tuple [std]
filter: ''
touchstone: ''
warnings_status: FAILED
- 'dev_review_babeltrace_{version}_{buildtype}':
version: master
buildtype: winbuild
platforms: !!python/tuple [cygwin64, msys2-ucrt64]
builds: !!python/tuple [std]
confs: !!python/tuple [std]
filter: ''
touchstone: ''
warnings_status: FAILED
## Stable 2.0 ##
- 'dev_review_babeltrace_{version}_{buildtype}':
version: stable-2.0
buildtype: linuxbuild
platforms: !!python/tuple [deb12-amd64]
builds: !!python/tuple [std, oot, dist, oot-dist]
confs: !!python/tuple [std, static, prod, min]
filter: ''
touchstone: ''
warnings_status: WARNING
- 'dev_review_babeltrace_{version}_{buildtype}':
version: stable-2.0
buildtype: portbuild
platforms: !!python/tuple [deb12-armhf, deb12-arm64, deb12-ppc64el, deb13-riscv64, deb12-i386]
builds: !!python/tuple [std]
confs: !!python/tuple [std]
filter: ''
touchstone: ''
warnings_status: WARNING
- 'dev_review_babeltrace_{version}_{buildtype}':
version: stable-2.0
buildtype: macosbuild
platforms: !!python/tuple [macos-arm64]
builds: !!python/tuple [std]
confs: !!python/tuple [std, prod]
filter: ''
touchstone: ''
warnings_status: WARNING
git_tool: jgit
- 'dev_review_babeltrace_{version}_{buildtype}':
version: stable-2.0
buildtype: winbuild
platforms: !!python/tuple [cygwin64, msys2-ucrt64]
builds: !!python/tuple [std]
confs: !!python/tuple [std]
filter: ''
touchstone: ''
warnings_status: WARNING
## ALL ##
- 'dev_review_babeltrace_{version}_smokebuild':
platforms: !!python/tuple [deb12-amd64]
builds: !!python/tuple [oot-dist]
confs: !!python/tuple [std]
filter: ''
touchstone: ''
- 'dev_review_babeltrace_{version}_check-format'
- 'dev_review_babeltrace_{version}_lint'
- project:
name: dev_upstream_babeltrace
job_prefix: dev_upstream_
github_user: efficios
github_name: babeltrace
git_tool: Default
email_to: 'ci-notification@lists.lttng.org, cc:jgalar@efficios.com'
version:
- stable-1.5
jobs:
- '{job_prefix}babeltrace_{version}_{buildtype}':
buildtype: linuxbuild
platforms: !!python/tuple [deb12-amd64]
builds: !!python/tuple [std, oot, dist, oot-dist]
confs: !!python/tuple [std, static, python-bindings]
filter: ''
touchstone: '(build == "std") && (conf == "std")'
- '{job_prefix}babeltrace_{version}_{buildtype}':
buildtype: portbuild
platforms: !!python/tuple [deb12-armhf, deb12-arm64, deb12-ppc64el, deb12-i386]
builds: !!python/tuple [std]
confs: !!python/tuple [std, python-bindings]
filter: ''
touchstone: '(build == "std") && (conf == "std") && (platform == "deb12-i386")'
- '{job_prefix}babeltrace_{version}_{buildtype}':
buildtype: slesbuild
platforms: !!python/tuple [sles12sp5-amd64, sles15sp4-amd64, sles15sp5-amd64]
builds: !!python/tuple [std]
confs: !!python/tuple [std]
filter: ''
touchstone: ''
- '{job_prefix}babeltrace_{version}_{buildtype}':
buildtype: elbuild
platforms: !!python/tuple [el8-amd64, el9-amd64]
builds: !!python/tuple [std]
confs: !!python/tuple [std]
filter: ''
touchstone: ''
- 'babeltrace_{version}_release':
version: v1.5
- project:
name: babeltrace-jgalar-staging
job_prefix: 'dev_jgalar_'
github_user: jgalar
github_name: babeltrace
git_tool: Default
email_to: "jgalar@efficios.com"
version:
- stable-1.5-staging
jobs:
- '{job_prefix}babeltrace_{version}_{buildtype}':
buildtype: linuxbuild
platforms: !!python/tuple [deb12-amd64]
builds: !!python/tuple [std, oot, dist, oot-dist]
confs: !!python/tuple [std, static, python-bindings]
filter: ''
touchstone: ''
- '{job_prefix}babeltrace_{version}_{buildtype}':
buildtype: macosbuild
platforms: !!python/tuple [macos-arm64]
builds: !!python/tuple [std]
confs: !!python/tuple [std]
filter: ''
touchstone: ''
git_tool: jgit
- project:
name: babeltrace2-jgalar-staging
job_prefix: 'dev_jgalar_'
github_user: jgalar
github_name: babeltrace
git_tool: Default
email_to: "jgalar@efficios.com"
version:
- stable-2.0-staging
- master-staging
jobs:
- '{job_prefix}babeltrace_{version}_glib-2.28.6':
version:
- master-staging
- '{job_prefix}babeltrace_{version}_{buildtype}':
buildtype: linuxbuild
platforms: !!python/tuple [deb12-amd64]
builds: !!python/tuple [std, oot, dist, oot-dist]
confs: !!python/tuple [std, static, prod, min]
filter: ''
touchstone: ''
- '{job_prefix}babeltrace_{version}_{buildtype}':
buildtype: macosbuild
platforms: !!python/tuple [macos-arm64]
builds: !!python/tuple [std]
confs: !!python/tuple [std, prod]
filter: ''
touchstone: ''
git_tool: jgit
- project:
name: babeltrace-views
views:
- Babeltrace