project-type: freestyle
- logrotate:
- daysToKeep: -1
- numToKeep: 2
- artifactDaysToKeep: -1
- artifactNumToKeep: -1
-
wrappers:
- - workspace-cleanup
+ - ansicolor
+ - timeout:
+ timeout: 90
+ fail: true
+ type: absolute
- timestamps
- - ansicolor:
- colormap: xterm
+ - workspace-cleanup:
+ clean-if:
+ - failure: false
scm:
- git:
- url: git://github.com/efficios/babeltrace.git
+ url: git://github.com/{github_user}/{github_name}.git
browser: githubweb
- browser-url: https://github.com/efficios/babeltrace
+ browser-url: https://github.com/{github_user}/{github_name}
branches:
- origin/{version}
+ basedir: src/babeltrace
+ skip-tag: true
+ git-tool: jgit
triggers:
- pollscm:
cron: "@hourly"
properties:
+ - inject:
+ properties-content: |
+ PROJECT_NAME=babeltrace
+ - build-discarder:
+ num-to-keep: 2
- github:
- url: https://github.com/efficios/babeltrace
-
+ url: https://github.com/{github_user}/{github_name}
-## Templates
-- job-template:
- name: babeltrace_{version}_{buildtype}
- defaults: babeltrace
+## 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:
name: build
values: '{obj:build}'
+- babeltrace_build_builders_defaults: &babeltrace_build_builders_defaults
+ name: 'babeltrace_build_builders_defaults'
builders:
- shell:
!include-raw-escape: scripts/babeltrace/build.sh
- # TODO: Scan for open tasks
+- 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/**/*.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:
- failed:
+ unstable:
total-all: 0
total-high: 0
total-normal: 0
- archive:
artifacts: 'build/**'
allow-empty: false
- - ircbot:
- strategy: new-failure-and-fixed
- matrix-notifier: only-parent
- channels:
- - name: '#lttng'
+ - 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
+
+## 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}_winbuild
+ defaults: babeltrace
+
+ <<: *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: babeltrace_{version}_cppcheck
builders:
- shell: |
rm -f babeltrace-cppcheck.xml
- cppcheck --enable=all --xml --xml-version=2 $WORKSPACE 2> babeltrace-cppcheck.xml
+ cppcheck --enable=all --xml --xml-version=2 $WORKSPACE/src/babeltrace 2> babeltrace-cppcheck.xml
publishers:
- archive:
allow-empty: false
- cppcheck:
pattern: 'babeltrace-cppcheck.xml'
- - email:
- recipients: 'ci-notification@lists.lttng.org'
- notify-every-unstable-build: true
- send-to-individuals: false
- job-template:
name: babeltrace_{version}_scan-build
builders:
- shell:
- !include-raw-escape: scripts/babeltrace/scan-build.sh
+ !include-raw-escape: scripts/common/scan-build.sh
publishers:
- html-publisher:
publishers:
- workspace-cleanup
+ - archive:
+ artifacts: 'analysis-results.tgz,cov-int/**'
+ allow-empty: false
- job-template:
name: babeltrace_{version}_pylint
- copyartifact:
project: babeltrace_{version}_build/arch=x86-64,build=std,conf=python-bindings
which-build: last-successful
- stable: true
+ stable: false
filter: 'build/**'
target: 'deps/babeltrace'
- shell:
min: 10
max: 999
unstable: 999
- - email:
- recipients: 'ci-notification@lists.lttng.org'
- notify-every-unstable-build: true
- send-to-individuals: 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
+
+# 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: 'x86-64'
+
+ 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=x86-64
+ 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: babeltrace
+ github_user: efficios
+ github_name: babeltrace
+ email_to: 'ci-notification@lists.lttng.org, cc:jgalar@efficios.com'
version:
- !include: jobs/inc/babeltrace-versions.yaml.inc
+ - stable-1.3
+ - stable-1.4
+ - stable-1.5
+ - stable-2.0
+ - master
jobs:
- 'babeltrace_{version}_{buildtype}':
buildtype: build
arch: !!python/tuple [x86-32, x86-64]
build: !!python/tuple [std, oot, dist]
conf: !!python/tuple [std, static, python-bindings]
+ - 'babeltrace_{version}_{buildtype}':
+ buildtype: clangbuild
+ arch: !!python/tuple [x86-32, x86-64]
+ build: !!python/tuple [clang]
+ conf: !!python/tuple [std, static]
- 'babeltrace_{version}_{buildtype}':
buildtype: portbuild
arch: !!python/tuple [armhf, arm64, powerpc, ppc64el]
build: !!python/tuple [std]
conf: !!python/tuple [std, static, python-bindings]
+ - 'babeltrace_{version}_{buildtype}':
+ buildtype: slesbuild
+ arch: !!python/tuple [sles12sp2]
+ build: !!python/tuple [std]
+ conf: !!python/tuple [std]
- 'babeltrace_{version}_{buildtype}':
buildtype: solarisbuild
- arch: !!python/tuple [solaris10, solaris11]
+ arch: !!python/tuple [sol10-i386, sol11-i386]
build: !!python/tuple [std]
conf: !!python/tuple [std, static]
- version:
- - stable-1.3
+ - 'babeltrace_{version}_{buildtype}':
+ buildtype: macosxbuild
+ arch: !!python/tuple [macosx]
+ build: !!python/tuple [std]
+ conf: !!python/tuple [std]
+ version: # macOS support was introduced in 1.4
+ - stable-1.4
+ - stable-1.5
+ - stable-2.0
+ - master
+ - 'babeltrace_{version}_winbuild':
+ arch: !!python/tuple [cygwin, cygwin64, msys2-mingw32, msys2-mingw64]
+ build: !!python/tuple [std]
+ conf: !!python/tuple [std]
+ version: # Mingw support was introduced in 2.0
+ - stable-2.0
- master
+ - 'babeltrace_{version}_winbuild':
+ arch: !!python/tuple [cygwin, cygwin64]
+ build: !!python/tuple [std]
+ conf: !!python/tuple [std]
+ version: # Cygwin support was introduced in 1.5
+ - stable-1.5
- '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.4-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 [x86-32, x86-64]
+ 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.4-staging
+ - stable-1.5-staging
+ - stable-2.0-staging
+ - master-staging
+ arch: !!python/tuple [macosx]
+ build: !!python/tuple [std]
+ conf: !!python/tuple [std]