Merge "Add controller as MRI in Multipatch"
[releng/builder.git] / jjb / integration / integration-test-jobs.yaml
index b0915e97656a1c87b9a48c688b03ad84fd937cf5..6f567cc50310dc9c096b83af36a79097ecbd3c52 100644 (file)
@@ -5,7 +5,7 @@
     project-name: integration-test
     jobs:
       - 'integration-patch-test-{stream}'
-      - 'integration-multipatch-test-{stream}'
+      - 'inttest-multipatch'
       - 'integration-merge-dashboard'
       - '{project-name}-rtd-jobs':
           build-node: centos7-builder-2c-2g
 
     # CSIT Lists in defaults.yaml
     stream:
-      - sodium:
+      - aluminium:
           branch: 'master'
           mvn-version: 'mvn35'
-          csit-list: !include: csit-jobs-neon.lst
-          build-order: >
-              odlparent yangtools infrautils mdsal controller serviceutils aaa netconf
-              daexim ovsdb neutron openflowplugin coe genius lispflowmapping sfc netvirt
-              bgpcep integration/distribution
-
-      - neon:
-          branch: 'stable/neon'
-          mvn-version: 'mvn35'
-          csit-list: !include: csit-jobs-neon.lst
+          java-version: 'openjdk11'
+          csit-list: !include: csit-jobs-aluminium.lst
           build-order: >
-              odlparent yangtools infrautils mdsal controller serviceutils aaa netconf
-              daexim ovsdb neutron openflowplugin coe genius lispflowmapping sfc netvirt
+              odlparent yangtools mdsal controller infrautils serviceutils aaa netconf
+              daexim jsonrpc ovsdb neutron openflowplugin genius lispflowmapping netvirt
               bgpcep integration/distribution
 
-      - fluorine:
-          branch: 'stable/fluorine'
+      - magnesium:
+          branch: 'stable/magnesium'
           mvn-version: 'mvn35'
-          csit-list: !include: csit-jobs-fluorine.lst
+          java-version: 'openjdk11'
+          csit-list: !include: csit-jobs-magnesium.lst
           build-order: >
-              odlparent yangtools infrautils mdsal controller serviceutils aaa netconf
-              daexim ovsdb neutron openflowplugin coe genius lispflowmapping sfc netvirt
+              odlparent yangtools mdsal infrautils controller serviceutils aaa netconf
+              daexim jsonrpc ovsdb neutron openflowplugin genius lispflowmapping netvirt
               bgpcep integration/distribution
 
-      - oxygen:
-          branch: 'stable/oxygen'
+      - sodium:
+          branch: 'stable/sodium'
           mvn-version: 'mvn35'
-          csit-list: !include: csit-jobs-oxygen.lst
+          csit-list: !include: csit-jobs-sodium.lst
           build-order: >
-              odlparent yangtools infrautils mdsal controller serviceutils aaa netconf
+              odlparent yangtools mdsal infrautils controller serviceutils aaa netconf
               daexim ovsdb neutron openflowplugin coe genius lispflowmapping sfc netvirt
               bgpcep integration/distribution
-          disable-job: true
 
 - project:
     name: integration-distribution
     project-name: integration-test
     jobs:
       - 'integration-distribution-test-{stream}'
+      - 'integration-distribution-mri-test-{stream}'
       - 'integration-distribution-weekly-test-trigger-{stream}'
-      - 'integration-distribution-high-frequency-test-trigger-{stream}'
       - 'integration-update-csit-tests-{stream}'
 
     # CSIT Lists in defaults.yaml
     stream:
-      - neon:
+      - aluminium:
           branch: 'master'
           csit-blacklist: >
-              alto bier capwap centinel didm dluxapps groupbasedpolicy iotdm jsonrpc lacp
-              l2switch messaging4transport nemo netide nic ocpplugin of-config p4plugin packetcable
-              sdninterfaceapp sxp tsdr unimgr usc usecplugin vtn gate longevity sanity tdd tempest wip
-              aaa-csit-1node-keystone-all
+              alto bier coe detnet dluxapps groupbasedpolicy l2switch mdsal nemo
+              p4plugin packetcable sfc sxp telemetry tsdr unimgr usc yangtools
+              gate longevity sanity tdd tempest wip
+              bgpcep-csit-3node-bgpclustering-all
+              bgpcep-csit-3node-bgpclustering-ha-only
               netvirt-csit-1node-1cmb-0ctl-0cmp-openstack-pike
               netvirt-csit-1node-1cmb-0ctl-0cmp-openstack-queens-upstream-stateful-itm-direct
               netvirt-csit-3node-1cmb
+              openflowplugin-csit-1node-bundle-based-reconciliation
               last-line-is-ignored-so-we-need-something-dummy-here-to-make-sure-the-real-last-line-is-used
-          csit-list: !include: csit-jobs-neon.lst
-          csit-weekly-list: '{csit-weekly-list-neon}'
-          csit-high-frequency-list: '{csit-high-frequency-list-neon}'
-      - fluorine:
-          branch: 'stable/fluorine'
+          csit-list: !include: csit-jobs-aluminium.lst
+          csit-mri-list: '{csit-mri-list-aluminium}'
+          csit-weekly-list: '{csit-weekly-list-aluminium}'
+      - magnesium:
+          branch: 'stable/magnesium'
           csit-blacklist: >
-              alto bier capwap centinel didm dluxapps groupbasedpolicy iotdm jsonrpc lacp
-              l2switch messaging4transport nemo netide nic ocpplugin of-config p4plugin packetcable
-              sdninterfaceapp sxp tsdr unimgr usc usecplugin vtn gate longevity sanity tdd tempest wip
-              aaa-csit-1node-keystone-all
+              alto bier coe detnet dluxapps groupbasedpolicy l2switch mdsal nemo
+              p4plugin packetcable sfc sxp telemetry tsdr unimgr usc yangtools
+              gate longevity sanity tdd tempest wip
+              bgpcep-csit-3node-bgpclustering-all
+              bgpcep-csit-3node-bgpclustering-ha-only
               netvirt-csit-1node-1cmb-0ctl-0cmp-openstack-pike
               netvirt-csit-1node-1cmb-0ctl-0cmp-openstack-queens-upstream-stateful-itm-direct
               netvirt-csit-3node-1cmb
+              openflowplugin-csit-1node-bundle-based-reconciliation
               last-line-is-ignored-so-we-need-something-dummy-here-to-make-sure-the-real-last-line-is-used
-          csit-list: !include: csit-jobs-fluorine.lst
-          csit-weekly-list: '{csit-weekly-list-fluorine}'
-          csit-high-frequency-list: '{csit-high-frequency-list-fluorine}'
-      - oxygen:
-          branch: 'stable/oxygen'
+          csit-list: !include: csit-jobs-magnesium.lst
+          csit-mri-list: '{csit-mri-list-magnesium}'
+          csit-weekly-list: '{csit-weekly-list-magnesium}'
+      - sodium:
+          branch: 'stable/sodium'
           csit-blacklist: >
-              capwap centinel didm iotdm jsonrpc lacp messaging4transport netide nic
-              ocpplugin sdninterfaceapp unimgr usecplugin gate longevity sanity tdd tempest wip
-              aaa-csit-1node-keystone-all groupbasedpolicy-csit-1node-1cmb-0ctl-0cmp-openstack-pike-openstack
+              alto bier dluxapps groupbasedpolicy jsonrpc l2switch mdsal nemo
+              p4plugin packetcable sxp telemetry tsdr unimgr usc yangtools
+              gate longevity sanity tdd tempest wip
+              bgpcep-csit-3node-bgpclustering-all
+              bgpcep-csit-3node-bgpclustering-ha-only
               netvirt-csit-1node-1cmb-0ctl-0cmp-openstack-pike
               netvirt-csit-1node-1cmb-0ctl-0cmp-openstack-queens-upstream-stateful-itm-direct
               netvirt-csit-3node-1cmb
+              openflowplugin-csit-1node-bundle-based-reconciliation
               last-line-is-ignored-so-we-need-something-dummy-here-to-make-sure-the-real-last-line-is-used
-          csit-list: !include: csit-jobs-oxygen.lst
-          csit-weekly-list: '{csit-weekly-list-oxygen}'
-          csit-high-frequency-list: '{csit-high-frequency-list-oxygen}'
+          csit-list: !include: csit-jobs-sodium.lst
+          csit-mri-list: '{csit-mri-list-sodium}'
+          csit-weekly-list: '{csit-weekly-list-sodium}'
 
 - project:
     name: integration-sanity
       - 'integration-sanity-test-{stream}'
 
     stream:
-      - neon:
+      - aluminium:
           branch: 'master'
           karaf-version: odl
-          csit-sanity-list: '{csit-sanity-list-neon}'
-      - fluorine:
-          branch: 'stable/fluorine'
+          csit-sanity-list: '{csit-sanity-list-aluminium}'
+      - magnesium:
+          branch: 'stable/magnesium'
+          karaf-version: odl
+          csit-sanity-list: '{csit-sanity-list-magnesium}'
+      - sodium:
+          branch: 'stable/sodium'
           karaf-version: odl
-          csit-sanity-list: '{csit-sanity-list-fluorine}'
-      - oxygen:
-          branch: 'stable/oxygen'
-          karaf-version: karaf4
-          csit-sanity-list: '{csit-sanity-list-oxygen}'
+          csit-sanity-list: '{csit-sanity-list-sodium}'
 
 - job-template:
     name: 'integration-merge-dashboard'
           forbidden-files: ''
 
     builders:
+      - lf-infra-pre-build
       - config-file-provider:
           files:
             - file-id: odl-elastic-cloud
           karaf-version: '{karaf-version}'
 
     builders:
+      - lf-infra-pre-build
       - trigger-builds:
           - project: '{csit-list}'
             block: true
       - timed: '{schedule-daily}'
 
     builders:
+      - lf-infra-pre-build
       - trigger-builds:
           - project: '{csit-sanity-list}'
             block: true
             notbuilt: true
 
     builders:
+      - lf-infra-pre-build
       - integration-rebase-gerrit-patch
       - wipe-org-opendaylight-repo
       - lf-provide-maven-settings:
           global-settings-file: 'global-settings'
           settings-file: 'integration-settings'
+      - lf-update-java-alternatives:
+          java-version: '{java-version}'
       - maven-target:
           maven-version: 'mvn35'
           pom: '$GERRIT_PROJECT/pom.xml'
               {opendaylight-infra-mvn-opts}
           # {opendaylight-infra-parallel-mvn-opts} is bad when there are multiple big features in SFT.
           java-opts:
-            - '-Xmx4096m -XX:MaxPermSize=1024m -Dmaven.compile.fork=true'
+            - '-Xmx4096m -Dmaven.compile.fork=true'
           settings: integration-settings
           settings-type: cfp
           global-settings: global-settings
               {opendaylight-infra-mvn-opts}
           # {opendaylight-infra-parallel-mvn-opts} is bad when there are multiple big features in SFT.
           java-opts:
-            - '-Xmx1024m -XX:MaxPermSize=256m -Dmaven.compile.fork=true'
+            - '-Xmx1024m -Dmaven.compile.fork=true'
           settings: integration-settings
           settings-type: cfp
           global-settings: global-settings
 
 
 - job-template:
-    name: 'integration-multipatch-test-{stream}'
+    name: '{prefix}integration-multipatch-test-{stream}'
     # Goal: Build one or more patches and run all available system test on a distribution containing the change.
     # Operation: This job template checks out and builds in order each patch provided in job parameters, finally
     # it creates a distribution containing all patches and triggers the distribution test job which includes most
     # (if not all) available CSIT jobs.
 
+    id: inttest-multipatch
     project-type: freestyle
     node: centos7-builder-8c-8g
     concurrent: true
-    jdk: '{java-version}'
 
     properties:
       - opendaylight-infra-properties:
           build-days-to-keep: '{build-days-to-keep}'
 
     parameters:
-      - patches-to-build-parameter:
-          patches_to_build: '$PATCHES_TO_BUILD'
-      - build-order-parameter:
-          build-order: '{build-order}'
-      - build-fast-parameter:
-          build-fast: 'false'
-      - run-test-parameter:
-          run-test: 'false'
+      - string:
+          name: PATCHES_TO_BUILD
+          default: '$PATCHES_TO_BUILD'
+          description: |
+              Ordered list of patches to build in the format of project=changeset (checkout) or
+              project:changeset (cherry-pick) for example: genius=32/53632/9,netvirt:59/50259/47.
+      - string:
+          name: BUILD_ORDER
+          default: '{build-order}'
+          description: 'Build order for multipatch test when topic is used'
+      - string:
+          name: BUILD_FAST
+          default: 'true'
+          description: 'Set true to build fast -Pq'
+      - string:
+          name: BUILD_NORMAL
+          default: ''
+          description: 'List of projects to build normal (no -Pq) when BUILD_FAST=true'
+      - string:
+          name: RUN_TEST
+          default: 'false'
+          description: 'Set true to run test after build'
       - integration-distribution-branch:
           branch: '{branch}'
       - integration-distribution-stream:
                   branch-pattern: '**/{branch}'
 
     builders:
+      - lf-infra-pre-build
       - wipe-org-opendaylight-repo
       - lf-maven-install:
           mvn-version: '{mvn-version}'
       - lf-provide-maven-settings:
           global-settings-file: 'global-settings'
           settings-file: 'integration-distribution-settings'
+      - lf-update-java-alternatives:
+          java-version: '{java-version}'
       - integration-multipatch-builder
       - integration-upload-distribution:
           dist-pom: patch_tester/distribution/pom.xml
           condition-expression: $RUN_TEST
           steps:
             - trigger-builds:
-                - project: '{csit-list}'
-                  block: true
+                - project: >
+                      integration-distribution-test-{stream},
+                      integration-distribution-mri-test-{stream}
                   predefined-parameters: |
                     BUNDLE_URL=$BUNDLE_URL
                     KARAF_VERSION=$KARAF_VERSION
           email-prefix: '[int/dist]'
 
 - job-template:
-    name: 'integration-distribution-weekly-test-trigger-{stream}'
+    name: 'integration-distribution-mri-test-{stream}'
 
     project-type: freestyle
     node: queue-intque-2c-1g
 
     builders:
       - trigger-builds:
-          - project: '{csit-weekly-list}'
+          - project: '{csit-mri-list}'
             block: true
             predefined-parameters: |
               BUNDLE_URL=$BUNDLE_URL
           email-prefix: '[integration]'
 
 - job-template:
-    name: 'integration-distribution-high-frequency-test-trigger-{stream}'
+    name: 'integration-distribution-weekly-test-trigger-{stream}'
 
     project-type: freestyle
     node: queue-intque-2c-1g
           karaf-version: '{karaf-version}'
 
     triggers:
-      - timed: '{schedule-high-frequency}'
+      - timed: '{schedule-weekly}'
 
     builders:
       - trigger-builds:
-          - project: '{csit-high-frequency-list}'
+          - project: '{csit-weekly-list}'
             block: true
             predefined-parameters: |
               BUNDLE_URL=$BUNDLE_URL
     ######################
 
     git-url: '$GIT_URL/$PROJECT'
+    submodule-disable: false
     submodule-recursive: true
     submodule-timeout: 10
 
           git-url: '{git-url}'
           refspec: '$GERRIT_REFSPEC'
           branch: '$GERRIT_BRANCH'
+          submodule-disable: '{submodule-disable}'
           submodule-recursive: '{submodule-recursive}'
           submodule-timeout: '{submodule-timeout}'
           choosing-strategy: default
           jobs: builder-jjb-merge
 
     builders:
+      - lf-infra-pre-build
       - shell: !include-raw-escape: update-csit-tests.sh
       - shell: |
           git status
           gerrit-host: 'git.opendaylight.org'
           gerrit-topic: 'auto-update-csit-jobs-{stream}'
           gerrit-commit-message: 'Auto Update CSIT Jobs to run for {stream}'
-          reviewers-email: 'jluhrsen@redhat.com'
+          reviewers-email: 'jluhrsen@gmail.com'
 
     publishers:
       - lf-infra-publish
     views:
       - project-view
     project-name: integration
-
-- view:
-    name: csit-stable-f
-    description: 'List of stable integration jobs for managed projects'
-    job-name:
-      - aaa-csit-1node-authn-all-fluorine
-      - bgpcep-csit-1node-throughpcep-all-fluorine
-      - coe-csit-1node-container-networking-only-fluorine
-      - controller-csit-1node-akka1-all-fluorine
-      - controller-csit-1node-benchmark-all-fluorine
-      - controller-csit-1node-notifications-longevity-only-fluorine
-      - controller-csit-1node-rest-cars-perf-all-fluorine
-      - controller-csit-3node-benchmark-all-fluorine
-      - controller-csit-3node-drb-precedence-longevity-only-fluorine
-      - controller-csit-3node-rest-clust-cars-perf-ask-only-fluorine
-      - controller-csit-3node-rest-clust-cars-perf-tell-only-fluorine
-      - daexim-csit-1node-basic-only-fluorine
-      - daexim-csit-3node-clustering-basic-only-fluorine
-      - distribution-csit-1node-userfeatures-all-fluorine
-      - genius-csit-1node-upstream-only-fluorine
-      - genius-csit-3node-upstream-only-fluorine
-      - lispflowmapping-csit-1node-msmr-all-fluorine
-      - netconf-csit-1node-callhome-only-fluorine
-      - netconf-csit-1node-userfeatures-all-fluorine
-      - netvirt-csit-1node-0cmb-1ctl-2cmp-openstack-queens-sfc-fluorine
-      - netvirt-csit-1node-0cmb-1ctl-2cmp-openstack-queens-upstream-stateful-fluorine
-      - openflowplugin-csit-1node-flow-services-all-fluorine
-      - openflowplugin-csit-1node-longevity-only-fluorine
-      - openflowplugin-csit-1node-perf-bulkomatic-only-fluorine
-      - openflowplugin-csit-1node-perf-stats-collection-only-fluorine
-      - openflowplugin-csit-1node-sanity-only-fluorine
-      - openflowplugin-csit-1node-scale-link-only-fluorine
-      - openflowplugin-csit-1node-scale-only-fluorine
-      - openflowplugin-csit-1node-scale-switch-only-fluorine
-      - openflowplugin-csit-3node-clustering-bulkomatic-only-fluorine
-      - openflowplugin-csit-3node-clustering-only-fluorine
-      - ovsdb-csit-3node-upstream-clustering-only-fluorine
-      - sfc-csit-3node-docker-full-deploy-all-fluorine
-      - sfc-csit-3node-rest-basic-all-fluorine
-    <<: *releng_view_common
-
-- view:
-    name: csit-stable-ne
-    description: 'List of stable integration jobs for managed projects'
-    job-name:
-      - aaa-csit-1node-authn-all-neon
-      - bgpcep-csit-1node-throughpcep-all-neon
-      - coe-csit-1node-container-networking-only-neon
-      - controller-csit-1node-akka1-all-neon
-      - controller-csit-1node-benchmark-all-neon
-      - controller-csit-1node-notifications-longevity-only-neon
-      - controller-csit-1node-rest-cars-perf-all-neon
-      - controller-csit-3node-benchmark-all-neon
-      - controller-csit-3node-drb-precedence-longevity-only-neon
-      - controller-csit-3node-rest-clust-cars-perf-ask-only-neon
-      - controller-csit-3node-rest-clust-cars-perf-tell-only-neon
-      - daexim-csit-1node-basic-only-neon
-      - daexim-csit-3node-clustering-basic-only-neon
-      - distribution-csit-1node-userfeatures-all-neon
-      - genius-csit-1node-upstream-only-neon
-      - genius-csit-3node-upstream-only-neon
-      - lispflowmapping-csit-1node-msmr-all-neon
-      - netconf-csit-1node-callhome-only-neon
-      - netconf-csit-1node-userfeatures-all-neon
-      - netvirt-csit-1node-0cmb-1ctl-2cmp-openstack-queens-sfc-neon
-      - netvirt-csit-1node-0cmb-1ctl-2cmp-openstack-queens-upstream-stateful-neon
-      - openflowplugin-csit-1node-flow-services-all-neon
-      - openflowplugin-csit-1node-longevity-only-neon
-      - openflowplugin-csit-1node-perf-bulkomatic-only-neon
-      - openflowplugin-csit-1node-perf-stats-collection-only-neon
-      - openflowplugin-csit-1node-sanity-only-neon
-      - openflowplugin-csit-1node-scale-link-only-neon
-      - openflowplugin-csit-1node-scale-only-neon
-      - openflowplugin-csit-1node-scale-switch-only-neon
-      - openflowplugin-csit-3node-clustering-bulkomatic-only-neon
-      - openflowplugin-csit-3node-clustering-only-neon
-      - ovsdb-csit-3node-upstream-clustering-only-neon
-      - sfc-csit-3node-docker-full-deploy-all-neon
-      - sfc-csit-3node-rest-basic-all-neon
-    <<: *releng_view_common