X-Git-Url: http://git.lttng.org./?a=blobdiff_plain;f=jobs%2Fliburcu.yaml;h=98e40b4478093025567eca59d86cca42ced23852;hb=51c9c62db1805a4cdd96be18df4082f1ac5d81c5;hp=3c0e3f3c95678f81672b77f590112bc830a3407b;hpb=b6e61d51a8ffa34c9c5a725ab482ae42b70d9766;p=lttng-ci.git diff --git a/jobs/liburcu.yaml b/jobs/liburcu.yaml index 3c0e3f3..98e40b4 100644 --- a/jobs/liburcu.yaml +++ b/jobs/liburcu.yaml @@ -27,39 +27,46 @@ project-type: freestyle - logrotate: - daysToKeep: -1 - numToKeep: 2 - artifactDaysToKeep: -1 - artifactNumToKeep: -1 - wrappers: - - workspace-cleanup - - timestamps - ansicolor + - timeout: + timeout: 90 + fail: true + type: absolute + - timestamps + - workspace-cleanup: + clean-if: + - failure: false scm: - git: - url: https://github.com/urcu/userspace-rcu.git + url: https://github.com/{github_user}/{github_name}.git browser: githubweb - browser-url: https://github.com/urcu/userspace-rcu.git + browser-url: https://github.com/{github_user}/{github_name} branches: - origin/{version} + basedir: src/liburcu + skip-tag: true triggers: - - pollscm: "@hourly" + - pollscm: + cron: "@hourly" properties: + - inject: + properties-content: | + PROJECT_NAME=liburcu + - build-discarder: + num-to-keep: 2 - github: - url: https://github.com/urcu/userspace-rcu/ - + url: https://github.com/{github_user}/{github_name} -## Templates -- job-template: - name: liburcu_{version}_{buildtype} - defaults: liburcu +## Anchors +- liburcu_build_axes_defaults: &liburcu_build_axes_defaults + name: 'liburcu_build_axes_defaults' project-type: matrix + node: 'master' # Applies only to matrix flyweight task axes: - axis: type: slave @@ -68,70 +75,155 @@ - axis: type: user-defined name: conf - values: - - std - - static - - tls_fallback + values: '{obj:conf}' - axis: type: user-defined name: build - values: - - std - - oot - - dist + values: '{obj:build}' +- liburcu_build_builders_defaults: &liburcu_build_builders_defaults + name: 'liburcu_build_builders_defaults' builders: - shell: - !include-raw-escape scripts/liburcu/build.sh + !include-raw-escape: + - scripts/common/print.sh + - scripts/liburcu/build.sh + +- liburcu_build_builders_win: &liburcu_build_builders_win + name: 'liburcu_build_builders_win' + builders: + - 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/cygpath-prefix + - scripts/common/print.sh + - scripts/liburcu/build.sh - # TODO: Scan for open tasks +- liburcu_build_publishers_defaults: &liburcu_build_publishers_defaults + name: 'liburcu_build_publishers_defaults' publishers: + - tap: + results: 'tap/**/*.log' + fail-if-no-results: true + 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/**' + artifacts: 'build/**,tap/**' allow-empty: false - fingerprint: true - - trigger: - project: lttng-ust-{version} - threshold: SUCCESS + - 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: liburcu_{version}_{buildtype} + defaults: liburcu + + <<: *liburcu_build_axes_defaults + <<: *liburcu_build_builders_defaults + <<: *liburcu_build_publishers_defaults + +- job-template: + name: liburcu_{version}_winbuild + defaults: liburcu + + <<: *liburcu_build_axes_defaults + <<: *liburcu_build_builders_win + <<: *liburcu_build_publishers_defaults - job-template: name: liburcu_{version}_cppcheck defaults: liburcu triggers: - - pollscm: "@daily" + - pollscm: + cron: "@daily" builders: - shell: | - rm -f liburcu-cppcheck.xml - cppcheck --enable=all --xml --xml-version=2 $WORKSPACE 2> liburcu-cppcheck.xml + rm -f cppcheck-result.xml + cppcheck --enable=all --xml --xml-version=2 $WORKSPACE/src/liburcu 2> cppcheck-result.xml publishers: - archive: - artifacts: 'liburcu-cppcheck.xml' + artifacts: 'cppcheck-result.xml' allow-empty: false - fingerprint: true - cppcheck: - pattern: 'liburcu-cppcheck.xml' - - email: - recipients: 'ci-notification@lists.lttng.org' - notify-every-unstable-build: true - send-to-individuals: false + pattern: 'cppcheck-result.xml' + - email-ext: + recipients: '{obj:email_to}' + reply-to: ci-notification@lists.lttng.org + always: false + unstable: false + first-failure: true + first-unstable: false + 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: true + pre-build: false + matrix-trigger: only-parent + send-to: + - recipients - job-template: name: liburcu_{version}_scan-build defaults: liburcu - node: 'x86-64' + node: 'amd64' triggers: - - pollscm: "@daily" + - pollscm: + cron: "@daily" builders: - shell: - !include-raw-escape scripts/liburcu/scan-build.sh + !include-raw-escape: scripts/common/scan-build.sh publishers: - html-publisher: @@ -139,33 +231,102 @@ dir: 'scan-build-archive/' files: 'index.html' -# TODO: liburcu_{version}_coverity +- job-template: + name: liburcu_{version}_coverity + defaults: liburcu + node: 'amd64' + triggers: + - pollscm: + cron: "@daily" -- job-group: - name: 'liburcu_{version}_build' - buildtype: 'build' - jobs: - - 'liburcu_{version}_{buildtype}' + wrappers: + - ansicolor + - timeout: + timeout: 60 + fail: true + type: absolute + - timestamps + - workspace-cleanup: + clean-if: + - failure: false + - credentials-binding: + - username-password-separated: + credential-id: liburcu_coverity_token + username: COVERITY_SCAN_PROJECT_NAME + password: COVERITY_SCAN_TOKEN -- job-group: - name: 'liburcu_{version}_portbuild' - buildtype: 'portbuild' - jobs: - - 'liburcu_{version}_{buildtype}' + builders: + - shell: + !include-raw-escape: scripts/common/coverity.sh + + publishers: + - workspace-cleanup + - archive: + artifacts: 'analysis-results.tgz,cov-int/**' + allow-empty: false + + +## Views +- view-template: + name: 'Liburcu' + view-type: list + regex: 'liburcu[-_].*' -## Project + +## Projects - project: name: liburcu + github_user: urcu + github_name: userspace-rcu + email_to: 'ci-notification@lists.lttng.org, cc:mathieu.desnoyers@efficios.com' version: - - stable-0.7 - - stable-0.8 + - stable-0.9 + - stable-0.10 + - stable-0.11 + - stable-0.12 - master jobs: - - 'liburcu_{version}_build': - arch: !!python/tuple [x86-32, x86-64] - - 'liburcu_{version}_portbuild': - arch: !!python/tuple [armhf, powerpc] + - 'liburcu_{version}_{buildtype}': + buildtype: build + arch: !!python/tuple [amd64] + build: !!python/tuple [std, oot, dist] + conf: !!python/tuple [std, static, tls_fallback, debug-rcu] + - 'liburcu_{version}_{buildtype}': + buildtype: portbuild + arch: !!python/tuple [armhf, arm64, powerpc, ppc64el, i386] + build: !!python/tuple [std] + conf: !!python/tuple [std, static, tls_fallback, debug-rcu] + - 'liburcu_{version}_{buildtype}': + buildtype: slesbuild + arch: !!python/tuple [sles12sp2] + build: !!python/tuple [std] + conf: !!python/tuple [std] + - 'liburcu_{version}_{buildtype}': + buildtype: elbuild + arch: !!python/tuple [el8] + build: !!python/tuple [std] + conf: !!python/tuple [std] + - 'liburcu_{version}_{buildtype}': + buildtype: solarisbuild + arch: !!python/tuple [sol10-i386, sol11-i386] + build: !!python/tuple [std] + conf: !!python/tuple [std, static, tls_fallback, debug-rcu] + - 'liburcu_{version}_{buildtype}': + buildtype: macosxbuild + arch: !!python/tuple [macosx] + build: !!python/tuple [std] + conf: !!python/tuple [std, static, tls_fallback, debug-rcu] + - 'liburcu_{version}_winbuild': + arch: !!python/tuple [cygwin64] + build: !!python/tuple [std] + conf: !!python/tuple [std] - 'liburcu_{version}_cppcheck' - 'liburcu_{version}_scan-build' + - 'liburcu_{version}_coverity': + version: master +- project: + name: liburcu-views + views: + - Liburcu