---
## Defaults
- defaults:
name: lttng-ust
description: |
LTTng-UST, the Linux Trace Toolkit Next Generation Userspace Tracer, is a
port of the low-overhead tracing capabilities of the LTTng kernel tracer
to user-space. The library "liblttng-ust" enables tracing of
applications and libraries.
Job is managed by Jenkins Job Builder.
project-type: freestyle
wrappers:
- ansicolor: <tng-ust_wrapper_ansicolor_defaults
colormap: xterm
- timeout: <tng-ust_wrapper_timeout_defaults
timeout: 20
fail: true
type: no-activity
write-description: "This build failed due to timeout.
"
- timestamps
- workspace-cleanup
scm:
- git:
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/lttng-ust
skip-tag: true
triggers:
- pollscm:
cron: "@hourly"
properties:
- inject:
properties-content: |
PROJECT_NAME=lttng-ust
- build-discarder:
num-to-keep: 10
artifact-num-to-keep: 2
- github:
url: https://github.com/{github_user}/{github_name}
## Anchors
- _lttng-ust_matrix_axes_defaults: <tng-ust_matrix_axes_defaults
name: 'lttng-ust_matrix_axes_defaults'
project-type: matrix
node: 'master' # Applies only to matrix flyweight task
execution-strategy: <tng-ust_matrix_execution-strategy_defaults
combination-filter: '{filter}'
touchstone:
expr: '{touchstone}'
result: unstable
axes:
- axis: <tng-ust_matrix_axis_platform
type: slave
name: platform
values: '{obj:platforms}'
- axis: <tng-ust_matrix_axis_conf
type: user-defined
name: conf
values: '{obj:confs}'
- axis: <tng-ust_matrix_axis_build
type: user-defined
name: build
values: '{obj:builds}'
- axis: <tng-ust_matrix_axis_liburcu_version
type: user-defined
name: liburcu_version
values: '{obj:liburcu_versions}'
- _lttng-ust_matrix_axes_review_lttng-tools: <tng-ust_matrix_axes_review_lttng-tools
name: 'lttng-ust_matrix_axes_review_lttng-tools'
project-type: matrix
node: 'master' # Applies only to matrix flyweight task
execution-strategy: *lttng-ust_matrix_execution-strategy_defaults
axes:
- axis: *lttng-ust_matrix_axis_platform
- axis: *lttng-ust_matrix_axis_conf
- axis: *lttng-ust_matrix_axis_build
- _lttng-ust_steps_copyartifact_defaults:
name: 'lttng-ust_steps_copyartifact_defaults'
steps:
- copyartifact: <tng-ust_steps_copyartifact_defaults
project: ''
which-build: last-successful
stable: false
filter: 'build/**'
target: 'deps'
do-not-fingerprint: true
- _lttng-ust_builders_defaults: <tng-ust_builders_defaults
name: 'lttng-ust_builders_defaults'
builders:
# Generate a properties file to add additionnal env
- shell: |
#!/bin/bash
set -exu
# Select the liburcu conf based on the current conf
case "$conf" in
debug-rcu|tls_fallback)
liburcu_conf=$conf
;;
*)
liburcu_conf=std
;;
esac
echo "liburcu_conf=$liburcu_conf" > env.properties
# Inject the additionnal env early to use them in the copyartifact step
- inject:
properties-file: env.properties
- copyartifact:
<<: *lttng-ust_steps_copyartifact_defaults
project: '{job_prefix}liburcu_${{liburcu_version}}_{buildtype}/platform=${{platform}},conf=${{liburcu_conf}},build=std'
# Run the build
- shell:
!include-raw-escape:
- scripts/common/print.sh
- scripts/lttng-ust/build.sh
- _lttng-ust_builders_review_lttng-tools: <tng-ust_builders_review_lttng-tools
name: 'lttng-ust_builders_review_lttng-tools'
builders:
# Generate a properties file to add additionnal env
- shell: |
#!/bin/bash
set -exu
# Select the liburcu conf based on the current conf
case "$conf" in
debug-rcu|tls_fallback)
liburcu_conf=$conf
;;
*)
liburcu_conf=std
;;
esac
echo "liburcu_conf=$liburcu_conf" >> env.properties
# Select the liburcu version based on the gerrit branch
case "$GERRIT_BRANCH" in
master)
liburcu_version=master
;;
*)
liburcu_version={liburcu_version}
;;
esac
echo "liburcu_version=$liburcu_version" >> env.properties
# Inject the additionnal env early to use them in the copyartifact step
- inject:
properties-file: env.properties
- copyartifact:
<<: *lttng-ust_steps_copyartifact_defaults
project: 'liburcu_${{liburcu_version}}_{buildtype}/platform=${{platform}},conf=${{liburcu_conf}},build=std'
- copyartifact:
<<: *lttng-ust_steps_copyartifact_defaults
project: 'babeltrace_{babeltrace_version}_{buildtype}/platform=${{platform}},conf=std,build=std'
- shell: |
#!/bin/bash
set -exu
git clone -b "$GERRIT_BRANCH" https://review.lttng.org/lttng-tools src/lttng-tools
- shell:
!include-raw-escape:
- scripts/common/print.sh
- scripts/lttng-ust/build.sh
- shell:
!include-raw-escape:
- scripts/lttng-tools/gerrit-install-deps.sh
- shell:
!include-raw-escape:
- scripts/common/print.sh
- scripts/lttng-tools/build.sh
- _lttng-ust_publishers_defaults: <tng-ust_publishers_defaults
name: 'lttng-ust_publishers_defaults'
publishers:
- tap: <tng-ust_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: <tng-ust_publisher_warnings-ng_defaults
xml: |
false
false
true
false
0
0
LOW
true
true
false
true
false
1
TOTAL
WARNING
AGGREGATION_TOOLS
- archive: <tng-ust_publisher_archive_defaults
artifacts: 'build/**,tap/**,log/**'
follow-symlinks: true
allow-empty: false
- workspace-cleanup: <tng-ust_publisher_workspace-cleanup_defaults
clean-if:
- failure: false
- ircbot: <tng-ust_publisher_ircbot_defaults
strategy: statechange-only
message-type: summary
matrix-notifier: only-parent
- email-ext: <tng-ust_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
- _lttng-ust_publishers_review: <tng-ust_publishers_review
name: 'lttng-ust_publishers_review'
publishers:
- tap: *lttng-ust_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
FAILED
AGGREGATION_TOOLS
- archive: *lttng-ust_publisher_archive_defaults
- workspace-cleanup: *lttng-ust_publisher_workspace-cleanup_defaults
## Templates
- job-template:
name: '{job_prefix}lttng-ust_{version}_{buildtype}'
defaults: lttng-ust
<<: *lttng-ust_matrix_axes_defaults
<<: *lttng-ust_builders_defaults
<<: *lttng-ust_publishers_defaults
- job-template:
name: dev_review_lttng-ust_{version}_{buildtype}
defaults: lttng-ust
concurrent: true
scm:
- git:
url: https://review.lttng.org/lttng-ust
refspec: 'refs/changes/*:refs/changes/*'
branches:
- '$GERRIT_REFSPEC'
basedir: src/lttng-ust
skip-tag: true
triggers:
- gerrit: <tng-ust_trigger_gerrit_defaults
trigger-on:
- comment-added-event:
approval-category: 'CI-Build'
approval-value: 1
projects:
- project-compare-type: 'PLAIN'
project-pattern: 'lttng-ust'
branches:
- branch-compare-type: 'PLAIN'
branch-pattern: '{version}'
<<: *lttng-ust_matrix_axes_defaults
<<: *lttng-ust_builders_defaults
<<: *lttng-ust_publishers_review
properties:
- inject:
properties-content: |
PROJECT_NAME=lttng-ust
- build-discarder:
days-to-keep: 1
- throttle:
option: 'category'
categories:
- 'gerrit-{buildtype}'
- job-template:
name: dev_review_lttng-ust_lttng-tools_{version}_{buildtype}
defaults: lttng-ust
concurrent: true
scm:
- git:
url: https://review.lttng.org/lttng-ust
refspec: 'refs/changes/*:refs/changes/*'
branches:
- '$GERRIT_REFSPEC'
basedir: src/lttng-ust
skip-tag: true
triggers:
- gerrit: *lttng-ust_trigger_gerrit_defaults
<<: *lttng-ust_matrix_axes_review_lttng-tools
<<: *lttng-ust_builders_review_lttng-tools
<<: *lttng-ust_publishers_review
properties:
- inject:
properties-content: |
PROJECT_NAME=lttng-ust
- build-discarder:
days-to-keep: 1
- throttle:
option: 'category'
categories:
- 'gerrit-{buildtype}'
- job-template:
name: lttng-ust_{version}_scan-build
defaults: lttng-ust
node: 'deb12-amd64'
triggers:
- pollscm:
cron: "@daily"
builders:
- copyartifact:
<<: *lttng-ust_steps_copyartifact_defaults
project: liburcu_master_linuxbuild/platform=deb12-amd64,conf=std,build=std
- shell:
!include-raw-escape: scripts/common/scan-build.sh
publishers:
- html-publisher:
name: 'HTML Report'
dir: 'scan-build-archive/'
files: 'index.html'
- workspace-cleanup: *lttng-ust_publisher_workspace-cleanup_defaults
- ircbot: *lttng-ust_publisher_ircbot_defaults
- job-template:
name: lttng-ust_{version}_coverity
defaults: lttng-ust
node: 'deb12-amd64'
triggers:
- pollscm:
cron: "@daily"
wrappers:
- ansicolor: *lttng-ust_wrapper_ansicolor_defaults
- timeout: *lttng-ust_wrapper_timeout_defaults
- timestamps
- workspace-cleanup
- credentials-binding:
- username-password-separated:
credential-id: lttng-ust_coverity_token
username: COVERITY_SCAN_PROJECT_NAME
password: COVERITY_SCAN_TOKEN
builders:
- copyartifact:
<<: *lttng-ust_steps_copyartifact_defaults
project: liburcu_master_linuxbuild/platform=deb12-amd64,conf=std,build=std
- shell:
!include-raw-escape: scripts/common/coverity.sh
publishers:
- archive:
artifacts: 'analysis-results.tgz,cov-int/**'
allow-empty: false
- workspace-cleanup: *lttng-ust_publisher_workspace-cleanup_defaults
- ircbot: *lttng-ust_publisher_ircbot_defaults
## Views
- view-template:
name: 'LTTng-ust'
view-type: list
regex: 'lttng-ust[-_].*'
## Projects
- project:
name: lttng-ust
job_prefix: ''
github_user: lttng
github_name: lttng-ust
email_to: 'ci-notification@lists.lttng.org, cc:mathieu.desnoyers@efficios.com'
jobs:
## Master ##
- '{job_prefix}lttng-ust_{version}_{buildtype}':
buildtype: linuxbuild
version: master
platforms: !!python/tuple [deb12-amd64]
builds: !!python/tuple [std, dist, oot, oot-dist]
confs: !!python/tuple [std, agents, debug-rcu, tls_fallback]
liburcu_versions: !!python/tuple [stable-0.13, stable-0.14, master]
filter: '(build=="std") || ((liburcu_version=="master" && (conf=="std" || conf=="agents")))'
touchstone: ''
- '{job_prefix}lttng-ust_{version}_{buildtype}':
buildtype: portbuild
version: master
platforms: !!python/tuple [deb12-armhf, deb12-arm64, deb12-ppc64el, deb12-i386]
builds: !!python/tuple [std]
confs: !!python/tuple [std, agents]
liburcu_versions: !!python/tuple [stable-0.13, master]
filter: ''
touchstone: ''
- '{job_prefix}lttng-ust_{version}_{buildtype}':
buildtype: slesbuild
version: master
platforms: !!python/tuple [sles12sp5-amd64, sles15sp4-amd64]
builds: !!python/tuple [std]
confs: !!python/tuple [agents]
liburcu_versions: !!python/tuple [stable-0.13, master]
filter: ''
touchstone: ''
- '{job_prefix}lttng-ust_{version}_{buildtype}':
buildtype: elbuild
version: master
platforms: !!python/tuple [el7-amd64, el8-amd64, el9-amd64, el7-arm64, el8-arm64, el9-arm64]
builds: !!python/tuple [std]
confs: !!python/tuple [std]
liburcu_versions: !!python/tuple [stable-0.13, master]
filter: ''
touchstone: ''
- '{job_prefix}lttng-ust_{version}_{buildtype}':
buildtype: yoctobuild
version: master
platforms: !!python/tuple [yocto23-powerpcspe, yocto40-powerpc, yocto40-ppc64]
builds: !!python/tuple [std]
confs: !!python/tuple [std]
liburcu_versions: !!python/tuple [stable-0.13, master]
filter: ''
touchstone: ''
- '{job_prefix}lttng-ust_{version}_{buildtype}':
buildtype: freebsdbuild
version: master
platforms: !!python/tuple [freebsd-amd64]
builds: !!python/tuple [std]
confs: !!python/tuple [agents]
liburcu_versions: !!python/tuple [stable-0.13, master]
filter: ''
touchstone: ''
- 'lttng-ust_{version}_scan-build':
version: master
- 'lttng-ust_{version}_coverity':
version: master
## Stable 2.13 ##
- '{job_prefix}lttng-ust_{version}_{buildtype}':
buildtype: linuxbuild
version: stable-2.13
platforms: !!python/tuple [deb12-amd64]
builds: !!python/tuple [std, dist, oot, oot-dist]
confs: !!python/tuple [std, agents, debug-rcu, tls_fallback]
liburcu_versions: !!python/tuple [stable-0.13, stable-0.14, master]
filter: '(build=="std") || ((liburcu_version=="stable-0.13" && (conf=="std" || conf=="agents")))'
touchstone: ''
- '{job_prefix}lttng-ust_{version}_{buildtype}':
buildtype: portbuild
version: stable-2.13
platforms: !!python/tuple [deb12-armhf, deb12-arm64, deb12-ppc64el, deb12-i386]
builds: !!python/tuple [std]
confs: !!python/tuple [std, agents]
liburcu_versions: !!python/tuple [stable-0.13, master]
filter: ''
touchstone: ''
- '{job_prefix}lttng-ust_{version}_{buildtype}':
buildtype: slesbuild
version: stable-2.13
platforms: !!python/tuple [sles12sp5-amd64, sles15sp4-amd64]
builds: !!python/tuple [std]
confs: !!python/tuple [agents]
liburcu_versions: !!python/tuple [stable-0.13, master]
filter: ''
touchstone: ''
- '{job_prefix}lttng-ust_{version}_{buildtype}':
buildtype: elbuild
version: stable-2.13
platforms: !!python/tuple [el7-amd64, el8-amd64, el9-amd64, el7-arm64, el8-arm64, el9-arm64]
builds: !!python/tuple [std]
confs: !!python/tuple [std]
liburcu_versions: !!python/tuple [stable-0.13, master]
filter: ''
touchstone: ''
- '{job_prefix}lttng-ust_{version}_{buildtype}':
buildtype: yoctobuild
version: stable-2.13
platforms: !!python/tuple [yocto23-powerpcspe, yocto40-powerpc, yocto40-ppc64]
builds: !!python/tuple [std]
confs: !!python/tuple [std]
liburcu_versions: !!python/tuple [stable-0.13, master]
filter: ''
touchstone: ''
- 'lttng-ust_{version}_scan-build':
version: stable-2.13
## Stable 2.12 ##
- '{job_prefix}lttng-ust_{version}_{buildtype}':
buildtype: linuxbuild
version: stable-2.12
platforms: !!python/tuple [deb12-amd64]
builds: !!python/tuple [std, dist, oot, oot-dist]
confs: !!python/tuple [std, agents, debug-rcu, tls_fallback]
liburcu_versions: !!python/tuple [stable-0.13, stable-0.14, master]
filter: '(build=="std") || ((liburcu_version=="stable-0.13" && (conf=="std" || conf=="agents")))'
touchstone: ''
- '{job_prefix}lttng-ust_{version}_{buildtype}':
buildtype: portbuild
version: stable-2.12
platforms: !!python/tuple [deb12-armhf, deb12-arm64, deb12-ppc64el, deb12-i386]
builds: !!python/tuple [std]
confs: !!python/tuple [std, agents]
liburcu_versions: !!python/tuple [stable-0.13, master]
filter: ''
touchstone: ''
- '{job_prefix}lttng-ust_{version}_{buildtype}':
buildtype: slesbuild
version: stable-2.12
platforms: !!python/tuple [sles12sp5-amd64, sles15sp4-amd64]
builds: !!python/tuple [std]
confs: !!python/tuple [agents]
liburcu_versions: !!python/tuple [stable-0.13]
filter: ''
touchstone: ''
- '{job_prefix}lttng-ust_{version}_{buildtype}':
buildtype: elbuild
version: stable-2.12
platforms: !!python/tuple [el7-amd64, el8-amd64, el9-amd64, el7-arm64, el8-arm64, el9-arm64]
builds: !!python/tuple [std]
confs: !!python/tuple [std]
liburcu_versions: !!python/tuple [stable-0.13]
filter: ''
touchstone: ''
- '{job_prefix}lttng-ust_{version}_{buildtype}':
buildtype: yoctobuild
version: stable-2.12
platforms: !!python/tuple [yocto23-powerpcspe, yocto40-powerpc, yocto40-ppc64]
builds: !!python/tuple [std]
confs: !!python/tuple [std]
liburcu_versions: !!python/tuple [stable-0.13]
filter: ''
touchstone: ''
- 'lttng-ust_{version}_scan-build':
version: stable-2.12
- project:
name: review-lttng-ust
job_prefix: ''
github_user: lttng
github_name: lttng-ust
jobs:
## master ##
- 'dev_review_lttng-ust_{version}_{buildtype}':
version: master
buildtype: linuxbuild
platforms: !!python/tuple [deb12-amd64]
builds: !!python/tuple [std, oot, dist, oot-dist]
confs: !!python/tuple [std, agents]
liburcu_versions: !!python/tuple [stable-0.14]
filter: ''
touchstone: '(build == "std") && (conf == "std")'
- 'dev_review_lttng-ust_lttng-tools_{version}_{buildtype}':
version: master
buildtype: linuxbuild
platforms: !!python/tuple [deb12-amd64]
builds: !!python/tuple [std, oot, dist, oot-dist]
confs: !!python/tuple [std, agents]
filter: ''
touchstone: ''
liburcu_version: stable-0.14
babeltrace_version: stable-2.0
- 'dev_review_lttng-ust_lttng-tools_{version}_{buildtype}':
version: master
buildtype: slesbuild
platforms: !!python/tuple [sles12sp5-amd64, sles15sp4-amd64]
builds: !!python/tuple [std]
confs: !!python/tuple [agents]
filter: ''
touchstone: ''
liburcu_version: stable-0.14
babeltrace_version: stable-2.0
- 'dev_review_lttng-ust_{version}_{buildtype}':
version: master
buildtype: portbuild
platforms: !!python/tuple [deb12-armhf, deb12-arm64, deb12-ppc64el, deb12-i386]
builds: !!python/tuple [std]
confs: !!python/tuple [agents]
liburcu_versions: !!python/tuple [stable-0.14]
filter: ''
touchstone: '(platform == "deb12-i386")'
- 'dev_review_lttng-ust_{version}_{buildtype}':
version: master
buildtype: freebsdbuild
platforms: !!python/tuple [freebsd-amd64]
builds: !!python/tuple [std]
confs: !!python/tuple [agents]
liburcu_versions: !!python/tuple [stable-0.14]
filter: ''
touchstone: ''
## Stable 2.13 ##
- 'dev_review_lttng-ust_{version}_{buildtype}':
version: stable-2.13
buildtype: linuxbuild
platforms: !!python/tuple [deb12-amd64]
builds: !!python/tuple [std, oot, dist, oot-dist]
confs: !!python/tuple [std, agents]
liburcu_versions: !!python/tuple [stable-0.13]
filter: ''
touchstone: '(build == "std") && (conf == "std")'
- 'dev_review_lttng-ust_lttng-tools_{version}_{buildtype}':
version: stable-2.13
buildtype: linuxbuild
platforms: !!python/tuple [deb12-amd64]
builds: !!python/tuple [std, oot, dist, oot-dist]
confs: !!python/tuple [std, agents]
filter: ''
touchstone: ''
liburcu_version: stable-0.13
babeltrace_version: stable-2.0
- 'dev_review_lttng-ust_{version}_{buildtype}':
version: stable-2.13
buildtype: portbuild
platforms: !!python/tuple [deb12-armhf, deb12-arm64, deb12-ppc64el, deb12-i386]
builds: !!python/tuple [std]
confs: !!python/tuple [agents]
liburcu_versions: !!python/tuple [stable-0.13]
filter: ''
touchstone: '(platform == "deb12-i386")'
## Stable 2.12 ##
- 'dev_review_lttng-ust_{version}_{buildtype}':
version: stable-2.12
buildtype: linuxbuild
platforms: !!python/tuple [deb12-amd64]
builds: !!python/tuple [std, oot, dist, oot-dist]
confs: !!python/tuple [std, agents]
liburcu_versions: !!python/tuple [stable-0.13]
filter: ''
touchstone: '(build == "std") && (conf == "std")'
- 'dev_review_lttng-ust_lttng-tools_{version}_{buildtype}':
version: stable-2.12
buildtype: linuxbuild
platforms: !!python/tuple [deb12-amd64]
builds: !!python/tuple [std, oot, dist, oot-dist]
confs: !!python/tuple [std, agents]
filter: ''
touchstone: ''
liburcu_version: stable-0.13
babeltrace_version: stable-2.0
- 'dev_review_lttng-ust_{version}_{buildtype}':
version: stable-2.12
buildtype: portbuild
platforms: !!python/tuple [deb12-armhf, deb12-arm64, deb12-ppc64el, deb12-i386]
builds: !!python/tuple [std]
confs: !!python/tuple [agents]
liburcu_versions: !!python/tuple [stable-0.13]
filter: ''
touchstone: '(platform == "deb12-i386")'
- project:
name: lttng-ust-views
views:
- LTTng-ust