jjb: add ircbot in #lttng-ci
[lttng-ci.git] / jobs / babeltrace.yaml
index c7b0c662b2195c71606d5ae0ee70debf60a043eb..60cfba5e2ce785ddd391a1ba2762eedef30cfb9f 100644 (file)
@@ -44,7 +44,8 @@
           properties-content: |
             PROJECT_NAME=babeltrace
       - build-discarder:
-          num-to-keep: 2
+          num-to-keep: 10
+          artifact-num-to-keep: 2
       - github:
           url: https://github.com/{github_user}/{github_name}
 
         expr: '{touchstone}'
         result: unstable
     axes:
-      - axis: &babeltrace_build_axis_arch
+      - axis: &babeltrace_matrix_axis_platform
          type: slave
-         name: arch
-         values: '{obj:archs}'
-      - axis: &babeltrace_build_axis_conf
+         name: platform
+         values: '{obj:platforms}'
+      - axis: &babeltrace_matrix_axis_conf
          type: user-defined
          name: conf
          values: '{obj:confs}'
-      - axis: &babeltrace_build_axis_build
+      - axis: &babeltrace_matrix_axis_build
          type: user-defined
          name: build
          values: '{obj:builds}'
     <<: *babeltrace_matrix_axes_defaults
 
     axes:
-      - axis: *babeltrace_build_axis_arch
-      - axis: *babeltrace_build_axis_conf
-      - axis: *babeltrace_build_axis_build
-      - axis: &babeltrace_build_axis_cc
+      - axis: *babeltrace_matrix_axis_platform
+      - axis: *babeltrace_matrix_axis_conf
+      - axis: *babeltrace_matrix_axis_build
+      - axis: &babeltrace_matrix_axis_cc
          type: user-defined
          name: cc
          values: '{obj:ccs}'
@@ -95,7 +96,7 @@
       - conditional-step:
           condition-kind: strings-match
           on-evaluation-failure: run
-          condition-string1: {{ '${{arch}}' }}
+          condition-string1: {{ '${{platform}}' }}
           condition-string2: 'cygwin64'
           steps:
             - shell:
       - conditional-step:
           condition-kind: strings-match
           on-evaluation-failure: run
-          condition-string1: {{ '${{arch}}' }}
+          condition-string1: {{ '${{platform}}' }}
           condition-string2: 'msys2-mingw32'
           steps:
             - inject:
       - conditional-step:
           condition-kind: strings-match
           on-evaluation-failure: run
-          condition-string1: {{ '${{arch}}' }}
+          condition-string1: {{ '${{platform}}' }}
           condition-string2: 'msys2-mingw64'
           steps:
             - inject:
           properties-content: |
             LD_LIBRARY_PATH=$WORKSPACE/glib-2.28.6/BUILD_RESULT/lib
             PKG_CONFIG_PATH=$WORKSPACE/glib-2.28.6/BUILD_RESULT/lib/pkgconfig
-            arch=amd64
+            platform=bionic-amd64
             conf=std
             build=std
       - shell: |
           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: &babeltrace_publisher_warnings-ng_defaults
           xml: |
                   <reportEncoding/>
                   <skipSymbolicLinks>false</skipSymbolicLinks>
                 </io.jenkins.plugins.analysis.warnings.Gcc4>
-                <io.jenkins.plugins.analysis.warnings.Clang>
-                  <id/>
-                  <name/>
-                  <jenkins plugin="plugin-util-api"/>
-                  <pattern/>
-                  <reportEncoding/>
-                  <skipSymbolicLinks>false</skipSymbolicLinks>
-                </io.jenkins.plugins.analysis.warnings.Clang>
               </analysisTools>
               <sourceCodeEncoding/>
               <sourceDirectory/>
               <scm/>
             </io.jenkins.plugins.analysis.core.steps.IssuesRecorder>
       - archive: &babeltrace_publisher_archive_defaults
-          artifacts: 'build/**,tap/**'
+          artifacts: 'build/**,tap/**,log/**'
           allow-empty: false
       - workspace-cleanup: &babeltrace_publisher_workspace-cleanup_defaults
           clean-if:
             - failure: false
+      - ircbot: &babeltrace_publisher_ircbot_defaults
+          strategy: statechange-only
+          message-type: summary-scm
+          matrix-notifier: only-configurations
       - email-ext: &babeltrace_publisher_email-ext_defaults
           recipients: '{obj:email_to}'
           reply-to: ci-notification@lists.lttng.org
           send-to:
             - recipients
 
-- babeltrace_build_publishers_gerrit: &babeltrace_build_publishers_gerrit
-    name: 'babeltrace_build_publishers_gerrit'
+- babeltrace_publishers_gerrit: &babeltrace_publishers_gerrit
+    name: 'babeltrace_publishers_gerrit'
     publishers:
       - tap: *babeltrace_publisher_tap_defaults
-      - raw: *babeltrace_publisher_warnings-ng_defaults
+      # Fail job on any compiler warnings
+      - raw:
+          xml: |
+            <io.jenkins.plugins.analysis.core.steps.IssuesRecorder plugin="warnings-ng">
+              <analysisTools>
+                <io.jenkins.plugins.analysis.warnings.Gcc4>
+                  <id/>
+                  <name/>
+                  <jenkins plugin="plugin-util-api"/>
+                  <pattern/>
+                  <reportEncoding/>
+                  <skipSymbolicLinks>false</skipSymbolicLinks>
+                </io.jenkins.plugins.analysis.warnings.Gcc4>
+              </analysisTools>
+              <sourceCodeEncoding/>
+              <sourceDirectory/>
+              <sourceDirectories/>
+              <ignoreQualityGate>false</ignoreQualityGate>
+              <ignoreFailedBuilds>true</ignoreFailedBuilds>
+              <failOnError>false</failOnError>
+              <healthy>0</healthy>
+              <unhealthy>0</unhealthy>
+              <minimumSeverity plugin="analysis-model-api">
+                <name>LOW</name>
+              </minimumSeverity>
+              <filters/>
+              <isEnabledForFailure>true</isEnabledForFailure>
+              <isAggregatingResults>true</isAggregatingResults>
+              <isBlameDisabled>false</isBlameDisabled>
+              <skipPublishingChecks>true</skipPublishingChecks>
+              <publishAllIssues>false</publishAllIssues>
+              <qualityGates>
+                <io.jenkins.plugins.analysis.core.util.QualityGate>
+                  <threshold>1</threshold>
+                  <type>TOTAL</type>
+                  <status>FAILED</status>
+                </io.jenkins.plugins.analysis.core.util.QualityGate>
+              </qualityGates>
+              <trendChartType>AGGREGATION_TOOLS</trendChartType>
+              <scm/>
+            </io.jenkins.plugins.analysis.core.steps.IssuesRecorder>
       - archive: *babeltrace_publisher_archive_defaults
       - workspace-cleanup: *babeltrace_publisher_workspace-cleanup_defaults
 
 
     <<: *babeltrace_matrix_axes_defaults
     <<: *babeltrace_builders_defaults
-    <<: *babeltrace_build_publishers_gerrit
+    <<: *babeltrace_publishers_gerrit
 
 - job-template:
     name: babeltrace_{version}_release
     defaults: babeltrace
-    node: 'amd64'
+    node: 'bionic-amd64'
 
     triggers:
       - pollscm:
       - archive:
           artifacts: 'out/**,tap/**'
           allow-empty: false
+          fingerprint: true
+      - ircbot: *babeltrace_publisher_ircbot_defaults
 
 - job-template:
     name: dev_gerrit_babeltrace_pylint
                 - branch-compare-type: 'ANT'
                   branch-pattern: '**'
 
-    node: 'amd64'
+    node: 'bionic-amd64'
 
     builders:
       - shell:
       - build-discarder:
           days-to-keep: 1
 
-- 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:
-      - workspace-cleanup: *babeltrace_publisher_workspace-cleanup_defaults
-      - archive:
-          artifacts: 'cppcheck-result.xml'
-          allow-empty: false
-      - cppcheck:
-          pattern: 'cppcheck-result.xml'
-
 - job-template:
     name: babeltrace_{version}_scan-build
     defaults: babeltrace
-    node: 'amd64'
+    node: 'bionic-amd64'
 
     triggers:
       - pollscm:
           name: 'HTML Report'
           dir: 'scan-build-archive/'
           files: 'index.html'
+      - ircbot: *babeltrace_publisher_ircbot_defaults
 
 - job-template:
     name: babeltrace_{version}_coverity
     defaults: babeltrace
-    node: 'amd64'
+    node: 'bionic-amd64'
 
     triggers:
       - pollscm:
       - archive:
           artifacts: 'analysis-results.tgz,cov-int/**'
           allow-empty: false
+      - ircbot: *babeltrace_publisher_ircbot_defaults
 
 - job-template:
     name: babeltrace_{version}_pylint
     defaults: babeltrace
-    node: 'amd64'
+    node: 'bionic-amd64'
 
     triggers:
       - pollscm:
       - archive:
           artifacts: 'black.out,flake8.out'
           allow-empty: false
+      - ircbot: *babeltrace_publisher_ircbot_defaults
       - email-ext: *babeltrace_publisher_email-ext_defaults
 
 - job-template:
     name: '{job_prefix}babeltrace_{version}_glib-2.28.6'
     defaults: babeltrace
-    node: 'amd64'
+    node: 'bionic-amd64'
 
     <<: *babeltrace_builders_glib-2-28-6
     <<: *babeltrace_publishers_defaults
       - stable-2.0
       - master
     jobs:
+      - '{job_prefix}babeltrace_{version}_{buildtype}':
+          buildtype: linuxbuild
+          platforms: !!python/tuple [jammy-amd64]
+          builds: !!python/tuple [std, oot, dist, oot-dist]
+          confs: !!python/tuple [std, static, prod, min, doc, asan]
+          filter: '(build=="std") || (conf=="std") || (conf=="doc")'
+          touchstone: '(build == "std") && (conf == "std")'
       - '{job_prefix}babeltrace_{version}_{buildtype}':
           buildtype: build
-          archs: !!python/tuple [amd64]
+          platforms: !!python/tuple [bionic-amd64]
           builds: !!python/tuple [std, oot, dist, oot-dist]
-          confs: !!python/tuple [std, static, prod, min]
-          filter: ''
+          confs: !!python/tuple [std, static, prod, min, doc, asan]
+          filter: '(build=="std") || (conf=="std") || (conf=="doc")'
           touchstone: '(build == "std") && (conf == "std")'
       - '{job_prefix}babeltrace_{version}_{buildtype}':
           buildtype: portbuild
-          archs: !!python/tuple [armhf, arm64, powerpc, ppc64el, i386]
+          platforms: !!python/tuple [deb11-armhf, deb11-arm64, deb11-ppc64el, deb11-i386]
           builds: !!python/tuple [std]
           confs: !!python/tuple [std, prod]
           filter: ''
-          touchstone: '(build == "std") && (conf == "std") && (arch == "i386")'
+          touchstone: '(build == "std") && (conf == "std") && (platform == "deb11-i386")'
       - '{job_prefix}babeltrace_{version}_{buildtype}':
           buildtype: slesbuild
-          archs: !!python/tuple [sles12sp5]
+          platforms: !!python/tuple [sles12sp5-amd64, sles15sp4-amd64]
           builds: !!python/tuple [std]
           confs: !!python/tuple [std, prod]
           filter: ''
           touchstone: ''
       - '{job_prefix}babeltrace_{version}_{buildtype}':
           buildtype: elbuild
-          archs: !!python/tuple [el8]
+          platforms: !!python/tuple [el7-amd64, el8-amd64, el9-amd64]
           builds: !!python/tuple [std]
           confs: !!python/tuple [std, prod]
           filter: ''
           touchstone: ''
+      - '{job_prefix}babeltrace_{version}_{buildtype}':
+          buildtype: yoctobuild
+          platforms: !!python/tuple [yocto23-powerpcspe, yocto23-powerpc, yocto31-ppc64]
+          builds: !!python/tuple [std]
+          confs: !!python/tuple [std]
+          filter: ''
+          touchstone: ''
       - '{job_prefix}babeltrace_{version}_{buildtype}':
           buildtype: macosbuild
-          archs: !!python/tuple [macos-amd64, macos-arm64]
+          platforms: !!python/tuple [macos-amd64, macos-arm64]
           builds: !!python/tuple [std]
           confs: !!python/tuple [std, prod]
           filter: ''
           touchstone: ''
       - '{job_prefix}babeltrace_{version}_{buildtype}':
           buildtype: freebsdbuild
-          archs: !!python/tuple [freebsd]
+          platforms: !!python/tuple [freebsd-amd64]
           builds: !!python/tuple [std]
           confs: !!python/tuple [std, prod]
           filter: ''
           touchstone: ''
       - '{job_prefix}babeltrace_{version}_{buildtype}':
           buildtype: winbuild
-          archs: !!python/tuple [cygwin64, msys2-mingw32, msys2-mingw64]
+          platforms: !!python/tuple [cygwin64, msys2-mingw32, msys2-mingw64]
           builds: !!python/tuple [std]
           confs: !!python/tuple [std]
           filter: ''
           touchstone: ''
       - 'babeltrace_{version}_{cctype}':
           cctype: clangbuild
-          archs: !!python/tuple [amd64]
+          platforms: !!python/tuple [bionic-amd64]
           builds: !!python/tuple [std]
           confs: !!python/tuple [std, static, prod]
           ccs: !!python/tuple [clang-3.9, clang-4.0, clang-6.0, clang-7]
           touchstone: ''
       - 'babeltrace_{version}_release':
           version: v2.0
-      - 'babeltrace_{version}_cppcheck'
       - 'babeltrace_{version}_scan-build'
       - 'babeltrace_{version}_pylint'
       - 'babeltrace_{version}_coverity':
     jobs:
       - 'dev_gerrit_babeltrace_{buildtype}':
           buildtype: build
-          archs: !!python/tuple [amd64, armhf, arm64, powerpc, ppc64el, i386]
+          platforms: !!python/tuple [bionic-amd64, deb11-armhf, deb11-arm64, deb11-ppc64el, deb11-i386]
           builds: !!python/tuple [std, oot, dist, oot-dist]
           confs: !!python/tuple [std, static, prod, min]
-          filter: '(build=="std" && conf=="std") || (arch=="amd64")'
+          filter: '(build=="std" && conf=="std") || (platform=="bionic-amd64")'
           touchstone: ''
       - 'dev_gerrit_babeltrace_{buildtype}':
           buildtype: macosbuild
-          archs: !!python/tuple [macos-amd64, macos-arm64]
+          platforms: !!python/tuple [macos-amd64, macos-arm64]
           builds: !!python/tuple [std]
           confs: !!python/tuple [std, prod]
           filter: ''
           touchstone: ''
       - 'dev_gerrit_babeltrace_{buildtype}':
           buildtype: winbuild
-          archs: !!python/tuple [cygwin64, msys2-mingw64]
+          platforms: !!python/tuple [cygwin64, msys2-mingw64]
           builds: !!python/tuple [std]
           confs: !!python/tuple [std]
           filter: ''
       - stable-1.5
     jobs:
       - '{job_prefix}babeltrace_{version}_{buildtype}':
-          buildtype: build
-          archs: !!python/tuple [amd64]
+          buildtype: linuxbuild
+          platforms: !!python/tuple [jammy-amd64]
           builds: !!python/tuple [std, oot, dist, oot-dist]
           confs: !!python/tuple [std, static, python-bindings]
           filter: ''
           touchstone: '(build == "std") && (conf == "std")'
       - '{job_prefix}babeltrace_{version}_{buildtype}':
           buildtype: portbuild
-          archs: !!python/tuple [armhf, arm64, powerpc, ppc64el, i386]
+          platforms: !!python/tuple [deb11-armhf, deb11-arm64, deb11-ppc64el, deb11-i386]
           builds: !!python/tuple [std]
           confs: !!python/tuple [std, python-bindings]
           filter: ''
-          touchstone: '(build == "std") && (conf == "std") && (arch == "i386")'
+          touchstone: '(build == "std") && (conf == "std") && (platform == "deb11-i386")'
       - '{job_prefix}babeltrace_{version}_{buildtype}':
           buildtype: slesbuild
-          archs: !!python/tuple [sles12sp5]
+          platforms: !!python/tuple [sles12sp5-amd64, sles15sp4-amd64]
           builds: !!python/tuple [std]
           confs: !!python/tuple [std]
           filter: ''
           touchstone: ''
       - '{job_prefix}babeltrace_{version}_{buildtype}':
           buildtype: elbuild
-          archs: !!python/tuple [el8]
+          platforms: !!python/tuple [el7-amd64, el8-amd64, el9-amd64]
           builds: !!python/tuple [std]
           confs: !!python/tuple [std]
           filter: ''
           touchstone: ''
+      - 'babeltrace_{version}_release':
+          version: v1.5
 
 
 - project:
     jobs:
       - '{job_prefix}babeltrace_{version}_{buildtype}':
           buildtype: build
-          archs: !!python/tuple [amd64]
+          platforms: !!python/tuple [bionic-amd64]
           builds: !!python/tuple [std, oot, dist, oot-dist]
           confs: !!python/tuple [std, static, python-bindings]
           filter: ''
           touchstone: ''
       - '{job_prefix}babeltrace_{version}_{buildtype}':
           buildtype: macosbuild
-          archs: !!python/tuple [macos-amd64, macos-arm64]
+          platforms: !!python/tuple [macos-amd64, macos-arm64]
           builds: !!python/tuple [std]
           confs: !!python/tuple [std]
           filter: ''
             - master-staging
       - '{job_prefix}babeltrace_{version}_{buildtype}':
           buildtype: build
-          archs: !!python/tuple [amd64]
+          platforms: !!python/tuple [bionic-amd64]
           builds: !!python/tuple [std, oot, dist, oot-dist]
           confs: !!python/tuple [std, static, prod, min]
           filter: ''
           touchstone: ''
       - '{job_prefix}babeltrace_{version}_{buildtype}':
           buildtype: macosbuild
-          archs: !!python/tuple [macos-amd64, macos-arm64]
+          platforms: !!python/tuple [macos-amd64, macos-arm64]
           builds: !!python/tuple [std]
           confs: !!python/tuple [std, prod]
           filter: ''
This page took 0.029261 seconds and 4 git commands to generate.