Apex: Fix deployment detecting snapshot type
[releng.git] / jjb / apex / apex.yaml
index 26f282f..23a1daf 100644 (file)
@@ -8,7 +8,7 @@
       - 'apex-virtual-{stream}'
       - 'apex-deploy-{platform}-{stream}'
       - 'apex-daily-{stream}'
-      - 'apex-csit-promote-daily-{stream}-os-{os_version}-{topology}'
+      - 'apex-{snap_type}-promote-daily-{stream}-os-{os_version}-{topology}'
       - 'apex-fdio-promote-daily-{stream}'
       - 'apex-{scenario}-baremetal-{scenario_stream}'
       - 'apex-testsuite-{scenario}-baremetal-{scenario_stream}'
       - 'ha'
       - 'noha-allinone'
 
+    snap_type:
+      - csit:
+          sdn: 'odl'
+      - functest:
+          sdn: 'nosdn'
 # Fetch Logs Job
 - job-template:
     name: 'apex-fetch-logs-{stream}'
             - 'apex-virtual-.*'
             - 'apex-verify-gate-.*'
             - 'odl-netvirt.*'
+            - 'apex-.*-promote.*'
       - throttle:
           max-per-node: 1
           max-total: 10
               kill-phase-on: FAILURE
               abort-all-job: true
               git-revision: true
-      - shell: |
-          if echo $DEPLOY_SCENARIO | grep queens &> /dev/null; then
-          echo 'REPO=opnfv' > functest_repo
-          else
-          echo 'REPO=ollivier' > functest_repo
-          fi
-      - inject:
-          properties-file: functest_repo
       - multijob:
           name: functest-smoke
           condition: ALWAYS
                 DEPLOY_SCENARIO=$DEPLOY_SCENARIO
                 FUNCTEST_MODE=$FUNCTEST_MODE
                 FUNCTEST_SUITE_NAME=$FUNCTEST_SUITE_NAME
-                REPO=$REPO
                 GERRIT_BRANCH=$GERRIT_BRANCH
                 GERRIT_REFSPEC=$GERRIT_REFSPEC
                 GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER
               kill-phase-on: NEVER
               abort-all-job: true
               git-revision: false
-      - shell: |
-          if echo $DEPLOY_SCENARIO | grep queens &> /dev/null; then
-            echo 'REPO=opnfv' > functest_properties
-          else
-            echo 'REPO=ollivier' > functest_properties
-          fi
-          features=$(echo $DEPLOY_SCENARIO | sed -r -n 's/os-.+-(.+)-(noha|ha)/\1/p')
-          if [ "$features" == 'queens' ]; then
-            functest_scenario=$(echo $DEPLOY_SCENARIO | sed -r -n 's/(os-.+?)-queens-(noha|ha)/\1-nofeature-\2/p')
-          elif [[ "$features" =~ 'queens' ]]; then
-            functest_scenario=$(echo $DEPLOY_SCENARIO | sed -r -n 's/(os-.+?)-(.+)_queens-(noha|ha)/\1-\2-\3/p')
-          else
-            functest_scenario=$DEPLOY_SCENARIO
-          fi
-          echo "DEPLOY_SCENARIO=$functest_scenario" >> functest_properties
+      - shell:
+          !include-raw-escape: ./apex-functest-scenario.sh
       - inject:
-          properties-file: functest_properties
+          properties-file: functest_scenario
           override-build-parameters: true
       - multijob:
           name: 'OPNFV Test Suite'
             - name: 'apex-testsuite-{scenario}-baremetal-{scenario_stream}'
               node-parameters: true
               current-parameters: false
-              predefined-parameters:
+              predefined-parameters: |
                 DEPLOY_SCENARIO=$DEPLOY_SCENARIO
+                DOCKER_TAG=$DOCKER_TAG
               kill-phase-on: NEVER
               abort-all-job: true
               git-revision: false
           name: DEPLOY_SCENARIO
           default: '{scenario}'
           description: "Scenario to deploy with."
+      - string:
+          name: DOCKER_TAG
+          default: ''
+          description: Default docker tag to pass to functest
 
     properties:
       - logrotate-default
             - name: 'functest-apex-baremetal-daily-{scenario_stream}'
               node-parameters: true
               current-parameters: false
-              predefined-parameters:
+              predefined-parameters: |
                 DEPLOY_SCENARIO=$DEPLOY_SCENARIO
+                DOCKER_TAG=$DOCKER_TAG
               kill-phase-on: NEVER
               abort-all-job: false
               git-revision: false
 
 # CSIT promote
 - job-template:
-    name: 'apex-csit-promote-daily-{stream}-os-{os_version}-{topology}'
+    name: 'apex-{snap_type}-promote-daily-{stream}-os-{os_version}-{topology}'
 
     # Job template for promoting CSIT Snapshots
     #
           description: "Used for overriding the PROMOTE"
       - string:
           name: GS_URL
-          default: $GS_BASE{gs-pathname}/{os_version}/{topology}
+          default: 'artifacts.opnfv.org/apex/{os_version}/{topology}'
           description: "User for overriding GS_URL from apex params"
       - string:
           name: OS_VERSION
           name: ODL_BRANCH
           default: '{odl_branch}'
           description: ODL branch being used
-
+      - string:
+          name: FORCE_PROMOTE
+          default: 'False'
+          description: "Used to force promotion and skip CSIT"
+      - string:
+          name: SNAP_TYPE
+          default: '{snap_type}'
+          description: Type of snapshot to promote
     properties:
       - build-blocker:
           use-build-blocker: true
             - 'apex-verify.*'
             - 'apex-runner.*'
             - 'apex-daily.*'
-            - 'apex-csit-promote.*'
+            - 'apex-.*-promote.*'
             - 'odl-netvirt.*'
       - throttle:
           max-per-node: 1
           option: 'project'
 
     triggers:
-      - '{stream}-{os_version}'
+      - '{stream}-{snap_type}-{os_version}'
 
     builders:
       - multijob:
             - name: 'apex-deploy-virtual-{stream}'
               current-parameters: true
               predefined-parameters: |
-                DEPLOY_SCENARIO=os-odl-{os_scenario}-{topology}
+                DEPLOY_SCENARIO=os-{sdn}-{os_scenario}-{topology}-{snap_type}
                 OPNFV_CLEAN=yes
                 GERRIT_BRANCH=$GERRIT_BRANCH
                 GERRIT_REFSPEC=$GERRIT_REFSPEC
               abort-all-job: true
               git-revision: false
       - multijob:
-          name: csit
+          name: test phase
           condition: SUCCESSFUL
           execution-type: SEQUENTIALLY
           projects:
             - name: cperf-apex-csit-master
               predefined-parameters: |
                 ODL_BRANCH=$ODL_BRANCH
-                RC_FILE_PATH=/tmp/csit/overcloudrc
-                NODE_FILE_PATH=/tmp/csit/node.yaml
-                SSH_KEY_PATH=/tmp/csit/id_rsa
+                RC_FILE_PATH=/tmp/snap/overcloudrc
+                NODE_FILE_PATH=/tmp/snap/node.yaml
+                SSH_KEY_PATH=/tmp/snap/id_rsa
                 ODL_CONTAINERIZED=true
                 OS_VERSION=$OS_VERSION
+                SKIP_CSIT=$FORCE_PROMOTE
+                SNAP_TYPE=$SNAP_TYPE
               node-parameters: true
               kill-phase-on: NEVER
               abort-all-job: false
+              enable-condition: "def m = '$SNAP_TYPE' ==~ /csit/"
             - name: cperf-upload-logs-csit
               predefined-parameters: |
                 ODL_BRANCH=$ODL_BRANCH
                 OS_VERSION=$OS_VERSION
+                SNAP_TYPE=$SNAP_TYPE
               node-parameters: true
               kill-phase-on: FAILURE
               abort-all-job: false
+              enable-condition: "def m = '$SNAP_TYPE' ==~ /csit/"
+            - name: 'functest-apex-virtual-suite-{stream}'
+              current-parameters: false
+              predefined-parameters: |
+                DEPLOY_SCENARIO=$DEPLOY_SCENARIO
+                DOCKER_TAG=$DOCKER_TAG
+                FUNCTEST_SUITE_NAME=tempest_smoke
+                FUNCTEST_MODE=testcase
+                GERRIT_BRANCH=$GERRIT_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
+              enable-condition: "def m = '$SNAP_TYPE' ==~ /functest/"
+              abort-all-job: true
+              git-revision: false
             - name: 'apex-fetch-logs-{stream}'
               current-parameters: false
               predefined-parameters: |
           projects:
             - name: 'apex-create-snapshot'
               current-parameters: true
-              predefined-parameters: |
-                SNAP_TYPE=csit
               node-parameters: true
               kill-phase-on: FAILURE
               abort-all-job: true
           projects:
             - name: 'apex-upload-snapshot'
               current-parameters: true
-              predefined-parameters: |
-                SNAP_TYPE=csit
               node-parameters: true
               kill-phase-on: FAILURE
               abort-all-job: true
 
     project-type: 'multijob'
 
-    disabled: false
+    disabled: true
 
     node: 'flex-pod2'
 
       - timed: '0 3 1 1 7'
 
 - trigger:
-    name: 'master-master'
+    name: 'master-csit-master'
+    triggers:
+      - timed: '0 5 * * *'
+
+- trigger:
+    name: 'master-csit-rocky'
+    triggers:
+      - timed: '0 5 * * *'
+
+- trigger:
+    name: 'master-csit-queens'
+    triggers:
+      - timed: ''
+
+- trigger:
+    name: 'gambia-csit-master'
+    triggers:
+      - timed: ''
+
+- trigger:
+    name: 'gambia-csit-rocky'
+    triggers:
+      - timed: ''
+
+- trigger:
+    name: 'gambia-csit-queens'
+    triggers:
+      - timed: '0 5 * * *'
+
+- trigger:
+    name: 'fraser-csit-master'
+    triggers:
+      - timed: ''
+
+- trigger:
+    name: 'fraser-csit-rocky'
+    triggers:
+      - timed: ''
+
+- trigger:
+    name: 'fraser-csit-queens'
+    triggers:
+      - timed: ''
+
+- trigger:
+    name: 'euphrates-csit-master'
+    triggers:
+      - timed: ''
+
+- trigger:
+    name: 'euphrates-csit-rocky'
+    triggers:
+      - timed: ''
+
+- trigger:
+    name: 'euphrates-csit-queens'
+    triggers:
+      - timed: ''
+
+- trigger:
+    name: 'danube-csit-master'
+    triggers:
+      - timed: ''
+
+- trigger:
+    name: 'danube-csit-rocky'
+    triggers:
+      - timed: ''
+
+- trigger:
+    name: 'danube-csit-queens'
+    triggers:
+      - timed: ''
+- trigger:
+    name: 'master-functest-master'
     triggers:
-      - timed: '0 12 * * *'
+      - timed: '0 3 * * *'
 
 - trigger:
-    name: 'master-rocky'
+    name: 'master-functest-rocky'
     triggers:
-      - timed: '0 12 * * *'
+      - timed: '0 3 * * *'
 
 - trigger:
-    name: 'master-queens'
+    name: 'master-functest-queens'
     triggers:
       - timed: ''
 
 - trigger:
-    name: 'gambia-master'
+    name: 'gambia-functest-master'
     triggers:
       - timed: ''
 
 - trigger:
-    name: 'gambia-rocky'
+    name: 'gambia-functest-rocky'
     triggers:
       - timed: ''
 
 - trigger:
-    name: 'gambia-queens'
+    name: 'gambia-functest-queens'
     triggers:
-      - timed: '0 12 * * *'
+      - timed: '0 3 * * *'
 
 - trigger:
-    name: 'fraser-master'
+    name: 'fraser-functest-master'
     triggers:
       - timed: ''
 
 - trigger:
-    name: 'fraser-rocky'
+    name: 'fraser-functest-rocky'
     triggers:
       - timed: ''
 
 - trigger:
-    name: 'fraser-queens'
+    name: 'fraser-functest-queens'
     triggers:
       - timed: ''
 
 - trigger:
-    name: 'euphrates-master'
+    name: 'euphrates-functest-master'
     triggers:
       - timed: ''
 
 - trigger:
-    name: 'euphrates-rocky'
+    name: 'euphrates-functest-rocky'
     triggers:
       - timed: ''
 
 - trigger:
-    name: 'euphrates-queens'
+    name: 'euphrates-functest-queens'
     triggers:
       - timed: ''
 
 - trigger:
-    name: 'danube-master'
+    name: 'danube-functest-master'
     triggers:
       - timed: ''
 
 - trigger:
-    name: 'danube-rocky'
+    name: 'danube-functest-rocky'
     triggers:
       - timed: ''
 
 - trigger:
-    name: 'danube-queens'
+    name: 'danube-functest-queens'
     triggers:
       - timed: ''