- defaults: name: lttng-tools description: | The lttng-tools project provides a session daemon (lttng-sessiond) that acts as a tracing registry, the "lttng" command line for tracing control, a lttng-ctl library for tracing control and a lttng-relayd for network streaming.

Job is managed by Jenkins Job Builder.

project-type: freestyle logrotate: daysToKeep: -1 numToKeep: 2 artifactDaysToKeep: -1 artifactNumToKeep: -1 wrappers: - workspace-cleanup - timestamps - ansicolor scm: - git: url: git://github.com/lttng/lttng-tools.git browser: githubweb browser-url: https://github.com/lttng/lttng-tools branches: - origin/{version} triggers: - pollscm: cron: "@hourly" properties: - github: url: https://github.com/lttng/lttng-tools ## Templates - job-template: name: lttng-tools_{version}_{buildtype} defaults: lttng-tools project-type: matrix node: 'master' # Applies only to matrix flyweight task execution-strategy: combination-filter: | (build=="std") || (liburcu_version=="master") axes: - axis: type: slave name: arch values: '{obj:arch}' - axis: type: user-defined name: conf values: '{obj:conf}' - axis: type: user-defined name: liburcu_version values: '{obj:urcuversion}' - axis: type: user-defined name: babeltrace_version values: '{obj:babelversion}' - axis: type: user-defined name: build values: '{obj:build}' properties: - throttle: max-per-node: 1 option: 'category' categories: - 'lttng-tools' matrixbuilds: false matrixconfigs: true builders: - conditional-step: condition-kind: regex-match label: '$conf' regex: (std|static) on-evaluation-failure: run steps: - copyartifact: project: liburcu_${{liburcu_version}}_{buildtype}/arch=${{arch}},conf=${{conf}},build=std which-build: last-successful stable: true filter: 'build/**' target: 'deps/liburcu' do-not-fingerprint: true - copyartifact: project: babeltrace_${{babeltrace_version}}_{buildtype}/arch=${{arch}},conf=${{conf}},build=std which-build: last-successful stable: true filter: 'build/**' target: 'deps/babeltrace' do-not-fingerprint: true - copyartifact: project: lttng-ust_{version}_{buildtype}/liburcu_version=${{liburcu_version}},arch=${{arch}},conf=${{conf}},build=std which-build: last-successful stable: true filter: 'build/**' target: 'deps/lttng-ust' do-not-fingerprint: true - conditional-step: condition-kind: regex-match label: '$conf' regex: (python-bindings|no-ust) on-evaluation-failure: run steps: - copyartifact: project: liburcu_${{liburcu_version}}_{buildtype}/arch=${{arch}},conf=std,build=std which-build: last-successful stable: true filter: 'build/**' target: 'deps/liburcu' do-not-fingerprint: true - copyartifact: project: babeltrace_${{babeltrace_version}}_{buildtype}/arch=${{arch}},conf=std,build=std which-build: last-successful stable: true filter: 'build/**' target: 'deps/babeltrace' do-not-fingerprint: true - copyartifact: project: lttng-ust_{version}_{buildtype}/liburcu_version=${{liburcu_version}},arch=${{arch}},conf=std,build=std which-build: last-successful stable: true filter: 'build/**' target: 'deps/lttng-ust' do-not-fingerprint: true - conditional-step: condition-kind: regex-match label: '$conf' regex: (java-agent|python-agent) on-evaluation-failure: run steps: - copyartifact: project: liburcu_${{liburcu_version}}_{buildtype}/arch=${{arch}},conf=std,build=std which-build: last-successful stable: true filter: 'build/**' target: 'deps/liburcu' do-not-fingerprint: true - copyartifact: project: babeltrace_${{babeltrace_version}}_{buildtype}/arch=${{arch}},conf=std,build=std which-build: last-successful stable: true filter: 'build/**' target: 'deps/babeltrace' do-not-fingerprint: true - copyartifact: project: lttng-ust_{version}_{buildtype}/liburcu_version=${{liburcu_version}},arch=${{arch}},conf=${{conf}},build=std which-build: last-successful stable: true filter: 'build/**' target: 'deps/lttng-ust' do-not-fingerprint: true - shell: !include-raw-escape: scripts/lttng-tools/build.sh # TODO: Scan for open tasks publishers: - tap: results: 'tap/**/*.tap' failed-tests-mark-build-as-failure: true todo-is-failure: false - warnings: console-log-parsers: - 'GNU Make + GNU C Compiler (gcc)' #total-thresholds: # failed: # total-all: 0 # total-high: 0 # total-normal: 0 # total-low: 0 - archive: artifacts: 'build/**' allow-empty: false - workspace-cleanup - ircbot: strategy: new-failure-and-fixed matrix-notifier: only-parent channels: - name: '#lttng' - job-template: name: lttng-tools_{version}_cppcheck defaults: lttng-tools triggers: - pollscm: cron: "@daily" builders: - shell: | rm -f lttng-tools-cppcheck.xml cppcheck --enable=all --xml --xml-version=2 $WORKSPACE 2> lttng-tools-cppcheck.xml publishers: - archive: artifacts: 'lttng-tools-cppcheck.xml' allow-empty: false - cppcheck: pattern: 'lttng-tools-cppcheck.xml' - email: recipients: 'ci-notification@lists.lttng.org' notify-every-unstable-build: true send-to-individuals: false - job-template: name: lttng-tools_{version}_scan-build defaults: lttng-tools node: 'x86-64' triggers: - pollscm: cron: "@daily" builders: - copyartifact: project: liburcu_{urcuversion}_build/arch=x86-64,conf=std,build=std which-build: last-successful stable: true filter: 'build/**' target: 'deps/liburcu' do-not-fingerprint: true - copyartifact: project: lttng-ust_{version}_build/liburcu_version={urcuversion},arch=x86-64,conf=std,build=std which-build: last-successful stable: true filter: 'build/**' target: 'deps/lttng-ust' do-not-fingerprint: true - shell: !include-raw-escape: scripts/lttng-tools/scan-build.sh publishers: - html-publisher: name: 'HTML Report' dir: 'scan-build-archive/' files: 'index.html' - job-template: name: lttng-tools_{version}_coverity defaults: lttng-tools node: 'x86-64' triggers: - pollscm: cron: "@daily" wrappers: - workspace-cleanup - timestamps - ansicolor: colormap: xterm - credentials-binding: - username-password-separated: credential-id: lttng-tools_coverity_token username: COVERITY_SCAN_PROJECT_NAME password: COVERITY_SCAN_TOKEN builders: - copyartifact: project: liburcu_master_build/arch=x86-64,conf=std,build=std which-build: last-successful stable: true filter: 'build/**' target: 'deps/liburcu' do-not-fingerprint: true - copyartifact: project: lttng-ust_{version}_build/liburcu_version={version},arch=x86-64,conf=std,build=std which-build: last-successful stable: true filter: 'build/**' target: 'deps/lttng-ust' do-not-fingerprint: true - shell: !include-raw-escape: scripts/common/coverity.sh publishers: - workspace-cleanup # TODO - job-template: name: lttng-tools_{version}_pylint defaults: lttng-tools node: 'x86-64' scm: [] triggers: - pollscm: cron: "@daily" builders: - copyartifact: project: lttng-tools-{version}/arch=x86-64,build=std,conf=python-agent which-build: last-successful stable: true filter: 'build/**' target: 'deps/lttng-tools' do-not-fingerprint: true - shell: !include-raw-escape: scripts/lttng-tools/pylint.sh publishers: - archive: artifacts: 'pep8.out,pylint.out' - violations: pep8: pattern: pep8.out min: 10 max: 999 unstable: 999 pylint: pattern: pylint.out min: 10 max: 999 unstable: 999 - email: recipients: 'ci-notification@lists.lttng.org' notify-every-unstable-build: true send-to-individuals: false ## Project - project: name: lttng-tools version: !include: jobs/inc/lttng-tools-versions.yaml.inc jobs: - 'lttng-tools_{version}_{buildtype}': buildtype: build version: master arch: !!python/tuple [x86-32, x86-64] build: !!python/tuple [std, oot, dist] conf: !!python/tuple [std, no-ust, python-bindings, java-agent, python-agent] urcuversion: !!python/tuple [master] babelversion: !!python/tuple [master] - 'lttng-tools_{version}_{buildtype}': buildtype: portbuild version: master arch: !!python/tuple [armhf, arm64, powerpc, ppc64el] build: !!python/tuple [std] conf: !!python/tuple [std, no-ust, python-bindings, java-agent, python-agent] urcuversion: !!python/tuple [master] babelversion: !!python/tuple [master] - 'lttng-tools_{version}_{buildtype}': buildtype: build version: stable-2.7 arch: !!python/tuple [x86-32, x86-64] build: !!python/tuple [std, oot, dist] conf: !!python/tuple [std, no-ust, python-bindings, java-agent, python-agent] urcuversion: !!python/tuple [stable-0.9] babelversion: !!python/tuple [stable-1.3] - 'lttng-tools_{version}_{buildtype}': buildtype: portbuild version: stable-2.7 arch: !!python/tuple [armhf, arm64, powerpc] build: !!python/tuple [std] conf: !!python/tuple [std, no-ust, python-bindings, java-agent, python-agent] urcuversion: !!python/tuple [stable-0.9] babelversion: !!python/tuple [stable-1.3] - 'lttng-tools_{version}_{buildtype}': buildtype: build version: stable-2.6 arch: !!python/tuple [x86-32, x86-64] build: !!python/tuple [std, oot, dist] conf: !!python/tuple [std, no-ust, python-bindings] urcuversion: !!python/tuple [stable-0.9] babelversion: !!python/tuple [stable-1.3] - 'lttng-tools_{version}_{buildtype}': buildtype: portbuild version: stable-2.6 arch: !!python/tuple [armhf, arm64, powerpc] build: !!python/tuple [std] conf: !!python/tuple [std, no-ust, python-bindings] urcuversion: !!python/tuple [stable-0.9] babelversion: !!python/tuple [stable-1.3] - 'lttng-tools_{version}_cppcheck' - 'lttng-tools_{version}_scan-build': version: master urcuversion: master - 'lttng-tools_{version}_scan-build': version: stable-2.7 urcuversion: stable-0.9 - 'lttng-tools_{version}_scan-build': version: stable-2.6 urcuversion: stable-0.9 #- 'lttng-tools_{version}_pylint' - 'lttng-tools_{version}_coverity': version: master