[fuel, armband] Disable Gambia jobs
[releng.git] / jjb / fuel / fuel-verify-jobs.yaml
index bef6a50..4678e4f 100644 (file)
           branch: '{stream}'
           gs-pathname: ''
           disabled: false
-      - fraser:
+          functest_docker_tag: hunter
+      - gambia:
           branch: 'stable/{stream}'
           gs-pathname: '/{stream}'
-          disabled: false
+          disabled: true
+          functest_docker_tag: '{stream}'
+    #####################################
+    # cluster architectures
+    #####################################
+    # Note: arm64 was removed since it was basically a no-op
+    arch_tag:
+      - 'amd64':
+          slave-label: 'fuel'
+          functest-suite-label: 'fuel'
+    #####################################
+    # cluster types
+    #####################################
+    type:
+      - 'virtual'
+      - 'baremetal'
     #####################################
     # patch verification phases
     #####################################
     phase:
-      - 'deploy-virtual':
-          slave-label: 'fuel-virtual'
+      - 'docker-build'
+      - 'deploy'
     #####################################
     # jobs
     #####################################
     jobs:
-      - 'fuel-verify-{stream}'
-      - 'fuel-verify-{phase}-{stream}'
+      - 'fuel-verify-{type}-{arch_tag}-{stream}'
+      - 'fuel-verify-{phase}-{type}-{arch_tag}-{stream}'
 #####################################
 # job templates
 #####################################
 - job-template:
-    name: 'fuel-verify-{stream}'
+    name: 'fuel-verify-{type}-{arch_tag}-{stream}'
 
     project-type: multijob
 
@@ -50,9 +66,9 @@
       - build-blocker:
           use-build-blocker: true
           blocking-jobs:
-            - 'fuel-os-.*?-virtual-daily-.*'
+            - 'fuel-os-.*?-daily-.*'
             - 'fuel-verify-.*'
-          block-level: 'NODE'
+          blocking-level: 'NODE'
 
     scm:
       - git-scm-gerrit
           fail: true
 
     triggers:
-      - gerrit:
-          server-name: 'gerrit.opnfv.org'
-          trigger-on:
-            - patchset-created-event:
-                exclude-drafts: 'false'
-                exclude-trivial-rebase: 'false'
-                exclude-no-code-change: 'false'
-            - draft-published-event
-            - comment-added-contains-event:
-                comment-contains-value: 'recheck'
-            - comment-added-contains-event:
-                comment-contains-value: 'reverify'
-          projects:
-            - project-compare-type: 'ANT'
-              project-pattern: '{project}'
-              branches:
-                - branch-compare-type: 'ANT'
-                  branch-pattern: '**/{branch}'
-              file-paths:
-                - compare-type: ANT
-                  pattern: 'ci/**'
-                - compare-type: ANT
-                  pattern: 'mcp/**'
-              disable-strict-forbidden-file-verification: 'true'
-              forbidden-file-paths:
-                - compare-type: ANT
-                  pattern: 'docs/**'
-          readable-message: true
+      - 'fuel-verify-{type}-{arch_tag}-trigger':
+          project: '{project}'
+          branch: '{branch}'
 
     parameters:
       - project-parameter:
           project: '{project}'
           branch: '{branch}'
-      - 'fuel-virtual-defaults':
+      - '{slave-label}-{type}-defaults':
           installer: '{installer}'
       - '{installer}-defaults':
           gs-pathname: '{gs-pathname}'
-      - string:
-          name: DEPLOY_SCENARIO
-          default: 'os-nosdn-nofeature-ha'
 
     builders:
+      - 'fuel-verify-set-scenario-macro'
+      - inject:
+          properties-file: "/tmp/$GERRIT_CHANGE_NUMBER/scenario.properties"
       - description-setter:
-          description: "Built on $NODE_NAME"
+          description: "Scenario: $DEPLOY_SCENARIO | Node: $NODE_NAME"
       - multijob:
-          name: deploy-virtual
+          name: docker-build
           condition: SUCCESSFUL
           projects:
-            - name: 'fuel-verify-deploy-virtual-{stream}'
+            - name: 'fuel-verify-docker-build-{type}-{arch_tag}-{stream}'
               current-parameters: false
               predefined-parameters: |
                 BRANCH=$BRANCH
                 GERRIT_REFSPEC=$GERRIT_REFSPEC
                 GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER
                 GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE
-              node-parameters: false
+              node-parameters: true
               kill-phase-on: FAILURE
               abort-all-job: true
 
       - multijob:
-          name: smoke-test
+          name: deploy
           condition: SUCCESSFUL
           projects:
-            # Use Functest job definition from jjb/functest/functest-daily-jobs
-            - name: 'functest-fuel-virtual-suite-{stream}'
+            - name: 'fuel-verify-deploy-{type}-{arch_tag}-{stream}'
               current-parameters: false
               predefined-parameters: |
-                FUNCTEST_MODE=tier
-                FUNCTEST_TIER=healthcheck
+                MCP_DOCKER_TAG={arch_tag}-verify
                 DEPLOY_SCENARIO=$DEPLOY_SCENARIO
                 BRANCH=$BRANCH
                 GERRIT_REFSPEC=$GERRIT_REFSPEC
                 GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER
                 GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE
               node-parameters: true
-              kill-phase-on: NEVER
+              kill-phase-on: FAILURE
               abort-all-job: true
-            - name: 'functest-fuel-virtual-suite-{stream}'
+
+      - multijob:
+          name: smoke-test
+          condition: SUCCESSFUL
+          projects:
+            # Use Functest job definition from jjb/functest/functest-daily-jobs
+            - name: 'functest-{functest-suite-label}-{type}-suite-{stream}'
               current-parameters: false
               predefined-parameters: |
-                FUNCTEST_MODE=testcase
-                FUNCTEST_SUITE_NAME=vping_ssh
+                FUNCTEST_MODE=tier
+                FUNCTEST_TIER=healthcheck
                 DEPLOY_SCENARIO=$DEPLOY_SCENARIO
                 BRANCH=$BRANCH
                 GERRIT_REFSPEC=$GERRIT_REFSPEC
                 GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER
                 GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE
+                DOCKER_TAG={functest_docker_tag}
               node-parameters: true
+              enable-condition: "def m = ! ('$NODE_LABELS' =~ /armband-virtual/)"
               kill-phase-on: NEVER
               abort-all-job: true
 
 - job-template:
-    name: 'fuel-verify-{phase}-{stream}'
+    name: 'fuel-verify-{phase}-{type}-{arch_tag}-{stream}'
 
     disabled: '{obj:disabled}'
 
       - build-blocker:
           use-build-blocker: true
           blocking-jobs:
+            - 'fuel-verify-docker-build-.*'
             - 'fuel-verify-deploy-.*'
-          block-level: 'NODE'
+          blocking-level: 'NODE'
 
     scm:
       - git-scm-gerrit
       - project-parameter:
           project: '{project}'
           branch: '{branch}'
-      - '{slave-label}-defaults'
-      - 'fuel-virtual-defaults':
+      - '{slave-label}-{type}-defaults':
           installer: '{installer}'
       - '{installer}-defaults':
           gs-pathname: '{gs-pathname}'
       - description-setter:
           description: "Built on $NODE_NAME"
       - '{project}-verify-{phase}-macro'
+########################
+# trigger macros
+########################
+- trigger:
+    name: 'fuel-verify-virtual-amd64-trigger'
+    triggers:
+      - gerrit: &fuel_verify_virtual_amd64_trigger
+          server-name: 'gerrit.opnfv.org'
+          trigger-on:
+            - patchset-created-event:
+                exclude-drafts: 'false'
+                exclude-trivial-rebase: 'false'
+                exclude-no-code-change: 'false'
+            - draft-published-event
+            - comment-added-contains-event:
+                comment-contains-value: '(recheck|reverify)(\s|$|:\s*[-\w]+-noha)'
+          projects:
+            - project-compare-type: 'ANT'
+              project-pattern: '{project}'
+              branches:
+                - branch-compare-type: 'ANT'
+                  branch-pattern: '**/{branch}'
+              file-paths:
+                - compare-type: ANT
+                  pattern: 'ci/**'
+                - compare-type: ANT
+                  pattern: 'mcp/**'
+              disable-strict-forbidden-file-verification: 'true'
+              forbidden-file-paths:
+                - compare-type: ANT
+                  pattern: 'docs/**'
+          readable-message: true
+- trigger:
+    name: 'fuel-verify-virtual-arm64-trigger'
+    triggers:
+      - gerrit:
+          <<: *fuel_verify_virtual_amd64_trigger
+- trigger:
+    name: 'fuel-verify-baremetal-amd64-trigger'
+    triggers:
+      - gerrit: &fuel_verify_baremetal_amd64_trigger
+          <<: *fuel_verify_virtual_amd64_trigger
+          trigger-on:
+            - comment-added-contains-event:
+                comment-contains-value: '(recheck|reverify):\s*[-\w]+-ha'
+- trigger:
+    name: 'fuel-verify-baremetal-arm64-trigger'
+    triggers:
+      - gerrit:
+          <<: *fuel_verify_baremetal_amd64_trigger
+          skip-vote:
+            successful: true
+            failed: true
+            unstable: true
+            notbuilt: true
 #####################################
 # builder macros
 #####################################
 - builder:
-    name: 'fuel-verify-deploy-virtual-macro'
+    name: 'fuel-verify-set-scenario-macro'
+    builders:
+      - shell:
+          !include-raw: ./fuel-set-scenario.sh
+- builder:
+    name: 'fuel-verify-deploy-macro'
     builders:
       - shell:
           !include-raw: ./fuel-deploy.sh
+- builder:
+    name: 'fuel-verify-docker-build-macro'
+    builders:
+      - shell: |
+          #!/bin/bash -ex
+          sudo -E ./ci/build.sh 'verify' ''