X-Git-Url: http://git.liburcu.org/?a=blobdiff_plain;f=jobs%2Flibrseq.yaml;h=f91ada4dcf45d5ff4383bb98d6ec799414ccbf31;hb=8f584fa68ac826e365ea325adf93b2778e251bf3;hp=e82a0cae3a1e1995989ff1cf67262c1ae0fb4f9e;hpb=51c9c62db1805a4cdd96be18df4082f1ac5d81c5;p=lttng-ci.git diff --git a/jobs/librseq.yaml b/jobs/librseq.yaml index e82a0ca..f91ada4 100644 --- a/jobs/librseq.yaml +++ b/jobs/librseq.yaml @@ -4,7 +4,6 @@ # jobtypes: # - build # - portbuild -# - cppcheck # - coverity # - scan-build # - pylint @@ -18,15 +17,14 @@ project-type: freestyle wrappers: - - ansicolor - - timeout: + - ansicolor: &librseq_wrapper_ansicolor_defaults + colormap: xterm + - timeout: &librseq_wrapper_timeout_defaults timeout: 10 fail: true type: no-activity - timestamps - - workspace-cleanup: - clean-if: - - failure: false + - workspace-cleanup scm: - git: @@ -47,81 +45,122 @@ properties-content: | PROJECT_NAME=librseq - build-discarder: - num-to-keep: 2 + num-to-keep: 10 + artifact-num-to-keep: 2 - github: url: https://github.com/{github_user}/{github_name} ## Anchors -- librseq_build_axes_defaults: &librseq_build_axes_defaults - name: 'librseq_build_axes_defaults' +- _librseq_matrix_axes_defaults: &librseq_matrix_axes_defaults + name: 'librseq_matrix_axes_defaults' project-type: matrix node: 'master' # Applies only to matrix flyweight task + execution-strategy: + touchstone: + expr: '{touchstone}' + result: unstable axes: - - axis: + - axis: &librseq_matrix_axis_platform type: slave - name: arch - values: '{obj:arch}' - - axis: + name: platform + values: '{obj:platforms}' + - axis: &librseq_matrix_axis_conf type: user-defined name: conf - values: '{obj:conf}' - - axis: + values: '{obj:confs}' + - axis: &librseq_matrix_axis_build type: user-defined name: build - values: '{obj:build}' + values: '{obj:builds}' -- librseq_build_axes_cc: &librseq_build_axes_cc - name: 'librseq_build_axes_cc' +- _librseq_matrix_axes_cc: &librseq_matrix_axes_cc + name: 'librseq_matrix_axes_cc' 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}' - - axis: - type: user-defined - name: conf - values: '{obj:conf}' - - axis: - type: user-defined - name: build - values: '{obj:build}' - - axis: + - axis: *librseq_matrix_axis_platform + - axis: *librseq_matrix_axis_conf + - axis: *librseq_matrix_axis_build + - axis: &librseq_matrix_axis_cc type: user-defined name: cc - values: '{obj:cc}' + values: '{obj:ccs}' -- librseq_build_builders_defaults: &librseq_build_builders_defaults - name: 'librseq_build_builders_defaults' +- _librseq_builders_defaults: &librseq_builders_defaults + name: 'librseq_builders_defaults' builders: - shell: !include-raw-escape: - scripts/common/print.sh - scripts/librseq/build.sh -- librseq_build_publishers_defaults: &librseq_build_publishers_defaults - name: 'librseq_build_publishers_defaults' +- _librseq_publishers_defaults: &librseq_publishers_defaults + name: 'librseq_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: &librseq_publisher_tap_defaults + results: 'tap/**/*.log' + fail-if-no-results: true + failed-tests-mark-build-as-failure: true + include-comment-diagnostics: true + output-tap-to-console: false + todo-is-failure: false + - raw: &librseq_publisher_warnings-ng_defaults + xml: | + + + + + + + + + false + + + + + + false + true + false + 0 + 0 + + LOW + + + true + true + false + true + false + + + 1 + TOTAL + WARNING + + + AGGREGATION_TOOLS + + + - archive: &librseq_publisher_archive_defaults + artifacts: 'build/**,tap/**,log/**' + follow-symlinks: true allow-empty: false - - ircbot: - strategy: new-failure-and-fixed + - workspace-cleanup: &librseq_publisher_workspace-cleanup_defaults + clean-if: + - failure: false + - ircbot: &librseq_publisher_ircbot_defaults + strategy: statechange-only + message-type: summary matrix-notifier: only-parent - channels: - - name: '#lttng' - - email-ext: + - email-ext: &librseq_publisher_email-ext_defaults recipients: '{obj:email_to}' reply-to: ci-notification@lists.lttng.org always: false @@ -144,69 +183,78 @@ send-to: - recipients +- _librseq_publishers_review: &librseq_publishers_review + name: 'librseq_publishers_review' + publishers: + - tap: *librseq_publisher_tap_defaults + - raw: *librseq_publisher_warnings-ng_defaults + - archive: *librseq_publisher_archive_defaults + - workspace-cleanup: *librseq_publisher_workspace-cleanup_defaults + + ## Templates - job-template: name: librseq_{version}_{buildtype} defaults: librseq - <<: *librseq_build_axes_defaults - <<: *librseq_build_builders_defaults - <<: *librseq_build_publishers_defaults + <<: *librseq_matrix_axes_defaults + <<: *librseq_builders_defaults + <<: *librseq_publishers_defaults - job-template: name: librseq_{version}_{cctype} defaults: librseq - <<: *librseq_build_axes_cc - <<: *librseq_build_builders_defaults - <<: *librseq_build_publishers_defaults + <<: *librseq_matrix_axes_cc + <<: *librseq_builders_defaults + <<: *librseq_publishers_defaults - job-template: - name: librseq_{version}_cppcheck + name: dev_review_librseq_{version}_{buildtype} defaults: librseq + concurrent: true - triggers: - - pollscm: - cron: "@daily" + scm: + - git: + url: https://review.lttng.org/librseq + refspec: 'refs/changes/*:refs/changes/*' + branches: + - '$GERRIT_REFSPEC' + basedir: src/librseq + skip-tag: true - builders: - - shell: | - rm -f cppcheck-result.xml - cppcheck --enable=all --xml --xml-version=2 $WORKSPACE/src/librseq 2> cppcheck-result.xml + triggers: + - gerrit: + trigger-on: + - comment-added-event: + approval-category: 'CI-Build' + approval-value: 1 + projects: + - project-compare-type: 'PLAIN' + project-pattern: 'librseq' + branches: + - branch-compare-type: 'PLAIN' + branch-pattern: '{version}' + + <<: *librseq_matrix_axes_defaults + <<: *librseq_builders_defaults + <<: *librseq_publishers_review - publishers: - - archive: - artifacts: 'cppcheck-result.xml' - allow-empty: false - - cppcheck: - 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 + properties: + - inject: + properties-content: | + PROJECT_NAME=librseq + - build-discarder: + days-to-keep: 1 + - throttle: + option: 'category' + categories: + - 'gerrit-{buildtype}' - job-template: name: librseq_{version}_scan-build defaults: librseq - node: 'amd64' + node: 'deb12-amd64' triggers: - pollscm: @@ -221,26 +269,22 @@ name: 'HTML Report' dir: 'scan-build-archive/' files: 'index.html' + - workspace-cleanup: *librseq_publisher_workspace-cleanup_defaults - job-template: name: librseq_{version}_coverity defaults: librseq - node: 'amd64' + node: 'deb12-amd64' triggers: - pollscm: cron: "@daily" wrappers: - - ansicolor - - timeout: - timeout: 10 - fail: true - type: no-activity + - ansicolor: *librseq_wrapper_ansicolor_defaults + - timeout: *librseq_wrapper_timeout_defaults - timestamps - - workspace-cleanup: - clean-if: - - failure: false + - workspace-cleanup - credentials-binding: - username-password-separated: credential-id: librseq_coverity_token @@ -256,12 +300,13 @@ - archive: artifacts: 'analysis-results.tgz,cov-int/**' allow-empty: false + - workspace-cleanup: *librseq_publisher_workspace-cleanup_defaults - view-template: - name: 'rseq' + name: 'Librseq' description: 'Restartable sequences' view-type: list - regex: 'librseq_.*|linux-rseq_.*' + regex: 'librseq_.*' ## Project @@ -274,33 +319,40 @@ - master jobs: - 'librseq_{version}_{buildtype}': - buildtype: build - arch: !!python/tuple [amd64] - build: !!python/tuple [std, oot, dist, oot-dist] - conf: !!python/tuple [std, static] - - 'librseq_{version}_{cctype}': - cctype: gccbuild - arch: !!python/tuple [amd64] - build: !!python/tuple [std] - conf: !!python/tuple [std, static] - cc: !!python/tuple [gcc-4.8, gcc-5, gcc-6, gcc-7, gcc-8] + buildtype: linuxbuild + platforms: !!python/tuple [deb12-amd64] + builds: !!python/tuple [std, oot, dist, oot-dist] + confs: !!python/tuple [std, static] + touchstone: '(build == "std") && (conf == "std")' - 'librseq_{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] + platforms: !!python/tuple [deb12-amd64] + builds: !!python/tuple [std] + confs: !!python/tuple [std, static] + ccs: !!python/tuple [clang-13, clang-14, clang-15] + touchstone: '(build == "std") && (conf == "std") && (cc == "clang-15")' - 'librseq_{version}_{buildtype}': buildtype: portbuild - arch: !!python/tuple [armhf, arm64, powerpc, ppc64el, i386] - build: !!python/tuple [std] - conf: !!python/tuple [std, static] -# - 'librseq_{version}_cppcheck' -# - 'librseq_{version}_scan-build' -# - 'librseq_{version}_coverity': -# version: master + platforms: !!python/tuple [deb12-armhf, deb12-arm64, deb12-ppc64el, deb12-i386] + builds: !!python/tuple [std] + confs: !!python/tuple [std, static] + touchstone: '(build == "std") && (conf == "std") && (platform == "deb12-i386")' + +- project: + name: review-librseq + github_user: compudj + github_name: librseq + version: + - master + jobs: + - 'dev_review_librseq_{version}_{buildtype}': + buildtype: linuxbuild + platforms: !!python/tuple [deb12-amd64] + builds: !!python/tuple [std, oot, dist, oot-dist] + confs: !!python/tuple [std, static] + touchstone: '(build == "std") && (conf == "std")' - project: name: librseq-views views: - - rseq + - Librseq