[fuel, armband] Add os-ovn-nofeature-ha scenario
[releng.git] / jjb / armband / armband-ci-jobs.yml
index 0154c7a..1661fc3 100644 (file)
       gs-pathname: '/{stream}'
       disabled: false
     # -------------------------------
+    # DEPLOY TYPE ANCHORS
+    # -------------------------------
+    baremetal: &baremetal
+      installer: 'fuel'
+      deploy-type: 'baremetal'
+      slave-label: 'armband-{deploy-type}'
+    virtual: &virtual
+      installer: 'fuel'
+      deploy-type: 'virtual'
+      slave-label: 'armband-{deploy-type}'
+    # -------------------------------
     # POD, INSTALLER, AND BRANCH MAPPING
     # -------------------------------
     # CI POD's
     #        euphrates
     # -------------------------------
     pod:
+      # yamllint disable rule:key-duplicates
       - armband-baremetal:
-          slave-label: armband-baremetal
-          installer: fuel
+          <<: *baremetal
           <<: *euphrates
       - armband-virtual:
-          slave-label: armband-virtual
-          installer: fuel
+          <<: *virtual
           <<: *euphrates
       # -------------------------------
       #        master
       # -------------------------------
       - armband-baremetal:
-          slave-label: armband-baremetal
-          installer: fuel
+          <<: *baremetal
           <<: *master
       - armband-virtual:
-          slave-label: armband-virtual
-          installer: fuel
+          <<: *virtual
           <<: *master
+    # yamllint enable rule:key-duplicates
     # -------------------------------
     #       scenarios
     # -------------------------------
           auto-trigger-name: '{installer}-{scenario}-{pod}-{stream}-trigger'
       - 'os-odl-nofeature-ha':
           auto-trigger-name: '{installer}-{scenario}-{pod}-{stream}-trigger'
+      - 'os-ovn-nofeature-ha':
+          auto-trigger-name: '{installer}-{scenario}-{pod}-{stream}-trigger'
+      - 'os-nosdn-ovs-ha':
+          auto-trigger-name: '{installer}-{scenario}-{pod}-{stream}-trigger'
 
       # NOHA scenarios
       - 'os-nosdn-nofeature-noha':
           auto-trigger-name: '{installer}-{scenario}-{pod}-{stream}-trigger'
 
+    exclude:
+      - scenario: os-ovn-nofeature-ha
+        stream: euphrates
+
     jobs:
       - '{installer}-{scenario}-{pod}-daily-{stream}'
       - '{installer}-deploy-{pod}-daily-{stream}'
               DEPLOY_SCENARIO={scenario}
             same-node: true
             block: true
-      - trigger-builds:
-          - project: 'functest-{installer}-{pod}-arm-daily-{stream}'
-            current-parameters: false
-            predefined-parameters:
-              DEPLOY_SCENARIO={scenario}
-            block: true
-            same-node: true
-            block-thresholds:
-              build-step-failure-threshold: 'never'
-              failure-threshold: 'never'
-              unstable-threshold: 'FAILURE'
-      - trigger-builds:
-          - project: 'yardstick-{installer}-{pod}-daily-{stream}'
-            current-parameters: false
-            predefined-parameters:
-              DEPLOY_SCENARIO={scenario}
-            block: true
-            same-node: true
-            block-thresholds:
-              build-step-failure-threshold: 'never'
-              failure-threshold: 'never'
-              unstable-threshold: 'FAILURE'
-      # 1.dovetail only master, based on D release
-      # 2.here the stream means the SUT stream,
-      #   dovetail stream is defined in its own job
-      # 3.only proposed_tests testsuite here(refstack, ha, ipv6, bgpvpn)
-      # 4.not used for release criteria or compliance,
+      - conditional-step:
+          condition-kind: not
+          condition-operand:
+            condition-kind: regex-match
+            regex: 'danube'
+            label: '{stream}'
+          steps:
+            - trigger-builds:
+                - project: 'functest-{installer}-{pod}-arm-daily-{stream}'
+                  current-parameters: false
+                  predefined-parameters:
+                    DEPLOY_SCENARIO={scenario}
+                  block: true
+                  same-node: true
+                  block-thresholds:
+                    build-step-failure-threshold: 'never'
+                    failure-threshold: 'never'
+                    unstable-threshold: 'FAILURE'
+      - conditional-step:
+          condition-kind: not
+          condition-operand:
+            condition-kind: regex-match
+            regex: 'danube'
+            label: '{stream}'
+          steps:
+            - trigger-builds:
+                - project: 'yardstick-{installer}-{pod}-daily-{stream}'
+                  current-parameters: false
+                  predefined-parameters:
+                    DEPLOY_SCENARIO={scenario}
+                  block: true
+                  same-node: true
+                  block-thresholds:
+                    build-step-failure-threshold: 'never'
+                    failure-threshold: 'never'
+                    unstable-threshold: 'FAILURE'
+      # 1.here the stream means the SUT stream, dovetail stream is defined in its own job
+      # 2.testsuite proposed_tests here is for new test cases planning to add into OVP
+      # 3.run proposed_tests on Monday, Wednesday and Friday against ha scenario
+      # 4.testsuite default here is for the test cases already added into OVP
+      # 5.run default testsuite on Tuesday against ha scenario
+      # 6.not used for release criteria or compliance,
       #   only to debug the dovetail tool bugs with arm pods
-      # 5.only run against scenario os-(nosdn|odl)-(nofeature-bgpvpn)-ha
       - conditional-step:
-          condition-kind: regex-match
-          regex: os-(nosdn|odl)-(nofeature|bgpvpn)-ha
-          label: '{scenario}'
+          condition-kind: and
+          condition-operands:
+            - condition-kind: regex-match
+              regex: '-ha$'
+              label: '{scenario}'
+            - condition-kind: day-of-week
+              day-selector: select-days
+              days:
+                MON: true
+                WED: true
+                FRI: true
+              use-build-time: true
           steps:
             - trigger-builds:
-                - project: 'dovetail-{installer}-{pod}-proposed_tests-master'
+                - project: 'dovetail-{installer}-{pod}-proposed_tests-{stream}'
+                  current-parameters: false
+                  predefined-parameters:
+                    DEPLOY_SCENARIO={scenario}
+                  block: true
+                  same-node: true
+                  block-thresholds:
+                    build-step-failure-threshold: 'never'
+                    failure-threshold: 'never'
+                    unstable-threshold: 'FAILURE'
+      - conditional-step:
+          condition-kind: and
+          condition-operands:
+            - condition-kind: regex-match
+              regex: '-ha$'
+              label: '{scenario}'
+            - condition-kind: day-of-week
+              day-selector: select-days
+              days:
+                TUES: true
+              use-build-time: true
+          steps:
+            - trigger-builds:
+                - project: 'dovetail-{installer}-{pod}-default-{stream}'
+                  current-parameters: false
+                  predefined-parameters:
+                    DEPLOY_SCENARIO={scenario}
+                  block: true
+                  same-node: true
+                  block-thresholds:
+                    build-step-failure-threshold: 'never'
+                    failure-threshold: 'never'
+                    unstable-threshold: 'FAILURE'
+      # Armband uses Fuel's log collection project job, no need to duplicate
+      - conditional-step:
+          condition-kind: not
+          condition-operand:
+            condition-kind: regex-match
+            regex: 'danube'
+            label: '{stream}'
+          steps:
+            - trigger-builds:
+                - project: 'fuel-collect-logs-{deploy-type}-daily-{stream}'
                   current-parameters: false
                   predefined-parameters:
                     DEPLOY_SCENARIO={scenario}
 - trigger:
     name: 'fuel-os-nosdn-nofeature-ha-armband-baremetal-master-trigger'
     triggers:
-      - timed: '0 16 * * 2,4,6'
+      - timed: '0 1 * * 4,6'
 - trigger:
     name: 'fuel-os-nosdn-nofeature-noha-armband-baremetal-master-trigger'
     triggers:
 - trigger:
     name: 'fuel-os-odl-nofeature-ha-armband-baremetal-master-trigger'
     triggers:
-      - timed: '0 16 * * 1,3,5,7'
+      - timed: '0 1 * * 2,5,7'
+- trigger:
+    name: 'fuel-os-ovn-nofeature-ha-armband-baremetal-master-trigger'
+    triggers:
+      - timed: ''
+- trigger:
+    name: 'fuel-os-nosdn-ovs-ha-armband-baremetal-master-trigger'
+    triggers:
+      - timed: '0 1 * * 1,3'
 # ---------------------------------------------------------------------
 # Enea Armband CI Baremetal Triggers running against euphrates branch
 # ---------------------------------------------------------------------
 - trigger:
     name: 'fuel-os-nosdn-nofeature-ha-armband-baremetal-euphrates-trigger'
     triggers:
-      - timed: '0 1 * * 2,4,6'
+      - timed: ''
 - trigger:
     name: 'fuel-os-nosdn-nofeature-noha-armband-baremetal-euphrates-trigger'
     triggers:
 - trigger:
     name: 'fuel-os-odl-nofeature-ha-armband-baremetal-euphrates-trigger'
     triggers:
-      - timed: '0 1 * * 1,3,5,7'
+      - timed: ''
+- trigger:
+    name: 'fuel-os-nosdn-ovs-ha-armband-baremetal-euphrates-trigger'
+    triggers:
+      - timed: ''
+
 # --------------------------------------------------------------
 # Enea Armband CI Virtual Triggers running against master branch
 # --------------------------------------------------------------
     name: 'fuel-os-odl-nofeature-ha-armband-virtual-master-trigger'
     triggers:
       - timed: ''
+- trigger:
+    name: 'fuel-os-ovn-nofeature-ha-armband-virtual-master-trigger'
+    triggers:
+      - timed: ''
+- trigger:
+    name: 'fuel-os-nosdn-ovs-ha-armband-virtual-master-trigger'
+    triggers:
+      - timed: ''
 # -------------------------------------------------------------------
 # Enea Armband CI Virtual Triggers running against euphrates branch
 # -------------------------------------------------------------------
     name: 'fuel-os-odl-nofeature-ha-armband-virtual-euphrates-trigger'
     triggers:
       - timed: ''
+- trigger:
+    name: 'fuel-os-nosdn-ovs-ha-armband-virtual-euphrates-trigger'
+    triggers:
+      - timed: ''