X-Git-Url: http://git.lttng.org./?a=blobdiff_plain;f=jobs%2Fliburcu.yaml;h=38f11c5917386554915f40016f08ccad709ce219;hb=d954b6a8fb45d2f0c89a0178cddb01d9a2897d94;hp=e9c566750cf981138a181b2e17fb01776e6c64a7;hpb=0a6e708bae736b6da19049978e678aa31ac203e2;p=lttng-ci.git diff --git a/jobs/liburcu.yaml b/jobs/liburcu.yaml index e9c5667..38f11c5 100644 --- a/jobs/liburcu.yaml +++ b/jobs/liburcu.yaml @@ -28,14 +28,18 @@ project-type: freestyle wrappers: - - workspace-cleanup - - timestamps - - ansicolor: + - ansicolor: &liburcu_wrapper_ansicolor_defaults colormap: xterm + - timeout: &liburcu_wrapper_timeout_defaults + timeout: 90 + fail: true + type: absolute + - timestamps + - workspace-cleanup scm: - git: - url: git://github.com/{github_user}/{github_name}.git + url: https://github.com/{github_user}/{github_name}.git browser: githubweb browser-url: https://github.com/{github_user}/{github_name} branches: @@ -48,59 +52,155 @@ cron: "@hourly" properties: + - inject: + properties-content: | + PROJECT_NAME=liburcu - build-discarder: num-to-keep: 2 - github: url: https://github.com/{github_user}/{github_name} -## Templates -- job-template: - name: liburcu_{version}_{buildtype} - defaults: liburcu - +## Anchors +- liburcu_matrix_axes_defaults: &liburcu_matrix_axes_defaults + name: 'liburcu_matrix_axes_defaults' project-type: matrix node: 'master' # Applies only to matrix flyweight task + execution-strategy: + touchstone: + expr: '{touchstone}' + result: unstable axes: - axis: type: slave name: arch - values: '{obj:arch}' + values: '{obj:archs}' - axis: type: user-defined name: conf - values: - - std - - static - - tls_fallback + values: '{obj:confs}' - axis: type: user-defined name: build - values: '{obj:build}' + values: '{obj:builds}' +- liburcu_builders_defaults: &liburcu_builders_defaults + name: 'liburcu_builders_defaults' builders: + !j2-yaml: | + {% if buildtype == 'winbuild' %} + - 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 + {% else %} - shell: - !include-raw-escape: scripts/liburcu/build.sh + !include-raw-escape: + - scripts/common/print.sh + - scripts/liburcu/build.sh + {% endif %} - # TODO: Scan for open tasks +- liburcu_publishers_defaults: &liburcu_publishers_defaults + name: 'liburcu_publishers_defaults' publishers: - - 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/**' + - tap: &liburcu_publisher_tap_defaults + results: 'tap/**/*.log' + fail-if-no-results: true + failed-tests-mark-build-as-failure: true + todo-is-failure: false + - raw: &liburcu_publisher_warnings-ng_defaults + xml: | + + + + + + + + + false + + + + + + + + false + + + + + + false + true + false + 0 + 0 + + LOW + + + true + true + false + true + false + + + 1 + TOTAL + WARNING + + + AGGREGATION_TOOLS + + + - archive: &liburcu_publisher_archive_defaults + artifacts: 'build/**,tap/**' allow-empty: false - - ircbot: - strategy: new-failure-and-fixed - matrix-notifier: only-parent - channels: - - name: '#lttng' + - workspace-cleanup: &liburcu_publisher_workspace_cleanup_defaults + clean-if: + - failure: false + - email-ext: &liburcu_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 + +## Templates +- job-template: + name: '{job_prefix}liburcu_{version}_{buildtype}' + defaults: liburcu + + <<: *liburcu_matrix_axes_defaults + <<: *liburcu_builders_defaults + <<: *liburcu_publishers_defaults - job-template: name: liburcu_{version}_cppcheck @@ -112,24 +212,57 @@ builders: - shell: | - rm -f liburcu-cppcheck.xml - cppcheck --enable=all --xml --xml-version=2 $WORKSPACE/src/liburcu 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 - 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' + - workspace-cleanup: *liburcu_publisher_workspace_cleanup_defaults + - email-ext: *liburcu_publisher_email_ext_defaults + +- job-template: + name: dev_gerrit_liburcu_{buildtype} + defaults: liburcu + concurrent: true + + scm: + - git: + url: https://review.lttng.org/userspace-rcu + refspec: 'refs/changes/*:refs/changes/*' + branches: + - '$GERRIT_REFSPEC' + basedir: src/liburcu + skip-tag: true + + triggers: + - gerrit: + trigger-on: + - comment-added-event: + approval-category: 'CI-Build' + approval-value: 1 + projects: + - project-compare-type: 'PLAIN' + project-pattern: 'userspace-rcu' + branches: + - branch-compare-type: 'ANT' + branch-pattern: '**' + + <<: *liburcu_matrix_axes_defaults + <<: *liburcu_builders_defaults + + publishers: + - tap: *liburcu_publisher_tap_defaults + - raw: *liburcu_publisher_warnings-ng_defaults + - workspace-cleanup: *liburcu_publisher_workspace_cleanup_defaults - job-template: name: liburcu_{version}_scan-build defaults: liburcu - node: 'x86-64' + node: 'amd64' triggers: - pollscm: @@ -137,28 +270,29 @@ builders: - shell: - !include-raw-escape: scripts/liburcu/scan-build.sh + !include-raw-escape: scripts/common/scan-build.sh publishers: - html-publisher: name: 'HTML Report' dir: 'scan-build-archive/' files: 'index.html' + - workspace-cleanup: *liburcu_publisher_workspace_cleanup_defaults - job-template: name: liburcu_{version}_coverity defaults: liburcu - node: 'x86-64' + node: 'amd64' triggers: - pollscm: cron: "@daily" wrappers: - - workspace-cleanup + - ansicolor: *liburcu_wrapper_ansicolor_defaults + - timeout: *liburcu_wrapper_timeout_defaults - timestamps - - ansicolor: - colormap: xterm + - workspace-cleanup - credentials-binding: - username-password-separated: credential-id: liburcu_coverity_token @@ -170,44 +304,136 @@ !include-raw-escape: scripts/common/coverity.sh publishers: - - workspace-cleanup - archive: artifacts: 'analysis-results.tgz,cov-int/**' allow-empty: false + - workspace-cleanup: *liburcu_publisher_workspace_cleanup_defaults + + +## Views +- view-template: + name: 'Liburcu' + view-type: list + regex: 'liburcu[-_].*' -## Project +## Projects - project: name: liburcu + job_prefix: '' github_user: urcu github_name: userspace-rcu + email_to: 'ci-notification@lists.lttng.org, cc:mathieu.desnoyers@efficios.com' version: - !include: jobs/inc/liburcu-versions.yaml.inc + - stable-0.12 + - stable-0.13 + - master jobs: - - 'liburcu_{version}_{buildtype}': + - '{job_prefix}liburcu_{version}_{buildtype}': buildtype: build - arch: !!python/tuple [x86-32, x86-64] - build: !!python/tuple [std, oot, dist] - - 'liburcu_{version}_{buildtype}': + archs: !!python/tuple [amd64] + builds: !!python/tuple [std, oot, dist] + confs: !!python/tuple [std, static, tls_fallback, debug-rcu] + touchstone: '(build == "std") && (conf == "std")' + - '{job_prefix}liburcu_{version}_{buildtype}': buildtype: portbuild - arch: !!python/tuple [armhf, arm64, powerpc, ppc64el] - build: !!python/tuple [std] - - 'liburcu_{version}_{buildtype}': - buildtype: solarisbuild - arch: !!python/tuple [solaris10, solaris11] - build: !!python/tuple [std] - version: # Solaris support was introduced in 0.9 - - master - - stable-0.9 - - 'liburcu_{version}_{buildtype}': - buildtype: macosxbuild - arch: !!python/tuple [macosx] - build: !!python/tuple [std] - version: - - master - - stable-0.9 + archs: !!python/tuple [armhf, arm64, powerpc, ppc64el, i386] + builds: !!python/tuple [std] + confs: !!python/tuple [std, static, tls_fallback, debug-rcu] + touchstone: '(build == "std") && (conf == "std") && (arch == "i386")' + - '{job_prefix}liburcu_{version}_{buildtype}': + buildtype: slesbuild + archs: !!python/tuple [sles12sp5] + builds: !!python/tuple [std] + confs: !!python/tuple [std] + touchstone: '(build == "std")' + - '{job_prefix}liburcu_{version}_{buildtype}': + buildtype: elbuild + archs: !!python/tuple [el8] + builds: !!python/tuple [std] + confs: !!python/tuple [std] + touchstone: '(build == "std")' + - '{job_prefix}liburcu_{version}_{buildtype}': + buildtype: macosbuild + archs: !!python/tuple [macos-amd64, macos-arm64] + builds: !!python/tuple [std] + confs: !!python/tuple [std] + touchstone: '(build == "std")' + - '{job_prefix}liburcu_{version}_{buildtype}': + buildtype: winbuild + archs: !!python/tuple [cygwin64] + builds: !!python/tuple [std] + confs: !!python/tuple [std] + touchstone: '(build == "std")' + - '{job_prefix}liburcu_{version}_{buildtype}': + buildtype: freebsdbuild + archs: !!python/tuple [freebsd] + builds: !!python/tuple [std] + confs: !!python/tuple [std] + touchstone: '(build == "std")' - 'liburcu_{version}_cppcheck' - 'liburcu_{version}_scan-build' - 'liburcu_{version}_coverity': version: master + +- project: + name: liburcu-dev-upstream + job_prefix: 'dev_upstream_' + github_user: urcu + github_name: userspace-rcu + email_to: 'ci-notification@lists.lttng.org, cc:mathieu.desnoyers@efficios.com' + version: + - stable-0.9 + - stable-0.10 + - stable-0.11 + jobs: + - '{job_prefix}liburcu_{version}_{buildtype}': + buildtype: build + archs: !!python/tuple [amd64] + builds: !!python/tuple [std, oot, dist] + confs: !!python/tuple [std, static, tls_fallback, debug-rcu] + touchstone: '(build == "std") && (conf == "std")' + - '{job_prefix}liburcu_{version}_{buildtype}': + buildtype: portbuild + archs: !!python/tuple [armhf, arm64, powerpc, ppc64el, i386] + builds: !!python/tuple [std] + confs: !!python/tuple [std, static, tls_fallback, debug-rcu] + touchstone: '(build == "std") && (conf == "std") && (arch == "i386")' + - '{job_prefix}liburcu_{version}_{buildtype}': + buildtype: slesbuild + archs: !!python/tuple [sles12sp5] + builds: !!python/tuple [std] + confs: !!python/tuple [std] + touchstone: '(build == "std")' + - '{job_prefix}liburcu_{version}_{buildtype}': + buildtype: elbuild + archs: !!python/tuple [el8] + builds: !!python/tuple [std] + confs: !!python/tuple [std] + touchstone: '(build == "std")' + + +- project: + name: gerrit-liburcu + github_user: urcu + github_name: userspace-rcu + jobs: + - 'dev_gerrit_liburcu_{buildtype}': + buildtype: build + archs: !!python/tuple [amd64] + builds: !!python/tuple [std, oot, dist] + confs: !!python/tuple [std, static, tls_fallback, debug-rcu] + touchstone: '(build == "std")' + - 'dev_gerrit_liburcu_{buildtype}': + buildtype: portbuild + archs: !!python/tuple [armhf, arm64, powerpc, ppc64el, i386] + builds: !!python/tuple [std] + confs: !!python/tuple [std] + touchstone: '(build == "std")' + + +- project: + name: liburcu-views + views: + - Liburcu