Apex: remove blocking on daily jobs
[releng.git] / jjb / apex / apex.yml
index bb6e234..495b9b5 100644 (file)
@@ -1,63 +1,41 @@
 - project:
-    name: apex
+    name: 'apex'
+    project: 'apex'
+    build-slave: 'apex-build'
     jobs:
         - 'apex-verify-{stream}'
         - 'apex-verify-gate-{stream}'
         - 'apex-verify-unit-tests-{stream}'
-        - 'apex-runner-{platform}-{scenario}-{stream}'
         - 'apex-runner-cperf-{stream}'
         - 'apex-build-{stream}'
-        - 'apex-deploy-virtual-{scenario}-{stream}'
-        - 'apex-deploy-baremetal-{scenario}-{stream}'
-        - 'apex-daily-{stream}'
+        - 'apex-deploy-{platform}-{stream}'
+        - 'apex-daily-master'
+        - 'apex-daily-danube'
         - 'apex-csit-promote-daily-{stream}'
         - 'apex-fdio-promote-daily-{stream}'
-
+        - 'apex-verify-iso-{stream}'
+        - 'apex-deploy-test-baremetal-{stream}'
+        - 'apex-upload-snapshot'
+        - 'apex-create-snapshot'
     # stream:    branch with - in place of / (eg. stable-arno)
     # branch:    branch (eg. stable/arno)
     stream:
         - master:
             branch: 'master'
             gs-pathname: ''
-            slave: 'lf-pod1'
-            verify-slave: 'apex-verify-master'
-            daily-slave: 'apex-daily-master'
+            build-slave: 'apex-build-master'
+            virtual-slave: 'apex-virtual-master'
+            baremetal-slave: 'apex-baremetal-master'
+            verify-scenario: 'os-odl-nofeature-ha'
+
         - danube:
             branch: 'stable/danube'
             gs-pathname: '/danube'
-            slave: 'lf-pod1'
-            verify-slave: 'apex-verify-danube'
-            daily-slave: 'apex-daily-danube'
-
-    project: 'apex'
-
-    scenario:
-         - 'os-nosdn-nofeature-noha'
-         - 'os-nosdn-nofeature-ha'
-         - 'os-nosdn-nofeature-ha-ipv6'
-         - 'os-nosdn-ovs-noha'
-         - 'os-nosdn-ovs-ha'
-         - 'os-nosdn-fdio-noha'
-         - 'os-nosdn-fdio-ha'
-         - 'os-nosdn-kvm-ha'
-         - 'os-nosdn-kvm-noha'
-         - 'os-odl_l2-fdio-noha'
-         - 'os-odl_l2-fdio-ha'
-         - 'os-odl_l2-netvirt_gbp_fdio-noha'
-         - 'os-odl_l2-sfc-noha'
-         - 'os-odl_l3-nofeature-noha'
-         - 'os-odl_l3-nofeature-ha'
-         - 'os-odl_l3-ovs-noha'
-         - 'os-odl_l3-ovs-ha'
-         - 'os-odl-bgpvpn-ha'
-         - 'os-odl-gluon-noha'
-         - 'os-odl_l3-fdio-noha'
-         - 'os-odl_l3-fdio-ha'
-         - 'os-odl_l3-fdio_dvr-noha'
-         - 'os-odl_l3-fdio_dvr-ha'
-         - 'os-odl_l3-csit-noha'
-         - 'os-onos-nofeature-ha'
-         - 'gate'
+            build-slave: 'apex-build-danube'
+            virtual-slave: 'apex-virtual-danube'
+            baremetal-slave: 'apex-baremetal-danube'
+            verify-scenario: 'os-odl_l3-nofeature-ha'
+            disabled: false
 
     platform:
          - 'baremetal'
@@ -67,7 +45,7 @@
 - job-template:
     name: 'apex-verify-unit-tests-{stream}'
 
-    node: '{verify-slave}'
+    node: '{build-slave}'
 
     concurrent: true
 
         - project-parameter:
             project: '{project}'
             branch: '{branch}'
-        - string:
-            name: GIT_BASE
-            default: https://gerrit.opnfv.org/gerrit/$PROJECT
-            description: "Used for overriding the GIT URL coming from parameters macro."
 
     scm:
         - git-scm-gerrit
             option: 'project'
 
     builders:
-        - 'apex-unit-test'
+        - shell:
+            !include-raw-escape: ./apex-unit-test.sh
 
 # Verify
 - job-template:
     name: 'apex-verify-{stream}'
 
-    node: '{verify-slave}'
+    node: '{virtual-slave}'
 
     concurrent: true
 
+    project-type: 'multijob'
+
     parameters:
         - apex-parameter:
-            gs-pathname: '{gs-pathname}'
+            gs-pathname: '{gs-pathname}/dev'
         - project-parameter:
             project: '{project}'
             branch: '{branch}'
         - string:
-            name: GIT_BASE
-            default: https://gerrit.opnfv.org/gerrit/$PROJECT
-            description: "Used for overriding the GIT URL coming from parameters macro."
-
+            name: ARTIFACT_VERSION
+            default: dev
+            description: "Used for overriding the ARTIFACT_VERSION"
     scm:
         - git-scm-gerrit
 
             blocking-jobs:
                 - 'apex-daily.*'
                 - 'apex-deploy.*'
-                - 'apex-build.*'
                 - 'apex-runner.*'
                 - 'apex-verify.*'
         - throttle:
             option: 'project'
 
     builders:
-        - 'apex-unit-test'
-        - 'apex-build'
-        - trigger-builds:
-          - project: 'apex-deploy-virtual-os-odl_l3-nofeature-ha-{stream}'
-            predefined-parameters: |
-              BUILD_DIRECTORY=apex-verify-{stream}
-              OPNFV_CLEAN=yes
-            git-revision: false
-            block: true
-            same-node: true
-        - trigger-builds:
-          - project: 'functest-apex-{verify-slave}-suite-{stream}'
-            predefined-parameters: |
-              DEPLOY_SCENARIO=os-odl_l3-nofeature-ha
-              FUNCTEST_SUITE_NAME=healthcheck
-            block: true
-            same-node: true
-        - 'apex-workspace-cleanup'
+        - description-setter:
+            description: "Built on $NODE_NAME"
+        - multijob:
+            name: basic
+            condition: SUCCESSFUL
+            projects:
+                - name: 'apex-verify-unit-tests-{stream}'
+                  current-parameters: false
+                  predefined-parameters: |
+                    GERRIT_BRANCH=$GERRIT_BRANCH
+                    GERRIT_REFSPEC=$GERRIT_REFSPEC
+                    GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER
+                    GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE
+                  node-parameters: false
+                  kill-phase-on: FAILURE
+                  abort-all-job: true
+                  git-revision: true
+        - multijob:
+            name: build
+            condition: SUCCESSFUL
+            projects:
+                - name: 'apex-build-{stream}'
+                  current-parameters: false
+                  predefined-parameters: |
+                    GERRIT_BRANCH=$GERRIT_BRANCH
+                    GERRIT_REFSPEC=$GERRIT_REFSPEC
+                    GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER
+                    GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE
+                  node-parameters: false
+                  kill-phase-on: FAILURE
+                  abort-all-job: true
+                  git-revision: true
+        - multijob:
+            name: deploy-virtual
+            condition: SUCCESSFUL
+            projects:
+                - name: 'apex-deploy-virtual-{stream}'
+                  current-parameters: false
+                  predefined-parameters: |
+                    DEPLOY_SCENARIO={verify-scenario}
+                    OPNFV_CLEAN=yes
+                    GERRIT_BRANCH=$GERRIT_BRANCH
+                    GERRIT_REFSPEC=$GERRIT_REFSPEC
+                    GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER
+                    GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE
+                  node-parameters: false
+                  kill-phase-on: FAILURE
+                  abort-all-job: true
+                  git-revision: false
+        - multijob:
+            name: functest-smoke
+            condition: SUCCESSFUL
+            projects:
+              - name: 'functest-apex-virtual-suite-{stream}'
+                current-parameters: false
+                predefined-parameters: |
+                  DEPLOY_SCENARIO={verify-scenario}
+                  FUNCTEST_SUITE_NAME=healthcheck
+                  GERRIT_BRANCH=$GERRIT_BRANCH
+                  GERRIT_REFSPEC=$GERRIT_REFSPEC
+                  GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER
+                  GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE
+                node-parameters: false
+                kill-phase-on: FAILURE
+                abort-all-job: true
+                git-revision: false
 
 # Verify Scenario Gate
 - job-template:
     name: 'apex-verify-gate-{stream}'
 
-    node: '{verify-slave}'
+    node: '{virtual-slave}'
 
     concurrent: true
 
+    project-type: 'multijob'
+
     parameters:
         - apex-parameter:
-            gs-pathname: '{gs-pathname}'
+            gs-pathname: '{gs-pathname}/dev'
         - project-parameter:
             project: '{project}'
             branch: '{branch}'
             option: 'project'
 
     builders:
-        - 'apex-build'
-        - trigger-builds:
-          - project: 'apex-deploy-virtual-gate-{stream}'
-            predefined-parameters: |
-              BUILD_DIRECTORY=apex-verify-gate-{stream}
-              OPNFV_CLEAN=yes
-            current-parameters: true
-            git-revision: false
-            block: true
-            same-node: true
-        - trigger-builds:
-          - project: 'functest-apex-{verify-slave}-suite-{stream}'
-            predefined-parameters: |
-              DEPLOY_SCENARIO=os-nosdn-nofeature-ha
-              FUNCTEST_SUITE_NAME=healthcheck
-            block: true
-            same-node: true
-        - 'apex-workspace-cleanup'
+        - multijob:
+            name: deploy-virtual
+            condition: SUCCESSFUL
+            projects:
+                - name: 'apex-deploy-virtual-{stream}'
+                  current-parameters: false
+                  predefined-parameters: |
+                    DEPLOY_SCENARIO=gate
+                    OPNFV_CLEAN=yes
+                    GERRIT_BRANCH=$GERRIT_BRANCH
+                    GERRIT_REFSPEC=$GERRIT_REFSPEC
+                    GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER
+                    GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE
+                  node-parameters: false
+                  kill-phase-on: FAILURE
+                  abort-all-job: true
+                  git-revision: false
+        - multijob:
+            name: functest-smoke
+            condition: SUCCESSFUL
+            projects:
+              - name: 'functest-apex-virtual-suite-{stream}'
+                current-parameters: false
+                predefined-parameters: |
+                  DEPLOY_SCENARIO={verify-scenario}
+                  FUNCTEST_SUITE_NAME=healthcheck
+                  GERRIT_BRANCH=$GERRIT_BRANCH
+                  GERRIT_REFSPEC=$GERRIT_REFSPEC
+                  GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER
+                  GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE
+                node-parameters: false
+                kill-phase-on: FAILURE
+                abort-all-job: true
+                git-revision: false
 
 - job-template:
-    name: 'apex-runner-{platform}-{scenario}-{stream}'
-
-    # runner jobs for deploying manually
+    name: 'apex-runner-cperf-{stream}'
 
-    node: '{slave}'
+    # runner cperf job
+    project-type: 'multijob'
+    node: 'intel-pod2'
 
     disabled: false
 
     properties:
         - logrotate-default
         - build-blocker:
-            use-build-blocker: true
+            use-build-blocker: false
+            block-level: 'NODE'
             blocking-jobs:
-                - 'apex-daily.*'
-                - 'apex-verify.*'
-                - 'apex-.*-promote.*'
+                - 'apex-deploy.*'
+        - throttle:
+            max-per-node: 1
+            max-total: 10
+            option: 'project'
 
     builders:
-        - trigger-builds:
-          - project: 'apex-deploy-{platform}-{scenario}-{stream}'
-            predefined-parameters:
-              OPNFV_CLEAN=yes
-            git-revision: false
-            block: true
-        - trigger-builds:
-          - project: 'yardstick-apex-{slave}-daily-{stream}'
-            predefined-parameters:
-              DEPLOY_SCENARIO={scenario}
-            block: true
-            block-thresholds:
-                build-step-failure-threshold: 'never'
-                failure-threshold: 'never'
-                unstable-threshold: 'FAILURE'
-        - trigger-builds:
-          - project: 'functest-apex-{slave}-daily-{stream}'
-            predefined-parameters:
-              DEPLOY_SCENARIO={scenario}
-            block: true
-            block-thresholds:
-                build-step-failure-threshold: 'never'
-                failure-threshold: 'never'
-                unstable-threshold: 'FAILURE'
-
+        - description-setter:
+            description: "Deployed on $NODE_NAME"
+        - multijob:
+            name: 'Baremetal Deploy'
+            condition: ALWAYS
+            projects:
+                - name: 'apex-deploy-baremetal-{stream}'
+                  node-parameters: false
+                  current-parameters: true
+                  predefined-parameters: |
+                    OPNFV_CLEAN=yes
+                    DEPLOY_SCENARIO={verify-scenario}
+                  kill-phase-on: FAILURE
+                  abort-all-job: true
+                  git-revision: false
+        - multijob:
+            name: Functest
+            condition: ALWAYS
+            projects:
+                - name: 'functest-apex-baremetal-daily-{stream}'
+                  node-parameters: true
+                  current-parameters: false
+                  predefined-parameters:
+                    DEPLOY_SCENARIO={verify-scenario}
+                  kill-phase-on: NEVER
+                  abort-all-job: false
+                  git-revision: false
+
+# Build phase
 - job-template:
-    name: 'apex-runner-cperf-{stream}'
-
-    # runner cperf job
+    name: 'apex-build-{stream}'
 
-    node: 'intel-pod2'
+    # Job template for builds
+    #
+    # Required Variables:
+    #     stream:    branch with - in place of / (eg. stable)
+    #     branch:    branch (eg. stable)
+    node: '{build-slave}'
 
     disabled: false
 
+    concurrent: true
+
     parameters:
-        - apex-parameter:
-            gs-pathname: '{gs-pathname}'
+        - '{project}-defaults'
         - project-parameter:
             project: '{project}'
             branch: '{branch}'
-        - string:
-            name: GIT_BASE
-            default: https://gerrit.opnfv.org/gerrit/$PROJECT
-            description: "Used for overriding the GIT URL coming from parameters macro."
+        - apex-parameter:
+            gs-pathname: '{gs-pathname}'
 
     scm:
         - git-scm
 
     properties:
         - logrotate-default
-        - build-blocker:
-            use-build-blocker: false
-            block-level: 'NODE'
-            blocking-jobs:
-                - 'apex-deploy.*'
         - throttle:
             max-per-node: 1
             max-total: 10
             option: 'project'
 
     builders:
-        - trigger-builds:
-          - project: 'apex-deploy-baremetal-os-odl_l3-nofeature-noha-{stream}'
-            predefined-parameters:
-              OPNFV_CLEAN=yes
-            git-revision: false
-            block: true
-            same-node: true
-        - trigger-builds:
-          - project: 'cperf-apex-intel-pod2-daily-master'
-            predefined-parameters:
-              DEPLOY_SCENARIO=os-odl_l3-nofeature-noha
-            block: true
-            same-node: true
+        - 'apex-build'
+        - inject:
+           properties-content: ARTIFACT_TYPE=rpm
+        - 'apex-upload-artifact'
 
+# ISO verify job
 - job-template:
-    name: 'apex-build-{stream}'
+    name: 'apex-verify-iso-{stream}'
 
     # Job template for builds
     #
     # Required Variables:
     #     stream:    branch with - in place of / (eg. stable)
     #     branch:    branch (eg. stable)
-    node: '{daily-slave}'
+    node: '{virtual-slave}'
 
     disabled: false
 
             option: 'project'
 
     builders:
-        - 'apex-build'
-        - trigger-builds:
-          - project: 'apex-deploy-virtual-os-nosdn-nofeature-noha-{stream}'
-            predefined-parameters: |
-              BUILD_DIRECTORY=apex-build-{stream}/.build
-              OPNFV_CLEAN=yes
-            git-revision: false
-            same-node: true
-            block: true
+        - 'apex-iso-verify'
+        - inject:
+           properties-content: ARTIFACT_TYPE=iso
         - 'apex-upload-artifact'
 
+# Deploy job
 - job-template:
-    name: 'apex-deploy-virtual-{scenario}-{stream}'
+    name: 'apex-deploy-{platform}-{stream}'
 
     # Job template for virtual deployment
     #
     # Required Variables:
     #     stream:    branch with - in place of / (eg. stable)
     #     branch:    branch (eg. stable)
-    node: '{slave}'
+    node: 'apex-{platform}-{stream}'
 
     concurrent: true
 
             gs-pathname: '{gs-pathname}'
         - string:
             name: DEPLOY_SCENARIO
-            default: '{scenario}'
+            default: '{verify-scenario}'
             description: "Scenario to deploy with."
         - string:
             name: OPNFV_CLEAN
             option: 'project'
 
     builders:
+        - description-setter:
+            description: "Deployed on $NODE_NAME - Scenario: $DEPLOY_SCENARIO"
+        - 'apex-download-artifact'
         - 'apex-deploy'
         - 'apex-workspace-cleanup'
 
+
+# Baremetal Deploy and Test
 - job-template:
-    name: 'apex-deploy-baremetal-{scenario}-{stream}'
+    name: 'apex-deploy-test-baremetal-{stream}'
 
-    # Job template for baremetal deployment
+    # Job template for daily build
     #
     # Required Variables:
     #     stream:    branch with - in place of / (eg. stable)
     #     branch:    branch (eg. stable)
-    node: '{slave}'
+    project-type: 'multijob'
 
     disabled: false
 
         - git-scm
 
     parameters:
+        - '{project}-defaults'
+        - '{project}-baremetal-{stream}-defaults'
         - project-parameter:
             project: '{project}'
             branch: '{branch}'
             gs-pathname: '{gs-pathname}'
         - string:
             name: DEPLOY_SCENARIO
-            default: '{scenario}'
+            default: '{verify-scenario}'
             description: "Scenario to deploy with."
-
     properties:
         - logrotate-default
         - build-blocker:
             blocking-jobs:
                 - 'apex-verify.*'
                 - 'apex-deploy.*'
-                - 'apex-build.*'
+                - 'apex-runner.*'
+                - 'apex-.*-promote.*'
+    builders:
+        - description-setter:
+            description: "Deployed on $NODE_NAME - Scenario: $DEPLOY_SCENARIO"
+        - multijob:
+            name: 'Baremetal Deploy'
+            condition: ALWAYS
+            projects:
+                - name: 'apex-deploy-baremetal-{stream}'
+                  node-parameters: true
+                  current-parameters: true
+                  predefined-parameters: |
+                    OPNFV_CLEAN=yes
+                  kill-phase-on: FAILURE
+                  abort-all-job: true
+                  git-revision: false
+        - multijob:
+            name: Functest
+            condition: ALWAYS
+            projects:
+                - name: 'functest-apex-baremetal-daily-{stream}'
+                  node-parameters: true
+                  current-parameters: false
+                  predefined-parameters:
+                    DEPLOY_SCENARIO=$DEPLOY_SCENARIO
+                  kill-phase-on: NEVER
+                  abort-all-job: false
+                  git-revision: false
+        - multijob:
+            name: Yardstick
+            condition: ALWAYS
+            projects:
+                - name: 'yardstick-apex-baremetal-daily-{stream}'
+                  node-parameters: true
+                  current-parameters: false
+                  predefined-parameters:
+                    DEPLOY_SCENARIO=$DEPLOY_SCENARIO
+                  kill-phase-on: NEVER
+                  abort-all-job: false
+                  git-revision: false
+
+
+# danube Daily
+- job-template:
+    name: 'apex-daily-danube'
+
+    # Job template for daily build
+    #
+    # Required Variables:
+    #     stream:    branch with - in place of / (eg. stable)
+    #     branch:    branch (eg. stable)
+    project-type: 'multijob'
 
+    node: '{build-slave}'
+
+    disabled: false
+
+    scm:
+        - git-scm
+
+    parameters:
+        - '{project}-defaults'
+        - '{project}-baremetal-danube-defaults'
+        - project-parameter:
+            project: '{project}'
+            branch: 'stable/danube'
+        - apex-parameter:
+            gs-pathname: '/danube'
+
+    properties:
+        - logrotate-default
+
+    triggers:
+        - 'apex-danube'
 
     builders:
-        - 'apex-deploy'
-        - 'apex-workspace-cleanup'
+        - multijob:
+            name: build
+            condition: SUCCESSFUL
+            projects:
+                - name: 'apex-build-danube'
+                  current-parameters: false
+                  predefined-parameters: |
+                    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: FAILURE
+                  abort-all-job: true
+                  git-revision: true
+        - multijob:
+            name: 'Verify and upload ISO'
+            condition: SUCCESSFUL
+            projects:
+                - name: 'apex-verify-iso-danube'
+                  current-parameters: false
+                  predefined-parameters: |
+                    BUILD_DIRECTORY=apex-build-danube/.build
+                    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: FAILURE
+                  abort-all-job: true
+                  git-revision: true
+        - multijob:
+            name: Baremetal Deploy and Test Phase
+            condition: SUCCESSFUL
+            projects:
 
-# Daily
+                - name: 'apex-deploy-test-baremetal-danube'
+                  node-parameters: false
+                  current-parameters: false
+                  predefined-parameters: |
+                    DEPLOY_SCENARIO=os-nosdn-nofeature-noha
+                    OPNFV_CLEAN=yes
+                  kill-phase-on: NEVER
+                  abort-all-job: true
+                  git-revision: false
+
+                - name: 'apex-deploy-test-baremetal-danube'
+                  node-parameters: false
+                  current-parameters: false
+                  predefined-parameters: |
+                    DEPLOY_SCENARIO=os-nosdn-nofeature-ha
+                    OPNFV_CLEAN=yes
+                  kill-phase-on: NEVER
+                  abort-all-job: true
+                  git-revision: false
+
+                - name: 'apex-deploy-test-baremetal-danube'
+                  node-parameters: false
+                  current-parameters: false
+                  predefined-parameters: |
+                    DEPLOY_SCENARIO=os-nosdn-nofeature-ha-ipv6
+                    OPNFV_CLEAN=yes
+                  kill-phase-on: NEVER
+                  abort-all-job: true
+                  git-revision: false
+
+                - name: 'apex-deploy-test-baremetal-danube'
+                  node-parameters: false
+                  current-parameters: false
+                  predefined-parameters: |
+                    DEPLOY_SCENARIO=os-nosdn-ovs-noha
+                    OPNFV_CLEAN=yes
+                  kill-phase-on: NEVER
+                  abort-all-job: true
+                  git-revision: false
+
+                - name: 'apex-deploy-test-baremetal-danube'
+                  node-parameters: false
+                  current-parameters: false
+                  predefined-parameters: |
+                    DEPLOY_SCENARIO=os-nosdn-ovs-ha
+                    OPNFV_CLEAN=yes
+                  kill-phase-on: NEVER
+                  abort-all-job: true
+                  git-revision: false
+
+                - name: 'apex-deploy-test-baremetal-danube'
+                  node-parameters: false
+                  current-parameters: false
+                  predefined-parameters: |
+                    DEPLOY_SCENARIO=os-nosdn-fdio-noha
+                    OPNFV_CLEAN=yes
+                  kill-phase-on: NEVER
+                  abort-all-job: true
+                  git-revision: false
+
+                - name: 'apex-deploy-test-baremetal-danube'
+                  node-parameters: false
+                  current-parameters: false
+                  predefined-parameters: |
+                    DEPLOY_SCENARIO=os-nosdn-fdio-ha
+                    OPNFV_CLEAN=yes
+                  kill-phase-on: NEVER
+                  abort-all-job: true
+                  git-revision: false
+
+                - name: 'apex-deploy-test-baremetal-danube'
+                  node-parameters: false
+                  current-parameters: false
+                  predefined-parameters: |
+                    DEPLOY_SCENARIO=os-nosdn-kvm-ha
+                    OPNFV_CLEAN=yes
+                  kill-phase-on: NEVER
+                  abort-all-job: true
+                  git-revision: false
+
+                - name: 'apex-deploy-test-baremetal-danube'
+                  node-parameters: false
+                  current-parameters: false
+                  predefined-parameters: |
+                    DEPLOY_SCENARIO=os-nosdn-kvm-noha
+                    OPNFV_CLEAN=yes
+                  kill-phase-on: NEVER
+                  abort-all-job: true
+                  git-revision: false
+
+                - name: 'apex-deploy-test-baremetal-danube'
+                  node-parameters: false
+                  current-parameters: false
+                  predefined-parameters: |
+                    DEPLOY_SCENARIO=os-odl_l2-fdio-noha
+                    OPNFV_CLEAN=yes
+                  kill-phase-on: NEVER
+                  abort-all-job: true
+                  git-revision: false
+
+                - name: 'apex-deploy-test-baremetal-danube'
+                  node-parameters: false
+                  current-parameters: false
+                  predefined-parameters: |
+                    DEPLOY_SCENARIO=os-odl_l2-fdio-ha
+                    OPNFV_CLEAN=yes
+                  kill-phase-on: NEVER
+                  abort-all-job: true
+                  git-revision: false
+
+                - name: 'apex-deploy-test-baremetal-danube'
+                  node-parameters: false
+                  current-parameters: false
+                  predefined-parameters: |
+                    DEPLOY_SCENARIO=os-odl_l2-netvirt_gbp_fdio-noha
+                    OPNFV_CLEAN=yes
+                  kill-phase-on: NEVER
+                  abort-all-job: true
+                  git-revision: false
+
+                - name: 'apex-deploy-test-baremetal-danube'
+                  node-parameters: false
+                  current-parameters: false
+                  predefined-parameters: |
+                    DEPLOY_SCENARIO=os-odl_l2-sfc-noha
+                    OPNFV_CLEAN=yes
+                  kill-phase-on: NEVER
+                  abort-all-job: true
+                  git-revision: false
+
+                - name: 'apex-deploy-test-baremetal-danube'
+                  node-parameters: false
+                  current-parameters: false
+                  predefined-parameters: |
+                    DEPLOY_SCENARIO=os-odl_l3-nofeature-noha
+                    OPNFV_CLEAN=yes
+                  kill-phase-on: NEVER
+                  abort-all-job: true
+                  git-revision: false
+
+                - name: 'apex-deploy-test-baremetal-danube'
+                  node-parameters: false
+                  current-parameters: false
+                  predefined-parameters: |
+                    DEPLOY_SCENARIO=os-odl_l3-nofeature-ha
+                    OPNFV_CLEAN=yes
+                  kill-phase-on: NEVER
+                  abort-all-job: true
+                  git-revision: false
+
+                - name: 'apex-deploy-test-baremetal-danube'
+                  node-parameters: false
+                  current-parameters: false
+                  predefined-parameters: |
+                    DEPLOY_SCENARIO=os-odl_l3-ovs-noha
+                    OPNFV_CLEAN=yes
+                  kill-phase-on: NEVER
+                  abort-all-job: true
+                  git-revision: false
+
+                - name: 'apex-deploy-test-baremetal-danube'
+                  node-parameters: false
+                  current-parameters: false
+                  predefined-parameters: |
+                    DEPLOY_SCENARIO=os-odl_l3-ovs-ha
+                    OPNFV_CLEAN=yes
+                  kill-phase-on: NEVER
+                  abort-all-job: true
+                  git-revision: false
+
+                - name: 'apex-deploy-test-baremetal-danube'
+                  node-parameters: false
+                  current-parameters: false
+                  predefined-parameters: |
+                    DEPLOY_SCENARIO=os-odl-bgpvpn-ha
+                    OPNFV_CLEAN=yes
+                  kill-phase-on: NEVER
+                  abort-all-job: true
+                  git-revision: false
+
+                - name: 'apex-deploy-test-baremetal-danube'
+                  node-parameters: false
+                  current-parameters: false
+                  predefined-parameters: |
+                    DEPLOY_SCENARIO=os-odl-gluon-noha
+                    OPNFV_CLEAN=yes
+                  kill-phase-on: NEVER
+                  abort-all-job: true
+                  git-revision: false
+
+                - name: 'apex-deploy-test-baremetal-danube'
+                  node-parameters: false
+                  current-parameters: false
+                  predefined-parameters: |
+                    DEPLOY_SCENARIO=os-odl_l3-fdio-noha
+                    OPNFV_CLEAN=yes
+                  kill-phase-on: NEVER
+                  abort-all-job: true
+                  git-revision: false
+
+                - name: 'apex-deploy-test-baremetal-danube'
+                  node-parameters: false
+                  current-parameters: false
+                  predefined-parameters: |
+                    DEPLOY_SCENARIO=os-odl_l3-fdio-ha
+                    OPNFV_CLEAN=yes
+                  kill-phase-on: NEVER
+                  abort-all-job: true
+                  git-revision: false
+
+                - name: 'apex-deploy-test-baremetal-danube'
+                  node-parameters: false
+                  current-parameters: false
+                  predefined-parameters: |
+                    DEPLOY_SCENARIO=os-odl_l3-fdio_dvr-noha
+                    OPNFV_CLEAN=yes
+                  kill-phase-on: NEVER
+                  abort-all-job: true
+                  git-revision: false
+
+                - name: 'apex-deploy-test-baremetal-danube'
+                  node-parameters: false
+                  current-parameters: false
+                  predefined-parameters: |
+                    DEPLOY_SCENARIO=os-odl_l3-fdio_dvr-ha
+                    OPNFV_CLEAN=yes
+                  kill-phase-on: NEVER
+                  abort-all-job: true
+                  git-revision: false
+
+                - name: 'apex-deploy-test-baremetal-danube'
+                  node-parameters: false
+                  current-parameters: false
+                  predefined-parameters: |
+                    DEPLOY_SCENARIO=os-odl_l3-csit-noha
+                    OPNFV_CLEAN=yes
+                  kill-phase-on: NEVER
+                  abort-all-job: true
+                  git-revision: false
+
+                - name: 'apex-deploy-test-baremetal-danube'
+                  node-parameters: false
+                  current-parameters: false
+                  predefined-parameters: |
+                    DEPLOY_SCENARIO=os-onos-nofeature-ha
+                    OPNFV_CLEAN=yes
+                  kill-phase-on: NEVER
+                  abort-all-job: true
+                  git-revision: false
+
+                - name: 'apex-deploy-test-baremetal-danube'
+                  node-parameters: false
+                  current-parameters: false
+                  predefined-parameters: |
+                    DEPLOY_SCENARIO=os-ovn-nofeature-noha
+                    OPNFV_CLEAN=yes
+                  kill-phase-on: NEVER
+                  abort-all-job: true
+                  git-revision: false
+
+
+# master Daily
 - job-template:
-    name: 'apex-daily-{stream}'
+    name: 'apex-daily-master'
 
     # Job template for daily build
     #
     # Required Variables:
     #     stream:    branch with - in place of / (eg. stable)
     #     branch:    branch (eg. stable)
-    node: '{daily-slave}'
+    project-type: 'multijob'
+
+    node: '{build-slave}'
 
     disabled: false
 
         - git-scm
 
     parameters:
+        - '{project}-defaults'
+        - '{project}-baremetal-master-defaults'
         - project-parameter:
             project: '{project}'
-            branch: '{branch}'
+            branch: 'master'
         - apex-parameter:
-            gs-pathname: '{gs-pathname}'
+            gs-pathname: ''
 
     properties:
         - logrotate-default
-        - build-blocker:
-            use-build-blocker: true
-            block-level: 'NODE'
-            blocking-jobs:
-                - 'apex-verify.*'
-                - 'apex-deploy.*'
-                - 'apex-build.*'
-                - 'apex-runner.*'
-                - 'apex-.*-promote.*'
 
     triggers:
-        - 'apex-{stream}'
+        - 'apex-master'
 
     builders:
-        - trigger-builds:
-          - project: 'apex-build-{stream}'
-            git-revision: true
-            current-parameters: true
-            same-node: true
-            block: true
-        - trigger-builds:
-          - project: 'apex-deploy-baremetal-os-nosdn-nofeature-ha-{stream}'
-            predefined-parameters: |
-              BUILD_DIRECTORY=apex-build-{stream}/.build
-              OPNFV_CLEAN=yes
-            git-revision: true
-            same-node: true
-            block-thresholds:
-                build-step-failure-threshold: 'never'
-            block: true
-        - trigger-builds:
-          - project: 'functest-apex-{daily-slave}-daily-{stream}'
-            predefined-parameters:
-              DEPLOY_SCENARIO=os-nosdn-nofeature-ha
-            block: true
-            same-node: true
-            block-thresholds:
-                build-step-failure-threshold: 'never'
-                failure-threshold: 'never'
-                unstable-threshold: 'FAILURE'
-        - trigger-builds:
-          - project: 'yardstick-apex-{slave}-daily-{stream}'
-            predefined-parameters:
-              DEPLOY_SCENARIO=os-nosdn-nofeature-ha
-            block: true
-            same-node: true
-            block-thresholds:
-                build-step-failure-threshold: 'never'
-                failure-threshold: 'never'
-                unstable-threshold: 'FAILURE'
-        # 1.dovetail only master by now, not sync with A/B/C branches
-        # 2.here the stream means the SUT stream, dovetail stream is defined in its own job
-        # 3.only debug testsuite here(includes basic testcase,
-        #   i.e. one tempest smoke ipv6, two vping from functest)
-        # 4.not used for release criteria or compliance,
-        #   only to debug the dovetail tool bugs with apex
-        #- trigger-builds:
-        #    - project: 'dovetail-apex-{slave}-debug-{stream}'
-        #      current-parameters: false
-        #      predefined-parameters:
-        #        DEPLOY_SCENARIO=os-nosdn-nofeature-ha
-        #      block: true
-        #      same-node: true
-        #      block-thresholds:
-        #        build-step-failure-threshold: 'never'
-        #        failure-threshold: 'never'
-        #        unstable-threshold: 'FAILURE'
-        - trigger-builds:
-          - project: 'apex-deploy-baremetal-os-odl_l3-nofeature-ha-{stream}'
-            predefined-parameters: |
-              BUILD_DIRECTORY=apex-build-{stream}/.build
-              OPNFV_CLEAN=yes
-            git-revision: true
-            same-node: true
-            block-thresholds:
-                build-step-failure-threshold: 'never'
-            block: true
-        - trigger-builds:
-          - project: 'functest-apex-{daily-slave}-daily-{stream}'
-            predefined-parameters:
-              DEPLOY_SCENARIO=os-odl_l3-nofeature-ha
-            block: true
-            same-node: true
-            block-thresholds:
-                build-step-failure-threshold: 'never'
-                failure-threshold: 'never'
-                unstable-threshold: 'FAILURE'
-        - trigger-builds:
-          - project: 'yardstick-apex-{slave}-daily-{stream}'
-            predefined-parameters:
-              DEPLOY_SCENARIO=os-odl_l3-nofeature-ha
-            block: true
-            same-node: true
-            block-thresholds:
-                build-step-failure-threshold: 'never'
-                failure-threshold: 'never'
-                unstable-threshold: 'FAILURE'
-        - trigger-builds:
-          - project: 'apex-deploy-baremetal-os-odl-bgpvpn-ha-{stream}'
-            predefined-parameters: |
-              BUILD_DIRECTORY=apex-build-{stream}/.build
-              OPNFV_CLEAN=yes
-            git-revision: true
-            same-node: true
-            block-thresholds:
-                build-step-failure-threshold: 'never'
-            block: true
-        - trigger-builds:
-          - project: 'functest-apex-{daily-slave}-daily-{stream}'
-            predefined-parameters:
-              DEPLOY_SCENARIO=os-odl-bgpvpn-ha
-            block: true
-            same-node: true
-            block-thresholds:
-                build-step-failure-threshold: 'never'
-                failure-threshold: 'never'
-                unstable-threshold: 'FAILURE'
-        - trigger-builds:
-          - project: 'yardstick-apex-{slave}-daily-{stream}'
-            predefined-parameters:
-              DEPLOY_SCENARIO=os-odl-bgpvpn-ha
-            block: true
-            same-node: true
-            block-thresholds:
-                build-step-failure-threshold: 'never'
-                failure-threshold: 'never'
-                unstable-threshold: 'FAILURE'
-        - trigger-builds:
-          - project: 'apex-deploy-baremetal-os-odl-gluon-noha-{stream}'
-            predefined-parameters: |
-              BUILD_DIRECTORY=apex-build-{stream}/.build
-              OPNFV_CLEAN=yes
-            git-revision: true
-            same-node: true
-            block-thresholds:
-                build-step-failure-threshold: 'never'
-            block: true
-        - trigger-builds:
-          - project: 'functest-apex-{daily-slave}-daily-{stream}'
-            predefined-parameters:
-              DEPLOY_SCENARIO=os-odl-gluon-noha
-            block: true
-            same-node: true
-            block-thresholds:
-                build-step-failure-threshold: 'never'
-                failure-threshold: 'never'
-                unstable-threshold: 'FAILURE'
-        - trigger-builds:
-          - project: 'yardstick-apex-{slave}-daily-{stream}'
-            predefined-parameters:
-              DEPLOY_SCENARIO=os-odl-gluon-noha
-            block: true
-            same-node: true
-            block-thresholds:
-                build-step-failure-threshold: 'never'
-                failure-threshold: 'never'
-                unstable-threshold: 'FAILURE'
-        - trigger-builds:
-          - project: 'apex-deploy-baremetal-os-odl_l2-fdio-noha-{stream}'
-            predefined-parameters: |
-              BUILD_DIRECTORY=apex-build-{stream}/.build
-              OPNFV_CLEAN=yes
-            git-revision: true
-            same-node: true
-            block-thresholds:
-                build-step-failure-threshold: 'never'
-            block: true
-        - trigger-builds:
-          - project: 'functest-apex-{daily-slave}-daily-{stream}'
-            predefined-parameters:
-              DEPLOY_SCENARIO=os-odl_l2-fdio-noha
-            block: true
-            same-node: true
-            block-thresholds:
-                build-step-failure-threshold: 'never'
-                failure-threshold: 'never'
-                unstable-threshold: 'FAILURE'
-        - trigger-builds:
-          - project: 'yardstick-apex-{slave}-daily-{stream}'
-            predefined-parameters:
-              DEPLOY_SCENARIO=os-odl_l2-fdio-noha
-            block: true
-            same-node: true
-            block-thresholds:
-                build-step-failure-threshold: 'never'
-                failure-threshold: 'never'
-                unstable-threshold: 'FAILURE'
-        - trigger-builds:
-          - project: 'apex-deploy-baremetal-os-odl_l2-fdio-ha-{stream}'
-            predefined-parameters: |
-              BUILD_DIRECTORY=apex-build-{stream}/.build
-              OPNFV_CLEAN=yes
-            git-revision: true
-            same-node: true
-            block-thresholds:
-                build-step-failure-threshold: 'never'
-            block: true
-        - trigger-builds:
-          - project: 'functest-apex-{daily-slave}-daily-{stream}'
-            predefined-parameters:
-              DEPLOY_SCENARIO=os-odl_l2-fdio-ha
-            block: true
-            same-node: true
-            block-thresholds:
-                build-step-failure-threshold: 'never'
-                failure-threshold: 'never'
-                unstable-threshold: 'FAILURE'
-        - trigger-builds:
-          - project: 'yardstick-apex-{slave}-daily-{stream}'
-            predefined-parameters:
-              DEPLOY_SCENARIO=os-odl_l2-fdio-ha
-            block: true
-            same-node: true
-            block-thresholds:
-                build-step-failure-threshold: 'never'
-                failure-threshold: 'never'
-                unstable-threshold: 'FAILURE'
-        - trigger-builds:
-          - project: 'apex-deploy-baremetal-os-nosdn-kvm-ha-{stream}'
-            predefined-parameters: |
-              BUILD_DIRECTORY=apex-build-{stream}/.build
-              OPNFV_CLEAN=yes
-            git-revision: true
-            same-node: true
-            block-thresholds:
-                build-step-failure-threshold: 'never'
-            block: true
-        - trigger-builds:
-          - project: 'functest-apex-{daily-slave}-daily-{stream}'
-            predefined-parameters:
-              DEPLOY_SCENARIO=os-nosdn-kvm-ha
-            block: true
-            same-node: true
-            block-thresholds:
-                build-step-failure-threshold: 'never'
-                failure-threshold: 'never'
-                unstable-threshold: 'FAILURE'
-        - trigger-builds:
-          - project: 'yardstick-apex-{slave}-daily-{stream}'
-            predefined-parameters:
-              DEPLOY_SCENARIO=os-nosdn-kvm-ha
-            block: true
-            same-node: true
-            block-thresholds:
-                build-step-failure-threshold: 'never'
-                failure-threshold: 'never'
-                unstable-threshold: 'FAILURE'
-        - trigger-builds:
-          - project: 'apex-deploy-baremetal-os-odl_l3-fdio-noha-{stream}'
-            predefined-parameters: |
-              BUILD_DIRECTORY=apex-build-{stream}/.build
-              OPNFV_CLEAN=yes
-            git-revision: true
-            same-node: true
-            block-thresholds:
-                build-step-failure-threshold: 'never'
-            block: true
-        - trigger-builds:
-          - project: 'functest-apex-{daily-slave}-daily-{stream}'
-            predefined-parameters:
-              DEPLOY_SCENARIO=os-odl_l3-fdio-noha
-            block: true
-            same-node: true
-            block-thresholds:
-                build-step-failure-threshold: 'never'
-                failure-threshold: 'never'
-                unstable-threshold: 'FAILURE'
-        - trigger-builds:
-          - project: 'yardstick-apex-{slave}-daily-{stream}'
-            predefined-parameters:
-              DEPLOY_SCENARIO=os-odl_l3-fdio-noha
-            block: true
-            same-node: true
-            block-thresholds:
-                build-step-failure-threshold: 'never'
-                failure-threshold: 'never'
-                unstable-threshold: 'FAILURE'
-        - trigger-builds:
-          - project: 'apex-deploy-baremetal-os-nosdn-fdio-ha-{stream}'
-            predefined-parameters: |
-              BUILD_DIRECTORY=apex-build-{stream}/.build
-              OPNFV_CLEAN=yes
-            git-revision: true
-            same-node: true
-            block-thresholds:
-                build-step-failure-threshold: 'never'
-            block: true
-        - trigger-builds:
-          - project: 'functest-apex-{daily-slave}-daily-{stream}'
-            predefined-parameters:
-              DEPLOY_SCENARIO=os-nosdn-fdio-ha
-            block: true
-            same-node: true
-            block-thresholds:
-                build-step-failure-threshold: 'never'
-                failure-threshold: 'never'
-                unstable-threshold: 'FAILURE'
-        - trigger-builds:
-          - project: 'yardstick-apex-{slave}-daily-{stream}'
-            predefined-parameters:
-              DEPLOY_SCENARIO=os-nosdn-fdio-ha
-            block: true
-            same-node: true
-            block-thresholds:
-                build-step-failure-threshold: 'never'
-                failure-threshold: 'never'
-                unstable-threshold: 'FAILURE'
-        - trigger-builds:
-          - project: 'apex-deploy-baremetal-os-nosdn-ovs-ha-{stream}'
-            predefined-parameters: |
-              BUILD_DIRECTORY=apex-build-{stream}/.build
-              OPNFV_CLEAN=yes
-            git-revision: true
-            same-node: true
-            block-thresholds:
-                build-step-failure-threshold: 'never'
-            block: true
-        - trigger-builds:
-          - project: 'functest-apex-{daily-slave}-daily-{stream}'
-            predefined-parameters:
-              DEPLOY_SCENARIO=os-nosdn-ovs-ha
-            block: true
-            same-node: true
-            block-thresholds:
-                build-step-failure-threshold: 'never'
-                failure-threshold: 'never'
-                unstable-threshold: 'FAILURE'
-        - trigger-builds:
-          - project: 'yardstick-apex-{slave}-daily-{stream}'
-            predefined-parameters:
-              DEPLOY_SCENARIO=os-nosdn-ovs-ha
-            block: true
-            same-node: true
-            block-thresholds:
-                build-step-failure-threshold: 'never'
-                failure-threshold: 'never'
-                unstable-threshold: 'FAILURE'
-        - trigger-builds:
-          - project: 'apex-deploy-baremetal-os-odl_l3-ovs-ha-{stream}'
-            predefined-parameters: |
-              BUILD_DIRECTORY=apex-build-{stream}/.build
-              OPNFV_CLEAN=yes
-            git-revision: true
-            same-node: true
-            block-thresholds:
-                build-step-failure-threshold: 'never'
-            block: true
-        - trigger-builds:
-          - project: 'functest-apex-{daily-slave}-daily-{stream}'
-            predefined-parameters:
-              DEPLOY_SCENARIO=os-odl_l3-ovs-ha
-            block: true
-            same-node: true
-            block-thresholds:
-                build-step-failure-threshold: 'never'
-                failure-threshold: 'never'
-                unstable-threshold: 'FAILURE'
-        - trigger-builds:
-          - project: 'yardstick-apex-{slave}-daily-{stream}'
-            predefined-parameters:
-              DEPLOY_SCENARIO=os-odl_l3-ovs-ha
-            block: true
-            same-node: true
-            block-thresholds:
-                build-step-failure-threshold: 'never'
-                failure-threshold: 'never'
-                unstable-threshold: 'FAILURE'
+        - multijob:
+            name: build
+            condition: SUCCESSFUL
+            projects:
+                - name: 'apex-build-master'
+                  current-parameters: false
+                  predefined-parameters: |
+                    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: FAILURE
+                  abort-all-job: true
+                  git-revision: true
+        - multijob:
+            name: 'Verify and upload ISO'
+            condition: SUCCESSFUL
+            projects:
+                - name: 'apex-verify-iso-master'
+                  current-parameters: false
+                  predefined-parameters: |
+                    BUILD_DIRECTORY=apex-build-master/.build
+                    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: FAILURE
+                  abort-all-job: true
+                  git-revision: true
+        - multijob:
+            name: Baremetal Deploy and Test Phase
+            condition: SUCCESSFUL
+            projects:
+
+                - name: 'apex-deploy-test-baremetal-master'
+                  node-parameters: false
+                  current-parameters: false
+                  predefined-parameters: |
+                    DEPLOY_SCENARIO=os-nosdn-nofeature-noha
+                    OPNFV_CLEAN=yes
+                  kill-phase-on: NEVER
+                  abort-all-job: true
+                  git-revision: false
+
+                - name: 'apex-deploy-test-baremetal-master'
+                  node-parameters: false
+                  current-parameters: false
+                  predefined-parameters: |
+                    DEPLOY_SCENARIO=os-nosdn-nofeature-ha
+                    OPNFV_CLEAN=yes
+                  kill-phase-on: NEVER
+                  abort-all-job: true
+                  git-revision: false
+
+                - name: 'apex-deploy-test-baremetal-master'
+                  node-parameters: false
+                  current-parameters: false
+                  predefined-parameters: |
+                    DEPLOY_SCENARIO=os-odl-nofeature-ha
+                    OPNFV_CLEAN=yes
+                  kill-phase-on: NEVER
+                  abort-all-job: true
+                  git-revision: false
+
+                - name: 'apex-deploy-test-baremetal-master'
+                  node-parameters: false
+                  current-parameters: false
+                  predefined-parameters: |
+                    DEPLOY_SCENARIO=os-odl-nofeature-noha
+                    OPNFV_CLEAN=yes
+                  kill-phase-on: NEVER
+                  abort-all-job: true
+                  git-revision: false
+
+
+
+# snapshot create
+- job-template:
+    name: 'apex-create-snapshot'
+
+    # Job template for clean
+    #
+    # Required Variables:
+    #     stream:    branch with - in place of / (eg. stable)
+
+    disabled: false
+
+    builders:
+        - shell:
+            !include-raw-escape: ./apex-snapshot-create.sh
+
+# snapshot upload
+- job-template:
+    name: 'apex-upload-snapshot'
+
+    # Job template for clean
+    #
+    # Required Variables:
+    #     stream:    branch with - in place of / (eg. stable)
+
+    disabled: false
+
+    builders:
+        - inject:
+           properties-content: ARTIFACT_TYPE=snapshot
+        - 'apex-upload-artifact'
 
 # CSIT promote
 - job-template:
     # Required Variables:
     #     stream:    branch with - in place of / (eg. stable)
     #     branch:    branch (eg. stable)
-    node: '{daily-slave}'
-
+    node: '{virtual-slave}'
+    project-type: 'multijob'
     disabled: false
 
     scm:
         - timed: '0 12 * * 0'
 
     builders:
-        - 'apex-build'
-        - trigger-builds:
-          - project: 'apex-deploy-virtual-os-odl_l3-csit-noha-{stream}'
-            predefined-parameters: |
-              BUILD_DIRECTORY=apex-csit-promote-daily-{stream}
-              OPNFV_CLEAN=yes
-            git-revision: false
-            block: true
-            same-node: true
-        - trigger-builds:
-          - project: 'functest-apex-{daily-slave}-suite-{stream}'
-            predefined-parameters: |
-              DEPLOY_SCENARIO=os-odl_l3-nofeature-noha
-              FUNCTEST_SUITE_NAME=tempest_smoke_serial
-            block: true
-            same-node: true
-        - shell:
-            !include-raw-escape: ./apex-snapshot-create.sh
-        - shell:
-            !include-raw-escape: ./apex-upload-artifact.sh
+        - multijob:
+            name: build
+            condition: SUCCESSFUL
+            projects:
+                - name: 'apex-build-{stream}'
+                  current-parameters: false
+                  predefined-parameters: |
+                    GERRIT_BRANCH=$GERRIT_BRANCH
+                    GERRIT_REFSPEC=$GERRIT_REFSPEC
+                    GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER
+                    GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE
+                  node-parameters: false
+                  kill-phase-on: FAILURE
+                  abort-all-job: true
+                  git-revision: true
+        - multijob:
+            name: deploy-virtual
+            condition: SUCCESSFUL
+            projects:
+                - name: 'apex-deploy-virtual-{stream}'
+                  current-parameters: false
+                  predefined-parameters: |
+                    DEPLOY_SCENARIO=os-odl_l3-csit-noha
+                    OPNFV_CLEAN=yes
+                    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: FAILURE
+                  abort-all-job: true
+                  git-revision: false
+        - multijob:
+            name: functest-smoke
+            condition: SUCCESSFUL
+            projects:
+              - name: 'functest-apex-virtual-suite-{stream}'
+                current-parameters: false
+                predefined-parameters: |
+                  DEPLOY_SCENARIO=os-odl_l3-nofeature-noha
+                  FUNCTEST_SUITE_NAME=tempest_smoke_serial
+                  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: FAILURE
+                abort-all-job: true
+                git-revision: false
+        - multijob:
+            name: create snapshot
+            condition: SUCCESSFUL
+            projects:
+              - name: 'apex-create-snapshot'
+                current-parameters: true
+                node-parameters: true
+                kill-phase-on: FAILURE
+                abort-all-job: true
+                git-revision: false
+        - multijob:
+            name: upload snapshot
+            condition: SUCCESSFUL
+            projects:
+              - name: 'apex-upload-snapshot'
+                current-parameters: true
+                node-parameters: true
+                kill-phase-on: FAILURE
+                abort-all-job: true
+                git-revision: false
 
 # FDIO promote
 - job-template:
     # Required Variables:
     #     stream:    branch with - in place of / (eg. stable)
     #     branch:    branch (eg. stable)
-    node: '{daily-slave}'
-
+    node: '{virtual-slave}'
+    project-type: 'multijob'
     disabled: false
 
     scm:
                 - 'apex-daily.*'
 
     builders:
-        - 'apex-build'
-        - trigger-builds:
-          - project: 'apex-deploy-virtual-os-odl_l2-fdio-noha-{stream}'
-            predefined-parameters: |
-              BUILD_DIRECTORY=apex-fdio-promote-daily-{stream}
-              OPNFV_CLEAN=yes
-            git-revision: false
-            block: true
-            same-node: true
-        - shell:
-            !include-raw-escape: ./apex-snapshot-create.sh
-        - shell:
-            !include-raw-escape: ./apex-upload-artifact.sh
+        - multijob:
+            name: build
+            condition: SUCCESSFUL
+            projects:
+                - name: 'apex-build-{stream}'
+                  current-parameters: false
+                  predefined-parameters: |
+                    GERRIT_BRANCH=$GERRIT_BRANCH
+                    GERRIT_REFSPEC=$GERRIT_REFSPEC
+                    GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER
+                    GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE
+                  node-parameters: false
+                  kill-phase-on: FAILURE
+                  abort-all-job: true
+                  git-revision: true
+        - multijob:
+            name: deploy-virtual
+            condition: SUCCESSFUL
+            projects:
+                - name: 'apex-deploy-virtual-{stream}'
+                  current-parameters: false
+                  predefined-parameters: |
+                    DEPLOY_SCENARIO=os-odl_l2-netvirt_gbp_fdio-noha
+                    OPNFV_CLEAN=yes
+                    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: FAILURE
+                  abort-all-job: true
+                  git-revision: false
+        - multijob:
+            name: create snapshot
+            condition: SUCCESSFUL
+            projects:
+              - name: 'apex-create-snapshot'
+                current-parameters: true
+                node-parameters: true
+                kill-phase-on: FAILURE
+                abort-all-job: true
+                git-revision: false
+        - multijob:
+            name: upload snapshot
+            condition: SUCCESSFUL
+            projects:
+              - name: 'apex-upload-snapshot'
+                current-parameters: true
+                node-parameters: true
+                kill-phase-on: FAILURE
+                abort-all-job: true
+                git-revision: false
 
 - job-template:
     name: 'apex-gs-clean-{stream}'
     triggers:
         - 'apex-gs-clean-{stream}'
 
-
 ########################
 # parameter macros
 ########################
             description: "Artifact version type"
         - string:
             name: BUILD_DIRECTORY
-            default: $WORKSPACE/build
+            default: $WORKSPACE/.build
             description: "Directory where the build artifact will be located upon the completion of the build."
         - string:
             name: CACHE_DIRECTORY
             description: "Version directory where opnfv artifacts are stored in gs repository"
         - string:
             name: GS_URL
-            default: artifacts.opnfv.org/$PROJECT{gs-pathname}
+            default: $GS_BASE{gs-pathname}
             description: "URL to Google Storage."
 
 ########################
         - shell:
             !include-raw: ./apex-workspace-cleanup.sh
 
+- builder:
+    name: 'apex-iso-verify'
+    builders:
+        - shell:
+            !include-raw: ./apex-iso-verify.sh
+
+
 - builder:
     name: 'apex-upload-artifact'
     builders:
         - shell:
             !include-raw: ./apex-upload-artifact.sh
 
+- builder:
+    name: 'apex-download-artifact'
+    builders:
+        - shell:
+            !include-raw: ./apex-download-artifact.sh
+
 - builder:
     name: 'apex-gs-cleanup'
     builders:
         - shell:
             !include-raw: ./apex-deploy.sh
 
-
 #######################
 # trigger macros
 ########################
 - trigger:
     name: 'apex-gs-clean-{stream}'
     triggers:
-        - timed: '0 2 * * *'
+        - timed: '0 2 * * *'
\ No newline at end of file