Change publisher on one vpp-csit job
[ci-management.git] / jjb / vpp / vpp.yaml
index 5f9d7c8..a80043d 100644 (file)
       - '1908':
           branch: 'stable/1908'
           repo-stream-part: 'stable.1908'
+      - '2001':
+          branch: 'stable/2001'
+          repo-stream-part: 'stable.2001'
+- project:
+    name: vpp-beta
+    jobs:
+      - 'vpp-beta-verify-{stream}-{os}'
+      - 'vpp-beta-merge-{stream}-{os}'
+
+    project: 'vpp'
+    os:
+      - ubuntu2004:
+          repo-os-part: 'ubuntu.focal.main'
+      - centos8:
+          repo-os-part: 'centos8'
+
+    stream:
+      - master:
+          branch: 'master'
+          repo-stream-part: 'master'
 
 - project:
     name: vpp-clang
@@ -61,6 +81,9 @@
       - '1908':
           branch: 'stable/1908'
           repo-stream-part: 'stable.1908'
+      - '2001':
+          branch: 'stable/2001'
+          repo-stream-part: 'stable.2001'
     os: ubuntu1804
 
 - project:
       - '1908':
           branch: 'stable/1908'
           repo-stream-part: 'stable.1908'
+      - '2001':
+          branch: 'stable/2001'
+          repo-stream-part: 'stable.2001'
     device-node-arch:
       - 1n-skx
       - 1n-tx2:
       - '1908':
           branch: 'stable/1908'
           repo-stream-part: 'stable.1908'
+      - '2001':
+          branch: 'stable/2001'
+          repo-stream-part: 'stable.2001'
     os:
       - ubuntu1604:
           repo-os-part: 'ubuntu.xenial.main'
       - '1908':
           branch: 'stable/1908'
           repo-stream-part: 'stable.1908'
+      - '2001':
+          branch: 'stable/2001'
+          repo-stream-part: 'stable.2001'
     os:
       - ubuntu1804:
           repo-os-part: 'ubuntu-arm.bionic.main'
     executor: 'vpp-csit-device'
     skip-vote: 'false'
     stream:
-      # TODO: Add stable/1908 when it is created.
+      # Only master and LTS branches.
+      - '1908':
+          branch: 'stable/1908'
+          repo-stream-part: 'stable.1908'
       - master:
           branch: 'master'
     os: ubuntu1804
     publishers:
       - fdio-infra-shiplogs:
           maven-version: 'mvn36'
-      - naginator:
-          rerun-unstable-builds: false
-          max-failed-builds: 1
-          fixed-delay: 90
 
 - job-template:
     name: 'vpp-historic-merge-{stream}-{os}'
       - shell:
           !include-raw-escape:
           - ../scripts/vpp/parallel-vars.sh
-      - shell:
-          !include-raw-escape:
+          # Do not split, the line below wants env vars from the line above.
           - ../scripts/vpp/arm-build.sh
 
     publishers:
       - fdio-infra-shiplogs:
           maven-version: 'mvn36'
-      - naginator:
-          rerun-unstable-builds: false
-          max-failed-builds: 1
-          fixed-delay: 90
 
 - job-template:
     name: 'vpp-arm-merge-{stream}-{os}'
       - shell:
           !include-raw-escape:
           - ../scripts/vpp/parallel-vars.sh
-      - shell:
-          !include-raw-escape:
+          # Do not split, the line below wants env vars from the line above.
           - ../scripts/vpp/arm-build-no-test.sh
 
       - provide-maven-settings:
     publishers:
       - fdio-infra-shiplogs:
           maven-version: 'mvn36'
-      - naginator:
-          rerun-unstable-builds: true
-          max-failed-builds: 1
-          fixed-delay: 90
+
+- job-template:
+    name: 'vpp-beta-verify-{stream}-{os}'
+
+    project-type: freestyle
+    node: '{os}-us'
+    concurrent: true
+    archive-artifacts: '/tmp/vpp-failed-unittests/*/* **/core'
+
+    build-discarder:
+      daysToKeep: '{build-days-to-keep}'
+      numToKeep: 100
+      artifactDaysToKeep: '{build-artifact-days-to-keep}'
+      artifactNumToKeep: '{build-artifact-num-to-keep}'
+
+    parameters:
+      - project-parameter:
+          project: '{project}'
+      - gerrit-parameter:
+          branch: '{branch}'
+      - os-parameter:
+          os: '{os}'
+      - repo-name-parameter:
+          repo-name: '{repo-stream-part}.{repo-os-part}'
+      - stream-parameter:
+          stream: '{stream}'
+      - string:
+          name: ARCHIVE_ARTIFACTS
+          default: '{archive-artifacts}'
+          description: Artifacts to archive to the logs server.
+
+    scm:
+      - gerrit-trigger-scm:
+          credentials-id: 'jenkins-gerrit-credentials'
+          refspec: '$GERRIT_REFSPEC'
+          choosing-strategy: 'gerrit'
+
+    wrappers:
+      - fdio-infra-wrappers:
+          build-timeout: 120
+
+    triggers:
+      - gerrit-trigger-manually-triggered:
+          comment-trigger-value: 'betacheck'
+          name: '{project}'
+          branch: '{branch}'
+
+    builders:
+      - shell:
+          !include-raw-escape:
+          - ../scripts/setup_vpp_ubuntu_docker_test.sh
+      - shell:
+          !include-raw-escape:
+          - ../scripts/setup_vpp_dpdk_dev_env.sh
+      - shell:
+          !include-raw-escape:
+          - ../scripts/vpp/build.sh
+
+    publishers:
+      - fdio-infra-shiplogs:
+          maven-version: 'mvn36'
 
 - job-template:
     name: 'vpp-verify-{stream}-{os}'
     publishers:
       - fdio-infra-shiplogs:
           maven-version: 'mvn36'
-      - naginator:
-          rerun-unstable-builds: false
-          max-failed-builds: 2
-          fixed-delay: 90
 
 - job-template:
     name: 'vpp-verify-{stream}-clang'
     publishers:
       - fdio-infra-shiplogs:
           maven-version: 'mvn36'
-      - naginator:
-          rerun-unstable-builds: false
-          max-failed-builds: 1
-          fixed-delay: 90
 
 - job-template:
     name: 'vpp-coverity-{stream}'
     publishers:
       - fdio-infra-shiplogs:
           maven-version: 'mvn36'
-      - naginator:
-          rerun-unstable-builds: false
-          max-failed-builds: 1
-          fixed-delay: 90
+
+- job-template:
+    name: 'vpp-beta-merge-{stream}-{os}'
+
+    project-type: freestyle
+    node: '{os}-us'
+
+    build-discarder:
+      daysToKeep: '{build-days-to-keep}'
+      numToKeep: 100
+      artifactDaysToKeep: '{build-artifact-days-to-keep}'
+      artifactNumToKeep: '{build-artifact-num-to-keep}'
+
+    parameters:
+      - project-parameter:
+          project: '{project}'
+      - gerrit-parameter:
+          branch: '{branch}'
+      - os-parameter:
+          os: '{os}'
+      - maven-project-parameter:
+          maven: 'mvn33-new'
+      - maven-exec:
+          maven-version: 'mvn33-new'
+      - stream-parameter:
+          stream: '{stream}'
+      - repo-name-parameter:
+          repo-name: '{repo-stream-part}.{repo-os-part}'
+      - string:
+          name: ARCHIVE_ARTIFACTS
+          default: '{archive-artifacts}'
+          description: Artifacts to archive to the logs server.
+
+    scm:
+      - gerrit-trigger-scm:
+          credentials-id: 'jenkins-gerrit-credentials'
+          refspec: ''
+          choosing-strategy: 'default'
+
+    wrappers:
+      - fdio-infra-wrappers:
+          build-timeout: '{build-timeout}'
+
+    triggers:
+      - gerrit-trigger-manually-triggered:
+          comment-trigger-value: 'betamerge'
+          name: '{project}'
+          branch: '{branch}'
+
+    builders:
+      - config-file-provider:
+          files:
+            - file-id: '.packagecloud'
+              target: '/root'
+      - config-file-provider:
+          files:
+            - file-id: 'packagecloud_api'
+              target: '/root'
+      - shell:
+          !include-raw-escape:
+          - ../scripts/vpp/checkstyle.sh
+      - shell:
+          !include-raw-escape:
+          - ../scripts/setup_vpp_ubuntu_docker_test.sh
+      - shell:
+          !include-raw-escape:
+          - ../scripts/setup_vpp_dpdk_dev_env.sh
+      - shell:
+          !include-raw-escape:
+          - ../scripts/vpp/build.sh
+      - provide-maven-settings:
+          settings-file: 'vpp-settings'
+          global-settings-file: 'global-settings'
+      - shell:
+          !include-raw-escape:
+          - ../scripts/packagecloud_push.sh
+
+    publishers:
+      - fdio-infra-shiplogs:
+          maven-version: 'mvn36'
 
 - job-template:
     name: 'vpp-csit-verify-device-{stream}-{device-node-arch}'
       - shell:
           !include-raw-escape:
           - ../scripts/setup_vpp_dpdk_dev_env.sh
-      - shell:
-          !include-raw-escape:
-          - ../scripts/vpp/parallel-vars.sh
       - shell:
           !include-raw-escape:
           - ../scripts/vpp/csit-device.sh
               <ul>
                   <li>{executor}
               </ul>
+          <li>Objective
+          Contrary to csit-vpp job, this also measures the parent performance,
+          and fails if performance regression is detected.
+          See https://github.com/FDio/csit/blob/master/docs/cpta/methodology/perpatch_performance_tests.rst
       </ul>
 
     project-type: freestyle
 
     triggers:
       - gerrit-trigger-csit-perftest:
-          name: '{project}'
+          project: '{project}'
           branch: '{branch}'
-          node-arch: '{node-arch}'
+          trigger-word: 'perftest-{node-arch}'
+          skip-vote: true
 
     builders:
       - shell:
       - robot-report:
           output-path: 'csit_current/0/'
 
-      - fdio-infra-shiplogs:
-          maven-version: 'mvn36'
+      - lf-infra-publish
 
 - job-template:
     name: 'vpp-csit-verify-api-crc-{stream}'