- 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 - timeout: timeout: 90 fail: true type: absolute - timestamps - workspace-cleanup: clean-if: - failure: false scm: - git: url: git://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 triggers: - pollscm: cron: "@hourly" properties: - inject: properties-content: | PROJECT_NAME=babeltrace - build-discarder: num-to-keep: 2 - github: url: https://github.com/{github_user}/{github_name} ## Anchors - babeltrace_build_axes_defaults: &babeltrace_build_axes_defaults name: 'babeltrace_build_axes_defaults' project-type: matrix node: 'master' # Applies only to matrix flyweight task axes: - axis: type: slave name: arch values: '{obj:arch}' - axis: type: user-defined name: conf values: '{obj:conf}' - axis: type: user-defined name: build values: '{obj:build}' - babeltrace_build_axes_cc: &babeltrace_build_axes_cc name: 'babeltrace_build_axes_cc' project-type: matrix node: 'master' # Applies only to matrix flyweight task axes: - axis: type: slave name: arch values: '{obj:arch}' - axis: type: user-defined name: conf values: '{obj:conf}' - axis: type: user-defined name: build values: '{obj:build}' - axis: type: user-defined name: cc values: '{obj:cc}' - babeltrace_build_builders_defaults: &babeltrace_build_builders_defaults name: 'babeltrace_build_builders_defaults' builders: - shell: !include-raw-escape: scripts/babeltrace/build.sh - babeltrace_build_builders_win: &babeltrace_build_builders_win name: 'babeltrace_build_builders_win' builders: - conditional-step: condition-kind: strings-match on-evaluation-failure: run condition-string1: '${{arch}}' condition-string2: 'cygwin' steps: - shell: !include-raw-escape: - scripts/common/cygwin-shebang - scripts/common/cygwin-prefix - scripts/babeltrace/build.sh - conditional-step: condition-kind: strings-match on-evaluation-failure: run condition-string1: '${{arch}}' condition-string2: 'cygwin64' steps: - shell: !include-raw-escape: - scripts/common/cygwin64-shebang - scripts/common/cygwin-prefix - scripts/babeltrace/build.sh - conditional-step: condition-kind: strings-match on-evaluation-failure: run condition-string1: '${{arch}}' condition-string2: 'msys2-mingw32' steps: - inject: properties-content: 'MSYSTEM=MINGW32' - shell: !include-raw-escape: - scripts/common/msys2-shebang - scripts/common/cygwin-prefix - scripts/babeltrace/build.sh - conditional-step: condition-kind: strings-match on-evaluation-failure: run condition-string1: '${{arch}}' condition-string2: 'msys2-mingw64' steps: - inject: properties-content: 'MSYSTEM=MINGW64' - shell: !include-raw-escape: - scripts/common/msys2-shebang - scripts/common/cygwin-prefix - scripts/babeltrace/build.sh - babeltrace_build_publishers_dev: &babeltrace_build_publishers_dev name: 'babeltrace_build_publishers_dev' publishers: - tap: results: 'tap/**/*.log' failed-tests-mark-build-as-failure: true todo-is-failure: false - warnings: console-log-parsers: - 'GNU Make + GNU C Compiler (gcc)' total-thresholds: unstable: total-all: 0 total-high: 0 total-normal: 0 total-low: 0 - email-ext: recipients: '{obj:email_to}' 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 - babeltrace_build_publishers_prod: &babeltrace_build_publishers_prod name: 'babeltrace_build_publishers_prod' publishers: - tap: results: 'tap/**/*.log' failed-tests-mark-build-as-failure: true todo-is-failure: false - warnings: console-log-parsers: - 'GNU Make + GNU C Compiler (gcc)' total-thresholds: unstable: total-all: 0 total-high: 0 total-normal: 0 total-low: 0 - archive: artifacts: 'build/**' allow-empty: false - email-ext: 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 - babeltrace_build_publishers_gerrit: &babeltrace_build_publishers_gerrit name: 'babeltrace_build_publishers_gerrit' publishers: - tap: results: 'tap/**/*.log' failed-tests-mark-build-as-failure: true todo-is-failure: false - warnings: console-log-parsers: - 'GNU Make + GNU C Compiler (gcc)' total-thresholds: unstable: total-all: 0 total-high: 0 total-normal: 0 total-low: 0 - archive: artifacts: 'build/**' allow-empty: false ## Templates - job-template: name: babeltrace_{version}_{buildtype} defaults: babeltrace <<: *babeltrace_build_axes_defaults <<: *babeltrace_build_builders_defaults <<: *babeltrace_build_publishers_prod - job-template: name: babeltrace_{version}_{cctype} defaults: babeltrace <<: *babeltrace_build_axes_cc <<: *babeltrace_build_builders_defaults <<: *babeltrace_build_publishers_prod - job-template: name: babeltrace_{version}_winbuild defaults: babeltrace # Use jgit on windows to work around path too long error scm: - git: url: git://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: jgit <<: *babeltrace_build_axes_defaults <<: *babeltrace_build_builders_win <<: *babeltrace_build_publishers_prod - job-template: name: dev_{user}_babeltrace_{version}_{buildtype} defaults: babeltrace <<: *babeltrace_build_axes_defaults <<: *babeltrace_build_builders_defaults <<: *babeltrace_build_publishers_dev - job-template: name: dev_gerrit_babeltrace_{buildtype} defaults: babeltrace concurrent: true scm: - git: url: https://review.lttng.org/babeltrace refspec: 'refs/changes/*:refs/changes/*' branches: - '$GERRIT_REFSPEC' basedir: src/babeltrace skip-tag: true triggers: - gerrit: trigger-on: - comment-added-event: approval-category: 'CI-Build' approval-value: 1 projects: - project-compare-type: 'PLAIN' project-pattern: 'babeltrace' branches: - branch-compare-type: 'ANT' branch-pattern: '**' trigger-for-unreviewed-patches: true project-type: matrix node: 'master' # Applies only to matrix flyweight task execution-strategy: combination-filter: | (build=="std" && conf=="python-bindings") || (arch=="amd64") axes: - axis: type: slave name: arch values: '{obj:arch}' - axis: type: user-defined name: conf values: '{obj:conf}' - axis: type: user-defined name: build values: '{obj:build}' <<: *babeltrace_build_builders_defaults <<: *babeltrace_build_publishers_gerrit properties: - inject: properties-content: | PROJECT_NAME=babeltrace - build-discarder: days-to-keep: 2 - github: url: https://github.com/{github_user}/{github_name} - job-template: name: babeltrace_{version}_cppcheck defaults: babeltrace triggers: - pollscm: cron: "@daily" builders: - shell: | rm -f cppcheck-result.xml cppcheck --enable=all --xml --xml-version=2 $WORKSPACE/src/babeltrace 2> cppcheck-result.xml publishers: - archive: artifacts: 'cppcheck-result.xml' allow-empty: false - cppcheck: pattern: 'cppcheck-result.xml' - job-template: name: babeltrace_{version}_scan-build defaults: babeltrace node: 'amd64' triggers: - pollscm: cron: "@daily" builders: - shell: !include-raw-escape: scripts/common/scan-build.sh publishers: - html-publisher: name: 'HTML Report' dir: 'scan-build-archive/' files: 'index.html' - job-template: name: babeltrace_{version}_coverity defaults: babeltrace node: 'amd64' triggers: - pollscm: cron: "@daily" wrappers: - workspace-cleanup - timestamps - ansicolor: colormap: xterm - 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 - archive: artifacts: 'analysis-results.tgz,cov-int/**' allow-empty: false - job-template: name: babeltrace_{version}_pylint defaults: babeltrace node: 'amd64' scm: [] triggers: - pollscm: cron: "@daily" builders: - copyartifact: project: babeltrace_{version}_build/arch=amd64,build=std,conf=python-bindings which-build: last-successful stable: false filter: 'build/**' target: 'deps/babeltrace' - shell: !include-raw-escape: scripts/babeltrace/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-ext: 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 # Use - in version number since yaml anchor do not support dot - babeltrace_version_glib-2-22-5_anchor: &babeltrace_version_glib-2-22-5_anchor name: 'babeltrace_version_glib_anchor' defaults: babeltrace node: 'amd64' builders: - inject: properties-content: | LD_LIBRARY_PATH=$WORKSPACE/glib-2.22.5/BUILD_RESULT/lib PKG_CONFIG_PATH=$WORKSPACE/glib-2.22.5/BUILD_RESULT/lib/pkgconfig arch=amd64 conf=std build=std - shell: | wget http://ftp.gnome.org/pub/gnome/sources/glib/2.22/glib-2.22.5.tar.gz tar xvf glib-2.22.5.tar.gz cd glib-2.22.5 mkdir BUILD_RESULT ./configure --prefix=$WORKSPACE/glib-2.22.5/BUILD_RESULT make -j `nproc` make install - shell: !include-raw-escape: scripts/babeltrace/build.sh - job-template: name: babeltrace_{version}_glib-2.22.5 triggers: - pollscm: cron: "@daily" <<: *babeltrace_version_glib-2-22-5_anchor publishers: - email-ext: 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: name: dev_{user}_babeltrace_{version}_glib-2.22.5 <<: *babeltrace_version_glib-2-22-5_anchor publishers: - email-ext: 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 ## Project - project: name: babeltrace1 github_user: efficios github_name: babeltrace email_to: 'ci-notification@lists.lttng.org, cc:jgalar@efficios.com' version: - stable-1.5 jobs: - 'babeltrace_{version}_{buildtype}': buildtype: build arch: !!python/tuple [amd64] build: !!python/tuple [std, oot, dist] conf: !!python/tuple [std, static, python-bindings] - 'babeltrace_{version}_{buildtype}': buildtype: portbuild arch: !!python/tuple [armhf, arm64, powerpc, ppc64el, i386] build: !!python/tuple [std] conf: !!python/tuple [std, python-bindings] - 'babeltrace_{version}_{buildtype}': buildtype: slesbuild arch: !!python/tuple [sles12sp2] build: !!python/tuple [std] conf: !!python/tuple [std] version: # // support 1.3 on SLES12 - stable-1.3 - stable-1.5 - 'babeltrace_{version}_{buildtype}': buildtype: solarisbuild arch: !!python/tuple [sol10-i386, sol11-i386] build: !!python/tuple [std] conf: !!python/tuple [std, static] - 'babeltrace_{version}_{buildtype}': buildtype: macosxbuild arch: !!python/tuple [macosx] build: !!python/tuple [std] conf: !!python/tuple [std, python-bindings, production] - 'babeltrace_{version}_{cctype}': cctype: clangbuild arch: !!python/tuple [amd64] build: !!python/tuple [std] conf: !!python/tuple [std, static] cc: !!python/tuple [clang-3.9, clang-4.0, clang-6.0, clang-7] - 'babeltrace_{version}_winbuild': arch: !!python/tuple [cygwin, cygwin64] build: !!python/tuple [std] conf: !!python/tuple [std] - 'babeltrace_{version}_cppcheck' - 'babeltrace_{version}_scan-build' - 'babeltrace_{version}_pylint' - project: name: babeltrace2 github_user: efficios github_name: babeltrace email_to: 'ci-notification@lists.lttng.org, cc:jgalar@efficios.com' version: - stable-2.0 - master jobs: - 'babeltrace_{version}_{buildtype}': buildtype: build arch: !!python/tuple [amd64] build: !!python/tuple [std, oot, dist] conf: !!python/tuple [std, static, prod, min] - 'babeltrace_{version}_{buildtype}': buildtype: portbuild arch: !!python/tuple [armhf, arm64, powerpc, ppc64el, i386] build: !!python/tuple [std] conf: !!python/tuple [std, prod] - 'babeltrace_{version}_{buildtype}': buildtype: slesbuild arch: !!python/tuple [sles12sp2] build: !!python/tuple [std] conf: !!python/tuple [std, prod] - 'babeltrace_{version}_{buildtype}': buildtype: macosxbuild arch: !!python/tuple [macosx] build: !!python/tuple [std] conf: !!python/tuple [std, prod] - 'babeltrace_{version}_{cctype}': cctype: clangbuild arch: !!python/tuple [amd64] build: !!python/tuple [std] conf: !!python/tuple [std, static, prod] cc: !!python/tuple [clang-3.9, clang-4.0, clang-6.0, clang-7] - 'babeltrace_{version}_winbuild': arch: !!python/tuple [cygwin, cygwin64, msys2-mingw32, msys2-mingw64] build: !!python/tuple [std] conf: !!python/tuple [std] - 'babeltrace_{version}_cppcheck' - 'babeltrace_{version}_scan-build' - 'babeltrace_{version}_pylint' - 'babeltrace_{version}_coverity': version: master - 'babeltrace_{version}_glib-2.22.5': version: master - project: name: babeltrace-jgalar-staging user: jgalar github_user: jgalar github_name: babeltrace email_to: "jgalar@efficios.com" version: - stable-1.3-staging - stable-1.5-staging - stable-2.0-staging - master-staging jobs: - 'dev_{user}_babeltrace_{version}_glib-2.22.5': version: - master-staging - 'dev_{user}_babeltrace_{version}_{buildtype}': buildtype: build arch: !!python/tuple [amd64] build: !!python/tuple [std, oot, dist] conf: !!python/tuple [std, static, python-bindings] - 'dev_{user}_babeltrace_{version}_{buildtype}': buildtype: macosxbuild version: # macOS support was introduced in 1.4 - stable-1.5-staging - stable-2.0-staging - master-staging arch: !!python/tuple [macosx] build: !!python/tuple [std] conf: !!python/tuple [std] - project: name: gerrit-babeltrace github_user: efficios github_name: babeltrace jobs: - 'dev_gerrit_babeltrace_{buildtype}': buildtype: build arch: !!python/tuple [amd64, armhf, arm64, powerpc, ppc64el, i386] build: !!python/tuple [std, oot, dist] conf: !!python/tuple [std, static, python-bindings, production]