Revert "Feat!: Upgrade Jenkins-job-builder to 6x"
[ci-management.git] / jjb / csit / csit-vpp-device.yaml
index 4f2fd78..f2a0542 100644 (file)
@@ -1,4 +1,4 @@
-# Copyright (c) 2020 Cisco and/or its affiliates.
+# Copyright (c) 2023 Cisco and/or its affiliates.
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
 # You may obtain a copy of the License at:
 - project:
     name: csit-vpp-device
     description: 'CSIT jenkins jobs.'
-    os:
-      - 'ubuntu1804'
-    node-arch:
-      - '1n-skx'
-      - '1n-tx2':
-          executor: 'vpp-csit-arm-ubuntu18'
-          skip-vote: 'true'
     jobs:
-      - 'csit-vpp-device-{stream}-{os}-{node-arch}'
-      - 'csit-vpp-device-{stream}-{os}-{node-arch}-semiweekly':
+      - 'csit-vpp-device-{stream}-{os}-{executor-arch}-{node-arch}'
+      - 'csit-vpp-device-semiweekly-{stream}-{os}-{executor-arch}-{node-arch}'
+      - 'csit-vpp-device-weekly-{stream}-{os}-{executor-arch}-{node-arch}'
+      - 'csit-vpp-device-report-coverage-{stream}-{node-arch}':
           stream:
-            - master:
-                branch: 'master'
-                branch-id: 'oper'
-            - '2009_lts':
-                branch: 'rls2009_lts'
-                branch-id: 'oper-rls2009_lts'
-      - 'csit-vpp-device-{stream}-{os}-{node-arch}-weekly':
-          stream:
-            - master:
-                branch: 'master'
-                branch-id: 'oper'
-            - '2009_lts':
-                branch: 'rls2009_lts'
-                branch-id: 'oper-rls2009_lts'
-
+            - '2402':
+                branch: 'rls2402'
+                branch-id: 'oper-rls2402'
+    node-arch:
+      - '1n-alt':
+          os: 'ubuntu2204'
+          executor-arch: 'aarch64'
+          make-parallel-jobs: '32'
+          skip-vote: 'false'
+      - '1n-spr':
+          os: 'ubuntu2204'
+          executor-arch: 'x86_64'
+          make-parallel-jobs: '32'
+          skip-vote: 'true'
     project: 'csit'
-    executor: 'vpp-csit-device'
     branch: 'master'
     branch-id: 'oper'
     stream:
       - master:
           branch: 'master'
           branch-id: 'oper'
-      - '2005':
-          branch: 'rls2005'
-          branch-id: 'oper-rls2005'
-      - '2009':
-          branch: 'rls2009'
-          branch-id: 'oper-rls2009'
-      - '2009_lts':
-          branch: 'rls2009_lts'
-          branch-id: 'oper-rls2009_lts'
-    exclude:
-      - stream: '2005'
-        node-arch: '1n-tx2'
+      - '2402':
+          branch: 'rls2402'
+          branch-id: 'oper-rls2402'
+
+- job-template:
+    name: 'csit-vpp-device-report-coverage-{stream}-{node-arch}'
+
+    project-type: freestyle
+    node: 'csit-builder-{os}-prod-{executor-arch}'
+    concurrent: true
+    latest-only: false
+
+    properties:
+      - lf-infra-properties:
+          build-days-to-keep: "{build-days-to-keep}"
+
+    parameters:
+      - project-parameter:
+          project: '{project}'
+      - gerrit-parameter:
+          branch: '{branch}'
+      - make-parallel-jobs-parameter:
+          make-parallel-jobs: '{make-parallel-jobs}'
+      - os-parameter:
+          os: '{os}'
+      - gerrit-refspec-parameter
+      - gerrit-event-type-parameter
+      - gerrit-event-comment-text-parameter
+      - csit-fail-on-crc-mismatch-parameter:
+          fail-on-crc-mismatch: 'True'
+
+    scm:
+      - gerrit-trigger-scm:
+          credentials-id: 'jenkins-gerrit-credentials'
+          refspec: '$GERRIT_REFSPEC'
+          choosing-strategy: 'gerrit'
+
+    wrappers:
+      - fdio-infra-wrappers:
+          build-timeout: '{build-timeout}'
+
+    triggers:
+      - gerrit-trigger-csit-perftest:
+          project: '{project}'
+          branch: '{branch}'
+          trigger-word: 'csit-vpp-report-dev-{node-arch}'
+          skip-vote: false
+
+    builders:
+      - shell:
+          !include-raw-escape:
+          - ../scripts/setup_executor_env.sh
+      - shell:
+          !include-raw-escape:
+          - ../scripts/csit/device-verify.sh
+
+    publishers:
+      - fdio-infra-publish
 
 - job-template:
-    name: 'csit-vpp-device-{stream}-{os}-{node-arch}'
-    description: |
-      <ul>
-          <li>objective
-              <ul>
-                  <li>vpp-device verify - per csit gerrit patch
-              </ul>
-          <li>job
-              <ul>
-                  <li>name: <b>csit-vpp-device-{stream}-{os}-{node-arch}</b>
-                  <li>trigger: keyword in comment to csit patch:
-                      <b>csit-devicetest tag_list</b>
-              </ul>
-          <li>executor
-              <ul>
-                  <li>{executor}
-              </ul>
-          <li>test-cases selection
-              <ul>
-                  <li>test-cases selected using trigger keyword followed by tags
-                  <li>all test-cases are labelled with CSIT RF topic tags
-                      defined in <i>csit/docs/tag_documentation.rst</i>
-              </ul>
-          <li>default tags for vpp-device test type
-              <ul>
-                  <li>devicetest
-              </ul>
-          <li>results
-              <ul>
-                  <li>jjb verify: PASS/FAIL
-                  <li>present: no
-                  <li>analyse: no
-              </ul>
-      </ul>
+    name: 'csit-vpp-device-{stream}-{os}-{executor-arch}-{node-arch}'
 
     project-type: freestyle
-    node: '{executor}'
+    node: 'csit-builder-{os}-prod-{executor-arch}'
     concurrent: true
-    archive-artifacts: 'archive/*.*'
     latest-only: false
 
-    build-discarder:
-      daysToKeep: '{build-days-to-keep}'
-      numToKeep: '{build-num-to-keep}'
-      artifactDaysToKeep: '{build-artifact-days-to-keep}'
-      artifactNumToKeep: '{build-artifact-num-to-keep}'
+    properties:
+      - lf-infra-properties:
+          build-days-to-keep: "{build-days-to-keep}"
 
     parameters:
       - project-parameter:
           project: '{project}'
       - gerrit-parameter:
           branch: '{branch}'
+      - make-parallel-jobs-parameter:
+          make-parallel-jobs: '{make-parallel-jobs}'
       - os-parameter:
           os: '{os}'
       - gerrit-refspec-parameter
       - gerrit-event-type-parameter
       - gerrit-event-comment-text-parameter
-      - string:
-          name: ARCHIVE_ARTIFACTS
-          default: '{archive-artifacts}'
-          description: Artifacts to archive to the logs server.
       # This is an automatic verify job, part of API coverage.
       # CRC checking is needed to ensure vpp crc job breaks only when intended.
       # Unlikely to be removed, as this job is primary source of API coverage.
           build-timeout: '{build-timeout}'
 
     triggers:
-      - 'gerrit-trigger-csit-vpp-devicetest-full':
+      - gerrit-trigger-csit-vpp-devicetest-full:
           project: '{project}'
           branch: '{branch}'
           skip-vote: '{skip-vote}'
           - ../scripts/csit/device-verify.sh
 
     publishers:
-      - robot:
-          output-path: 'archives'
-          other-files:
-            - '*.*'
-      - fdio-infra-shiplogs:
-          maven-version: 'mvn33-new'
+      - fdio-infra-publish
 
 - job-template:
-    name: 'csit-vpp-device-{stream}-{os}-{node-arch}-semiweekly'
-    description: |
-      <ul>
-          <li>objective
-              <ul>
-                  <li>Validate latest vpp build from corresponding branch stored
-                      in nexus against verified CSIT codebase of corresponding
-                      branch.
-              </ul>
-          <li>executor
-              <ul>
-                  <li>{executor}
-              </ul>
-          <li>test-cases selection
-              <ul>
-                  <li>pre-selected test-cases
-                  <li>all test-cases are labelled with CSIT RF topic tags
-                      defined in <i>csit/docs/tag_documentation.rst</i>
-              </ul>
-          <li>default tags for vpp-device test type
-              <ul>
-                  <li>devicetest
-              </ul>
-          <li>results
-              <ul>
-                  <li>jjb verify: PASS/FAIL
-                  <li>present: no
-                  <li>analyse: no
-              </ul>
-      </ul>
+    name: 'csit-vpp-device-semiweekly-{stream}-{os}-{executor-arch}-{node-arch}'
 
     project-type: freestyle
-    node: '{executor}'
+    node: 'csit-builder-{os}-prod-{executor-arch}'
     concurrent: false
-    archive-artifacts: 'csit/archive/*.*'
     latest-only: false
 
-    build-discarder:
-      daysToKeep: '{build-days-to-keep}'
-      numToKeep: '{build-num-to-keep}'
-      artifactDaysToKeep: '{build-artifact-days-to-keep}'
-      artifactNumToKeep: '{build-artifact-num-to-keep}'
+    properties:
+      - lf-infra-properties:
+          build-days-to-keep: "{build-days-to-keep}"
 
     parameters:
       - project-parameter:
           project: '{project}'
       - gerrit-parameter:
           branch: '{branch}'
+      - make-parallel-jobs-parameter:
+          make-parallel-jobs: '{make-parallel-jobs}'
       - os-parameter:
           os: '{os}'
-      - string:
-          name: ARCHIVE_ARTIFACTS
-          default: '{archive-artifacts}'
-          description: Artifacts to archive to the logs server.
 
     wrappers:
       - fdio-infra-wrappers-non-activity-timeout:
           - ../scripts/csit/device-semiweekly.sh
 
     publishers:
-      - robot:
-          output-path: 'archives'
-          other-files:
-            - '*.*'
-      - fdio-infra-shiplogs:
-          maven-version: 'mvn33-new'
+      - fdio-infra-publish
 
 - job-template:
-    name: 'csit-vpp-device-{stream}-{os}-{node-arch}-weekly'
-    description: |
-      <ul>
-          <li>objective
-              <ul>
-                  <li>Validate CSIT code of corresponding branch against
-                      verified vpp build from corresponding branch.
-              </ul>
-          <li>executor
-              <ul>
-                  <li>{executor}
-              </ul>
-          <li>test-cases selection
-              <ul>
-                  <li>pre-selected test-cases
-                  <li>all test-cases are labelled with CSIT RF topic tags
-                      defined in <i>csit/docs/tag_documentation.rst</i>
-              </ul>
-          <li>default tags for vpp-device test type
-              <ul>
-                  <li>devicetest
-              </ul>
-          <li>results
-              <ul>
-                  <li>jjb verify: PASS/FAIL
-                  <li>present: no
-                  <li>analyse: no
-              </ul>
-      </ul>
+    name: 'csit-vpp-device-weekly-{stream}-{os}-{executor-arch}-{node-arch}'
 
     project-type: freestyle
-    node: '{executor}'
+    node: 'csit-builder-{os}-prod-{executor-arch}'
     concurrent: false
-    archive-artifacts: 'archive/*.*'
     latest-only: false
 
-    build-discarder:
-      daysToKeep: '{build-days-to-keep}'
-      numToKeep: '{build-num-to-keep}'
-      artifactDaysToKeep: '{build-artifact-days-to-keep}'
-      artifactNumToKeep: '{build-artifact-num-to-keep}'
+    properties:
+      - lf-infra-properties:
+          build-days-to-keep: "{build-days-to-keep}"
 
     parameters:
       - project-parameter:
           project: '{project}'
       - gerrit-parameter:
           branch: '{branch}'
+      - make-parallel-jobs-parameter:
+          make-parallel-jobs: '{make-parallel-jobs}'
       - os-parameter:
           os: '{os}'
-      - string:
-          name: ARCHIVE_ARTIFACTS
-          default: '{archive-artifacts}'
-          description: Artifacts to archive to the logs server.
 
     scm:
       - git-scm:
           - ../scripts/csit/device-verify.sh
 
     publishers:
-      - robot:
-          output-path: 'archives'
-          other-files:
-            - '*.*'
-      - fdio-infra-shiplogs:
-          maven-version: 'mvn33-new'
+      - fdio-infra-publish