Merge "Add fuel@x86 and fuel@arm support"
authorMorgan Richomme <morgan.richomme@orange.com>
Wed, 11 Oct 2017 09:25:42 +0000 (09:25 +0000)
committerGerrit Code Review <gerrit@opnfv.org>
Wed, 11 Oct 2017 09:25:42 +0000 (09:25 +0000)
89 files changed:
jjb/apex/apex.yml
jjb/apex/apex.yml.j2
jjb/apex/scenarios.yaml.hidden
jjb/armband/armband-ci-jobs.yml
jjb/availability/availability.yml
jjb/bottlenecks/bottlenecks-ci-jobs.yml
jjb/bottlenecks/bottlenecks-run-suite.sh
jjb/calipso/calipso.yml
jjb/ci_gate_security/anteater-report-to-gerrit.sh
jjb/compass4nfv/compass-ci-jobs.yml
jjb/compass4nfv/compass-dovetail-jobs.yml
jjb/compass4nfv/compass-project-jobs.yml
jjb/compass4nfv/compass-verify-jobs.yml
jjb/conductor/conductor.yml
jjb/container4nfv/container4nfv-project.yml
jjb/copper/copper.yml
jjb/daisy4nfv/daisy-daily-jobs.yml
jjb/daisy4nfv/daisy-project-jobs.yml
jjb/daisy4nfv/daisy4nfv-build.sh
jjb/daisy4nfv/daisy4nfv-merge-jobs.yml
jjb/daisy4nfv/daisy4nfv-upload-artifact.sh
jjb/daisy4nfv/daisy4nfv-verify-jobs.yml
jjb/doctor/doctor.yml
jjb/dovetail/dovetail-artifacts-upload.yml
jjb/dovetail/dovetail-ci-jobs.yml
jjb/dovetail/dovetail-project-jobs.yml
jjb/dovetail/dovetail-weekly-jobs.yml
jjb/dpacc/dpacc.yml
jjb/fuel/fuel-daily-jobs.yml
jjb/fuel/fuel-deploy.sh
jjb/fuel/fuel-logs.sh [new file with mode: 0755]
jjb/fuel/fuel-project-jobs.yml
jjb/fuel/fuel-verify-jobs.yml
jjb/fuel/fuel-weekly-jobs.yml
jjb/functest/functest-alpine.sh
jjb/functest/functest-daily-jobs.yml
jjb/functest/functest-project-jobs.yml
jjb/functest/functest-weekly-jobs.yml
jjb/global/installer-params.yml
jjb/global/slave-params.yml
jjb/joid/joid-daily-jobs.yml
jjb/joid/joid-verify-jobs.yml
jjb/kvmfornfv/kvmfornfv.yml
jjb/models/models.yml
jjb/moon/moon.yml
jjb/octopus/octopus.yml
jjb/onosfw/onosfw.yml
jjb/ovsnfv/ovsnfv.yml
jjb/prediction/prediction.yml
jjb/qtip/qtip-validate-jobs.yml
jjb/releng/artifact-cleanup.yml
jjb/releng/automate.yml
jjb/releng/htmlize/doc-build.sh [moved from utils/test/testapi/htmlize/doc-build.sh with 100% similarity]
jjb/releng/htmlize/htmlize.py [moved from utils/test/testapi/htmlize/htmlize.py with 100% similarity]
jjb/releng/htmlize/push-doc-artifact.sh [moved from utils/test/testapi/htmlize/push-doc-artifact.sh with 100% similarity]
jjb/releng/opnfv-docker-arm.yml
jjb/releng/opnfv-docker-custom.yml [new file with mode: 0644]
jjb/releng/opnfv-docker.sh
jjb/releng/opnfv-docker.yml
jjb/releng/opnfv-docs.yml
jjb/releng/opnfv-lint.yml
jjb/releng/opnfv-utils.yml
jjb/releng/releng-ci-jobs.yml
jjb/sfc/sfc-project-jobs.yml
jjb/snaps/snaps-verify-jobs.yml
jjb/stor4nfv/stor4nfv-project.yml
jjb/storperf/storperf-daily-jobs.yml
jjb/storperf/storperf-verify-jobs.yml
jjb/storperf/storperf.yml
jjb/ves/ves.yml
jjb/vnf_forwarding_graph/vnf_forwarding_graph.yml
jjb/xci/bifrost-cleanup-job.yml
jjb/xci/bifrost-periodic-jobs.yml
jjb/xci/bifrost-verify-jobs.yml
jjb/xci/bifrost-verify.sh
jjb/xci/osa-periodic-jobs.yml
jjb/xci/xci-daily-jobs.yml
jjb/xci/xci-verify-jobs.yml
jjb/yardstick/yardstick-daily-jobs.yml
jjb/yardstick/yardstick-daily.sh
jjb/yardstick/yardstick-project-jobs.yml
modules/opnfv/deployment/factory.py
modules/opnfv/deployment/osa/__init__.py [moved from modules/opnfv/deployment/OSA/__init__.py with 100% similarity]
modules/opnfv/deployment/osa/adapter.py [moved from modules/opnfv/deployment/OSA/adapter.py with 100% similarity]
utils/test/reporting/docker/reporting.sh
utils/test/reporting/reporting/functest/reporting-status.py
utils/test/reporting/reporting/qtip/reporting-status.py
utils/test/reporting/reporting/qtip/template/index-status-tmpl.html
utils/test/reporting/reporting/reporting.yaml

index c858b7f..2e11592 100644 (file)
+---
 - project:
     name: 'apex'
     project: 'apex'
     jobs:
-        - 'apex-verify-{stream}'
-        - 'apex-verify-gate-{stream}'
-        - 'apex-verify-unit-tests-{stream}'
-        - 'apex-runner-cperf-{stream}'
-        - 'apex-virtual-{stream}'
-        - 'apex-deploy-{platform}-{stream}'
-        - 'apex-daily-{stream}'
-        - 'apex-csit-promote-daily-{stream}'
-        - 'apex-fdio-promote-daily-{stream}'
-        - 'apex-{scenario}-baremetal-{scenario_stream}'
-        - 'apex-testsuite-{scenario}-baremetal-{scenario_stream}'
-        - 'apex-upload-snapshot'
-        - 'apex-create-snapshot'
-        - 'apex-flex-daily-os-nosdn-nofeature-ha-{stream}'
-        - 'apex-dovetail-daily-os-nosdn-nofeature-ha-baremetal-danube'
+      - 'apex-verify-{stream}'
+      - 'apex-verify-gate-{stream}'
+      - 'apex-verify-unit-tests-{stream}'
+      - 'apex-runner-cperf-{stream}'
+      - 'apex-virtual-{stream}'
+      - 'apex-deploy-{platform}-{stream}'
+      - 'apex-daily-{stream}'
+      - 'apex-csit-promote-daily-{stream}'
+      - 'apex-fdio-promote-daily-{stream}'
+      - 'apex-{scenario}-baremetal-{scenario_stream}'
+      - 'apex-testsuite-{scenario}-baremetal-{scenario_stream}'
+      - 'apex-upload-snapshot'
+      - 'apex-create-snapshot'
+      - 'apex-flex-daily-os-nosdn-nofeature-ha-{stream}'
+      - 'apex-dovetail-daily-os-nosdn-nofeature-ha-baremetal-danube'
     # stream:    branch with - in place of / (eg. stable-arno)
     # branch:    branch (eg. stable/arno)
     stream:
-        - master: &master
-            branch: 'master'
-            gs-pathname: ''
-            build-slave: 'apex-build-master'
-            virtual-slave: 'apex-virtual-master'
-            baremetal-slave: 'apex-baremetal-master'
-            verify-scenario: 'os-odl-nofeature-ha'
-            scenario_stream: 'master'
-            disable_daily: true
-        - euphrates: &euphrates
-            branch: 'stable/euphrates'
-            gs-pathname: '/euphrates'
-            build-slave: 'apex-build-master'
-            virtual-slave: 'apex-virtual-master'
-            baremetal-slave: 'apex-baremetal-master'
-            verify-scenario: 'os-odl-nofeature-ha'
-            scenario_stream: 'euphrates'
-            disable_daily: false
-        - danube: &danube
-            branch: 'stable/danube'
-            gs-pathname: '/danube'
-            build-slave: 'apex-build-danube'
-            virtual-slave: 'apex-virtual-danube'
-            baremetal-slave: 'apex-baremetal-danube'
-            verify-scenario: 'os-odl_l3-nofeature-ha'
-            scenario_stream: 'danube'
-            disabled: true
-            disable_daily: true
+      - master: &master
+          branch: 'master'
+          gs-pathname: ''
+          build-slave: 'apex-build-master'
+          virtual-slave: 'apex-virtual-master'
+          baremetal-slave: 'apex-baremetal-master'
+          verify-scenario: 'os-odl-nofeature-ha'
+          scenario_stream: 'master'
+          disable_daily: true
+      - euphrates: &euphrates
+          branch: 'stable/euphrates'
+          gs-pathname: '/euphrates'
+          build-slave: 'apex-build-master'
+          virtual-slave: 'apex-virtual-master'
+          baremetal-slave: 'apex-baremetal-master'
+          verify-scenario: 'os-odl-nofeature-ha'
+          scenario_stream: 'euphrates'
+          disable_daily: false
+      - danube: &danube
+          branch: 'stable/danube'
+          gs-pathname: '/danube'
+          build-slave: 'apex-build-danube'
+          virtual-slave: 'apex-virtual-danube'
+          baremetal-slave: 'apex-baremetal-danube'
+          verify-scenario: 'os-odl_l3-nofeature-ha'
+          scenario_stream: 'danube'
+          disabled: true
+          disable_daily: true
 
     scenario:
-        - 'os-nosdn-nofeature-noha':
-              <<: *danube
-        - 'os-nosdn-nofeature-ha':
-              <<: *danube
-        - 'os-nosdn-nofeature-ha-ipv6':
-              <<: *danube
-        - 'os-nosdn-ovs-noha':
-              <<: *danube
-        - 'os-nosdn-ovs-ha':
-              <<: *danube
-        - 'os-nosdn-fdio-noha':
-              <<: *danube
-        - 'os-nosdn-fdio-ha':
-              <<: *danube
-        - 'os-nosdn-kvm-ha':
-              <<: *danube
-        - 'os-nosdn-kvm-noha':
-              <<: *danube
-        - 'os-odl_l2-fdio-noha':
-              <<: *danube
-        - 'os-odl_l2-fdio-ha':
-              <<: *danube
-        - 'os-odl_netvirt-fdio-noha':
-              <<: *danube
-        - 'os-odl_l2-sfc-noha':
-              <<: *danube
-        - 'os-odl_l3-nofeature-noha':
-              <<: *danube
-        - 'os-odl_l3-nofeature-ha':
-              <<: *danube
-        - 'os-odl_l3-ovs-noha':
-              <<: *danube
-        - 'os-odl_l3-ovs-ha':
-              <<: *danube
-        - 'os-odl-bgpvpn-ha':
-              <<: *danube
-        - 'os-odl-gluon-noha':
-              <<: *danube
-        - 'os-odl_l3-fdio-noha':
-              <<: *danube
-        - 'os-odl_l3-fdio-ha':
-              <<: *danube
-        - 'os-odl_l3-fdio_dvr-noha':
-              <<: *danube
-        - 'os-odl_l3-fdio_dvr-ha':
-              <<: *danube
-        - 'os-odl_l3-csit-noha':
-              <<: *danube
-        - 'os-onos-nofeature-ha':
-              <<: *danube
-        - 'os-ovn-nofeature-noha':
-              <<: *danube
-        - 'os-nosdn-nofeature-noha':
-              <<: *master
-        - 'os-nosdn-nofeature-ha':
-              <<: *master
-        - 'os-odl-nofeature-ha':
-              <<: *master
-        - 'os-odl-nofeature-noha':
-              <<: *master
-        - 'os-odl-bgpvpn-ha':
-              <<: *master
-        - 'os-ovn-nofeature-noha':
-              <<: *master
-        - 'os-nosdn-fdio-noha':
-              <<: *master
-        - 'os-nosdn-fdio-ha':
-              <<: *master
-        - 'os-odl-fdio-noha':
-              <<: *master
-        - 'os-odl-fdio-ha':
-              <<: *master
-        - 'os-nosdn-bar-ha':
-              <<: *master
-        - 'os-nosdn-bar-noha':
-              <<: *master
-        - 'os-nosdn-nofeature-ha-ipv6':
-              <<: *master
-        - 'os-nosdn-ovs_dpdk-noha':
-              <<: *master
-        - 'os-nosdn-ovs_dpdk-ha':
-              <<: *master
-        - 'os-nosdn-kvm_ovs_dpdk-noha':
-              <<: *master
-        - 'os-nosdn-kvm_ovs_dpdk-ha':
-              <<: *master
-        - 'os-odl-sfc-noha':
-              <<: *master
-        - 'os-odl-sfc-ha':
-              <<: *master
-        - 'os-odl-fdio_dvr-noha':
-              <<: *master
-        - 'os-odl-fdio_dvr-ha':
-              <<: *master
-        - 'os-nosdn-nofeature-noha':
-              <<: *euphrates
-        - 'os-nosdn-nofeature-ha':
-              <<: *euphrates
-        - 'os-odl-nofeature-ha':
-              <<: *euphrates
-        - 'os-odl-nofeature-noha':
-              <<: *euphrates
-        - 'os-odl-bgpvpn-ha':
-              <<: *euphrates
-        - 'os-ovn-nofeature-noha':
-              <<: *euphrates
-        - 'os-nosdn-fdio-noha':
-              <<: *euphrates
-        - 'os-nosdn-fdio-ha':
-              <<: *euphrates
-        - 'os-odl-fdio-noha':
-              <<: *euphrates
-        - 'os-odl-fdio-ha':
-              <<: *euphrates
-        - 'os-nosdn-bar-ha':
-              <<: *euphrates
-        - 'os-nosdn-bar-noha':
-              <<: *euphrates
-        - 'os-nosdn-nofeature-ha-ipv6':
-              <<: *euphrates
-        - 'os-nosdn-ovs_dpdk-noha':
-              <<: *euphrates
-        - 'os-nosdn-ovs_dpdk-ha':
-              <<: *euphrates
-        - 'os-nosdn-kvm_ovs_dpdk-noha':
-              <<: *euphrates
-        - 'os-nosdn-kvm_ovs_dpdk-ha':
-              <<: *euphrates
-        - 'os-odl-sfc-noha':
-              <<: *euphrates
-        - 'os-odl-sfc-ha':
-              <<: *euphrates
-        - 'os-odl-fdio_dvr-noha':
-              <<: *euphrates
-        - 'os-odl-fdio_dvr-ha':
-              <<: *euphrates
+      - 'os-nosdn-nofeature-noha':
+          <<: *danube
+      - 'os-nosdn-nofeature-ha':
+          <<: *danube
+      - 'os-nosdn-nofeature-ha-ipv6':
+          <<: *danube
+      - 'os-nosdn-ovs-noha':
+          <<: *danube
+      - 'os-nosdn-ovs-ha':
+          <<: *danube
+      - 'os-nosdn-fdio-noha':
+          <<: *danube
+      - 'os-nosdn-fdio-ha':
+          <<: *danube
+      - 'os-nosdn-kvm-ha':
+          <<: *danube
+      - 'os-nosdn-kvm-noha':
+          <<: *danube
+      - 'os-odl_l2-fdio-noha':
+          <<: *danube
+      - 'os-odl_l2-fdio-ha':
+          <<: *danube
+      - 'os-odl_netvirt-fdio-noha':
+          <<: *danube
+      - 'os-odl_l2-sfc-noha':
+          <<: *danube
+      - 'os-odl_l3-nofeature-noha':
+          <<: *danube
+      - 'os-odl_l3-nofeature-ha':
+          <<: *danube
+      - 'os-odl_l3-ovs-noha':
+          <<: *danube
+      - 'os-odl_l3-ovs-ha':
+          <<: *danube
+      - 'os-odl-bgpvpn-ha':
+          <<: *danube
+      - 'os-odl-gluon-noha':
+          <<: *danube
+      - 'os-odl_l3-fdio-noha':
+          <<: *danube
+      - 'os-odl_l3-fdio-ha':
+          <<: *danube
+      - 'os-odl_l3-fdio_dvr-noha':
+          <<: *danube
+      - 'os-odl_l3-fdio_dvr-ha':
+          <<: *danube
+      - 'os-odl_l3-csit-noha':
+          <<: *danube
+      - 'os-onos-nofeature-ha':
+          <<: *danube
+      - 'os-ovn-nofeature-noha':
+          <<: *danube
+      - 'os-nosdn-nofeature-noha':
+          <<: *master
+      - 'os-nosdn-nofeature-ha':
+          <<: *master
+      - 'os-odl-nofeature-ha':
+          <<: *master
+      - 'os-odl-nofeature-noha':
+          <<: *master
+      - 'os-odl-bgpvpn-ha':
+          <<: *master
+      - 'os-ovn-nofeature-noha':
+          <<: *master
+      - 'os-nosdn-fdio-noha':
+          <<: *master
+      - 'os-nosdn-fdio-ha':
+          <<: *master
+      - 'os-odl-fdio-noha':
+          <<: *master
+      - 'os-odl-fdio-ha':
+          <<: *master
+      - 'os-nosdn-bar-ha':
+          <<: *master
+      - 'os-nosdn-bar-noha':
+          <<: *master
+      - 'os-nosdn-nofeature-ha-ipv6':
+          <<: *master
+      - 'os-nosdn-ovs_dpdk-noha':
+          <<: *master
+      - 'os-nosdn-ovs_dpdk-ha':
+          <<: *master
+      - 'os-nosdn-kvm_ovs_dpdk-noha':
+          <<: *master
+      - 'os-nosdn-kvm_ovs_dpdk-ha':
+          <<: *master
+      - 'os-odl-sfc-noha':
+          <<: *master
+      - 'os-odl-sfc-ha':
+          <<: *master
+      - 'os-odl-fdio_dvr-noha':
+          <<: *master
+      - 'os-odl-fdio_dvr-ha':
+          <<: *master
+      - 'os-nosdn-nofeature-noha':
+          <<: *euphrates
+      - 'os-nosdn-nofeature-ha':
+          <<: *euphrates
+      - 'os-odl-nofeature-ha':
+          <<: *euphrates
+      - 'os-odl-nofeature-noha':
+          <<: *euphrates
+      - 'os-odl-bgpvpn-ha':
+          <<: *euphrates
+      - 'os-ovn-nofeature-noha':
+          <<: *euphrates
+      - 'os-nosdn-fdio-noha':
+          <<: *euphrates
+      - 'os-nosdn-fdio-ha':
+          <<: *euphrates
+      - 'os-odl-fdio-noha':
+          <<: *euphrates
+      - 'os-odl-fdio-ha':
+          <<: *euphrates
+      - 'os-nosdn-bar-ha':
+          <<: *euphrates
+      - 'os-nosdn-bar-noha':
+          <<: *euphrates
+      - 'os-nosdn-nofeature-ha-ipv6':
+          <<: *euphrates
+      - 'os-nosdn-ovs_dpdk-noha':
+          <<: *euphrates
+      - 'os-nosdn-ovs_dpdk-ha':
+          <<: *euphrates
+      - 'os-nosdn-kvm_ovs_dpdk-noha':
+          <<: *euphrates
+      - 'os-nosdn-kvm_ovs_dpdk-ha':
+          <<: *euphrates
+      - 'os-odl-sfc-noha':
+          <<: *euphrates
+      - 'os-odl-sfc-ha':
+          <<: *euphrates
+      - 'os-odl-fdio_dvr-noha':
+          <<: *euphrates
+      - 'os-odl-fdio_dvr-ha':
+          <<: *euphrates
+      - 'os-nosdn-calipso-noha':
+          <<: *euphrates
 
     platform:
-         - 'baremetal'
-         - 'virtual'
+      - 'baremetal'
+      - 'virtual'
 
 # Unit Test
 - job-template:
     concurrent: true
 
     parameters:
-        - apex-parameter:
-            gs-pathname: '{gs-pathname}'
-        - project-parameter:
-            project: '{project}'
-            branch: '{branch}'
+      - apex-parameter:
+          gs-pathname: '{gs-pathname}'
+      - project-parameter:
+          project: '{project}'
+          branch: '{branch}'
 
     scm:
-        - git-scm-gerrit
+      - git-scm-gerrit
 
     triggers:
-        - gerrit:
-            server-name: 'gerrit.opnfv.org'
-            trigger-on:
-                - patchset-created-event:
-                    exclude-drafts: 'false'
-                    exclude-trivial-rebase: 'false'
-                    exclude-no-code-change: 'true'
-                - 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: 'apex'
-                branches:
-                  - branch-compare-type: 'ANT'
-                    branch-pattern: '**/{branch}'
-                disable-strict-forbidden-file-verification: 'false'
-                file-paths:
-                  - compare-type: ANT
-                    pattern: 'apex/tests/**'
-                forbidden-file-paths:
-                  - compare-type: ANT
-                    pattern: '*'
-                  - compare-type: ANT
-                    pattern: 'apex/*'
-                  - compare-type: ANT
-                    pattern: 'build/**'
-                  - compare-type: ANT
-                    pattern: 'lib/**'
-                  - compare-type: ANT
-                    pattern: 'config/**'
-                  - compare-type: ANT
-                    pattern: 'apex/build/**'
-                  - compare-type: ANT
-                    pattern: 'apex/common/**'
-                  - compare-type: ANT
-                    pattern: 'apex/inventory/**'
-                  - compare-type: ANT
-                    pattern: 'apex/network/**'
-                  - compare-type: ANT
-                    pattern: 'apex/overcloud/**'
-                  - compare-type: ANT
-                    pattern: 'apex/settings/**'
-                  - compare-type: ANT
-                    pattern: 'apex/undercloud/**'
-                  - compare-type: ANT
-                    pattern: 'apex/virtual/**'
+      - gerrit:
+          server-name: 'gerrit.opnfv.org'
+          trigger-on:
+            - patchset-created-event:
+                exclude-drafts: 'false'
+                exclude-trivial-rebase: 'false'
+                exclude-no-code-change: 'true'
+            - 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: 'apex'
+              branches:
+                - branch-compare-type: 'ANT'
+                  branch-pattern: '**/{branch}'
+              disable-strict-forbidden-file-verification: 'false'
+              file-paths:
+                - compare-type: ANT
+                  pattern: 'apex/tests/**'
+              forbidden-file-paths:
+                - compare-type: ANT
+                  pattern: '*'
+                - compare-type: ANT
+                  pattern: 'apex/*'
+                - compare-type: ANT
+                  pattern: 'build/**'
+                - compare-type: ANT
+                  pattern: 'lib/**'
+                - compare-type: ANT
+                  pattern: 'config/**'
+                - compare-type: ANT
+                  pattern: 'apex/build/**'
+                - compare-type: ANT
+                  pattern: 'apex/common/**'
+                - compare-type: ANT
+                  pattern: 'apex/inventory/**'
+                - compare-type: ANT
+                  pattern: 'apex/network/**'
+                - compare-type: ANT
+                  pattern: 'apex/overcloud/**'
+                - compare-type: ANT
+                  pattern: 'apex/settings/**'
+                - compare-type: ANT
+                  pattern: 'apex/undercloud/**'
+                - compare-type: ANT
+                  pattern: 'apex/virtual/**'
+
     properties:
-        - logrotate-default
-        - throttle:
-            max-per-node: 1
-            max-total: 10
-            option: 'project'
+      - logrotate-default
+      - throttle:
+          max-per-node: 1
+          max-total: 10
+          option: 'project'
 
     builders:
-        - shell:
-            !include-raw-escape: ./apex-unit-test.sh
+      - shell:
+          !include-raw-escape: ./apex-unit-test.sh
 
 # Verify
 - job-template:
     project-type: 'multijob'
 
     parameters:
-        - apex-parameter:
-            gs-pathname: '{gs-pathname}/dev'
-        - project-parameter:
-            project: '{project}'
-            branch: '{branch}'
-        - string:
-            name: ARTIFACT_VERSION
-            default: dev
-            description: "Used for overriding the ARTIFACT_VERSION"
+      - apex-parameter:
+          gs-pathname: '{gs-pathname}/dev'
+      - project-parameter:
+          project: '{project}'
+          branch: '{branch}'
+      - string:
+          name: ARTIFACT_VERSION
+          default: dev
+          description: "Used for overriding the ARTIFACT_VERSION"
     scm:
-        - git-scm-gerrit
+      - git-scm-gerrit
 
     triggers:
-        - gerrit:
-            server-name: 'gerrit.opnfv.org'
-            trigger-on:
-                - patchset-created-event:
-                    exclude-drafts: 'false'
-                    exclude-trivial-rebase: 'false'
-                    exclude-no-code-change: 'true'
-                - 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: 'apex'
-                branches:
-                  - branch-compare-type: 'ANT'
-                    branch-pattern: '**/{branch}'
-                disable-strict-forbidden-file-verification: 'true'
-                file-paths:
-                  - compare-type: ANT
-                    pattern: '*'
-                  - compare-type: ANT
-                    pattern: 'apex/*'
-                  - compare-type: ANT
-                    pattern: 'build/**'
-                  - compare-type: ANT
-                    pattern: 'lib/**'
-                  - compare-type: ANT
-                    pattern: 'config/**'
-                  - compare-type: ANT
-                    pattern: 'apex/build/**'
-                  - compare-type: ANT
-                    pattern: 'apex/common/**'
-                  - compare-type: ANT
-                    pattern: 'apex/inventory/**'
-                  - compare-type: ANT
-                    pattern: 'apex/network/**'
-                  - compare-type: ANT
-                    pattern: 'apex/overcloud/**'
-                  - compare-type: ANT
-                    pattern: 'apex/settings/**'
-                  - compare-type: ANT
-                    pattern: 'apex/undercloud/**'
-                  - compare-type: ANT
-                    pattern: 'apex/virtual/**'
-                forbidden-file-paths:
-                  - compare-type: ANT
-                    pattern: 'apex/tests/**'
-                  - compare-type: ANT
-                    pattern: 'docs/**'
+      - gerrit:
+          server-name: 'gerrit.opnfv.org'
+          trigger-on:
+            - patchset-created-event:
+                exclude-drafts: 'false'
+                exclude-trivial-rebase: 'false'
+                exclude-no-code-change: 'true'
+            - 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: 'apex'
+              branches:
+                - branch-compare-type: 'ANT'
+                  branch-pattern: '**/{branch}'
+              disable-strict-forbidden-file-verification: 'true'
+              file-paths:
+                - compare-type: ANT
+                  pattern: '*'
+                - compare-type: ANT
+                  pattern: 'apex/*'
+                - compare-type: ANT
+                  pattern: 'build/**'
+                - compare-type: ANT
+                  pattern: 'lib/**'
+                - compare-type: ANT
+                  pattern: 'config/**'
+                - compare-type: ANT
+                  pattern: 'apex/build/**'
+                - compare-type: ANT
+                  pattern: 'apex/common/**'
+                - compare-type: ANT
+                  pattern: 'apex/inventory/**'
+                - compare-type: ANT
+                  pattern: 'apex/network/**'
+                - compare-type: ANT
+                  pattern: 'apex/overcloud/**'
+                - compare-type: ANT
+                  pattern: 'apex/settings/**'
+                - compare-type: ANT
+                  pattern: 'apex/undercloud/**'
+                - compare-type: ANT
+                  pattern: 'apex/virtual/**'
+              forbidden-file-paths:
+                - compare-type: ANT
+                  pattern: 'apex/tests/**'
+                - compare-type: ANT
+                  pattern: 'docs/**'
 
     properties:
-        - logrotate-default
-        - throttle:
-            max-per-node: 3
-            max-total: 10
-            option: 'project'
+      - logrotate-default
+      - throttle:
+          max-per-node: 3
+          max-total: 10
+          option: 'project'
 
     builders:
-        - 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: |
-                    ARTIFACT_VERSION=$ARTIFACT_VERSION
-                    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-virtual-{stream}'
-                  current-parameters: false
-                  predefined-parameters: |
-                    ARTIFACT_VERSION=$ARTIFACT_VERSION
-                    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: true
-                  kill-phase-on: FAILURE
-                  abort-all-job: true
-                  git-revision: true
+      - 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: |
+                ARTIFACT_VERSION=$ARTIFACT_VERSION
+                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-virtual-{stream}'
+              current-parameters: false
+              predefined-parameters: |
+                ARTIFACT_VERSION=$ARTIFACT_VERSION
+                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: true
+              kill-phase-on: FAILURE
+              abort-all-job: true
+              git-revision: true
 
 # Verify Scenario Gate
 - job-template:
     project-type: 'multijob'
 
     parameters:
-        - apex-parameter:
-            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."
-        - string:
-            name: ARTIFACT_VERSION
-            default: dev
-            description: "Used for overriding the ARTIFACT_VERSION"
+      - apex-parameter:
+          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."
+      - string:
+          name: ARTIFACT_VERSION
+          default: dev
+          description: "Used for overriding the ARTIFACT_VERSION"
 
     scm:
-        - git-scm-gerrit
+      - git-scm-gerrit
 
     triggers:
-        - gerrit:
-            server-name: 'gerrit.opnfv.org'
-            trigger-on:
-                - comment-added-contains-event:
-                    comment-contains-value: '^Patch Set [0-9]+: Code-Review\+2.*start-gate-scenario:.*'
-            projects:
-              - project-compare-type: 'ANT'
-                project-pattern: 'apex'
-                branches:
-                  - branch-compare-type: 'ANT'
-                    branch-pattern: '**/{branch}'
-                file-paths:
-                  - compare-type: ANT
-                    pattern: 'ci/**'
-                  - compare-type: ANT
-                    pattern: 'build/**'
-                  - compare-type: ANT
-                    pattern: 'lib/**'
-                  - compare-type: ANT
-                    pattern: 'config/**'
-                  - compare-type: ANT
-                    pattern: 'apex/**'
+      - gerrit:
+          server-name: 'gerrit.opnfv.org'
+          trigger-on:
+            - comment-added-contains-event:
+                comment-contains-value: '^Patch Set [0-9]+: Code-Review\+2.*start-gate-scenario:.*'
+          projects:
+            - project-compare-type: 'ANT'
+              project-pattern: 'apex'
+              branches:
+                - branch-compare-type: 'ANT'
+                  branch-pattern: '**/{branch}'
+              file-paths:
+                - compare-type: ANT
+                  pattern: 'ci/**'
+                - compare-type: ANT
+                  pattern: 'build/**'
+                - compare-type: ANT
+                  pattern: 'lib/**'
+                - compare-type: ANT
+                  pattern: 'config/**'
+                - compare-type: ANT
+                  pattern: 'apex/**'
 
     properties:
-        - logrotate-default
-        - build-blocker:
-            use-build-blocker: true
-            block-level: 'NODE'
-            blocking-jobs:
-                - 'apex-verify.*'
-                - 'apex-virtual.*'
-        - throttle:
-            max-per-node: 1
-            max-total: 10
-            option: 'project'
+      - logrotate-default
+      - build-blocker:
+          use-build-blocker: true
+          block-level: 'NODE'
+          blocking-jobs:
+            - 'apex-verify.*'
+            - 'apex-virtual.*'
+      - throttle:
+          max-per-node: 1
+          max-total: 10
+          option: 'project'
 
     builders:
-        - multijob:
-            name: deploy-virtual
-            condition: SUCCESSFUL
-            projects:
-                - name: 'apex-deploy-virtual-{stream}'
-                  current-parameters: false
-                  predefined-parameters: |
-                    ARTIFACT_VERSION=$ARTIFACT_VERSION
-                    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
-                    GERRIT_EVENT_COMMENT_TEXT=$GERRIT_EVENT_COMMENT_TEXT
-                  node-parameters: true
-                  kill-phase-on: FAILURE
-                  abort-all-job: true
-                  git-revision: true
-        - shell: |
-            echo DEPLOY_SCENARIO=$(echo $GERRIT_EVENT_COMMENT_TEXT | grep start-gate-scenario | grep -Eo 'os-.*') > detected_scenario
-        - inject:
-           properties-file: detected_scenario
-        - multijob:
-            name: functest-smoke
-            condition: SUCCESSFUL
-            projects:
-              - name: 'functest-apex-virtual-suite-{stream}'
-                current-parameters: false
-                predefined-parameters: |
-                  DEPLOY_SCENARIO=$DEPLOY_SCENARIO
-                  FUNCTEST_MODE=tier
-                  FUNCTEST_TIER=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: true
-                kill-phase-on: NEVER
-                abort-all-job: true
-                git-revision: false
+      - multijob:
+          name: deploy-virtual
+          condition: SUCCESSFUL
+          projects:
+            - name: 'apex-deploy-virtual-{stream}'
+              current-parameters: false
+              predefined-parameters: |
+                ARTIFACT_VERSION=$ARTIFACT_VERSION
+                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
+                GERRIT_EVENT_COMMENT_TEXT=$GERRIT_EVENT_COMMENT_TEXT
+              node-parameters: true
+              kill-phase-on: FAILURE
+              abort-all-job: true
+              git-revision: true
+      # yamllint disable rule:line-length
+      - shell: |
+          echo DEPLOY_SCENARIO=$(echo $GERRIT_EVENT_COMMENT_TEXT | grep start-gate-scenario | grep -Eo 'os-.*') > detected_scenario
+      # yamllint enable rule:line-length
+      - inject:
+          properties-file: detected_scenario
+      - multijob:
+          name: functest-smoke
+          condition: SUCCESSFUL
+          projects:
+            - name: 'functest-apex-virtual-suite-{stream}'
+              current-parameters: false
+              predefined-parameters: |
+                DEPLOY_SCENARIO=$DEPLOY_SCENARIO
+                FUNCTEST_MODE=tier
+                FUNCTEST_TIER=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: true
+              kill-phase-on: NEVER
+              abort-all-job: true
+              git-revision: false
 
 - job-template:
     name: 'apex-runner-cperf-{stream}'
     disabled: false
 
     parameters:
-        - apex-parameter:
-            gs-pathname: '{gs-pathname}'
-        - 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}'
+      - 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
+      - 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'
+      - 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:
-        - 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: |
-                    GERRIT_BRANCH=$GERRIT_BRANCH
-                    GERRIT_REFSPEC=
-                    OPNFV_CLEAN=yes
-                    DEPLOY_SCENARIO={verify-scenario}
-                  kill-phase-on: FAILURE
-                  abort-all-job: true
-                  git-revision: false
-        - multijob:
-            name: CPERF
-            condition: SUCCESSFUL
-            projects:
-                - name: 'cperf-apex-intel-pod2-daily-master'
-                  node-parameters: true
-                  current-parameters: false
-                  predefined-parameters:
-                    DEPLOY_SCENARIO={verify-scenario}
-                  kill-phase-on: NEVER
-                  abort-all-job: false
-                  git-revision: false
+      - 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: |
+                GERRIT_BRANCH=$GERRIT_BRANCH
+                GERRIT_REFSPEC=
+                OPNFV_CLEAN=yes
+                DEPLOY_SCENARIO={verify-scenario}
+              kill-phase-on: FAILURE
+              abort-all-job: true
+              git-revision: false
+      - multijob:
+          name: CPERF
+          condition: SUCCESSFUL
+          projects:
+            - name: 'cperf-apex-intel-pod2-daily-master'
+              node-parameters: true
+              current-parameters: false
+              predefined-parameters:
+                DEPLOY_SCENARIO={verify-scenario}
+              kill-phase-on: NEVER
+              abort-all-job: false
+              git-revision: false
 
 # Deploy job
 - job-template:
     disabled: false
     quiet-period: 30
     scm:
-        - git-scm-gerrit
+      - git-scm-gerrit
 
     wrappers:
-        - timeout:
-            timeout: 140
-            fail: true
+      - timeout:
+          timeout: 140
+          fail: true
 
     parameters:
-        - '{project}-{platform}-{stream}-defaults'
-        - project-parameter:
-            project: '{project}'
-            branch: '{branch}'
-        - apex-parameter:
-            gs-pathname: '{gs-pathname}'
-        - string:
-            name: DEPLOY_SCENARIO
-            default: '{verify-scenario}'
-            description: "Scenario to deploy with."
-        - string:
-            name: OPNFV_CLEAN
-            default: 'no'
-            description: "Use yes in lower case to invoke clean. Indicates if the deploy environment should be cleaned before deployment"
-
+      - '{project}-{platform}-{stream}-defaults'
+      - project-parameter:
+          project: '{project}'
+          branch: '{branch}'
+      - apex-parameter:
+          gs-pathname: '{gs-pathname}'
+      - string:
+          name: DEPLOY_SCENARIO
+          default: '{verify-scenario}'
+          description: "Scenario to deploy with."
+      # yamllint disable rule:line-length
+      - string:
+          name: OPNFV_CLEAN
+          default: 'no'
+          description: "Use yes in lower case to invoke clean. Indicates if the deploy environment should be cleaned before deployment"
+
+    # yamllint enable rule:line-length
     properties:
-        - logrotate-default
-        - build-blocker:
-            use-build-blocker: true
-            block-level: 'NODE'
-            blocking-jobs:
-                - 'apex-deploy.*'
-                - 'functest.*'
-                - 'yardstick.*'
-                - 'dovetail.*'
-                - 'storperf.*'
-        - throttle:
-            max-per-node: 1
-            max-total: 10
-            option: 'project'
+      - logrotate-default
+      - build-blocker:
+          use-build-blocker: true
+          block-level: 'NODE'
+          blocking-jobs:
+            - 'apex-deploy.*'
+            - 'functest.*'
+            - 'yardstick.*'
+            - 'dovetail.*'
+            - 'storperf.*'
+      - throttle:
+          max-per-node: 1
+          max-total: 10
+          option: 'project'
 
     builders:
-        - description-setter:
-            description: "Deployed on $NODE_NAME - Scenario: $DEPLOY_SCENARIO"
-        - 'apex-download-artifact'
-        - 'apex-deploy'
-        - 'clean-workspace'
+      - description-setter:
+          description: "Deployed on $NODE_NAME - Scenario: $DEPLOY_SCENARIO"
+      - 'apex-download-artifact'
+      - 'apex-deploy'
+      - 'clean-workspace'
 
 
 # Virtual Deploy and Test
     disabled: false
 
     scm:
-        - git-scm-gerrit
+      - git-scm-gerrit
 
     parameters:
-        - '{project}-defaults'
-        - '{project}-virtual-{stream}-defaults'
-        - project-parameter:
-            project: '{project}'
-            branch: '{branch}'
-        - apex-parameter:
-            gs-pathname: '{gs-pathname}'
-        - string:
-            name: DEPLOY_SCENARIO
-            default: '{verify-scenario}'
-            description: "Scenario to deploy with."
-        - string:
-            name: ARTIFACT_VERSION
-            default: dev
-            description: "Used for overriding the ARTIFACT_VERSION"
+      - '{project}-defaults'
+      - '{project}-virtual-{stream}-defaults'
+      - project-parameter:
+          project: '{project}'
+          branch: '{branch}'
+      - apex-parameter:
+          gs-pathname: '{gs-pathname}'
+      - string:
+          name: DEPLOY_SCENARIO
+          default: '{verify-scenario}'
+          description: "Scenario to deploy with."
+      - string:
+          name: ARTIFACT_VERSION
+          default: dev
+          description: "Used for overriding the ARTIFACT_VERSION"
+
     properties:
-        - logrotate-default
-        - build-blocker:
-            use-build-blocker: true
-            block-level: 'NODE'
-            blocking-jobs:
-                - 'apex-runner.*'
-                - 'apex-.*-promote.*'
-                - 'apex-run.*'
-                - 'apex-virtual-.*'
-                - 'apex-verify-gate-.*'
-        - throttle:
-            max-per-node: 1
-            max-total: 10
-            option: 'project'
+      - logrotate-default
+      - build-blocker:
+          use-build-blocker: true
+          block-level: 'NODE'
+          blocking-jobs:
+            - 'apex-runner.*'
+            - 'apex-.*-promote.*'
+            - 'apex-run.*'
+            - 'apex-virtual-.*'
+            - 'apex-verify-gate-.*'
+      - throttle:
+          max-per-node: 1
+          max-total: 10
+          option: 'project'
+
     builders:
-        - description-setter:
-            description: "Deployed on $NODE_NAME - Scenario: $DEPLOY_SCENARIO"
-        - multijob:
-            name: deploy-virtual
-            condition: SUCCESSFUL
-            projects:
-                - name: 'apex-deploy-virtual-{stream}'
-                  current-parameters: false
-                  predefined-parameters: |
-                    ARTIFACT_VERSION=$ARTIFACT_VERSION
-                    DEPLOY_SCENARIO=$DEPLOY_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: true
-                  kill-phase-on: FAILURE
-                  abort-all-job: true
-                  git-revision: true
-        - multijob:
-            name: functest-smoke
-            condition: SUCCESSFUL
-            projects:
-              - name: 'functest-apex-virtual-suite-{stream}'
-                current-parameters: false
-                predefined-parameters: |
-                  DEPLOY_SCENARIO=$DEPLOY_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: true
-                kill-phase-on: NEVER
-                abort-all-job: true
-                git-revision: false
+      - description-setter:
+          description: "Deployed on $NODE_NAME - Scenario: $DEPLOY_SCENARIO"
+      - multijob:
+          name: deploy-virtual
+          condition: SUCCESSFUL
+          projects:
+            - name: 'apex-deploy-virtual-{stream}'
+              current-parameters: false
+              predefined-parameters: |
+                ARTIFACT_VERSION=$ARTIFACT_VERSION
+                DEPLOY_SCENARIO=$DEPLOY_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: true
+              kill-phase-on: FAILURE
+              abort-all-job: true
+              git-revision: true
+      - multijob:
+          name: functest-smoke
+          condition: SUCCESSFUL
+          projects:
+            - name: 'functest-apex-virtual-suite-{stream}'
+              current-parameters: false
+              predefined-parameters: |
+                DEPLOY_SCENARIO=$DEPLOY_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: true
+              kill-phase-on: NEVER
+              abort-all-job: true
+              git-revision: false
 
 # Baremetal Deploy and Test
 - job-template:
     disabled: false
 
     scm:
-        - git-scm
+      - git-scm
 
     parameters:
-        - '{project}-defaults'
-        - '{project}-baremetal-{scenario_stream}-defaults'
-        - project-parameter:
-            project: '{project}'
-            branch: '{branch}'
-        - apex-parameter:
-            gs-pathname: '{gs-pathname}'
-        - string:
-            name: DEPLOY_SCENARIO
-            default: '{scenario}'
-            description: "Scenario to deploy with."
+      - '{project}-defaults'
+      - '{project}-baremetal-{scenario_stream}-defaults'
+      - project-parameter:
+          project: '{project}'
+          branch: '{branch}'
+      - apex-parameter:
+          gs-pathname: '{gs-pathname}'
+      - string:
+          name: DEPLOY_SCENARIO
+          default: '{scenario}'
+          description: "Scenario to deploy with."
+
     properties:
-        - logrotate-default
-        - build-blocker:
-            use-build-blocker: true
-            block-level: 'NODE'
-            blocking-jobs:
-                - 'apex-verify.*'
-                - 'apex-runner.*'
-                - 'apex-.*-promote.*'
-                - 'apex-run.*'
-                - 'apex-.+-baremetal-.+'
-        - throttle:
-            max-per-node: 1
-            max-total: 10
-            option: 'project'
+      - logrotate-default
+      - build-blocker:
+          use-build-blocker: true
+          block-level: 'NODE'
+          blocking-jobs:
+            - 'apex-verify.*'
+            - 'apex-runner.*'
+            - 'apex-.*-promote.*'
+            - 'apex-run.*'
+            - 'apex-.+-baremetal-.+'
+      - throttle:
+          max-per-node: 1
+          max-total: 10
+          option: 'project'
+
     builders:
-        - description-setter:
-            description: "Deployed on $NODE_NAME - Scenario: $DEPLOY_SCENARIO"
-        - multijob:
-            name: 'Baremetal Deploy'
-            condition: SUCCESSFUL
-            projects:
-                - name: 'apex-deploy-baremetal-{scenario_stream}'
-                  node-parameters: true
-                  current-parameters: true
-                  predefined-parameters: |
-                    OPNFV_CLEAN=yes
-                    GERRIT_BRANCH=$GERRIT_BRANCH
-                    GERRIT_REFSPEC=
-                    DEPLOY_SCENARIO=$DEPLOY_SCENARIO
-                  kill-phase-on: FAILURE
-                  abort-all-job: true
-                  git-revision: false
-        - multijob:
-            name: 'OPNFV Test Suite'
-            projects:
-                - name: 'apex-testsuite-{scenario}-baremetal-{scenario_stream}'
-                  node-parameters: true
-                  current-parameters: false
-                  predefined-parameters:
-                    DEPLOY_SCENARIO=$DEPLOY_SCENARIO
-                  kill-phase-on: NEVER
-                  abort-all-job: true
-                  git-revision: false
+      - description-setter:
+          description: "Deployed on $NODE_NAME - Scenario: $DEPLOY_SCENARIO"
+      - multijob:
+          name: 'Baremetal Deploy'
+          condition: SUCCESSFUL
+          projects:
+            - name: 'apex-deploy-baremetal-{scenario_stream}'
+              node-parameters: true
+              current-parameters: true
+              predefined-parameters: |
+                OPNFV_CLEAN=yes
+                GERRIT_BRANCH=$GERRIT_BRANCH
+                GERRIT_REFSPEC=
+                DEPLOY_SCENARIO=$DEPLOY_SCENARIO
+              kill-phase-on: FAILURE
+              abort-all-job: true
+              git-revision: false
+      - multijob:
+          name: 'OPNFV Test Suite'
+          projects:
+            - name: 'apex-testsuite-{scenario}-baremetal-{scenario_stream}'
+              node-parameters: true
+              current-parameters: false
+              predefined-parameters:
+                DEPLOY_SCENARIO=$DEPLOY_SCENARIO
+              kill-phase-on: NEVER
+              abort-all-job: true
+              git-revision: false
 
     publishers:
-        - groovy-postbuild:
-            script:
-                !include-raw-escape: ./update-build-result.groovy
+      - groovy-postbuild:
+          script:
+            !include-raw-escape: ./update-build-result.groovy
 
 # Baremetal test job
 - job-template:
     disabled: false
 
     parameters:
-        - '{project}-defaults'
-        - '{project}-baremetal-{scenario_stream}-defaults'
-        - project-parameter:
-            project: '{project}'
-            branch: '{branch}'
-        - apex-parameter:
-            gs-pathname: '{gs-pathname}'
-        - string:
-            name: DEPLOY_SCENARIO
-            default: '{scenario}'
-            description: "Scenario to deploy with."
+      - '{project}-defaults'
+      - '{project}-baremetal-{scenario_stream}-defaults'
+      - project-parameter:
+          project: '{project}'
+          branch: '{branch}'
+      - apex-parameter:
+          gs-pathname: '{gs-pathname}'
+      - string:
+          name: DEPLOY_SCENARIO
+          default: '{scenario}'
+          description: "Scenario to deploy with."
+
     properties:
-        - logrotate-default
-        - build-blocker:
-            use-build-blocker: true
-            block-level: 'NODE'
-            blocking-jobs:
-                - 'apex-verify.*'
-                - 'apex-runner.*'
-                - 'apex-.*-promote.*'
-                - 'apex-run.*'
-                - 'apex-testsuite-.+-baremetal-.+'
-        - throttle:
-            max-per-node: 1
-            max-total: 10
-            option: 'project'
+      - logrotate-default
+      - build-blocker:
+          use-build-blocker: true
+          block-level: 'NODE'
+          blocking-jobs:
+            - 'apex-verify.*'
+            - 'apex-runner.*'
+            - 'apex-.*-promote.*'
+            - 'apex-run.*'
+            - 'apex-testsuite-.+-baremetal-.+'
+      - throttle:
+          max-per-node: 1
+          max-total: 10
+          option: 'project'
+
     builders:
-        - description-setter:
-            description: "Testing on $NODE_NAME - Scenario: $DEPLOY_SCENARIO"
-        - multijob:
-            name: Functest
-            condition: ALWAYS
-            projects:
-                - name: 'functest-apex-baremetal-daily-{scenario_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-{scenario_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: Dovetail
-            condition: ALWAYS
-            projects:
-                - name: 'dovetail-apex-baremetal-proposed_tests-{scenario_stream}'
-                  node-parameters: true
-                  current-parameters: false
-                  predefined-parameters:
-                    DEPLOY_SCENARIO=$DEPLOY_SCENARIO
-                  kill-phase-on: NEVER
-                  enable-condition: "def m = '$DEPLOY_SCENARIO' ==~ /os-(nosdn-nofeature|nosdn-kvm|odl_l3-fdio)-ha/"
-                  abort-all-job: false
-                  git-revision: false
-        - multijob:
-            name: StorPerf
-            condition: ALWAYS
-            projects:
-                - name: 'storperf-apex-baremetal-daily-{scenario_stream}'
-                  node-parameters: true
-                  current-parameters: false
-                  predefined-parameters:
-                    DEPLOY_SCENARIO=$DEPLOY_SCENARIO
-                  enable-condition: "def m = '$DEPLOY_SCENARIO' ==~ /os-nosdn-nofeature-ha/"
-                  kill-phase-on: NEVER
-                  abort-all-job: false
-                  git-revision: false
+      - description-setter:
+          description: "Testing on $NODE_NAME - Scenario: $DEPLOY_SCENARIO"
+      - multijob:
+          name: Functest
+          condition: ALWAYS
+          projects:
+            - name: 'functest-apex-baremetal-daily-{scenario_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-{scenario_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: Dovetail
+          condition: ALWAYS
+          projects:
+            - name: 'dovetail-apex-baremetal-proposed_tests-{scenario_stream}'
+              node-parameters: true
+              current-parameters: false
+              predefined-parameters:
+                DEPLOY_SCENARIO=$DEPLOY_SCENARIO
+              kill-phase-on: NEVER
+              enable-condition: "def m = '$DEPLOY_SCENARIO' ==~ /os-(nosdn-nofeature|nosdn-kvm|odl_l3-fdio)-ha/"
+              abort-all-job: false
+              git-revision: false
+      - multijob:
+          name: StorPerf
+          condition: ALWAYS
+          projects:
+            - name: 'storperf-apex-baremetal-daily-{scenario_stream}'
+              node-parameters: true
+              current-parameters: false
+              predefined-parameters:
+                DEPLOY_SCENARIO=$DEPLOY_SCENARIO
+              enable-condition: "def m = '$DEPLOY_SCENARIO' ==~ /os-nosdn-nofeature-ha/"
+              kill-phase-on: NEVER
+              abort-all-job: false
+              git-revision: false
 # Build status is always success due conditional plugin prefetching
 # build status before multijob phases execute
 #        - conditional-step:
     disabled: '{obj:disable_daily}'
 
     scm:
-        - git-scm
+      - git-scm
 
     parameters:
-        - '{project}-defaults'
-        - '{project}-baremetal-{stream}-defaults'
-        - project-parameter:
-            project: '{project}'
-            branch: '{branch}'
-        - apex-parameter:
-            gs-pathname: '{gs-pathname}'
+      - '{project}-defaults'
+      - '{project}-baremetal-{stream}-defaults'
+      - project-parameter:
+          project: '{project}'
+          branch: '{branch}'
+      - apex-parameter:
+          gs-pathname: '{gs-pathname}'
 
     properties:
-        - logrotate-default
-        - build-blocker:
-            use-build-blocker: true
-            block-level: 'NODE'
-            blocking-jobs:
-                - 'apex-daily.*'
+      - logrotate-default
+      - build-blocker:
+          use-build-blocker: true
+          block-level: 'NODE'
+          blocking-jobs:
+            - 'apex-daily.*'
 
     triggers:
-        - 'apex-{stream}'
+      - 'apex-{stream}'
 
     builders:
-        - multijob:
-            name: build
-            condition: SUCCESSFUL
-            projects:
-                - name: 'apex-build-{stream}'
-                  current-parameters: false
-                  predefined-parameters: |
-                    GERRIT_BRANCH=$GERRIT_BRANCH
-                    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-{stream}'
-                  current-parameters: false
-                  predefined-parameters: |
-                    BUILD_DIRECTORY=$WORKSPACE/../apex-build-{stream}/.build
-                    GERRIT_BRANCH=$GERRIT_BRANCH
-                    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
-        - apex-builder-{stream}
+      - multijob:
+          name: build
+          condition: SUCCESSFUL
+          projects:
+            - name: 'apex-build-{stream}'
+              current-parameters: false
+              predefined-parameters: |
+                GERRIT_BRANCH=$GERRIT_BRANCH
+                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-{stream}'
+              current-parameters: false
+              predefined-parameters: |
+                BUILD_DIRECTORY=$WORKSPACE/../apex-build-{stream}/.build
+                GERRIT_BRANCH=$GERRIT_BRANCH
+                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
+      - apex-builder-{stream}
 
 # snapshot create
 - job-template:
     disabled: false
 
     builders:
-        - shell:
-            !include-raw-escape: ./apex-snapshot-create.sh
+      - shell:
+          !include-raw-escape: ./apex-snapshot-create.sh
 
 # snapshot upload
 - job-template:
     disabled: false
 
     builders:
-        - inject:
-           properties-content: ARTIFACT_TYPE=snapshot
-        - 'apex-upload-artifact'
+      - inject:
+          properties-content: ARTIFACT_TYPE=snapshot
+      - 'apex-upload-artifact'
 
 # CSIT promote
 - job-template:
     disabled: false
 
     scm:
-        - git-scm
+      - git-scm
 
     parameters:
-        - project-parameter:
-            project: '{project}'
-            branch: '{branch}'
-        - apex-parameter:
-            gs-pathname: '{gs-pathname}'
+      - project-parameter:
+          project: '{project}'
+          branch: '{branch}'
+      - apex-parameter:
+          gs-pathname: '{gs-pathname}'
 
     properties:
-        - build-blocker:
-            use-build-blocker: true
-            block-level: 'NODE'
-            blocking-jobs:
-                - 'apex-verify.*'
-                - 'apex-deploy.*'
-                - 'apex-runner.*'
-                - 'apex-daily.*'
+      - build-blocker:
+          use-build-blocker: true
+          block-level: 'NODE'
+          blocking-jobs:
+            - 'apex-verify.*'
+            - 'apex-deploy.*'
+            - 'apex-runner.*'
+            - 'apex-daily.*'
 
     triggers:
-        - timed: '0 12 * * 0'
+      - timed: '0 12 * * 0'
 
     builders:
-        - 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
-                    PROMOTE=True
-                  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: false
-                predefined-parameters: |
-                  SNAP_TYPE=csit
-                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: false
-                predefined-parameters: |
-                  SNAP_TYPE=csit
-                node-parameters: true
-                kill-phase-on: FAILURE
-                abort-all-job: true
-                git-revision: false
+      - 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
+                PROMOTE=True
+              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: false
+              predefined-parameters: |
+                SNAP_TYPE=csit
+              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: false
+              predefined-parameters: |
+                SNAP_TYPE=csit
+              node-parameters: true
+              kill-phase-on: FAILURE
+              abort-all-job: true
+              git-revision: false
 
 # FDIO promote
 - job-template:
     disabled: false
 
     scm:
-        - git-scm
+      - git-scm
 
     parameters:
-        - project-parameter:
-            project: '{project}'
-            branch: '{branch}'
-        - apex-parameter:
-            gs-pathname: '{gs-pathname}'
+      - project-parameter:
+          project: '{project}'
+          branch: '{branch}'
+      - apex-parameter:
+          gs-pathname: '{gs-pathname}'
 
     properties:
-        - build-blocker:
-            use-build-blocker: true
-            block-level: 'NODE'
-            blocking-jobs:
-                - 'apex-verify.*'
-                - 'apex-deploy.*'
-                - 'apex-runner.*'
-                - 'apex-daily.*'
+      - build-blocker:
+          use-build-blocker: true
+          block-level: 'NODE'
+          blocking-jobs:
+            - 'apex-verify.*'
+            - 'apex-deploy.*'
+            - 'apex-runner.*'
+            - 'apex-daily.*'
 
     builders:
-        - 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_netvirt-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
-                    PROMOTE=True
-                  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: false
-                predefined-parameters: |
-                  SNAP_TYPE=fdio
-                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: false
-                predefined-parameters: |
-                  SNAP_TYPE=fdio
-                node-parameters: true
-                kill-phase-on: FAILURE
-                abort-all-job: true
-                git-revision: false
+      - 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_netvirt-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
+                PROMOTE=True
+              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: false
+              predefined-parameters: |
+                SNAP_TYPE=fdio
+              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: false
+              predefined-parameters: |
+                SNAP_TYPE=fdio
+              node-parameters: true
+              kill-phase-on: FAILURE
+              abort-all-job: true
+              git-revision: false
 
 # Flex job
 - job-template:
     node: 'flex-pod2'
 
     scm:
-        - git-scm
+      - git-scm
+
     triggers:
-        - 'apex-{stream}'
+      - 'apex-{stream}'
+
     parameters:
-        - '{project}-defaults'
-        - project-parameter:
-            project: '{project}'
-            branch: '{branch}'
-        - apex-parameter:
-            gs-pathname: '{gs-pathname}'
-        - string:
-            name: DEPLOY_SCENARIO
-            default: 'os-nosdn-nofeature-ha'
-            description: "Scenario to deploy with."
-        - string:
-            name: GIT_BASE
-            default: https://gerrit.opnfv.org/gerrit/$PROJECT
-            description: 'Git URL to use on this Jenkins Slave'
-        - string:
-            name: SSH_KEY
-            default: /root/.ssh/id_rsa
-            description: 'SSH key to use for Apex'
+      - '{project}-defaults'
+      - project-parameter:
+          project: '{project}'
+          branch: '{branch}'
+      - apex-parameter:
+          gs-pathname: '{gs-pathname}'
+      - string:
+          name: DEPLOY_SCENARIO
+          default: 'os-nosdn-nofeature-ha'
+          description: "Scenario to deploy with."
+      - string:
+          name: GIT_BASE
+          default: https://gerrit.opnfv.org/gerrit/$PROJECT
+          description: 'Git URL to use on this Jenkins Slave'
+      - string:
+          name: SSH_KEY
+          default: /root/.ssh/id_rsa
+          description: 'SSH key to use for Apex'
+
     properties:
-        - logrotate-default
-        - build-blocker:
-            use-build-blocker: true
-            block-level: 'NODE'
-            blocking-jobs:
-                - 'apex-verify.*'
-                - 'apex-runner.*'
-                - 'apex-.*-promote.*'
-                - 'apex-run.*'
-                - 'apex-.+-baremetal-.+'
-        - throttle:
-            max-per-node: 1
-            max-total: 10
-            option: 'project'
+      - logrotate-default
+      - build-blocker:
+          use-build-blocker: true
+          block-level: 'NODE'
+          blocking-jobs:
+            - 'apex-verify.*'
+            - 'apex-runner.*'
+            - 'apex-.*-promote.*'
+            - 'apex-run.*'
+            - 'apex-.+-baremetal-.+'
+      - throttle:
+          max-per-node: 1
+          max-total: 10
+          option: 'project'
+
     builders:
-        - description-setter:
-            description: "Deployed on $NODE_NAME - Scenario: $DEPLOY_SCENARIO"
-        - multijob:
-            name: 'Baremetal Deploy'
-            condition: SUCCESSFUL
-            projects:
-                - name: 'apex-deploy-baremetal-{stream}'
-                  node-parameters: true
-                  current-parameters: true
-                  predefined-parameters: |
-                    OPNFV_CLEAN=yes
-                    GERRIT_BRANCH=$GERRIT_BRANCH
-                    GERRIT_REFSPEC=
-                    DEPLOY_SCENARIO=$DEPLOY_SCENARIO
-                  kill-phase-on: FAILURE
-                  abort-all-job: true
-                  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
+      - description-setter:
+          description: "Deployed on $NODE_NAME - Scenario: $DEPLOY_SCENARIO"
+      - multijob:
+          name: 'Baremetal Deploy'
+          condition: SUCCESSFUL
+          projects:
+            - name: 'apex-deploy-baremetal-{stream}'
+              node-parameters: true
+              current-parameters: true
+              predefined-parameters: |
+                OPNFV_CLEAN=yes
+                GERRIT_BRANCH=$GERRIT_BRANCH
+                GERRIT_REFSPEC=
+                DEPLOY_SCENARIO=$DEPLOY_SCENARIO
+              kill-phase-on: FAILURE
+              abort-all-job: true
+              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
 
 # Dovetail Danube test job
 - job-template:
     disabled: false
 
     parameters:
-        - '{project}-defaults'
-        - project-parameter:
-            project: '{project}'
-            branch: 'stable/danube'
-        - apex-parameter:
-            gs-pathname: '/danube'
-        - string:
-            name: DEPLOY_SCENARIO
-            default: 'os-nosdn-nofeature-ha'
-            description: "Scenario to deploy with."
+      - '{project}-defaults'
+      - project-parameter:
+          project: '{project}'
+          branch: 'stable/danube'
+      - apex-parameter:
+          gs-pathname: '/danube'
+      - string:
+          name: DEPLOY_SCENARIO
+          default: 'os-nosdn-nofeature-ha'
+          description: "Scenario to deploy with."
 
     properties:
-        - logrotate-default
-        - build-blocker:
-            use-build-blocker: true
-            block-level: 'NODE'
-            blocking-jobs:
-                - 'apex-verify.*'
-                - 'apex-runner.*'
-                - 'apex-.*-promote.*'
-                - 'apex-run.*'
+      - logrotate-default
+      - build-blocker:
+          use-build-blocker: true
+          block-level: 'NODE'
+          blocking-jobs:
+            - 'apex-verify.*'
+            - 'apex-runner.*'
+            - 'apex-.*-promote.*'
+            - 'apex-run.*'
 
     triggers:
-        - timed: '0 1 * * *'
+      - timed: '' #'0 1 * * *'
 
     builders:
-        - description-setter:
-            description: "Testing on $NODE_NAME - Scenario: $DEPLOY_SCENARIO"
-        - multijob:
-            name: 'Baremetal Deploy'
-            condition: SUCCESSFUL
-            projects:
-                - name: 'apex-deploy-baremetal-danube'
-                  node-parameters: true
-                  current-parameters: true
-                  predefined-parameters: |
-                    OPNFV_CLEAN=yes
-                    GERRIT_BRANCH=$GERRIT_BRANCH
-                    GERRIT_REFSPEC=
-                    DEPLOY_SCENARIO=$DEPLOY_SCENARIO
-                  kill-phase-on: FAILURE
-                  abort-all-job: true
-                  git-revision: false
-        - multijob:
-            name: Dovetail
-            condition: ALWAYS
-            projects:
-                - name: 'dovetail-apex-baremetal-proposed_tests-danube'
-                  node-parameters: true
-                  current-parameters: false
-                  predefined-parameters:
-                    DEPLOY_SCENARIO=$DEPLOY_SCENARIO
-                  kill-phase-on: NEVER
-                  abort-all-job: false
-                  git-revision: false
+      - description-setter:
+          description: "Testing on $NODE_NAME - Scenario: $DEPLOY_SCENARIO"
+      - multijob:
+          name: 'Baremetal Deploy'
+          condition: SUCCESSFUL
+          projects:
+            - name: 'apex-deploy-baremetal-danube'
+              node-parameters: true
+              current-parameters: true
+              predefined-parameters: |
+                OPNFV_CLEAN=yes
+                GERRIT_BRANCH=$GERRIT_BRANCH
+                GERRIT_REFSPEC=
+                DEPLOY_SCENARIO=$DEPLOY_SCENARIO
+              kill-phase-on: FAILURE
+              abort-all-job: true
+              git-revision: false
+      - multijob:
+          name: Dovetail
+          condition: ALWAYS
+          projects:
+            - name: 'dovetail-apex-baremetal-proposed_tests-danube'
+              node-parameters: true
+              current-parameters: false
+              predefined-parameters:
+                DEPLOY_SCENARIO=$DEPLOY_SCENARIO
+              kill-phase-on: NEVER
+              abort-all-job: false
+              git-revision: false
 
 ########################
 # parameter macros
 - parameter:
     name: apex-parameter
     parameters:
-        - string:
-            name: ARTIFACT_NAME
-            default: 'latest'
-            description: "RPM Artifact name that will be appended to GS_URL to deploy a specific artifact"
-        - string:
-            name: ARTIFACT_VERSION
-            default: 'daily'
-            description: "Artifact version type"
-        - string:
-            name: BUILD_DIRECTORY
-            default: $WORKSPACE/.build
-            description: "Directory where the build artifact will be located upon the completion of the build."
-        - string:
-            name: CACHE_DIRECTORY
-            default: $HOME/opnfv/apex-cache{gs-pathname}
-            description: "Directory where the cache to be used during the build is located."
-        - string:
-            name: GIT_BASE
-            default: https://gerrit.opnfv.org/gerrit/$PROJECT
-            description: "Used for overriding the GIT URL coming from Global Jenkins configuration in case if the stuff is done on none-LF HW."
-        - string:
-            name: GS_PATHNAME
-            default: '{gs-pathname}'
-            description: "Version directory where opnfv artifacts are stored in gs repository"
-        - string:
-            name: GS_URL
-            default: $GS_BASE{gs-pathname}
-            description: "URL to Google Storage."
-        - string:
-            name: PROMOTE
-            default: 'False'
-            description: "Flag to know if we should promote/upload snapshot artifacts."
+      - string:
+          name: ARTIFACT_NAME
+          default: 'latest'
+          description: "RPM Artifact name that will be appended to GS_URL to deploy a specific artifact"
+      - string:
+          name: ARTIFACT_VERSION
+          default: 'daily'
+          description: "Artifact version type"
+      - string:
+          name: BUILD_DIRECTORY
+          default: $WORKSPACE/.build
+          description: "Directory where the build artifact will be located upon the completion of the build."
+      - string:
+          name: CACHE_DIRECTORY
+          default: $HOME/opnfv/apex-cache{gs-pathname}
+          description: "Directory where the cache to be used during the build is located."
+      # yamllint disable rule:line-length
+      - string:
+          name: GIT_BASE
+          default: https://gerrit.opnfv.org/gerrit/$PROJECT
+          description: "Used for overriding the GIT URL coming from Global Jenkins configuration in case if the stuff is done on none-LF HW."
+      # yamllint enable rule:line-length
+      - string:
+          name: GS_PATHNAME
+          default: '{gs-pathname}'
+          description: "Version directory where opnfv artifacts are stored in gs repository"
+      - string:
+          name: GS_URL
+          default: $GS_BASE{gs-pathname}
+          description: "URL to Google Storage."
+      - string:
+          name: PROMOTE
+          default: 'False'
+          description: "Flag to know if we should promote/upload snapshot artifacts."
 
 ########################
 # builder macros
 
 # danube Builder
 - builder:
-      name: apex-builder-danube
-      builders:
-        - multijob:
-            name: Baremetal Deploy and Test Phase
-            condition: SUCCESSFUL
-            projects:
-
-                - name: 'apex-os-nosdn-nofeature-noha-baremetal-danube'
-                  node-parameters: false
-                  current-parameters: false
-                  predefined-parameters: |
-                    OPNFV_CLEAN=yes
-                  kill-phase-on: NEVER
-                  abort-all-job: true
-                  git-revision: false
-
-                - name: 'apex-os-nosdn-nofeature-ha-baremetal-danube'
-                  node-parameters: false
-                  current-parameters: false
-                  predefined-parameters: |
-                    OPNFV_CLEAN=yes
-                  kill-phase-on: NEVER
-                  abort-all-job: true
-                  git-revision: false
-
-                - name: 'apex-os-nosdn-nofeature-ha-ipv6-baremetal-danube'
-                  node-parameters: false
-                  current-parameters: false
-                  predefined-parameters: |
-                    OPNFV_CLEAN=yes
-                  kill-phase-on: NEVER
-                  abort-all-job: true
-                  git-revision: false
-
-                - name: 'apex-os-nosdn-ovs-noha-baremetal-danube'
-                  node-parameters: false
-                  current-parameters: false
-                  predefined-parameters: |
-                    OPNFV_CLEAN=yes
-                  kill-phase-on: NEVER
-                  abort-all-job: true
-                  git-revision: false
-
-                - name: 'apex-os-nosdn-ovs-ha-baremetal-danube'
-                  node-parameters: false
-                  current-parameters: false
-                  predefined-parameters: |
-                    OPNFV_CLEAN=yes
-                  kill-phase-on: NEVER
-                  abort-all-job: true
-                  git-revision: false
-
-                - name: 'apex-os-nosdn-fdio-noha-baremetal-danube'
-                  node-parameters: false
-                  current-parameters: false
-                  predefined-parameters: |
-                    OPNFV_CLEAN=yes
-                  kill-phase-on: NEVER
-                  abort-all-job: true
-                  git-revision: false
-
-                - name: 'apex-os-nosdn-fdio-ha-baremetal-danube'
-                  node-parameters: false
-                  current-parameters: false
-                  predefined-parameters: |
-                    OPNFV_CLEAN=yes
-                  kill-phase-on: NEVER
-                  abort-all-job: true
-                  git-revision: false
-
-                - name: 'apex-os-nosdn-kvm-ha-baremetal-danube'
-                  node-parameters: false
-                  current-parameters: false
-                  predefined-parameters: |
-                    OPNFV_CLEAN=yes
-                  kill-phase-on: NEVER
-                  abort-all-job: true
-                  git-revision: false
-
-                - name: 'apex-os-nosdn-kvm-noha-baremetal-danube'
-                  node-parameters: false
-                  current-parameters: false
-                  predefined-parameters: |
-                    OPNFV_CLEAN=yes
-                  kill-phase-on: NEVER
-                  abort-all-job: true
-                  git-revision: false
-
-                - name: 'apex-os-odl_l2-fdio-noha-baremetal-danube'
-                  node-parameters: false
-                  current-parameters: false
-                  predefined-parameters: |
-                    OPNFV_CLEAN=yes
-                  kill-phase-on: NEVER
-                  abort-all-job: true
-                  git-revision: false
-
-                - name: 'apex-os-odl_l2-fdio-ha-baremetal-danube'
-                  node-parameters: false
-                  current-parameters: false
-                  predefined-parameters: |
-                    OPNFV_CLEAN=yes
-                  kill-phase-on: NEVER
-                  abort-all-job: true
-                  git-revision: false
-
-                - name: 'apex-os-odl_netvirt-fdio-noha-baremetal-danube'
-                  node-parameters: false
-                  current-parameters: false
-                  predefined-parameters: |
-                    OPNFV_CLEAN=yes
-                  kill-phase-on: NEVER
-                  abort-all-job: true
-                  git-revision: false
-
-                - name: 'apex-os-odl_l2-sfc-noha-baremetal-danube'
-                  node-parameters: false
-                  current-parameters: false
-                  predefined-parameters: |
-                    OPNFV_CLEAN=yes
-                  kill-phase-on: NEVER
-                  abort-all-job: true
-                  git-revision: false
-
-                - name: 'apex-os-odl_l3-nofeature-noha-baremetal-danube'
-                  node-parameters: false
-                  current-parameters: false
-                  predefined-parameters: |
-                    OPNFV_CLEAN=yes
-                  kill-phase-on: NEVER
-                  abort-all-job: true
-                  git-revision: false
-
-                - name: 'apex-os-odl_l3-nofeature-ha-baremetal-danube'
-                  node-parameters: false
-                  current-parameters: false
-                  predefined-parameters: |
-                    OPNFV_CLEAN=yes
-                  kill-phase-on: NEVER
-                  abort-all-job: true
-                  git-revision: false
-
-                - name: 'apex-os-odl_l3-ovs-noha-baremetal-danube'
-                  node-parameters: false
-                  current-parameters: false
-                  predefined-parameters: |
-                    OPNFV_CLEAN=yes
-                  kill-phase-on: NEVER
-                  abort-all-job: true
-                  git-revision: false
-
-                - name: 'apex-os-odl_l3-ovs-ha-baremetal-danube'
-                  node-parameters: false
-                  current-parameters: false
-                  predefined-parameters: |
-                    OPNFV_CLEAN=yes
-                  kill-phase-on: NEVER
-                  abort-all-job: true
-                  git-revision: false
-
-                - name: 'apex-os-odl-bgpvpn-ha-baremetal-danube'
-                  node-parameters: false
-                  current-parameters: false
-                  predefined-parameters: |
-                    OPNFV_CLEAN=yes
-                  kill-phase-on: NEVER
-                  abort-all-job: true
-                  git-revision: false
-
-                - name: 'apex-os-odl-gluon-noha-baremetal-danube'
-                  node-parameters: false
-                  current-parameters: false
-                  predefined-parameters: |
-                    OPNFV_CLEAN=yes
-                  kill-phase-on: NEVER
-                  abort-all-job: true
-                  git-revision: false
-
-                - name: 'apex-os-odl_l3-fdio-noha-baremetal-danube'
-                  node-parameters: false
-                  current-parameters: false
-                  predefined-parameters: |
-                    OPNFV_CLEAN=yes
-                  kill-phase-on: NEVER
-                  abort-all-job: true
-                  git-revision: false
-
-                - name: 'apex-os-odl_l3-fdio-ha-baremetal-danube'
-                  node-parameters: false
-                  current-parameters: false
-                  predefined-parameters: |
-                    OPNFV_CLEAN=yes
-                  kill-phase-on: NEVER
-                  abort-all-job: true
-                  git-revision: false
-
-                - name: 'apex-os-odl_l3-fdio_dvr-noha-baremetal-danube'
-                  node-parameters: false
-                  current-parameters: false
-                  predefined-parameters: |
-                    OPNFV_CLEAN=yes
-                  kill-phase-on: NEVER
-                  abort-all-job: true
-                  git-revision: false
-
-                - name: 'apex-os-odl_l3-fdio_dvr-ha-baremetal-danube'
-                  node-parameters: false
-                  current-parameters: false
-                  predefined-parameters: |
-                    OPNFV_CLEAN=yes
-                  kill-phase-on: NEVER
-                  abort-all-job: true
-                  git-revision: false
-
-                - name: 'apex-os-odl_l3-csit-noha-baremetal-danube'
-                  node-parameters: false
-                  current-parameters: false
-                  predefined-parameters: |
-                    OPNFV_CLEAN=yes
-                  kill-phase-on: NEVER
-                  abort-all-job: true
-                  git-revision: false
-
-                - name: 'apex-os-onos-nofeature-ha-baremetal-danube'
-                  node-parameters: false
-                  current-parameters: false
-                  predefined-parameters: |
-                    OPNFV_CLEAN=yes
-                  kill-phase-on: NEVER
-                  abort-all-job: true
-                  git-revision: false
-
-                - name: 'apex-os-ovn-nofeature-noha-baremetal-danube'
-                  node-parameters: false
-                  current-parameters: false
-                  predefined-parameters: |
-                    OPNFV_CLEAN=yes
-                  kill-phase-on: NEVER
-                  abort-all-job: true
-                  git-revision: false
-
+    name: apex-builder-danube
+    builders:
+      - multijob:
+          name: Baremetal Deploy and Test Phase
+          condition: SUCCESSFUL
+          projects:
+            - name: 'apex-os-nosdn-nofeature-noha-baremetal-danube'
+              node-parameters: false
+              current-parameters: false
+              predefined-parameters: |
+                OPNFV_CLEAN=yes
+              kill-phase-on: NEVER
+              abort-all-job: true
+              git-revision: false
+            - name: 'apex-os-nosdn-nofeature-ha-baremetal-danube'
+              node-parameters: false
+              current-parameters: false
+              predefined-parameters: |
+                OPNFV_CLEAN=yes
+              kill-phase-on: NEVER
+              abort-all-job: true
+              git-revision: false
+            - name: 'apex-os-nosdn-nofeature-ha-ipv6-baremetal-danube'
+              node-parameters: false
+              current-parameters: false
+              predefined-parameters: |
+                OPNFV_CLEAN=yes
+              kill-phase-on: NEVER
+              abort-all-job: true
+              git-revision: false
+            - name: 'apex-os-nosdn-ovs-noha-baremetal-danube'
+              node-parameters: false
+              current-parameters: false
+              predefined-parameters: |
+                OPNFV_CLEAN=yes
+              kill-phase-on: NEVER
+              abort-all-job: true
+              git-revision: false
+            - name: 'apex-os-nosdn-ovs-ha-baremetal-danube'
+              node-parameters: false
+              current-parameters: false
+              predefined-parameters: |
+                OPNFV_CLEAN=yes
+              kill-phase-on: NEVER
+              abort-all-job: true
+              git-revision: false
+            - name: 'apex-os-nosdn-fdio-noha-baremetal-danube'
+              node-parameters: false
+              current-parameters: false
+              predefined-parameters: |
+                OPNFV_CLEAN=yes
+              kill-phase-on: NEVER
+              abort-all-job: true
+              git-revision: false
+            - name: 'apex-os-nosdn-fdio-ha-baremetal-danube'
+              node-parameters: false
+              current-parameters: false
+              predefined-parameters: |
+                OPNFV_CLEAN=yes
+              kill-phase-on: NEVER
+              abort-all-job: true
+              git-revision: false
+            - name: 'apex-os-nosdn-kvm-ha-baremetal-danube'
+              node-parameters: false
+              current-parameters: false
+              predefined-parameters: |
+                OPNFV_CLEAN=yes
+              kill-phase-on: NEVER
+              abort-all-job: true
+              git-revision: false
+            - name: 'apex-os-nosdn-kvm-noha-baremetal-danube'
+              node-parameters: false
+              current-parameters: false
+              predefined-parameters: |
+                OPNFV_CLEAN=yes
+              kill-phase-on: NEVER
+              abort-all-job: true
+              git-revision: false
+            - name: 'apex-os-odl_l2-fdio-noha-baremetal-danube'
+              node-parameters: false
+              current-parameters: false
+              predefined-parameters: |
+                OPNFV_CLEAN=yes
+              kill-phase-on: NEVER
+              abort-all-job: true
+              git-revision: false
+            - name: 'apex-os-odl_l2-fdio-ha-baremetal-danube'
+              node-parameters: false
+              current-parameters: false
+              predefined-parameters: |
+                OPNFV_CLEAN=yes
+              kill-phase-on: NEVER
+              abort-all-job: true
+              git-revision: false
+            - name: 'apex-os-odl_netvirt-fdio-noha-baremetal-danube'
+              node-parameters: false
+              current-parameters: false
+              predefined-parameters: |
+                OPNFV_CLEAN=yes
+              kill-phase-on: NEVER
+              abort-all-job: true
+              git-revision: false
+            - name: 'apex-os-odl_l2-sfc-noha-baremetal-danube'
+              node-parameters: false
+              current-parameters: false
+              predefined-parameters: |
+                OPNFV_CLEAN=yes
+              kill-phase-on: NEVER
+              abort-all-job: true
+              git-revision: false
+            - name: 'apex-os-odl_l3-nofeature-noha-baremetal-danube'
+              node-parameters: false
+              current-parameters: false
+              predefined-parameters: |
+                OPNFV_CLEAN=yes
+              kill-phase-on: NEVER
+              abort-all-job: true
+              git-revision: false
+            - name: 'apex-os-odl_l3-nofeature-ha-baremetal-danube'
+              node-parameters: false
+              current-parameters: false
+              predefined-parameters: |
+                OPNFV_CLEAN=yes
+              kill-phase-on: NEVER
+              abort-all-job: true
+              git-revision: false
+            - name: 'apex-os-odl_l3-ovs-noha-baremetal-danube'
+              node-parameters: false
+              current-parameters: false
+              predefined-parameters: |
+                OPNFV_CLEAN=yes
+              kill-phase-on: NEVER
+              abort-all-job: true
+              git-revision: false
+            - name: 'apex-os-odl_l3-ovs-ha-baremetal-danube'
+              node-parameters: false
+              current-parameters: false
+              predefined-parameters: |
+                OPNFV_CLEAN=yes
+              kill-phase-on: NEVER
+              abort-all-job: true
+              git-revision: false
+            - name: 'apex-os-odl-bgpvpn-ha-baremetal-danube'
+              node-parameters: false
+              current-parameters: false
+              predefined-parameters: |
+                OPNFV_CLEAN=yes
+              kill-phase-on: NEVER
+              abort-all-job: true
+              git-revision: false
+            - name: 'apex-os-odl-gluon-noha-baremetal-danube'
+              node-parameters: false
+              current-parameters: false
+              predefined-parameters: |
+                OPNFV_CLEAN=yes
+              kill-phase-on: NEVER
+              abort-all-job: true
+              git-revision: false
+            - name: 'apex-os-odl_l3-fdio-noha-baremetal-danube'
+              node-parameters: false
+              current-parameters: false
+              predefined-parameters: |
+                OPNFV_CLEAN=yes
+              kill-phase-on: NEVER
+              abort-all-job: true
+              git-revision: false
+            - name: 'apex-os-odl_l3-fdio-ha-baremetal-danube'
+              node-parameters: false
+              current-parameters: false
+              predefined-parameters: |
+                OPNFV_CLEAN=yes
+              kill-phase-on: NEVER
+              abort-all-job: true
+              git-revision: false
+            - name: 'apex-os-odl_l3-fdio_dvr-noha-baremetal-danube'
+              node-parameters: false
+              current-parameters: false
+              predefined-parameters: |
+                OPNFV_CLEAN=yes
+              kill-phase-on: NEVER
+              abort-all-job: true
+              git-revision: false
+            - name: 'apex-os-odl_l3-fdio_dvr-ha-baremetal-danube'
+              node-parameters: false
+              current-parameters: false
+              predefined-parameters: |
+                OPNFV_CLEAN=yes
+              kill-phase-on: NEVER
+              abort-all-job: true
+              git-revision: false
+            - name: 'apex-os-odl_l3-csit-noha-baremetal-danube'
+              node-parameters: false
+              current-parameters: false
+              predefined-parameters: |
+                OPNFV_CLEAN=yes
+              kill-phase-on: NEVER
+              abort-all-job: true
+              git-revision: false
+            - name: 'apex-os-onos-nofeature-ha-baremetal-danube'
+              node-parameters: false
+              current-parameters: false
+              predefined-parameters: |
+                OPNFV_CLEAN=yes
+              kill-phase-on: NEVER
+              abort-all-job: true
+              git-revision: false
+            - name: 'apex-os-ovn-nofeature-noha-baremetal-danube'
+              node-parameters: false
+              current-parameters: false
+              predefined-parameters: |
+                OPNFV_CLEAN=yes
+              kill-phase-on: NEVER
+              abort-all-job: true
+              git-revision: false
 
 # master Builder
 - builder:
-      name: apex-builder-master
-      builders:
-        - multijob:
-            name: Baremetal Deploy and Test Phase
-            condition: SUCCESSFUL
-            projects:
-
-                - name: 'apex-os-nosdn-nofeature-noha-baremetal-master'
-                  node-parameters: false
-                  current-parameters: false
-                  predefined-parameters: |
-                    OPNFV_CLEAN=yes
-                  kill-phase-on: NEVER
-                  abort-all-job: true
-                  git-revision: false
-
-                - name: 'apex-os-nosdn-nofeature-ha-baremetal-master'
-                  node-parameters: false
-                  current-parameters: false
-                  predefined-parameters: |
-                    OPNFV_CLEAN=yes
-                  kill-phase-on: NEVER
-                  abort-all-job: true
-                  git-revision: false
-
-                - name: 'apex-os-odl-nofeature-ha-baremetal-master'
-                  node-parameters: false
-                  current-parameters: false
-                  predefined-parameters: |
-                    OPNFV_CLEAN=yes
-                  kill-phase-on: NEVER
-                  abort-all-job: true
-                  git-revision: false
-
-                - name: 'apex-os-odl-nofeature-noha-baremetal-master'
-                  node-parameters: false
-                  current-parameters: false
-                  predefined-parameters: |
-                    OPNFV_CLEAN=yes
-                  kill-phase-on: NEVER
-                  abort-all-job: true
-                  git-revision: false
-
-                - name: 'apex-os-odl-bgpvpn-ha-baremetal-master'
-                  node-parameters: false
-                  current-parameters: false
-                  predefined-parameters: |
-                    OPNFV_CLEAN=yes
-                  kill-phase-on: NEVER
-                  abort-all-job: true
-                  git-revision: false
-
-                - name: 'apex-os-ovn-nofeature-noha-baremetal-master'
-                  node-parameters: false
-                  current-parameters: false
-                  predefined-parameters: |
-                    OPNFV_CLEAN=yes
-                  kill-phase-on: NEVER
-                  abort-all-job: true
-                  git-revision: false
-
-                - name: 'apex-os-nosdn-fdio-noha-baremetal-master'
-                  node-parameters: false
-                  current-parameters: false
-                  predefined-parameters: |
-                    OPNFV_CLEAN=yes
-                  kill-phase-on: NEVER
-                  abort-all-job: true
-                  git-revision: false
-
-                - name: 'apex-os-nosdn-fdio-ha-baremetal-master'
-                  node-parameters: false
-                  current-parameters: false
-                  predefined-parameters: |
-                    OPNFV_CLEAN=yes
-                  kill-phase-on: NEVER
-                  abort-all-job: true
-                  git-revision: false
-
-                - name: 'apex-os-odl-fdio-noha-baremetal-master'
-                  node-parameters: false
-                  current-parameters: false
-                  predefined-parameters: |
-                    OPNFV_CLEAN=yes
-                  kill-phase-on: NEVER
-                  abort-all-job: true
-                  git-revision: false
-
-                - name: 'apex-os-odl-fdio-ha-baremetal-master'
-                  node-parameters: false
-                  current-parameters: false
-                  predefined-parameters: |
-                    OPNFV_CLEAN=yes
-                  kill-phase-on: NEVER
-                  abort-all-job: true
-                  git-revision: false
-
-                - name: 'apex-os-nosdn-bar-ha-baremetal-master'
-                  node-parameters: false
-                  current-parameters: false
-                  predefined-parameters: |
-                    OPNFV_CLEAN=yes
-                  kill-phase-on: NEVER
-                  abort-all-job: true
-                  git-revision: false
-
-                - name: 'apex-os-nosdn-bar-noha-baremetal-master'
-                  node-parameters: false
-                  current-parameters: false
-                  predefined-parameters: |
-                    OPNFV_CLEAN=yes
-                  kill-phase-on: NEVER
-                  abort-all-job: true
-                  git-revision: false
-
-                - name: 'apex-os-nosdn-nofeature-ha-ipv6-baremetal-master'
-                  node-parameters: false
-                  current-parameters: false
-                  predefined-parameters: |
-                    OPNFV_CLEAN=yes
-                  kill-phase-on: NEVER
-                  abort-all-job: true
-                  git-revision: false
-
-                - name: 'apex-os-nosdn-ovs_dpdk-noha-baremetal-master'
-                  node-parameters: false
-                  current-parameters: false
-                  predefined-parameters: |
-                    OPNFV_CLEAN=yes
-                  kill-phase-on: NEVER
-                  abort-all-job: true
-                  git-revision: false
-
-                - name: 'apex-os-nosdn-ovs_dpdk-ha-baremetal-master'
-                  node-parameters: false
-                  current-parameters: false
-                  predefined-parameters: |
-                    OPNFV_CLEAN=yes
-                  kill-phase-on: NEVER
-                  abort-all-job: true
-                  git-revision: false
-
-                - name: 'apex-os-nosdn-kvm_ovs_dpdk-noha-baremetal-master'
-                  node-parameters: false
-                  current-parameters: false
-                  predefined-parameters: |
-                    OPNFV_CLEAN=yes
-                  kill-phase-on: NEVER
-                  abort-all-job: true
-                  git-revision: false
-
-                - name: 'apex-os-nosdn-kvm_ovs_dpdk-ha-baremetal-master'
-                  node-parameters: false
-                  current-parameters: false
-                  predefined-parameters: |
-                    OPNFV_CLEAN=yes
-                  kill-phase-on: NEVER
-                  abort-all-job: true
-                  git-revision: false
-
-                - name: 'apex-os-odl-sfc-noha-baremetal-master'
-                  node-parameters: false
-                  current-parameters: false
-                  predefined-parameters: |
-                    OPNFV_CLEAN=yes
-                  kill-phase-on: NEVER
-                  abort-all-job: true
-                  git-revision: false
-
-                - name: 'apex-os-odl-sfc-ha-baremetal-master'
-                  node-parameters: false
-                  current-parameters: false
-                  predefined-parameters: |
-                    OPNFV_CLEAN=yes
-                  kill-phase-on: NEVER
-                  abort-all-job: true
-                  git-revision: false
-
-                - name: 'apex-os-odl-fdio_dvr-noha-baremetal-master'
-                  node-parameters: false
-                  current-parameters: false
-                  predefined-parameters: |
-                    OPNFV_CLEAN=yes
-                  kill-phase-on: NEVER
-                  abort-all-job: true
-                  git-revision: false
-
-                - name: 'apex-os-odl-fdio_dvr-ha-baremetal-master'
-                  node-parameters: false
-                  current-parameters: false
-                  predefined-parameters: |
-                    OPNFV_CLEAN=yes
-                  kill-phase-on: NEVER
-                  abort-all-job: true
-                  git-revision: false
-
+    name: apex-builder-master
+    builders:
+      - multijob:
+          name: Baremetal Deploy and Test Phase
+          condition: SUCCESSFUL
+          projects:
+            - name: 'apex-os-nosdn-nofeature-noha-baremetal-master'
+              node-parameters: false
+              current-parameters: false
+              predefined-parameters: |
+                OPNFV_CLEAN=yes
+              kill-phase-on: NEVER
+              abort-all-job: true
+              git-revision: false
+            - name: 'apex-os-nosdn-nofeature-ha-baremetal-master'
+              node-parameters: false
+              current-parameters: false
+              predefined-parameters: |
+                OPNFV_CLEAN=yes
+              kill-phase-on: NEVER
+              abort-all-job: true
+              git-revision: false
+            - name: 'apex-os-odl-nofeature-ha-baremetal-master'
+              node-parameters: false
+              current-parameters: false
+              predefined-parameters: |
+                OPNFV_CLEAN=yes
+              kill-phase-on: NEVER
+              abort-all-job: true
+              git-revision: false
+            - name: 'apex-os-odl-nofeature-noha-baremetal-master'
+              node-parameters: false
+              current-parameters: false
+              predefined-parameters: |
+                OPNFV_CLEAN=yes
+              kill-phase-on: NEVER
+              abort-all-job: true
+              git-revision: false
+            - name: 'apex-os-odl-bgpvpn-ha-baremetal-master'
+              node-parameters: false
+              current-parameters: false
+              predefined-parameters: |
+                OPNFV_CLEAN=yes
+              kill-phase-on: NEVER
+              abort-all-job: true
+              git-revision: false
+            - name: 'apex-os-ovn-nofeature-noha-baremetal-master'
+              node-parameters: false
+              current-parameters: false
+              predefined-parameters: |
+                OPNFV_CLEAN=yes
+              kill-phase-on: NEVER
+              abort-all-job: true
+              git-revision: false
+            - name: 'apex-os-nosdn-fdio-noha-baremetal-master'
+              node-parameters: false
+              current-parameters: false
+              predefined-parameters: |
+                OPNFV_CLEAN=yes
+              kill-phase-on: NEVER
+              abort-all-job: true
+              git-revision: false
+            - name: 'apex-os-nosdn-fdio-ha-baremetal-master'
+              node-parameters: false
+              current-parameters: false
+              predefined-parameters: |
+                OPNFV_CLEAN=yes
+              kill-phase-on: NEVER
+              abort-all-job: true
+              git-revision: false
+            - name: 'apex-os-odl-fdio-noha-baremetal-master'
+              node-parameters: false
+              current-parameters: false
+              predefined-parameters: |
+                OPNFV_CLEAN=yes
+              kill-phase-on: NEVER
+              abort-all-job: true
+              git-revision: false
+            - name: 'apex-os-odl-fdio-ha-baremetal-master'
+              node-parameters: false
+              current-parameters: false
+              predefined-parameters: |
+                OPNFV_CLEAN=yes
+              kill-phase-on: NEVER
+              abort-all-job: true
+              git-revision: false
+            - name: 'apex-os-nosdn-bar-ha-baremetal-master'
+              node-parameters: false
+              current-parameters: false
+              predefined-parameters: |
+                OPNFV_CLEAN=yes
+              kill-phase-on: NEVER
+              abort-all-job: true
+              git-revision: false
+            - name: 'apex-os-nosdn-bar-noha-baremetal-master'
+              node-parameters: false
+              current-parameters: false
+              predefined-parameters: |
+                OPNFV_CLEAN=yes
+              kill-phase-on: NEVER
+              abort-all-job: true
+              git-revision: false
+            - name: 'apex-os-nosdn-nofeature-ha-ipv6-baremetal-master'
+              node-parameters: false
+              current-parameters: false
+              predefined-parameters: |
+                OPNFV_CLEAN=yes
+              kill-phase-on: NEVER
+              abort-all-job: true
+              git-revision: false
+            - name: 'apex-os-nosdn-ovs_dpdk-noha-baremetal-master'
+              node-parameters: false
+              current-parameters: false
+              predefined-parameters: |
+                OPNFV_CLEAN=yes
+              kill-phase-on: NEVER
+              abort-all-job: true
+              git-revision: false
+            - name: 'apex-os-nosdn-ovs_dpdk-ha-baremetal-master'
+              node-parameters: false
+              current-parameters: false
+              predefined-parameters: |
+                OPNFV_CLEAN=yes
+              kill-phase-on: NEVER
+              abort-all-job: true
+              git-revision: false
+            - name: 'apex-os-nosdn-kvm_ovs_dpdk-noha-baremetal-master'
+              node-parameters: false
+              current-parameters: false
+              predefined-parameters: |
+                OPNFV_CLEAN=yes
+              kill-phase-on: NEVER
+              abort-all-job: true
+              git-revision: false
+            - name: 'apex-os-nosdn-kvm_ovs_dpdk-ha-baremetal-master'
+              node-parameters: false
+              current-parameters: false
+              predefined-parameters: |
+                OPNFV_CLEAN=yes
+              kill-phase-on: NEVER
+              abort-all-job: true
+              git-revision: false
+            - name: 'apex-os-odl-sfc-noha-baremetal-master'
+              node-parameters: false
+              current-parameters: false
+              predefined-parameters: |
+                OPNFV_CLEAN=yes
+              kill-phase-on: NEVER
+              abort-all-job: true
+              git-revision: false
+            - name: 'apex-os-odl-sfc-ha-baremetal-master'
+              node-parameters: false
+              current-parameters: false
+              predefined-parameters: |
+                OPNFV_CLEAN=yes
+              kill-phase-on: NEVER
+              abort-all-job: true
+              git-revision: false
+            - name: 'apex-os-odl-fdio_dvr-noha-baremetal-master'
+              node-parameters: false
+              current-parameters: false
+              predefined-parameters: |
+                OPNFV_CLEAN=yes
+              kill-phase-on: NEVER
+              abort-all-job: true
+              git-revision: false
+            - name: 'apex-os-odl-fdio_dvr-ha-baremetal-master'
+              node-parameters: false
+              current-parameters: false
+              predefined-parameters: |
+                OPNFV_CLEAN=yes
+              kill-phase-on: NEVER
+              abort-all-job: true
+              git-revision: false
 
 # euphrates Builder
 - builder:
-      name: apex-builder-euphrates
-      builders:
-        - multijob:
-            name: Baremetal Deploy and Test Phase
-            condition: SUCCESSFUL
-            projects:
-
-                - name: 'apex-os-nosdn-nofeature-noha-baremetal-euphrates'
-                  node-parameters: false
-                  current-parameters: false
-                  predefined-parameters: |
-                    OPNFV_CLEAN=yes
-                  kill-phase-on: NEVER
-                  abort-all-job: true
-                  git-revision: false
-
-                - name: 'apex-os-nosdn-nofeature-ha-baremetal-euphrates'
-                  node-parameters: false
-                  current-parameters: false
-                  predefined-parameters: |
-                    OPNFV_CLEAN=yes
-                  kill-phase-on: NEVER
-                  abort-all-job: true
-                  git-revision: false
-
-                - name: 'apex-os-odl-nofeature-ha-baremetal-euphrates'
-                  node-parameters: false
-                  current-parameters: false
-                  predefined-parameters: |
-                    OPNFV_CLEAN=yes
-                  kill-phase-on: NEVER
-                  abort-all-job: true
-                  git-revision: false
-
-                - name: 'apex-os-odl-nofeature-noha-baremetal-euphrates'
-                  node-parameters: false
-                  current-parameters: false
-                  predefined-parameters: |
-                    OPNFV_CLEAN=yes
-                  kill-phase-on: NEVER
-                  abort-all-job: true
-                  git-revision: false
-
-                - name: 'apex-os-odl-bgpvpn-ha-baremetal-euphrates'
-                  node-parameters: false
-                  current-parameters: false
-                  predefined-parameters: |
-                    OPNFV_CLEAN=yes
-                  kill-phase-on: NEVER
-                  abort-all-job: true
-                  git-revision: false
-
-                - name: 'apex-os-ovn-nofeature-noha-baremetal-euphrates'
-                  node-parameters: false
-                  current-parameters: false
-                  predefined-parameters: |
-                    OPNFV_CLEAN=yes
-                  kill-phase-on: NEVER
-                  abort-all-job: true
-                  git-revision: false
-
-                - name: 'apex-os-nosdn-fdio-noha-baremetal-euphrates'
-                  node-parameters: false
-                  current-parameters: false
-                  predefined-parameters: |
-                    OPNFV_CLEAN=yes
-                  kill-phase-on: NEVER
-                  abort-all-job: true
-                  git-revision: false
-
-                - name: 'apex-os-nosdn-fdio-ha-baremetal-euphrates'
-                  node-parameters: false
-                  current-parameters: false
-                  predefined-parameters: |
-                    OPNFV_CLEAN=yes
-                  kill-phase-on: NEVER
-                  abort-all-job: true
-                  git-revision: false
-
-                - name: 'apex-os-odl-fdio-noha-baremetal-euphrates'
-                  node-parameters: false
-                  current-parameters: false
-                  predefined-parameters: |
-                    OPNFV_CLEAN=yes
-                  kill-phase-on: NEVER
-                  abort-all-job: true
-                  git-revision: false
-
-                - name: 'apex-os-odl-fdio-ha-baremetal-euphrates'
-                  node-parameters: false
-                  current-parameters: false
-                  predefined-parameters: |
-                    OPNFV_CLEAN=yes
-                  kill-phase-on: NEVER
-                  abort-all-job: true
-                  git-revision: false
-
-                - name: 'apex-os-nosdn-bar-ha-baremetal-euphrates'
-                  node-parameters: false
-                  current-parameters: false
-                  predefined-parameters: |
-                    OPNFV_CLEAN=yes
-                  kill-phase-on: NEVER
-                  abort-all-job: true
-                  git-revision: false
-
-                - name: 'apex-os-nosdn-bar-noha-baremetal-euphrates'
-                  node-parameters: false
-                  current-parameters: false
-                  predefined-parameters: |
-                    OPNFV_CLEAN=yes
-                  kill-phase-on: NEVER
-                  abort-all-job: true
-                  git-revision: false
-
-                - name: 'apex-os-nosdn-nofeature-ha-ipv6-baremetal-euphrates'
-                  node-parameters: false
-                  current-parameters: false
-                  predefined-parameters: |
-                    OPNFV_CLEAN=yes
-                  kill-phase-on: NEVER
-                  abort-all-job: true
-                  git-revision: false
-
-                - name: 'apex-os-nosdn-ovs_dpdk-noha-baremetal-euphrates'
-                  node-parameters: false
-                  current-parameters: false
-                  predefined-parameters: |
-                    OPNFV_CLEAN=yes
-                  kill-phase-on: NEVER
-                  abort-all-job: true
-                  git-revision: false
-
-                - name: 'apex-os-nosdn-ovs_dpdk-ha-baremetal-euphrates'
-                  node-parameters: false
-                  current-parameters: false
-                  predefined-parameters: |
-                    OPNFV_CLEAN=yes
-                  kill-phase-on: NEVER
-                  abort-all-job: true
-                  git-revision: false
-
-                - name: 'apex-os-nosdn-kvm_ovs_dpdk-noha-baremetal-euphrates'
-                  node-parameters: false
-                  current-parameters: false
-                  predefined-parameters: |
-                    OPNFV_CLEAN=yes
-                  kill-phase-on: NEVER
-                  abort-all-job: true
-                  git-revision: false
-
-                - name: 'apex-os-nosdn-kvm_ovs_dpdk-ha-baremetal-euphrates'
-                  node-parameters: false
-                  current-parameters: false
-                  predefined-parameters: |
-                    OPNFV_CLEAN=yes
-                  kill-phase-on: NEVER
-                  abort-all-job: true
-                  git-revision: false
-
-                - name: 'apex-os-odl-sfc-noha-baremetal-euphrates'
-                  node-parameters: false
-                  current-parameters: false
-                  predefined-parameters: |
-                    OPNFV_CLEAN=yes
-                  kill-phase-on: NEVER
-                  abort-all-job: true
-                  git-revision: false
-
-                - name: 'apex-os-odl-sfc-ha-baremetal-euphrates'
-                  node-parameters: false
-                  current-parameters: false
-                  predefined-parameters: |
-                    OPNFV_CLEAN=yes
-                  kill-phase-on: NEVER
-                  abort-all-job: true
-                  git-revision: false
-
-                - name: 'apex-os-odl-fdio_dvr-noha-baremetal-euphrates'
-                  node-parameters: false
-                  current-parameters: false
-                  predefined-parameters: |
-                    OPNFV_CLEAN=yes
-                  kill-phase-on: NEVER
-                  abort-all-job: true
-                  git-revision: false
-
-                - name: 'apex-os-odl-fdio_dvr-ha-baremetal-euphrates'
-                  node-parameters: false
-                  current-parameters: false
-                  predefined-parameters: |
-                    OPNFV_CLEAN=yes
-                  kill-phase-on: NEVER
-                  abort-all-job: true
-                  git-revision: false
-
-
-
+    name: apex-builder-euphrates
+    builders:
+      - multijob:
+          name: Baremetal Deploy and Test Phase
+          condition: SUCCESSFUL
+          projects:
+            - name: 'apex-os-nosdn-nofeature-noha-baremetal-euphrates'
+              node-parameters: false
+              current-parameters: false
+              predefined-parameters: |
+                OPNFV_CLEAN=yes
+              kill-phase-on: NEVER
+              abort-all-job: true
+              git-revision: false
+            - name: 'apex-os-nosdn-nofeature-ha-baremetal-euphrates'
+              node-parameters: false
+              current-parameters: false
+              predefined-parameters: |
+                OPNFV_CLEAN=yes
+              kill-phase-on: NEVER
+              abort-all-job: true
+              git-revision: false
+            - name: 'apex-os-odl-nofeature-ha-baremetal-euphrates'
+              node-parameters: false
+              current-parameters: false
+              predefined-parameters: |
+                OPNFV_CLEAN=yes
+              kill-phase-on: NEVER
+              abort-all-job: true
+              git-revision: false
+            - name: 'apex-os-odl-nofeature-noha-baremetal-euphrates'
+              node-parameters: false
+              current-parameters: false
+              predefined-parameters: |
+                OPNFV_CLEAN=yes
+              kill-phase-on: NEVER
+              abort-all-job: true
+              git-revision: false
+            - name: 'apex-os-odl-bgpvpn-ha-baremetal-euphrates'
+              node-parameters: false
+              current-parameters: false
+              predefined-parameters: |
+                OPNFV_CLEAN=yes
+              kill-phase-on: NEVER
+              abort-all-job: true
+              git-revision: false
+            - name: 'apex-os-ovn-nofeature-noha-baremetal-euphrates'
+              node-parameters: false
+              current-parameters: false
+              predefined-parameters: |
+                OPNFV_CLEAN=yes
+              kill-phase-on: NEVER
+              abort-all-job: true
+              git-revision: false
+            - name: 'apex-os-nosdn-fdio-noha-baremetal-euphrates'
+              node-parameters: false
+              current-parameters: false
+              predefined-parameters: |
+                OPNFV_CLEAN=yes
+              kill-phase-on: NEVER
+              abort-all-job: true
+              git-revision: false
+            - name: 'apex-os-nosdn-fdio-ha-baremetal-euphrates'
+              node-parameters: false
+              current-parameters: false
+              predefined-parameters: |
+                OPNFV_CLEAN=yes
+              kill-phase-on: NEVER
+              abort-all-job: true
+              git-revision: false
+            - name: 'apex-os-odl-fdio-noha-baremetal-euphrates'
+              node-parameters: false
+              current-parameters: false
+              predefined-parameters: |
+                OPNFV_CLEAN=yes
+              kill-phase-on: NEVER
+              abort-all-job: true
+              git-revision: false
+            - name: 'apex-os-odl-fdio-ha-baremetal-euphrates'
+              node-parameters: false
+              current-parameters: false
+              predefined-parameters: |
+                OPNFV_CLEAN=yes
+              kill-phase-on: NEVER
+              abort-all-job: true
+              git-revision: false
+            - name: 'apex-os-nosdn-bar-ha-baremetal-euphrates'
+              node-parameters: false
+              current-parameters: false
+              predefined-parameters: |
+                OPNFV_CLEAN=yes
+              kill-phase-on: NEVER
+              abort-all-job: true
+              git-revision: false
+            - name: 'apex-os-nosdn-bar-noha-baremetal-euphrates'
+              node-parameters: false
+              current-parameters: false
+              predefined-parameters: |
+                OPNFV_CLEAN=yes
+              kill-phase-on: NEVER
+              abort-all-job: true
+              git-revision: false
+            - name: 'apex-os-nosdn-nofeature-ha-ipv6-baremetal-euphrates'
+              node-parameters: false
+              current-parameters: false
+              predefined-parameters: |
+                OPNFV_CLEAN=yes
+              kill-phase-on: NEVER
+              abort-all-job: true
+              git-revision: false
+            - name: 'apex-os-nosdn-ovs_dpdk-noha-baremetal-euphrates'
+              node-parameters: false
+              current-parameters: false
+              predefined-parameters: |
+                OPNFV_CLEAN=yes
+              kill-phase-on: NEVER
+              abort-all-job: true
+              git-revision: false
+            - name: 'apex-os-nosdn-ovs_dpdk-ha-baremetal-euphrates'
+              node-parameters: false
+              current-parameters: false
+              predefined-parameters: |
+                OPNFV_CLEAN=yes
+              kill-phase-on: NEVER
+              abort-all-job: true
+              git-revision: false
+            - name: 'apex-os-nosdn-kvm_ovs_dpdk-noha-baremetal-euphrates'
+              node-parameters: false
+              current-parameters: false
+              predefined-parameters: |
+                OPNFV_CLEAN=yes
+              kill-phase-on: NEVER
+              abort-all-job: true
+              git-revision: false
+            - name: 'apex-os-nosdn-kvm_ovs_dpdk-ha-baremetal-euphrates'
+              node-parameters: false
+              current-parameters: false
+              predefined-parameters: |
+                OPNFV_CLEAN=yes
+              kill-phase-on: NEVER
+              abort-all-job: true
+              git-revision: false
+            - name: 'apex-os-odl-sfc-noha-baremetal-euphrates'
+              node-parameters: false
+              current-parameters: false
+              predefined-parameters: |
+                OPNFV_CLEAN=yes
+              kill-phase-on: NEVER
+              abort-all-job: true
+              git-revision: false
+            - name: 'apex-os-odl-sfc-ha-baremetal-euphrates'
+              node-parameters: false
+              current-parameters: false
+              predefined-parameters: |
+                OPNFV_CLEAN=yes
+              kill-phase-on: NEVER
+              abort-all-job: true
+              git-revision: false
+            - name: 'apex-os-odl-fdio_dvr-noha-baremetal-euphrates'
+              node-parameters: false
+              current-parameters: false
+              predefined-parameters: |
+                OPNFV_CLEAN=yes
+              kill-phase-on: NEVER
+              abort-all-job: true
+              git-revision: false
+            - name: 'apex-os-odl-fdio_dvr-ha-baremetal-euphrates'
+              node-parameters: false
+              current-parameters: false
+              predefined-parameters: |
+                OPNFV_CLEAN=yes
+              kill-phase-on: NEVER
+              abort-all-job: true
+              git-revision: false
+            - name: 'apex-os-nosdn-calipso-noha-baremetal-euphrates'
+              node-parameters: false
+              current-parameters: false
+              predefined-parameters: |
+                OPNFV_CLEAN=yes
+              kill-phase-on: NEVER
+              abort-all-job: true
+              git-revision: false
 - builder:
     name: 'apex-unit-test'
     builders:
-        - shell:
-            !include-raw: ./apex-unit-test.sh
+      - shell:
+          !include-raw: ./apex-unit-test.sh
 
 - builder:
     name: 'apex-upload-artifact'
     builders:
-        - shell:
-            !include-raw: ./apex-upload-artifact.sh
+      - shell:
+          !include-raw: ./apex-upload-artifact.sh
 
 - builder:
     name: 'apex-download-artifact'
     builders:
-        - shell:
-            !include-raw: ./apex-download-artifact.sh
+      - shell:
+          !include-raw: ./apex-download-artifact.sh
 
 - builder:
     name: 'apex-deploy'
     builders:
-        - shell:
-            !include-raw: ./apex-deploy.sh
+      - shell:
+          !include-raw: ./apex-deploy.sh
 
 #######################
 # trigger macros
 - trigger:
     name: 'apex-master'
     triggers:
-        - timed: '0 3 1 1 7'
+      - timed: '0 3 1 1 7'
+
 - trigger:
     name: 'apex-euphrates'
     triggers:
-        - timed: '0 12 * * *'
+      - timed: '0 12 * * *'
+
 - trigger:
     name: 'apex-danube'
     triggers:
-        - timed: '0 3 1 1 7'
+      - timed: '0 3 1 1 7'
index 6bebf3b..d49b6ea 100644 (file)
@@ -1,65 +1,66 @@
+---
 - project:
     name: 'apex'
     project: 'apex'
     jobs:
-        - 'apex-verify-{stream}'
-        - 'apex-verify-gate-{stream}'
-        - 'apex-verify-unit-tests-{stream}'
-        - 'apex-runner-cperf-{stream}'
-        - 'apex-virtual-{stream}'
-        - 'apex-deploy-{platform}-{stream}'
-        - 'apex-daily-{stream}'
-        - 'apex-csit-promote-daily-{stream}'
-        - 'apex-fdio-promote-daily-{stream}'
-        - 'apex-{scenario}-baremetal-{scenario_stream}'
-        - 'apex-testsuite-{scenario}-baremetal-{scenario_stream}'
-        - 'apex-upload-snapshot'
-        - 'apex-create-snapshot'
-        - 'apex-flex-daily-os-nosdn-nofeature-ha-{stream}'
-        - 'apex-dovetail-daily-os-nosdn-nofeature-ha-baremetal-danube'
+      - 'apex-verify-{stream}'
+      - 'apex-verify-gate-{stream}'
+      - 'apex-verify-unit-tests-{stream}'
+      - 'apex-runner-cperf-{stream}'
+      - 'apex-virtual-{stream}'
+      - 'apex-deploy-{platform}-{stream}'
+      - 'apex-daily-{stream}'
+      - 'apex-csit-promote-daily-{stream}'
+      - 'apex-fdio-promote-daily-{stream}'
+      - 'apex-{scenario}-baremetal-{scenario_stream}'
+      - 'apex-testsuite-{scenario}-baremetal-{scenario_stream}'
+      - 'apex-upload-snapshot'
+      - 'apex-create-snapshot'
+      - 'apex-flex-daily-os-nosdn-nofeature-ha-{stream}'
+      - 'apex-dovetail-daily-os-nosdn-nofeature-ha-baremetal-danube'
     # stream:    branch with - in place of / (eg. stable-arno)
     # branch:    branch (eg. stable/arno)
     stream:
-        - master: &master
-            branch: 'master'
-            gs-pathname: ''
-            build-slave: 'apex-build-master'
-            virtual-slave: 'apex-virtual-master'
-            baremetal-slave: 'apex-baremetal-master'
-            verify-scenario: 'os-odl-nofeature-ha'
-            scenario_stream: 'master'
-            disable_daily: true
-        - euphrates: &euphrates
-            branch: 'stable/euphrates'
-            gs-pathname: '/euphrates'
-            build-slave: 'apex-build-master'
-            virtual-slave: 'apex-virtual-master'
-            baremetal-slave: 'apex-baremetal-master'
-            verify-scenario: 'os-odl-nofeature-ha'
-            scenario_stream: 'euphrates'
-            disable_daily: false
-        - danube: &danube
-            branch: 'stable/danube'
-            gs-pathname: '/danube'
-            build-slave: 'apex-build-danube'
-            virtual-slave: 'apex-virtual-danube'
-            baremetal-slave: 'apex-baremetal-danube'
-            verify-scenario: 'os-odl_l3-nofeature-ha'
-            scenario_stream: 'danube'
-            disabled: true
-            disable_daily: true
+      - master: &master
+          branch: 'master'
+          gs-pathname: ''
+          build-slave: 'apex-build-master'
+          virtual-slave: 'apex-virtual-master'
+          baremetal-slave: 'apex-baremetal-master'
+          verify-scenario: 'os-odl-nofeature-ha'
+          scenario_stream: 'master'
+          disable_daily: true
+      - euphrates: &euphrates
+          branch: 'stable/euphrates'
+          gs-pathname: '/euphrates'
+          build-slave: 'apex-build-master'
+          virtual-slave: 'apex-virtual-master'
+          baremetal-slave: 'apex-baremetal-master'
+          verify-scenario: 'os-odl-nofeature-ha'
+          scenario_stream: 'euphrates'
+          disable_daily: false
+      - danube: &danube
+          branch: 'stable/danube'
+          gs-pathname: '/danube'
+          build-slave: 'apex-build-danube'
+          virtual-slave: 'apex-virtual-danube'
+          baremetal-slave: 'apex-baremetal-danube'
+          verify-scenario: 'os-odl_l3-nofeature-ha'
+          scenario_stream: 'danube'
+          disabled: true
+          disable_daily: true
 
     scenario:
-        {%- for stream in scenarios %}
-        {%- for scenario in scenarios[stream] %}
-        - '{{scenario}}':
-              <<: *{{stream}}
-        {%- endfor %}
-        {%- endfor %}
+      {%- for stream in scenarios %}
+      {%- for scenario in scenarios[stream] %}
+      - '{{scenario}}':
+          <<: *{{stream}}
+      {%- endfor %}
+      {%- endfor %}
 
     platform:
-         - 'baremetal'
-         - 'virtual'
+      - 'baremetal'
+      - 'virtual'
 
 # Unit Test
 - job-template:
     concurrent: true
 
     parameters:
-        - apex-parameter:
-            gs-pathname: '{gs-pathname}'
-        - project-parameter:
-            project: '{project}'
-            branch: '{branch}'
+      - apex-parameter:
+          gs-pathname: '{gs-pathname}'
+      - project-parameter:
+          project: '{project}'
+          branch: '{branch}'
 
     scm:
-        - git-scm-gerrit
+      - git-scm-gerrit
 
     triggers:
-        - gerrit:
-            server-name: 'gerrit.opnfv.org'
-            trigger-on:
-                - patchset-created-event:
-                    exclude-drafts: 'false'
-                    exclude-trivial-rebase: 'false'
-                    exclude-no-code-change: 'true'
-                - 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: 'apex'
-                branches:
-                  - branch-compare-type: 'ANT'
-                    branch-pattern: '**/{branch}'
-                disable-strict-forbidden-file-verification: 'false'
-                file-paths:
-                  - compare-type: ANT
-                    pattern: 'apex/tests/**'
-                forbidden-file-paths:
-                  - compare-type: ANT
-                    pattern: '*'
-                  - compare-type: ANT
-                    pattern: 'apex/*'
-                  - compare-type: ANT
-                    pattern: 'build/**'
-                  - compare-type: ANT
-                    pattern: 'lib/**'
-                  - compare-type: ANT
-                    pattern: 'config/**'
-                  - compare-type: ANT
-                    pattern: 'apex/build/**'
-                  - compare-type: ANT
-                    pattern: 'apex/common/**'
-                  - compare-type: ANT
-                    pattern: 'apex/inventory/**'
-                  - compare-type: ANT
-                    pattern: 'apex/network/**'
-                  - compare-type: ANT
-                    pattern: 'apex/overcloud/**'
-                  - compare-type: ANT
-                    pattern: 'apex/settings/**'
-                  - compare-type: ANT
-                    pattern: 'apex/undercloud/**'
-                  - compare-type: ANT
-                    pattern: 'apex/virtual/**'
+      - gerrit:
+          server-name: 'gerrit.opnfv.org'
+          trigger-on:
+            - patchset-created-event:
+                exclude-drafts: 'false'
+                exclude-trivial-rebase: 'false'
+                exclude-no-code-change: 'true'
+            - 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: 'apex'
+              branches:
+                - branch-compare-type: 'ANT'
+                  branch-pattern: '**/{branch}'
+              disable-strict-forbidden-file-verification: 'false'
+              file-paths:
+                - compare-type: ANT
+                  pattern: 'apex/tests/**'
+              forbidden-file-paths:
+                - compare-type: ANT
+                  pattern: '*'
+                - compare-type: ANT
+                  pattern: 'apex/*'
+                - compare-type: ANT
+                  pattern: 'build/**'
+                - compare-type: ANT
+                  pattern: 'lib/**'
+                - compare-type: ANT
+                  pattern: 'config/**'
+                - compare-type: ANT
+                  pattern: 'apex/build/**'
+                - compare-type: ANT
+                  pattern: 'apex/common/**'
+                - compare-type: ANT
+                  pattern: 'apex/inventory/**'
+                - compare-type: ANT
+                  pattern: 'apex/network/**'
+                - compare-type: ANT
+                  pattern: 'apex/overcloud/**'
+                - compare-type: ANT
+                  pattern: 'apex/settings/**'
+                - compare-type: ANT
+                  pattern: 'apex/undercloud/**'
+                - compare-type: ANT
+                  pattern: 'apex/virtual/**'
+
     properties:
-        - logrotate-default
-        - throttle:
-            max-per-node: 1
-            max-total: 10
-            option: 'project'
+      - logrotate-default
+      - throttle:
+          max-per-node: 1
+          max-total: 10
+          option: 'project'
 
     builders:
-        - shell:
-            !include-raw-escape: ./apex-unit-test.sh
+      - shell:
+          !include-raw-escape: ./apex-unit-test.sh
 
 # Verify
 - job-template:
     project-type: 'multijob'
 
     parameters:
-        - apex-parameter:
-            gs-pathname: '{gs-pathname}/dev'
-        - project-parameter:
-            project: '{project}'
-            branch: '{branch}'
-        - string:
-            name: ARTIFACT_VERSION
-            default: dev
-            description: "Used for overriding the ARTIFACT_VERSION"
+      - apex-parameter:
+          gs-pathname: '{gs-pathname}/dev'
+      - project-parameter:
+          project: '{project}'
+          branch: '{branch}'
+      - string:
+          name: ARTIFACT_VERSION
+          default: dev
+          description: "Used for overriding the ARTIFACT_VERSION"
     scm:
-        - git-scm-gerrit
+      - git-scm-gerrit
 
     triggers:
-        - gerrit:
-            server-name: 'gerrit.opnfv.org'
-            trigger-on:
-                - patchset-created-event:
-                    exclude-drafts: 'false'
-                    exclude-trivial-rebase: 'false'
-                    exclude-no-code-change: 'true'
-                - 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: 'apex'
-                branches:
-                  - branch-compare-type: 'ANT'
-                    branch-pattern: '**/{branch}'
-                disable-strict-forbidden-file-verification: 'true'
-                file-paths:
-                  - compare-type: ANT
-                    pattern: '*'
-                  - compare-type: ANT
-                    pattern: 'apex/*'
-                  - compare-type: ANT
-                    pattern: 'build/**'
-                  - compare-type: ANT
-                    pattern: 'lib/**'
-                  - compare-type: ANT
-                    pattern: 'config/**'
-                  - compare-type: ANT
-                    pattern: 'apex/build/**'
-                  - compare-type: ANT
-                    pattern: 'apex/common/**'
-                  - compare-type: ANT
-                    pattern: 'apex/inventory/**'
-                  - compare-type: ANT
-                    pattern: 'apex/network/**'
-                  - compare-type: ANT
-                    pattern: 'apex/overcloud/**'
-                  - compare-type: ANT
-                    pattern: 'apex/settings/**'
-                  - compare-type: ANT
-                    pattern: 'apex/undercloud/**'
-                  - compare-type: ANT
-                    pattern: 'apex/virtual/**'
-                forbidden-file-paths:
-                  - compare-type: ANT
-                    pattern: 'apex/tests/**'
-                  - compare-type: ANT
-                    pattern: 'docs/**'
+      - gerrit:
+          server-name: 'gerrit.opnfv.org'
+          trigger-on:
+            - patchset-created-event:
+                exclude-drafts: 'false'
+                exclude-trivial-rebase: 'false'
+                exclude-no-code-change: 'true'
+            - 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: 'apex'
+              branches:
+                - branch-compare-type: 'ANT'
+                  branch-pattern: '**/{branch}'
+              disable-strict-forbidden-file-verification: 'true'
+              file-paths:
+                - compare-type: ANT
+                  pattern: '*'
+                - compare-type: ANT
+                  pattern: 'apex/*'
+                - compare-type: ANT
+                  pattern: 'build/**'
+                - compare-type: ANT
+                  pattern: 'lib/**'
+                - compare-type: ANT
+                  pattern: 'config/**'
+                - compare-type: ANT
+                  pattern: 'apex/build/**'
+                - compare-type: ANT
+                  pattern: 'apex/common/**'
+                - compare-type: ANT
+                  pattern: 'apex/inventory/**'
+                - compare-type: ANT
+                  pattern: 'apex/network/**'
+                - compare-type: ANT
+                  pattern: 'apex/overcloud/**'
+                - compare-type: ANT
+                  pattern: 'apex/settings/**'
+                - compare-type: ANT
+                  pattern: 'apex/undercloud/**'
+                - compare-type: ANT
+                  pattern: 'apex/virtual/**'
+              forbidden-file-paths:
+                - compare-type: ANT
+                  pattern: 'apex/tests/**'
+                - compare-type: ANT
+                  pattern: 'docs/**'
 
     properties:
-        - logrotate-default
-        - throttle:
-            max-per-node: 3
-            max-total: 10
-            option: 'project'
+      - logrotate-default
+      - throttle:
+          max-per-node: 3
+          max-total: 10
+          option: 'project'
 
     builders:
-        - 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: |
-                    ARTIFACT_VERSION=$ARTIFACT_VERSION
-                    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-virtual-{stream}'
-                  current-parameters: false
-                  predefined-parameters: |
-                    ARTIFACT_VERSION=$ARTIFACT_VERSION
-                    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: true
-                  kill-phase-on: FAILURE
-                  abort-all-job: true
-                  git-revision: true
+      - 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: |
+                ARTIFACT_VERSION=$ARTIFACT_VERSION
+                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-virtual-{stream}'
+              current-parameters: false
+              predefined-parameters: |
+                ARTIFACT_VERSION=$ARTIFACT_VERSION
+                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: true
+              kill-phase-on: FAILURE
+              abort-all-job: true
+              git-revision: true
 
 # Verify Scenario Gate
 - job-template:
     project-type: 'multijob'
 
     parameters:
-        - apex-parameter:
-            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."
-        - string:
-            name: ARTIFACT_VERSION
-            default: dev
-            description: "Used for overriding the ARTIFACT_VERSION"
+      - apex-parameter:
+          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."
+      - string:
+          name: ARTIFACT_VERSION
+          default: dev
+          description: "Used for overriding the ARTIFACT_VERSION"
 
     scm:
-        - git-scm-gerrit
+      - git-scm-gerrit
 
     triggers:
-        - gerrit:
-            server-name: 'gerrit.opnfv.org'
-            trigger-on:
-                - comment-added-contains-event:
-                    comment-contains-value: '^Patch Set [0-9]+: Code-Review\+2.*start-gate-scenario:.*'
-            projects:
-              - project-compare-type: 'ANT'
-                project-pattern: 'apex'
-                branches:
-                  - branch-compare-type: 'ANT'
-                    branch-pattern: '**/{branch}'
-                file-paths:
-                  - compare-type: ANT
-                    pattern: 'ci/**'
-                  - compare-type: ANT
-                    pattern: 'build/**'
-                  - compare-type: ANT
-                    pattern: 'lib/**'
-                  - compare-type: ANT
-                    pattern: 'config/**'
-                  - compare-type: ANT
-                    pattern: 'apex/**'
+      - gerrit:
+          server-name: 'gerrit.opnfv.org'
+          trigger-on:
+            - comment-added-contains-event:
+                comment-contains-value: '^Patch Set [0-9]+: Code-Review\+2.*start-gate-scenario:.*'
+          projects:
+            - project-compare-type: 'ANT'
+              project-pattern: 'apex'
+              branches:
+                - branch-compare-type: 'ANT'
+                  branch-pattern: '**/{branch}'
+              file-paths:
+                - compare-type: ANT
+                  pattern: 'ci/**'
+                - compare-type: ANT
+                  pattern: 'build/**'
+                - compare-type: ANT
+                  pattern: 'lib/**'
+                - compare-type: ANT
+                  pattern: 'config/**'
+                - compare-type: ANT
+                  pattern: 'apex/**'
 
     properties:
-        - logrotate-default
-        - build-blocker:
-            use-build-blocker: true
-            block-level: 'NODE'
-            blocking-jobs:
-                - 'apex-verify.*'
-                - 'apex-virtual.*'
-        - throttle:
-            max-per-node: 1
-            max-total: 10
-            option: 'project'
+      - logrotate-default
+      - build-blocker:
+          use-build-blocker: true
+          block-level: 'NODE'
+          blocking-jobs:
+            - 'apex-verify.*'
+            - 'apex-virtual.*'
+      - throttle:
+          max-per-node: 1
+          max-total: 10
+          option: 'project'
 
     builders:
-        - multijob:
-            name: deploy-virtual
-            condition: SUCCESSFUL
-            projects:
-                - name: 'apex-deploy-virtual-{stream}'
-                  current-parameters: false
-                  predefined-parameters: |
-                    ARTIFACT_VERSION=$ARTIFACT_VERSION
-                    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
-                    GERRIT_EVENT_COMMENT_TEXT=$GERRIT_EVENT_COMMENT_TEXT
-                  node-parameters: true
-                  kill-phase-on: FAILURE
-                  abort-all-job: true
-                  git-revision: true
-        - shell: |
-            echo DEPLOY_SCENARIO=$(echo $GERRIT_EVENT_COMMENT_TEXT | grep start-gate-scenario | grep -Eo 'os-.*') > detected_scenario
-        - inject:
-           properties-file: detected_scenario
-        - multijob:
-            name: functest-smoke
-            condition: SUCCESSFUL
-            projects:
-              - name: 'functest-apex-virtual-suite-{stream}'
-                current-parameters: false
-                predefined-parameters: |
-                  DEPLOY_SCENARIO=$DEPLOY_SCENARIO
-                  FUNCTEST_MODE=tier
-                  FUNCTEST_TIER=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: true
-                kill-phase-on: NEVER
-                abort-all-job: true
-                git-revision: false
+      - multijob:
+          name: deploy-virtual
+          condition: SUCCESSFUL
+          projects:
+            - name: 'apex-deploy-virtual-{stream}'
+              current-parameters: false
+              predefined-parameters: |
+                ARTIFACT_VERSION=$ARTIFACT_VERSION
+                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
+                GERRIT_EVENT_COMMENT_TEXT=$GERRIT_EVENT_COMMENT_TEXT
+              node-parameters: true
+              kill-phase-on: FAILURE
+              abort-all-job: true
+              git-revision: true
+      # yamllint disable rule:line-length
+      - shell: |
+          echo DEPLOY_SCENARIO=$(echo $GERRIT_EVENT_COMMENT_TEXT | grep start-gate-scenario | grep -Eo 'os-.*') > detected_scenario
+      # yamllint enable rule:line-length
+      - inject:
+          properties-file: detected_scenario
+      - multijob:
+          name: functest-smoke
+          condition: SUCCESSFUL
+          projects:
+            - name: 'functest-apex-virtual-suite-{stream}'
+              current-parameters: false
+              predefined-parameters: |
+                DEPLOY_SCENARIO=$DEPLOY_SCENARIO
+                FUNCTEST_MODE=tier
+                FUNCTEST_TIER=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: true
+              kill-phase-on: NEVER
+              abort-all-job: true
+              git-revision: false
 
 - job-template:
     name: 'apex-runner-cperf-{stream}'
     disabled: false
 
     parameters:
-        - apex-parameter:
-            gs-pathname: '{gs-pathname}'
-        - 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}'
+      - 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
+      - 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'
+      - 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:
-        - 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: |
-                    GERRIT_BRANCH=$GERRIT_BRANCH
-                    GERRIT_REFSPEC=
-                    OPNFV_CLEAN=yes
-                    DEPLOY_SCENARIO={verify-scenario}
-                  kill-phase-on: FAILURE
-                  abort-all-job: true
-                  git-revision: false
-        - multijob:
-            name: CPERF
-            condition: SUCCESSFUL
-            projects:
-                - name: 'cperf-apex-intel-pod2-daily-master'
-                  node-parameters: true
-                  current-parameters: false
-                  predefined-parameters:
-                    DEPLOY_SCENARIO={verify-scenario}
-                  kill-phase-on: NEVER
-                  abort-all-job: false
-                  git-revision: false
+      - 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: |
+                GERRIT_BRANCH=$GERRIT_BRANCH
+                GERRIT_REFSPEC=
+                OPNFV_CLEAN=yes
+                DEPLOY_SCENARIO={verify-scenario}
+              kill-phase-on: FAILURE
+              abort-all-job: true
+              git-revision: false
+      - multijob:
+          name: CPERF
+          condition: SUCCESSFUL
+          projects:
+            - name: 'cperf-apex-intel-pod2-daily-master'
+              node-parameters: true
+              current-parameters: false
+              predefined-parameters:
+                DEPLOY_SCENARIO={verify-scenario}
+              kill-phase-on: NEVER
+              abort-all-job: false
+              git-revision: false
 
 # Deploy job
 - job-template:
     disabled: false
     quiet-period: 30
     scm:
-        - git-scm-gerrit
+      - git-scm-gerrit
 
     wrappers:
-        - timeout:
-            timeout: 140
-            fail: true
+      - timeout:
+          timeout: 140
+          fail: true
 
     parameters:
-        - '{project}-{platform}-{stream}-defaults'
-        - project-parameter:
-            project: '{project}'
-            branch: '{branch}'
-        - apex-parameter:
-            gs-pathname: '{gs-pathname}'
-        - string:
-            name: DEPLOY_SCENARIO
-            default: '{verify-scenario}'
-            description: "Scenario to deploy with."
-        - string:
-            name: OPNFV_CLEAN
-            default: 'no'
-            description: "Use yes in lower case to invoke clean. Indicates if the deploy environment should be cleaned before deployment"
-
+      - '{project}-{platform}-{stream}-defaults'
+      - project-parameter:
+          project: '{project}'
+          branch: '{branch}'
+      - apex-parameter:
+          gs-pathname: '{gs-pathname}'
+      - string:
+          name: DEPLOY_SCENARIO
+          default: '{verify-scenario}'
+          description: "Scenario to deploy with."
+      # yamllint disable rule:line-length
+      - string:
+          name: OPNFV_CLEAN
+          default: 'no'
+          description: "Use yes in lower case to invoke clean. Indicates if the deploy environment should be cleaned before deployment"
+
+    # yamllint enable rule:line-length
     properties:
-        - logrotate-default
-        - build-blocker:
-            use-build-blocker: true
-            block-level: 'NODE'
-            blocking-jobs:
-                - 'apex-deploy.*'
-                - 'functest.*'
-                - 'yardstick.*'
-                - 'dovetail.*'
-                - 'storperf.*'
-        - throttle:
-            max-per-node: 1
-            max-total: 10
-            option: 'project'
+      - logrotate-default
+      - build-blocker:
+          use-build-blocker: true
+          block-level: 'NODE'
+          blocking-jobs:
+            - 'apex-deploy.*'
+            - 'functest.*'
+            - 'yardstick.*'
+            - 'dovetail.*'
+            - 'storperf.*'
+      - throttle:
+          max-per-node: 1
+          max-total: 10
+          option: 'project'
 
     builders:
-        - description-setter:
-            description: "Deployed on $NODE_NAME - Scenario: $DEPLOY_SCENARIO"
-        - 'apex-download-artifact'
-        - 'apex-deploy'
-        - 'clean-workspace'
+      - description-setter:
+          description: "Deployed on $NODE_NAME - Scenario: $DEPLOY_SCENARIO"
+      - 'apex-download-artifact'
+      - 'apex-deploy'
+      - 'clean-workspace'
 
 
 # Virtual Deploy and Test
     disabled: false
 
     scm:
-        - git-scm-gerrit
+      - git-scm-gerrit
 
     parameters:
-        - '{project}-defaults'
-        - '{project}-virtual-{stream}-defaults'
-        - project-parameter:
-            project: '{project}'
-            branch: '{branch}'
-        - apex-parameter:
-            gs-pathname: '{gs-pathname}'
-        - string:
-            name: DEPLOY_SCENARIO
-            default: '{verify-scenario}'
-            description: "Scenario to deploy with."
-        - string:
-            name: ARTIFACT_VERSION
-            default: dev
-            description: "Used for overriding the ARTIFACT_VERSION"
+      - '{project}-defaults'
+      - '{project}-virtual-{stream}-defaults'
+      - project-parameter:
+          project: '{project}'
+          branch: '{branch}'
+      - apex-parameter:
+          gs-pathname: '{gs-pathname}'
+      - string:
+          name: DEPLOY_SCENARIO
+          default: '{verify-scenario}'
+          description: "Scenario to deploy with."
+      - string:
+          name: ARTIFACT_VERSION
+          default: dev
+          description: "Used for overriding the ARTIFACT_VERSION"
+
     properties:
-        - logrotate-default
-        - build-blocker:
-            use-build-blocker: true
-            block-level: 'NODE'
-            blocking-jobs:
-                - 'apex-runner.*'
-                - 'apex-.*-promote.*'
-                - 'apex-run.*'
-                - 'apex-virtual-.*'
-                - 'apex-verify-gate-.*'
-        - throttle:
-            max-per-node: 1
-            max-total: 10
-            option: 'project'
+      - logrotate-default
+      - build-blocker:
+          use-build-blocker: true
+          block-level: 'NODE'
+          blocking-jobs:
+            - 'apex-runner.*'
+            - 'apex-.*-promote.*'
+            - 'apex-run.*'
+            - 'apex-virtual-.*'
+            - 'apex-verify-gate-.*'
+      - throttle:
+          max-per-node: 1
+          max-total: 10
+          option: 'project'
+
     builders:
-        - description-setter:
-            description: "Deployed on $NODE_NAME - Scenario: $DEPLOY_SCENARIO"
-        - multijob:
-            name: deploy-virtual
-            condition: SUCCESSFUL
-            projects:
-                - name: 'apex-deploy-virtual-{stream}'
-                  current-parameters: false
-                  predefined-parameters: |
-                    ARTIFACT_VERSION=$ARTIFACT_VERSION
-                    DEPLOY_SCENARIO=$DEPLOY_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: true
-                  kill-phase-on: FAILURE
-                  abort-all-job: true
-                  git-revision: true
-        - multijob:
-            name: functest-smoke
-            condition: SUCCESSFUL
-            projects:
-              - name: 'functest-apex-virtual-suite-{stream}'
-                current-parameters: false
-                predefined-parameters: |
-                  DEPLOY_SCENARIO=$DEPLOY_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: true
-                kill-phase-on: NEVER
-                abort-all-job: true
-                git-revision: false
+      - description-setter:
+          description: "Deployed on $NODE_NAME - Scenario: $DEPLOY_SCENARIO"
+      - multijob:
+          name: deploy-virtual
+          condition: SUCCESSFUL
+          projects:
+            - name: 'apex-deploy-virtual-{stream}'
+              current-parameters: false
+              predefined-parameters: |
+                ARTIFACT_VERSION=$ARTIFACT_VERSION
+                DEPLOY_SCENARIO=$DEPLOY_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: true
+              kill-phase-on: FAILURE
+              abort-all-job: true
+              git-revision: true
+      - multijob:
+          name: functest-smoke
+          condition: SUCCESSFUL
+          projects:
+            - name: 'functest-apex-virtual-suite-{stream}'
+              current-parameters: false
+              predefined-parameters: |
+                DEPLOY_SCENARIO=$DEPLOY_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: true
+              kill-phase-on: NEVER
+              abort-all-job: true
+              git-revision: false
 
 # Baremetal Deploy and Test
 - job-template:
     disabled: false
 
     scm:
-        - git-scm
+      - git-scm
 
     parameters:
-        - '{project}-defaults'
-        - '{project}-baremetal-{scenario_stream}-defaults'
-        - project-parameter:
-            project: '{project}'
-            branch: '{branch}'
-        - apex-parameter:
-            gs-pathname: '{gs-pathname}'
-        - string:
-            name: DEPLOY_SCENARIO
-            default: '{scenario}'
-            description: "Scenario to deploy with."
+      - '{project}-defaults'
+      - '{project}-baremetal-{scenario_stream}-defaults'
+      - project-parameter:
+          project: '{project}'
+          branch: '{branch}'
+      - apex-parameter:
+          gs-pathname: '{gs-pathname}'
+      - string:
+          name: DEPLOY_SCENARIO
+          default: '{scenario}'
+          description: "Scenario to deploy with."
+
     properties:
-        - logrotate-default
-        - build-blocker:
-            use-build-blocker: true
-            block-level: 'NODE'
-            blocking-jobs:
-                - 'apex-verify.*'
-                - 'apex-runner.*'
-                - 'apex-.*-promote.*'
-                - 'apex-run.*'
-                - 'apex-.+-baremetal-.+'
-        - throttle:
-            max-per-node: 1
-            max-total: 10
-            option: 'project'
+      - logrotate-default
+      - build-blocker:
+          use-build-blocker: true
+          block-level: 'NODE'
+          blocking-jobs:
+            - 'apex-verify.*'
+            - 'apex-runner.*'
+            - 'apex-.*-promote.*'
+            - 'apex-run.*'
+            - 'apex-.+-baremetal-.+'
+      - throttle:
+          max-per-node: 1
+          max-total: 10
+          option: 'project'
+
     builders:
-        - description-setter:
-            description: "Deployed on $NODE_NAME - Scenario: $DEPLOY_SCENARIO"
-        - multijob:
-            name: 'Baremetal Deploy'
-            condition: SUCCESSFUL
-            projects:
-                - name: 'apex-deploy-baremetal-{scenario_stream}'
-                  node-parameters: true
-                  current-parameters: true
-                  predefined-parameters: |
-                    OPNFV_CLEAN=yes
-                    GERRIT_BRANCH=$GERRIT_BRANCH
-                    GERRIT_REFSPEC=
-                    DEPLOY_SCENARIO=$DEPLOY_SCENARIO
-                  kill-phase-on: FAILURE
-                  abort-all-job: true
-                  git-revision: false
-        - multijob:
-            name: 'OPNFV Test Suite'
-            projects:
-                - name: 'apex-testsuite-{scenario}-baremetal-{scenario_stream}'
-                  node-parameters: true
-                  current-parameters: false
-                  predefined-parameters:
-                    DEPLOY_SCENARIO=$DEPLOY_SCENARIO
-                  kill-phase-on: NEVER
-                  abort-all-job: true
-                  git-revision: false
+      - description-setter:
+          description: "Deployed on $NODE_NAME - Scenario: $DEPLOY_SCENARIO"
+      - multijob:
+          name: 'Baremetal Deploy'
+          condition: SUCCESSFUL
+          projects:
+            - name: 'apex-deploy-baremetal-{scenario_stream}'
+              node-parameters: true
+              current-parameters: true
+              predefined-parameters: |
+                OPNFV_CLEAN=yes
+                GERRIT_BRANCH=$GERRIT_BRANCH
+                GERRIT_REFSPEC=
+                DEPLOY_SCENARIO=$DEPLOY_SCENARIO
+              kill-phase-on: FAILURE
+              abort-all-job: true
+              git-revision: false
+      - multijob:
+          name: 'OPNFV Test Suite'
+          projects:
+            - name: 'apex-testsuite-{scenario}-baremetal-{scenario_stream}'
+              node-parameters: true
+              current-parameters: false
+              predefined-parameters:
+                DEPLOY_SCENARIO=$DEPLOY_SCENARIO
+              kill-phase-on: NEVER
+              abort-all-job: true
+              git-revision: false
 
     publishers:
-        - groovy-postbuild:
-            script:
-                !include-raw-escape: ./update-build-result.groovy
+      - groovy-postbuild:
+          script:
+            !include-raw-escape: ./update-build-result.groovy
 
 # Baremetal test job
 - job-template:
     disabled: false
 
     parameters:
-        - '{project}-defaults'
-        - '{project}-baremetal-{scenario_stream}-defaults'
-        - project-parameter:
-            project: '{project}'
-            branch: '{branch}'
-        - apex-parameter:
-            gs-pathname: '{gs-pathname}'
-        - string:
-            name: DEPLOY_SCENARIO
-            default: '{scenario}'
-            description: "Scenario to deploy with."
+      - '{project}-defaults'
+      - '{project}-baremetal-{scenario_stream}-defaults'
+      - project-parameter:
+          project: '{project}'
+          branch: '{branch}'
+      - apex-parameter:
+          gs-pathname: '{gs-pathname}'
+      - string:
+          name: DEPLOY_SCENARIO
+          default: '{scenario}'
+          description: "Scenario to deploy with."
+
     properties:
-        - logrotate-default
-        - build-blocker:
-            use-build-blocker: true
-            block-level: 'NODE'
-            blocking-jobs:
-                - 'apex-verify.*'
-                - 'apex-runner.*'
-                - 'apex-.*-promote.*'
-                - 'apex-run.*'
-                - 'apex-testsuite-.+-baremetal-.+'
-        - throttle:
-            max-per-node: 1
-            max-total: 10
-            option: 'project'
+      - logrotate-default
+      - build-blocker:
+          use-build-blocker: true
+          block-level: 'NODE'
+          blocking-jobs:
+            - 'apex-verify.*'
+            - 'apex-runner.*'
+            - 'apex-.*-promote.*'
+            - 'apex-run.*'
+            - 'apex-testsuite-.+-baremetal-.+'
+      - throttle:
+          max-per-node: 1
+          max-total: 10
+          option: 'project'
+
     builders:
-        - description-setter:
-            description: "Testing on $NODE_NAME - Scenario: $DEPLOY_SCENARIO"
-        - multijob:
-            name: Functest
-            condition: ALWAYS
-            projects:
-                - name: 'functest-apex-baremetal-daily-{scenario_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-{scenario_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: Dovetail
-            condition: ALWAYS
-            projects:
-                - name: 'dovetail-apex-baremetal-proposed_tests-{scenario_stream}'
-                  node-parameters: true
-                  current-parameters: false
-                  predefined-parameters:
-                    DEPLOY_SCENARIO=$DEPLOY_SCENARIO
-                  kill-phase-on: NEVER
-                  enable-condition: "def m = '$DEPLOY_SCENARIO' ==~ /os-(nosdn-nofeature|nosdn-kvm|odl_l3-fdio)-ha/"
-                  abort-all-job: false
-                  git-revision: false
-        - multijob:
-            name: StorPerf
-            condition: ALWAYS
-            projects:
-                - name: 'storperf-apex-baremetal-daily-{scenario_stream}'
-                  node-parameters: true
-                  current-parameters: false
-                  predefined-parameters:
-                    DEPLOY_SCENARIO=$DEPLOY_SCENARIO
-                  enable-condition: "def m = '$DEPLOY_SCENARIO' ==~ /os-nosdn-nofeature-ha/"
-                  kill-phase-on: NEVER
-                  abort-all-job: false
-                  git-revision: false
+      - description-setter:
+          description: "Testing on $NODE_NAME - Scenario: $DEPLOY_SCENARIO"
+      - multijob:
+          name: Functest
+          condition: ALWAYS
+          projects:
+            - name: 'functest-apex-baremetal-daily-{scenario_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-{scenario_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: Dovetail
+          condition: ALWAYS
+          projects:
+            - name: 'dovetail-apex-baremetal-proposed_tests-{scenario_stream}'
+              node-parameters: true
+              current-parameters: false
+              predefined-parameters:
+                DEPLOY_SCENARIO=$DEPLOY_SCENARIO
+              kill-phase-on: NEVER
+              enable-condition: "def m = '$DEPLOY_SCENARIO' ==~ /os-(nosdn-nofeature|nosdn-kvm|odl_l3-fdio)-ha/"
+              abort-all-job: false
+              git-revision: false
+      - multijob:
+          name: StorPerf
+          condition: ALWAYS
+          projects:
+            - name: 'storperf-apex-baremetal-daily-{scenario_stream}'
+              node-parameters: true
+              current-parameters: false
+              predefined-parameters:
+                DEPLOY_SCENARIO=$DEPLOY_SCENARIO
+              enable-condition: "def m = '$DEPLOY_SCENARIO' ==~ /os-nosdn-nofeature-ha/"
+              kill-phase-on: NEVER
+              abort-all-job: false
+              git-revision: false
 # Build status is always success due conditional plugin prefetching
 # build status before multijob phases execute
 #        - conditional-step:
     disabled: '{obj:disable_daily}'
 
     scm:
-        - git-scm
+      - git-scm
 
     parameters:
-        - '{project}-defaults'
-        - '{project}-baremetal-{stream}-defaults'
-        - project-parameter:
-            project: '{project}'
-            branch: '{branch}'
-        - apex-parameter:
-            gs-pathname: '{gs-pathname}'
+      - '{project}-defaults'
+      - '{project}-baremetal-{stream}-defaults'
+      - project-parameter:
+          project: '{project}'
+          branch: '{branch}'
+      - apex-parameter:
+          gs-pathname: '{gs-pathname}'
 
     properties:
-        - logrotate-default
-        - build-blocker:
-            use-build-blocker: true
-            block-level: 'NODE'
-            blocking-jobs:
-                - 'apex-daily.*'
+      - logrotate-default
+      - build-blocker:
+          use-build-blocker: true
+          block-level: 'NODE'
+          blocking-jobs:
+            - 'apex-daily.*'
 
     triggers:
-        - 'apex-{stream}'
+      - 'apex-{stream}'
 
     builders:
-        - multijob:
-            name: build
-            condition: SUCCESSFUL
-            projects:
-                - name: 'apex-build-{stream}'
-                  current-parameters: false
-                  predefined-parameters: |
-                    GERRIT_BRANCH=$GERRIT_BRANCH
-                    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-{stream}'
-                  current-parameters: false
-                  predefined-parameters: |
-                    BUILD_DIRECTORY=$WORKSPACE/../apex-build-{stream}/.build
-                    GERRIT_BRANCH=$GERRIT_BRANCH
-                    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
-        - apex-builder-{stream}
+      - multijob:
+          name: build
+          condition: SUCCESSFUL
+          projects:
+            - name: 'apex-build-{stream}'
+              current-parameters: false
+              predefined-parameters: |
+                GERRIT_BRANCH=$GERRIT_BRANCH
+                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-{stream}'
+              current-parameters: false
+              predefined-parameters: |
+                BUILD_DIRECTORY=$WORKSPACE/../apex-build-{stream}/.build
+                GERRIT_BRANCH=$GERRIT_BRANCH
+                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
+      - apex-builder-{stream}
 
 # snapshot create
 - job-template:
     disabled: false
 
     builders:
-        - shell:
-            !include-raw-escape: ./apex-snapshot-create.sh
+      - shell:
+          !include-raw-escape: ./apex-snapshot-create.sh
 
 # snapshot upload
 - job-template:
     disabled: false
 
     builders:
-        - inject:
-           properties-content: ARTIFACT_TYPE=snapshot
-        - 'apex-upload-artifact'
+      - inject:
+          properties-content: ARTIFACT_TYPE=snapshot
+      - 'apex-upload-artifact'
 
 # CSIT promote
 - job-template:
     disabled: false
 
     scm:
-        - git-scm
+      - git-scm
 
     parameters:
-        - project-parameter:
-            project: '{project}'
-            branch: '{branch}'
-        - apex-parameter:
-            gs-pathname: '{gs-pathname}'
+      - project-parameter:
+          project: '{project}'
+          branch: '{branch}'
+      - apex-parameter:
+          gs-pathname: '{gs-pathname}'
 
     properties:
-        - build-blocker:
-            use-build-blocker: true
-            block-level: 'NODE'
-            blocking-jobs:
-                - 'apex-verify.*'
-                - 'apex-deploy.*'
-                - 'apex-runner.*'
-                - 'apex-daily.*'
+      - build-blocker:
+          use-build-blocker: true
+          block-level: 'NODE'
+          blocking-jobs:
+            - 'apex-verify.*'
+            - 'apex-deploy.*'
+            - 'apex-runner.*'
+            - 'apex-daily.*'
 
     triggers:
-        - timed: '0 12 * * 0'
+      - timed: '0 12 * * 0'
 
     builders:
-        - 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
-                    PROMOTE=True
-                  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: false
-                predefined-parameters: |
-                  SNAP_TYPE=csit
-                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: false
-                predefined-parameters: |
-                  SNAP_TYPE=csit
-                node-parameters: true
-                kill-phase-on: FAILURE
-                abort-all-job: true
-                git-revision: false
+      - 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
+                PROMOTE=True
+              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: false
+              predefined-parameters: |
+                SNAP_TYPE=csit
+              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: false
+              predefined-parameters: |
+                SNAP_TYPE=csit
+              node-parameters: true
+              kill-phase-on: FAILURE
+              abort-all-job: true
+              git-revision: false
 
 # FDIO promote
 - job-template:
     disabled: false
 
     scm:
-        - git-scm
+      - git-scm
 
     parameters:
-        - project-parameter:
-            project: '{project}'
-            branch: '{branch}'
-        - apex-parameter:
-            gs-pathname: '{gs-pathname}'
+      - project-parameter:
+          project: '{project}'
+          branch: '{branch}'
+      - apex-parameter:
+          gs-pathname: '{gs-pathname}'
 
     properties:
-        - build-blocker:
-            use-build-blocker: true
-            block-level: 'NODE'
-            blocking-jobs:
-                - 'apex-verify.*'
-                - 'apex-deploy.*'
-                - 'apex-runner.*'
-                - 'apex-daily.*'
+      - build-blocker:
+          use-build-blocker: true
+          block-level: 'NODE'
+          blocking-jobs:
+            - 'apex-verify.*'
+            - 'apex-deploy.*'
+            - 'apex-runner.*'
+            - 'apex-daily.*'
 
     builders:
-        - 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_netvirt-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
-                    PROMOTE=True
-                  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: false
-                predefined-parameters: |
-                  SNAP_TYPE=fdio
-                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: false
-                predefined-parameters: |
-                  SNAP_TYPE=fdio
-                node-parameters: true
-                kill-phase-on: FAILURE
-                abort-all-job: true
-                git-revision: false
+      - 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_netvirt-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
+                PROMOTE=True
+              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: false
+              predefined-parameters: |
+                SNAP_TYPE=fdio
+              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: false
+              predefined-parameters: |
+                SNAP_TYPE=fdio
+              node-parameters: true
+              kill-phase-on: FAILURE
+              abort-all-job: true
+              git-revision: false
 
 # Flex job
 - job-template:
     node: 'flex-pod2'
 
     scm:
-        - git-scm
+      - git-scm
+
     triggers:
-        - 'apex-{stream}'
+      - 'apex-{stream}'
+
     parameters:
-        - '{project}-defaults'
-        - project-parameter:
-            project: '{project}'
-            branch: '{branch}'
-        - apex-parameter:
-            gs-pathname: '{gs-pathname}'
-        - string:
-            name: DEPLOY_SCENARIO
-            default: 'os-nosdn-nofeature-ha'
-            description: "Scenario to deploy with."
-        - string:
-            name: GIT_BASE
-            default: https://gerrit.opnfv.org/gerrit/$PROJECT
-            description: 'Git URL to use on this Jenkins Slave'
-        - string:
-            name: SSH_KEY
-            default: /root/.ssh/id_rsa
-            description: 'SSH key to use for Apex'
+      - '{project}-defaults'
+      - project-parameter:
+          project: '{project}'
+          branch: '{branch}'
+      - apex-parameter:
+          gs-pathname: '{gs-pathname}'
+      - string:
+          name: DEPLOY_SCENARIO
+          default: 'os-nosdn-nofeature-ha'
+          description: "Scenario to deploy with."
+      - string:
+          name: GIT_BASE
+          default: https://gerrit.opnfv.org/gerrit/$PROJECT
+          description: 'Git URL to use on this Jenkins Slave'
+      - string:
+          name: SSH_KEY
+          default: /root/.ssh/id_rsa
+          description: 'SSH key to use for Apex'
+
     properties:
-        - logrotate-default
-        - build-blocker:
-            use-build-blocker: true
-            block-level: 'NODE'
-            blocking-jobs:
-                - 'apex-verify.*'
-                - 'apex-runner.*'
-                - 'apex-.*-promote.*'
-                - 'apex-run.*'
-                - 'apex-.+-baremetal-.+'
-        - throttle:
-            max-per-node: 1
-            max-total: 10
-            option: 'project'
+      - logrotate-default
+      - build-blocker:
+          use-build-blocker: true
+          block-level: 'NODE'
+          blocking-jobs:
+            - 'apex-verify.*'
+            - 'apex-runner.*'
+            - 'apex-.*-promote.*'
+            - 'apex-run.*'
+            - 'apex-.+-baremetal-.+'
+      - throttle:
+          max-per-node: 1
+          max-total: 10
+          option: 'project'
+
     builders:
-        - description-setter:
-            description: "Deployed on $NODE_NAME - Scenario: $DEPLOY_SCENARIO"
-        - multijob:
-            name: 'Baremetal Deploy'
-            condition: SUCCESSFUL
-            projects:
-                - name: 'apex-deploy-baremetal-{stream}'
-                  node-parameters: true
-                  current-parameters: true
-                  predefined-parameters: |
-                    OPNFV_CLEAN=yes
-                    GERRIT_BRANCH=$GERRIT_BRANCH
-                    GERRIT_REFSPEC=
-                    DEPLOY_SCENARIO=$DEPLOY_SCENARIO
-                  kill-phase-on: FAILURE
-                  abort-all-job: true
-                  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
+      - description-setter:
+          description: "Deployed on $NODE_NAME - Scenario: $DEPLOY_SCENARIO"
+      - multijob:
+          name: 'Baremetal Deploy'
+          condition: SUCCESSFUL
+          projects:
+            - name: 'apex-deploy-baremetal-{stream}'
+              node-parameters: true
+              current-parameters: true
+              predefined-parameters: |
+                OPNFV_CLEAN=yes
+                GERRIT_BRANCH=$GERRIT_BRANCH
+                GERRIT_REFSPEC=
+                DEPLOY_SCENARIO=$DEPLOY_SCENARIO
+              kill-phase-on: FAILURE
+              abort-all-job: true
+              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
 
 # Dovetail Danube test job
 - job-template:
     disabled: false
 
     parameters:
-        - '{project}-defaults'
-        - project-parameter:
-            project: '{project}'
-            branch: 'stable/danube'
-        - apex-parameter:
-            gs-pathname: '/danube'
-        - string:
-            name: DEPLOY_SCENARIO
-            default: 'os-nosdn-nofeature-ha'
-            description: "Scenario to deploy with."
+      - '{project}-defaults'
+      - project-parameter:
+          project: '{project}'
+          branch: 'stable/danube'
+      - apex-parameter:
+          gs-pathname: '/danube'
+      - string:
+          name: DEPLOY_SCENARIO
+          default: 'os-nosdn-nofeature-ha'
+          description: "Scenario to deploy with."
 
     properties:
-        - logrotate-default
-        - build-blocker:
-            use-build-blocker: true
-            block-level: 'NODE'
-            blocking-jobs:
-                - 'apex-verify.*'
-                - 'apex-runner.*'
-                - 'apex-.*-promote.*'
-                - 'apex-run.*'
+      - logrotate-default
+      - build-blocker:
+          use-build-blocker: true
+          block-level: 'NODE'
+          blocking-jobs:
+            - 'apex-verify.*'
+            - 'apex-runner.*'
+            - 'apex-.*-promote.*'
+            - 'apex-run.*'
 
     triggers:
-        - timed: '0 1 * * *'
+      - timed: '' #'0 1 * * *'
 
     builders:
-        - description-setter:
-            description: "Testing on $NODE_NAME - Scenario: $DEPLOY_SCENARIO"
-        - multijob:
-            name: 'Baremetal Deploy'
-            condition: SUCCESSFUL
-            projects:
-                - name: 'apex-deploy-baremetal-danube'
-                  node-parameters: true
-                  current-parameters: true
-                  predefined-parameters: |
-                    OPNFV_CLEAN=yes
-                    GERRIT_BRANCH=$GERRIT_BRANCH
-                    GERRIT_REFSPEC=
-                    DEPLOY_SCENARIO=$DEPLOY_SCENARIO
-                  kill-phase-on: FAILURE
-                  abort-all-job: true
-                  git-revision: false
-        - multijob:
-            name: Dovetail
-            condition: ALWAYS
-            projects:
-                - name: 'dovetail-apex-baremetal-proposed_tests-danube'
-                  node-parameters: true
-                  current-parameters: false
-                  predefined-parameters:
-                    DEPLOY_SCENARIO=$DEPLOY_SCENARIO
-                  kill-phase-on: NEVER
-                  abort-all-job: false
-                  git-revision: false
+      - description-setter:
+          description: "Testing on $NODE_NAME - Scenario: $DEPLOY_SCENARIO"
+      - multijob:
+          name: 'Baremetal Deploy'
+          condition: SUCCESSFUL
+          projects:
+            - name: 'apex-deploy-baremetal-danube'
+              node-parameters: true
+              current-parameters: true
+              predefined-parameters: |
+                OPNFV_CLEAN=yes
+                GERRIT_BRANCH=$GERRIT_BRANCH
+                GERRIT_REFSPEC=
+                DEPLOY_SCENARIO=$DEPLOY_SCENARIO
+              kill-phase-on: FAILURE
+              abort-all-job: true
+              git-revision: false
+      - multijob:
+          name: Dovetail
+          condition: ALWAYS
+          projects:
+            - name: 'dovetail-apex-baremetal-proposed_tests-danube'
+              node-parameters: true
+              current-parameters: false
+              predefined-parameters:
+                DEPLOY_SCENARIO=$DEPLOY_SCENARIO
+              kill-phase-on: NEVER
+              abort-all-job: false
+              git-revision: false
 
 ########################
 # parameter macros
 - parameter:
     name: apex-parameter
     parameters:
-        - string:
-            name: ARTIFACT_NAME
-            default: 'latest'
-            description: "RPM Artifact name that will be appended to GS_URL to deploy a specific artifact"
-        - string:
-            name: ARTIFACT_VERSION
-            default: 'daily'
-            description: "Artifact version type"
-        - string:
-            name: BUILD_DIRECTORY
-            default: $WORKSPACE/.build
-            description: "Directory where the build artifact will be located upon the completion of the build."
-        - string:
-            name: CACHE_DIRECTORY
-            default: $HOME/opnfv/apex-cache{gs-pathname}
-            description: "Directory where the cache to be used during the build is located."
-        - string:
-            name: GIT_BASE
-            default: https://gerrit.opnfv.org/gerrit/$PROJECT
-            description: "Used for overriding the GIT URL coming from Global Jenkins configuration in case if the stuff is done on none-LF HW."
-        - string:
-            name: GS_PATHNAME
-            default: '{gs-pathname}'
-            description: "Version directory where opnfv artifacts are stored in gs repository"
-        - string:
-            name: GS_URL
-            default: $GS_BASE{gs-pathname}
-            description: "URL to Google Storage."
-        - string:
-            name: PROMOTE
-            default: 'False'
-            description: "Flag to know if we should promote/upload snapshot artifacts."
+      - string:
+          name: ARTIFACT_NAME
+          default: 'latest'
+          description: "RPM Artifact name that will be appended to GS_URL to deploy a specific artifact"
+      - string:
+          name: ARTIFACT_VERSION
+          default: 'daily'
+          description: "Artifact version type"
+      - string:
+          name: BUILD_DIRECTORY
+          default: $WORKSPACE/.build
+          description: "Directory where the build artifact will be located upon the completion of the build."
+      - string:
+          name: CACHE_DIRECTORY
+          default: $HOME/opnfv/apex-cache{gs-pathname}
+          description: "Directory where the cache to be used during the build is located."
+      # yamllint disable rule:line-length
+      - string:
+          name: GIT_BASE
+          default: https://gerrit.opnfv.org/gerrit/$PROJECT
+          description: "Used for overriding the GIT URL coming from Global Jenkins configuration in case if the stuff is done on none-LF HW."
+      # yamllint enable rule:line-length
+      - string:
+          name: GS_PATHNAME
+          default: '{gs-pathname}'
+          description: "Version directory where opnfv artifacts are stored in gs repository"
+      - string:
+          name: GS_URL
+          default: $GS_BASE{gs-pathname}
+          description: "URL to Google Storage."
+      - string:
+          name: PROMOTE
+          default: 'False'
+          description: "Flag to know if we should promote/upload snapshot artifacts."
 
 ########################
 # builder macros
 {% for stream in scenarios %}
 # {{ stream }} Builder
 - builder:
-      name: apex-builder-{{ stream }}
-      builders:
-        - multijob:
-            name: Baremetal Deploy and Test Phase
-            condition: SUCCESSFUL
-            projects:
-{% for scenario in scenarios[stream] %}
-                - name: 'apex-{{ scenario }}-baremetal-{{ stream }}'
-                  node-parameters: false
-                  current-parameters: false
-                  predefined-parameters: |
-                    OPNFV_CLEAN=yes
-                  kill-phase-on: NEVER
-                  abort-all-job: true
-                  git-revision: false
-{% endfor %}
-{% endfor %}
+    name: apex-builder-{{ stream }}
+    builders:
+      - multijob:
+          name: Baremetal Deploy and Test Phase
+          condition: SUCCESSFUL
+          projects:
+{%- for scenario in scenarios[stream] %}
+            - name: 'apex-{{ scenario }}-baremetal-{{ stream }}'
+              node-parameters: false
+              current-parameters: false
+              predefined-parameters: |
+                OPNFV_CLEAN=yes
+              kill-phase-on: NEVER
+              abort-all-job: true
+              git-revision: false
+{%- endfor %}
+{% endfor -%}
 
 - builder:
     name: 'apex-unit-test'
     builders:
-        - shell:
-            !include-raw: ./apex-unit-test.sh
+      - shell:
+          !include-raw: ./apex-unit-test.sh
 
 - builder:
     name: 'apex-upload-artifact'
     builders:
-        - shell:
-            !include-raw: ./apex-upload-artifact.sh
+      - shell:
+          !include-raw: ./apex-upload-artifact.sh
 
 - builder:
     name: 'apex-download-artifact'
     builders:
-        - shell:
-            !include-raw: ./apex-download-artifact.sh
+      - shell:
+          !include-raw: ./apex-download-artifact.sh
 
 - builder:
     name: 'apex-deploy'
     builders:
-        - shell:
-            !include-raw: ./apex-deploy.sh
+      - shell:
+          !include-raw: ./apex-deploy.sh
 
 #######################
 # trigger macros
 - trigger:
     name: 'apex-master'
     triggers:
-        - timed: '0 3 1 1 7'
+      - timed: '0 3 1 1 7'
+
 - trigger:
     name: 'apex-euphrates'
     triggers:
-        - timed: '0 12 * * *'
+      - timed: '0 12 * * *'
+
 - trigger:
     name: 'apex-danube'
     triggers:
-        - timed: '0 3 1 1 7'
+      - timed: '0 3 1 1 7'
 
index a89aa5d..3b6b485 100644 (file)
@@ -42,6 +42,7 @@ euphrates:
   - 'os-odl-sfc-ha'
   - 'os-odl-fdio_dvr-noha'
   - 'os-odl-fdio_dvr-ha'
+  - 'os-nosdn-calipso-noha'
 danube:
   - 'os-nosdn-nofeature-noha'
   - 'os-nosdn-nofeature-ha'
index 4c26560..f8ed352 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
     # -------------------------------
     pod:
       - 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
     # -------------------------------
     #       scenarios
           label: '{scenario}'
           steps:
             - trigger-builds:
-                - project: 'dovetail-{installer}-{pod}-proposed_tests-{stream}'
+                - project: 'dovetail-{installer}-{pod}-proposed_tests-master'
                   current-parameters: false
                   predefined-parameters:
                     DEPLOY_SCENARIO={scenario}
                     build-step-failure-threshold: 'never'
                     failure-threshold: 'never'
                     unstable-threshold: 'FAILURE'
+      # Armband uses Fuel's log collection project job, no need to duplicate
+      - trigger-builds:
+          - project: 'fuel-collect-logs-{deploy-type}-daily-{stream}'
+            current-parameters: false
+            block: true
+            same-node: true
+            block-thresholds:
+              build-step-failure-threshold: 'never'
+              failure-threshold: 'never'
+              unstable-threshold: 'FAILURE'
 
 - job-template:
     name: '{installer}-deploy-{pod}-daily-{stream}'
index 12514b6..a8f6297 100644 (file)
@@ -16,7 +16,7 @@
           branch: '{stream}'
           gs-pathname: ''
           disabled: 'false'
-      - danube:
+      - euphrates:
           branch: 'stable/{stream}'
           gs-pathname: '/{stream}'
           disabled: 'false'
index cb43ff1..1d31f27 100644 (file)
 - builder:
     name: bottlenecks-workspace-cleanup
     builders:
-        - shell: |
-            #!/bin/bash
-            set -o errexit
-            set -o nounset
-            set -o pipefail
-
-            # delete everything that is in $WORKSPACE
-            sudo rm -rf $WORKSPACE
+      - shell: |
+          #!/bin/bash
+          set -o errexit
+          set -o nounset
+          set -o pipefail
+
+          # delete everything that is in $WORKSPACE
+          sudo rm -rf $WORKSPACE
 
 ####################
 # parameter macros
index 811f9d5..f0b8a40 100644 (file)
@@ -27,6 +27,7 @@ BOTTLENECKS_CONFIG=/tmp
 
 if [[ $SUITE_NAME == *posca* ]]; then
     POSCA_SCRIPT=/home/opnfv/bottlenecks/testsuites/posca
+    sudo rm -f ${OPENRC}
 
     # Preparing OpenStack RC and Cacert files
     echo "BOTTLENECKS INFO: fetching os credentials from $INSTALLER_TYPE"
index c282efa..2d9ecef 100644 (file)
@@ -1,18 +1,19 @@
+---
 - project:
     name: calipso
 
     project: '{name}'
 
     jobs:
-        - 'calipso-verify-{stream}'
+      - 'calipso-verify-{stream}'
 
     stream:
-        - master:
-            branch: '{stream}'
-            disabled: false
-        - euphrates:
-            branch: 'stable/{stream}'
-            disabled: false
+      - master:
+          branch: '{stream}'
+          disabled: false
+      - euphrates:
+          branch: 'stable/{stream}'
+          disabled: false
 
 - job-template:
     name: 'calipso-verify-{stream}'
     disabled: '{obj:disabled}'
 
     parameters:
-        - project-parameter:
-            project: '{project}'
-            branch: '{branch}'
-        - 'opnfv-build-defaults'
-
+      - project-parameter:
+          project: '{project}'
+          branch: '{branch}'
+      - 'opnfv-build-centos-defaults'
 
     scm:
-        - git-scm-gerrit
+      - git-scm-gerrit
 
     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}'
+      - 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}'
 
     builders:
-        - verify-unit-tests
+      - verify-unit-tests
 
 - builder:
     name: verify-unit-tests
     builders:
-        - shell: |
-            #!/bin/bash
-            set -o errexit
-            set -o nounset
-            set -o pipefail
-            cd $WORKSPACE
-            PYTHONPATH=$PWD/app app/test/verify.sh
+      - shell: |
+          #!/bin/bash
+          set -o errexit
+          set -o nounset
+          set -o pipefail
+          cd $WORKSPACE
+          PYTHONPATH=$PWD/app app/test/verify.sh
index a749d1d..6710862 100644 (file)
@@ -13,13 +13,16 @@ if [[ -e securityaudit.log ]] ; then
         EXITSTATUS=1
     fi
 
-    awk -F"ERROR - " '{print $2}' securityaudit.log | sed -e "s/\"/\\\\\"/g;s/\'/\\\\/g"> shortlog
+    grep 'ERROR' securityaudit.log | awk -F"ERROR - " '{ print $2 }' | tr -d "\'\"" > shortlog
 
-    ssh -p 29418 gerrit.opnfv.org \
-        "gerrit review -p $GERRIT_PROJECT \
-        -m \"$(cat shortlog)\" \
-        $GERRIT_PATCHSET_REVISION \
-        --notify NONE"
+    # Only report to Gerrit when there are errors to report.
+    if [[ -s shortlog ]]; then
+        ssh -p 29418 gerrit.opnfv.org \
+            "gerrit review -p $GERRIT_PROJECT \
+            -m \"$(cat shortlog)\" \
+            $GERRIT_PATCHSET_REVISION \
+            --notify NONE"
+    fi
 
     exit $EXITSTATUS
 fi
index b107c65..5100787 100644 (file)
@@ -1,3 +1,4 @@
+---
 - project:
 
     name: compass-ci
     project: 'compass4nfv'
 
     master: &master
-        stream: master
-        branch: '{stream}'
-        gs-pathname: ''
-        ppa-pathname: '/{stream}'
-        disabled: false
-        openstack-version: ocata
+      stream: master
+      branch: '{stream}'
+      gs-pathname: ''
+      ppa-pathname: '/{stream}'
+      disabled: false
+      openstack-version: ocata
     euphrates: &euphrates
-        stream: euphrates
-        branch: 'stable/{stream}'
-        disabled: false
-        gs-pathname: '/{stream}'
-        ppa-pathname: '/{stream}'
-        openstack-version: ocata
+      stream: euphrates
+      branch: 'stable/{stream}'
+      disabled: false
+      gs-pathname: '/{stream}'
+      ppa-pathname: '/{stream}'
+      openstack-version: ocata
     danube: &danube
-        stream: danube
-        branch: 'stable/{stream}'
-        gs-pathname: '/{stream}'
-        ppa-pathname: '/{stream}'
-        disabled: false
-        openstack-version: newton
-#--------------------------------
-# POD, INSTALLER, AND BRANCH MAPPING
-#--------------------------------
-#        CI PODs
-#--------------------------------
+      stream: danube
+      branch: 'stable/{stream}'
+      gs-pathname: '/{stream}'
+      ppa-pathname: '/{stream}'
+      disabled: false
+      openstack-version: newton
+    # -------------------------------
+    # POD, INSTALLER, AND BRANCH MAPPING
+    # -------------------------------
+    #        CI PODs
+    # -------------------------------
     pod:
-        - baremetal:
-            slave-label: compass-baremetal-master
-            os-version: 'xenial'
-            <<: *master
-        - virtual:
-            slave-label: compass-virtual-master
-            os-version: 'xenial'
-            <<: *master
-        - baremetal:
-            slave-label: compass-baremetal-branch
-            os-version: 'xenial'
-            <<: *euphrates
-        - virtual:
-            slave-label: compass-virtual-branch
-            os-version: 'xenial'
-            <<: *euphrates
-#--------------------------------
-#        master
-#--------------------------------
-        - baremetal-centos:
-            slave-label: 'intel-pod8'
-            os-version: 'centos7'
-            <<: *master
-#--------------------------------
-#       danube for dovetail
-#--------------------------------
-        - huawei-pod7:
-            slave-label: 'huawei-pod7'
-            os-version: 'xenial'
-            <<: *danube
+      - baremetal:
+          slave-label: compass-baremetal-master
+          os-version: 'xenial'
+          <<: *master
+      - virtual:
+          slave-label: compass-virtual-master
+          os-version: 'xenial'
+          <<: *master
+      - baremetal:
+          slave-label: compass-baremetal-branch
+          os-version: 'xenial'
+          <<: *euphrates
+      - virtual:
+          slave-label: compass-virtual-branch
+          os-version: 'xenial'
+          <<: *euphrates
+      # -------------------------------
+      #        master
+      # -------------------------------
+      - baremetal-centos:
+          slave-label: 'intel-pod8'
+          os-version: 'centos7'
+          <<: *master
+      # -------------------------------
+      #       danube for dovetail
+      # -------------------------------
+      - huawei-pod7:
+          slave-label: 'huawei-pod7'
+          os-version: 'xenial'
+          <<: *danube
 
     scenario:
-        - 'os-nosdn-nofeature-ha':
-            disabled: false
-            auto-trigger-name: 'compass-{scenario}-{pod}-{stream}-trigger'
-        - 'os-odl_l2-nofeature-ha':
-            disabled: false
-            auto-trigger-name: 'compass-{scenario}-{pod}-{stream}-trigger'
-        - 'os-odl_l3-nofeature-ha':
-            disabled: false
-            auto-trigger-name: 'compass-{scenario}-{pod}-{stream}-trigger'
-        - 'os-onos-nofeature-ha':
-            disabled: false
-            auto-trigger-name: 'compass-{scenario}-{pod}-{stream}-trigger'
-        - 'os-ocl-nofeature-ha':
-            disabled: false
-            auto-trigger-name: 'compass-{scenario}-{pod}-{stream}-trigger'
-        - 'os-onos-sfc-ha':
-            disabled: false
-            auto-trigger-name: 'compass-{scenario}-{pod}-{stream}-trigger'
-        - 'os-odl_l2-moon-ha':
-            disabled: false
-            auto-trigger-name: 'compass-{scenario}-{pod}-{stream}-trigger'
-        - 'os-nosdn-kvm-ha':
-            disabled: false
-            auto-trigger-name: 'compass-{scenario}-{pod}-{stream}-trigger'
-        - 'os-nosdn-openo-ha':
-            disabled: false
-            auto-trigger-name: 'compass-{scenario}-{pod}-{stream}-trigger'
-        - 'os-odl-sfc-ha':
-            disabled: false
-            auto-trigger-name: 'compass-{scenario}-{pod}-{stream}-trigger'
-        - 'os-nosdn-ovs_dpdk-ha':
-            disabled: false
-            auto-trigger-name: 'compass-{scenario}-{pod}-{stream}-trigger'
-        - 'k8-nosdn-nofeature-ha':
-            disabled: false
-            auto-trigger-name: 'compass-{scenario}-{pod}-{stream}-trigger'
-        - 'os-nosdn-nofeature-noha':
-            disabled: false
-            auto-trigger-name: 'compass-{scenario}-{pod}-{stream}-trigger'
-        - 'os-odl_l3-nofeature-noha':
-            disabled: false
-            auto-trigger-name: 'compass-{scenario}-{pod}-{stream}-trigger'
-        - 'os-odl_l2-moon-noha':
-            disabled: false
-            auto-trigger-name: 'compass-{scenario}-{pod}-{stream}-trigger'
-        - 'os-nosdn-kvm-noha':
-            disabled: false
-            auto-trigger-name: 'compass-{scenario}-{pod}-{stream}-trigger'
-        - 'os-odl-sfc-noha':
-            disabled: false
-            auto-trigger-name: 'compass-{scenario}-{pod}-{stream}-trigger'
-        - 'os-nosdn-ovs_dpdk-noha':
-            disabled: false
-            auto-trigger-name: 'compass-{scenario}-{pod}-{stream}-trigger'
-
+      - 'os-nosdn-nofeature-ha':
+          disabled: false
+          auto-trigger-name: 'compass-{scenario}-{pod}-{stream}-trigger'
+      - 'os-odl_l2-nofeature-ha':
+          disabled: false
+          auto-trigger-name: 'compass-{scenario}-{pod}-{stream}-trigger'
+      - 'os-odl_l3-nofeature-ha':
+          disabled: false
+          auto-trigger-name: 'compass-{scenario}-{pod}-{stream}-trigger'
+      - 'os-onos-nofeature-ha':
+          disabled: false
+          auto-trigger-name: 'compass-{scenario}-{pod}-{stream}-trigger'
+      - 'os-ocl-nofeature-ha':
+          disabled: false
+          auto-trigger-name: 'compass-{scenario}-{pod}-{stream}-trigger'
+      - 'os-onos-sfc-ha':
+          disabled: false
+          auto-trigger-name: 'compass-{scenario}-{pod}-{stream}-trigger'
+      - 'os-odl_l2-moon-ha':
+          disabled: false
+          auto-trigger-name: 'compass-{scenario}-{pod}-{stream}-trigger'
+      - 'os-nosdn-kvm-ha':
+          disabled: false
+          auto-trigger-name: 'compass-{scenario}-{pod}-{stream}-trigger'
+      - 'os-nosdn-openo-ha':
+          disabled: false
+          auto-trigger-name: 'compass-{scenario}-{pod}-{stream}-trigger'
+      - 'os-odl-sfc-ha':
+          disabled: false
+          auto-trigger-name: 'compass-{scenario}-{pod}-{stream}-trigger'
+      - 'os-nosdn-ovs_dpdk-ha':
+          disabled: false
+          auto-trigger-name: 'compass-{scenario}-{pod}-{stream}-trigger'
+      - 'k8-nosdn-nofeature-ha':
+          disabled: false
+          auto-trigger-name: 'compass-{scenario}-{pod}-{stream}-trigger'
+      - 'os-nosdn-nofeature-noha':
+          disabled: false
+          auto-trigger-name: 'compass-{scenario}-{pod}-{stream}-trigger'
+      - 'os-odl_l3-nofeature-noha':
+          disabled: false
+          auto-trigger-name: 'compass-{scenario}-{pod}-{stream}-trigger'
+      - 'os-odl_l2-moon-noha':
+          disabled: false
+          auto-trigger-name: 'compass-{scenario}-{pod}-{stream}-trigger'
+      - 'os-nosdn-kvm-noha':
+          disabled: false
+          auto-trigger-name: 'compass-{scenario}-{pod}-{stream}-trigger'
+      - 'os-odl-sfc-noha':
+          disabled: false
+          auto-trigger-name: 'compass-{scenario}-{pod}-{stream}-trigger'
+      - 'os-nosdn-ovs_dpdk-noha':
+          disabled: false
+          auto-trigger-name: 'compass-{scenario}-{pod}-{stream}-trigger'
 
     jobs:
-        - 'compass-{scenario}-{pod}-daily-{stream}'
-        - 'compass-deploy-{pod}-daily-{stream}'
+      - 'compass-{scenario}-{pod}-daily-{stream}'
+      - 'compass-deploy-{pod}-daily-{stream}'
 
 ########################
 # job templates
     concurrent: true
 
     properties:
-        - logrotate-default
-        - throttle:
-            enabled: true
-            max-per-node: 1
-            option: 'project'
-        - build-blocker:
-            use-build-blocker: true
-            blocking-jobs:
-                - 'compass-os-.*?-{pod}-daily-.*?'
-                - 'compass-os-.*?-baremetal-daily-.*?'
-                - 'compass-verify-[^-]*-[^-]*'
-            block-level: 'NODE'
+      - logrotate-default
+      - throttle:
+          enabled: true
+          max-per-node: 1
+          option: 'project'
+      - build-blocker:
+          use-build-blocker: true
+          blocking-jobs:
+            - 'compass-os-.*?-{pod}-daily-.*?'
+            - 'compass-os-.*?-baremetal-daily-.*?'
+            - 'compass-verify-[^-]*-[^-]*'
+          block-level: 'NODE'
 
     wrappers:
-        - build-name:
-            name: '$BUILD_NUMBER - Scenario: $DEPLOY_SCENARIO'
-        - fix-workspace-permissions
+      - build-name:
+          name: '$BUILD_NUMBER - Scenario: $DEPLOY_SCENARIO'
+      - fix-workspace-permissions
 
     parameters:
-        - project-parameter:
-            project: '{project}'
-            branch: '{branch}'
-        - compass-ci-parameter:
-            installer: '{installer}'
-            gs-pathname: '{gs-pathname}'
-            ppa-pathname: '{ppa-pathname}'
-        - string:
-            name: DEPLOY_SCENARIO
-            default: '{scenario}'
-        - '{slave-label}-defaults'
-        - '{installer}-defaults'
-
-    triggers:
-        - '{auto-trigger-name}'
+      - project-parameter:
+          project: '{project}'
+          branch: '{branch}'
+      - compass-ci-parameter:
+          installer: '{installer}'
+          gs-pathname: '{gs-pathname}'
+          ppa-pathname: '{ppa-pathname}'
+      - string:
+          name: DEPLOY_SCENARIO
+          default: '{scenario}'
+      - '{slave-label}-defaults'
+      - '{installer}-defaults'
+
+    triggers:
+      - '{auto-trigger-name}'
 
     builders:
-        - description-setter:
-            description: "POD: $NODE_NAME"
-        - trigger-builds:
-            - project: 'compass-deploy-{pod}-daily-{stream}'
-              current-parameters: true
-              predefined-parameters: |
-                DEPLOY_SCENARIO={scenario}
-                COMPASS_OS_VERSION={os-version}
-                COMPASS_OPENSTACK_VERSION={openstack-version}
-              same-node: true
-              block: true
-        - trigger-builds:
-            - project: 'functest-compass-{pod}-daily-{stream}'
-              current-parameters: false
-              predefined-parameters:
-                DEPLOY_SCENARIO={scenario}
-              same-node: true
-              block: true
-              block-thresholds:
-                build-step-failure-threshold: 'never'
-                failure-threshold: 'never'
-                unstable-threshold: 'FAILURE'
-        - trigger-builds:
-            - project: 'yardstick-compass-{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'
-        # dovetail only master by now, not sync with A/B/C branches
-        # here the stream means the SUT stream, dovetail stream is defined in its own job
-        # only run on os-(nosdn|odl_l2|onos|odl_l3)-nofeature-ha scenario
-        # run against SUT master branch, dovetail docker image with latest tag
-        # run against SUT danube branch, dovetail docker image with latest tag(Monday and Sunday)
-        # run against SUT danube branch, dovetail docker image with cvp.X.X.X tag(Tuesday, Thursday, Friday and Saturday)
-        - conditional-step:
-            condition-kind: and
-            condition-operands:
-                - condition-kind: regex-match
-                  regex: danube
-                  label: '{stream}'
-                - condition-kind: regex-match
-                  regex: os-(nosdn|odl_l2|odl_l3)-nofeature-ha
-                  label: '{scenario}'
-                - condition-kind: day-of-week
-                  day-selector: select-days
-                  days:
-                      MON: true
-                      SUN: true
-                  use-build-time: true
-            steps:
-                - trigger-builds:
-                    - project: 'dovetail-compass-{pod}-proposed_tests-{stream}'
-                      current-parameters: false
-                      predefined-parameters: |
-                        DOCKER_TAG=latest
-                        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: danube
-                  label: '{stream}'
-                - condition-kind: regex-match
-                  regex: os-(nosdn|odl_l2|odl_l3)-nofeature-ha
-                  label: '{scenario}'
-                - condition-kind: day-of-week
-                  day-selector: select-days
-                  days:
-                      TUES: true
-                      WED: true
-                      THURS: true
-                      FRI: true
-                      SAT: true
-                  use-build-time: true
-            steps:
-                - trigger-builds:
-                    - project: 'dovetail-compass-{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: os-(nosdn|odl_l2|odl_l3)-nofeature-ha
-                  label: '{scenario}'
-                - condition-kind: regex-match
-                  regex: master
-                  label: '{stream}'
-            steps:
-                - trigger-builds:
-                    - project: 'dovetail-compass-{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: os-nosdn-nofeature-ha
-                  label: '{scenario}'
-            steps:
-                - trigger-builds:
-                    - project: 'bottlenecks-compass-posca_stress_ping-{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'
+      - description-setter:
+          description: "POD: $NODE_NAME"
+      - trigger-builds:
+          - project: 'compass-deploy-{pod}-daily-{stream}'
+            current-parameters: true
+            predefined-parameters: |
+              DEPLOY_SCENARIO={scenario}
+              COMPASS_OS_VERSION={os-version}
+              COMPASS_OPENSTACK_VERSION={openstack-version}
+            same-node: true
+            block: true
+      - trigger-builds:
+          - project: 'functest-compass-{pod}-daily-{stream}'
+            current-parameters: false
+            predefined-parameters:
+              DEPLOY_SCENARIO={scenario}
+            same-node: true
+            block: true
+            block-thresholds:
+              build-step-failure-threshold: 'never'
+              failure-threshold: 'never'
+              unstable-threshold: 'FAILURE'
+      - trigger-builds:
+          - project: 'yardstick-compass-{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'
+      # dovetail only master by now, not sync with A/B/C branches
+      # here the stream means the SUT stream, dovetail stream is defined in its own job
+      # only run on os-(nosdn|odl_l2|onos|odl_l3)-nofeature-ha scenario
+      # run against SUT master branch, dovetail docker image with latest tag
+      # run against SUT danube branch, dovetail docker image with latest tag(Monday and Sunday)
+      # run against SUT danube branch, dovetail docker image with cvp.X.X.X tag(Tuesday, Thursday, Friday and Saturday)
+      - conditional-step:
+          condition-kind: and
+          condition-operands:
+            - condition-kind: regex-match
+              regex: danube
+              label: '{stream}'
+            - condition-kind: regex-match
+              regex: os-(nosdn|odl_l2|odl_l3)-nofeature-ha
+              label: '{scenario}'
+            - condition-kind: day-of-week
+              day-selector: select-days
+              days:
+                MON: true
+                SUN: true
+              use-build-time: true
+          steps:
+            - trigger-builds:
+                - project: 'dovetail-compass-{pod}-proposed_tests-{stream}'
+                  current-parameters: false
+                  predefined-parameters: |
+                    DOCKER_TAG=latest
+                    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: danube
+              label: '{stream}'
+            - condition-kind: regex-match
+              regex: os-(nosdn|odl_l2|odl_l3)-nofeature-ha
+              label: '{scenario}'
+            - condition-kind: day-of-week
+              day-selector: select-days
+              days:
+                TUES: true
+                WED: true
+                THURS: true
+                FRI: true
+                SAT: true
+              use-build-time: true
+          steps:
+            - trigger-builds:
+                - project: 'dovetail-compass-{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: os-(nosdn|odl_l2|odl_l3)-nofeature-ha
+              label: '{scenario}'
+            - condition-kind: regex-match
+              regex: master
+              label: '{stream}'
+          steps:
+            - trigger-builds:
+                - project: 'dovetail-compass-{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: os-nosdn-nofeature-ha
+              label: '{scenario}'
+          steps:
+            - trigger-builds:
+                - project: 'bottlenecks-compass-posca_stress_ping-{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'
 
 - job-template:
     name: 'compass-deploy-{pod}-daily-{stream}'
     concurrent: true
 
     properties:
-        - logrotate-default
-        - throttle:
-            enabled: true
-            max-per-node: 1
-            option: 'project'
-        - build-blocker:
-            use-build-blocker: true
-            blocking-jobs:
-                - 'compass-deploy-{pod}-daily-.*?'
-                - 'compass-verify-deploy-.*?'
-            block-level: 'NODE'
+      - logrotate-default
+      - throttle:
+          enabled: true
+          max-per-node: 1
+          option: 'project'
+      - build-blocker:
+          use-build-blocker: true
+          blocking-jobs:
+            - 'compass-deploy-{pod}-daily-.*?'
+            - 'compass-verify-deploy-.*?'
+          block-level: 'NODE'
 
     wrappers:
-        - build-name:
-            name: '$BUILD_NUMBER - Scenario: $DEPLOY_SCENARIO'
-        - timeout:
-            timeout: 240
-            abort: true
-        - fix-workspace-permissions
+      - build-name:
+          name: '$BUILD_NUMBER - Scenario: $DEPLOY_SCENARIO'
+      - timeout:
+          timeout: 240
+          abort: true
+      - fix-workspace-permissions
 
     parameters:
-        - project-parameter:
-            project: '{project}'
-            branch: '{branch}'
-        - compass-ci-parameter:
-            installer: '{installer}'
-            gs-pathname: '{gs-pathname}'
-            ppa-pathname: '{ppa-pathname}'
-        - '{slave-label}-defaults'
-        - '{installer}-defaults'
+      - project-parameter:
+          project: '{project}'
+          branch: '{branch}'
+      - compass-ci-parameter:
+          installer: '{installer}'
+          gs-pathname: '{gs-pathname}'
+          ppa-pathname: '{ppa-pathname}'
+      - '{slave-label}-defaults'
+      - '{installer}-defaults'
 
     scm:
-        - git-scm
+      - git-scm
 
     builders:
-        - description-setter:
-            description: "POD: $NODE_NAME"
-        - conditional-step:
-            condition-kind: regex-match
-            regex: master
-            label: '{stream}'
-            steps:
-                - shell:
-                    !include-raw-escape: ./compass-build.sh
-                - shell:
-                    !include-raw-escape: ./compass-deploy.sh
-        - conditional-step:
-            condition-kind: regex-match
-            regex: (danube|euphrates)
-            label: '{stream}'
-            steps:
-                - shell:
-                    !include-raw-escape: ./compass-download-artifact.sh
-                - shell:
-                    !include-raw-escape: ./compass-deploy.sh
+      - description-setter:
+          description: "POD: $NODE_NAME"
+      - conditional-step:
+          condition-kind: regex-match
+          regex: master
+          label: '{stream}'
+          steps:
+            - shell:
+                !include-raw-escape: ./compass-build.sh
+            - shell:
+                !include-raw-escape: ./compass-deploy.sh
+      - conditional-step:
+          condition-kind: regex-match
+          regex: (danube|euphrates)
+          label: '{stream}'
+          steps:
+            - shell:
+                !include-raw-escape: ./compass-download-artifact.sh
+            - shell:
+                !include-raw-escape: ./compass-deploy.sh
 
 ########################
 # parameter macros
 - parameter:
     name: compass-ci-parameter
     parameters:
-        - string:
-            name: BUILD_DIRECTORY
-            default: $WORKSPACE/build_output
-            description: "Directory where the build artifact will be located upon the completion of the build."
-        - string:
-            name: GS_URL
-            default: '$GS_BASE{gs-pathname}'
-            description: "URL to Google Storage."
-        - string:
-            name: CACHE_DIRECTORY
-            default: "$HOME/opnfv/cache/$PROJECT{gs-pathname}"
-            description: "Directory where the cache to be used during the build is located."
-        - string:
-            name: PPA_REPO
-            default: "http://artifacts.opnfv.org/compass4nfv/package{ppa-pathname}"
-        - string:
-            name: PPA_CACHE
-            default: "$WORKSPACE/work/repo/"
+      - string:
+          name: BUILD_DIRECTORY
+          default: $WORKSPACE/build_output
+          description: "Directory where the build artifact will be located upon the completion of the build."
+      - string:
+          name: GS_URL
+          default: '$GS_BASE{gs-pathname}'
+          description: "URL to Google Storage."
+      - string:
+          name: CACHE_DIRECTORY
+          default: "$HOME/opnfv/cache/$PROJECT{gs-pathname}"
+          description: "Directory where the cache to be used during the build is located."
+      - string:
+          name: PPA_REPO
+          default: "http://artifacts.opnfv.org/compass4nfv/package{ppa-pathname}"
+      - string:
+          name: PPA_CACHE
+          default: "$WORKSPACE/work/repo/"
 
 ########################
 # trigger macros
 ########################
 
-#---------------------------
+# --------------------------
 # ha-baremetal-centos-master
-#---------------------------
+# --------------------------
 - trigger:
     name: 'compass-os-nosdn-nofeature-ha-baremetal-centos-master-trigger'
     triggers:
-        - timed: '0 19 * * *'
+      - timed: '0 19 * * *'
 - trigger:
     name: 'compass-os-nosdn-openo-ha-baremetal-centos-master-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'compass-os-odl_l2-nofeature-ha-baremetal-centos-master-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'compass-os-odl_l3-nofeature-ha-baremetal-centos-master-trigger'
     triggers:
-        - timed: '0 15 * * *'
+      - timed: '0 15 * * *'
 - trigger:
     name: 'compass-os-onos-nofeature-ha-baremetal-centos-master-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'compass-os-ocl-nofeature-ha-baremetal-centos-master-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'compass-os-onos-sfc-ha-baremetal-centos-master-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'compass-os-odl_l2-moon-ha-baremetal-centos-master-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'compass-os-nosdn-kvm-ha-baremetal-centos-master-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'compass-os-nosdn-ovs_dpdk-ha-baremetal-centos-master-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'compass-os-odl-sfc-ha-baremetal-centos-master-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'compass-k8-nosdn-nofeature-ha-baremetal-centos-master-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 
-#-----------------------------
+# ----------------------------
 # noha-baremetal-centos-master
-#-----------------------------
+# ----------------------------
 - trigger:
     name: 'compass-os-nosdn-nofeature-noha-baremetal-centos-master-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'compass-os-odl_l3-nofeature-noha-baremetal-centos-master-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'compass-os-odl_l2-moon-noha-baremetal-centos-master-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'compass-os-nosdn-kvm-noha-baremetal-centos-master-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'compass-os-odl-sfc-noha-baremetal-centos-master-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'compass-os-nosdn-ovs_dpdk-noha-baremetal-centos-master-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 
-#---------------------------
+# --------------------------
 # ha-huawei-pod7-danube
-#---------------------------
+# --------------------------
 - trigger:
     name: 'compass-os-nosdn-nofeature-ha-huawei-pod7-danube-trigger'
     triggers:
-        - timed: '0 19 * * *'
+      - timed: ''  # '0 19 * * *'
 - trigger:
     name: 'compass-os-nosdn-openo-ha-huawei-pod7-danube-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'compass-os-odl_l2-nofeature-ha-huawei-pod7-danube-trigger'
     triggers:
-        - timed: '0 21 * * *'
+      - timed: ''  # '0 21 * * *'
 - trigger:
     name: 'compass-os-odl_l3-nofeature-ha-huawei-pod7-danube-trigger'
     triggers:
-        - timed: '0 15 * * *'
+      - timed: ''  # '0 15 * * *'
 - trigger:
     name: 'compass-os-onos-nofeature-ha-huawei-pod7-danube-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'compass-os-ocl-nofeature-ha-huawei-pod7-danube-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'compass-os-onos-sfc-ha-huawei-pod7-danube-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'compass-os-odl_l2-moon-ha-huawei-pod7-danube-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'compass-os-nosdn-kvm-ha-huawei-pod7-danube-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'compass-os-nosdn-ovs_dpdk-ha-huawei-pod7-danube-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'compass-os-odl-sfc-ha-huawei-pod7-danube-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'compass-k8-nosdn-nofeature-ha-huawei-pod7-danube-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 
-#-----------------------------
+# ----------------------------
 # noha-huawei-pod7-danube
-#-----------------------------
+# ----------------------------
 - trigger:
     name: 'compass-os-nosdn-nofeature-noha-huawei-pod7-danube-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'compass-os-odl_l3-nofeature-noha-huawei-pod7-danube-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'compass-os-odl_l2-moon-noha-huawei-pod7-danube-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'compass-os-nosdn-kvm-noha-huawei-pod7-danube-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'compass-os-odl-sfc-noha-huawei-pod7-danube-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'compass-os-nosdn-ovs_dpdk-noha-huawei-pod7-danube-trigger'
     triggers:
-        - timed: ''
-#--------------------
+      - timed: ''
+
+# -------------------
 # ha-baremetal-master
-#--------------------
+# -------------------
 - trigger:
     name: 'compass-os-nosdn-nofeature-ha-baremetal-master-trigger'
     triggers:
-        - timed: '0 20 * * *'
+      - timed: '0 20 * * *'
 - trigger:
     name: 'compass-os-nosdn-openo-ha-baremetal-master-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'compass-os-odl_l2-nofeature-ha-baremetal-master-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'compass-os-odl_l3-nofeature-ha-baremetal-master-trigger'
     triggers:
-        - timed: '0 18 * * *'
+      - timed: '0 18 * * *'
 - trigger:
     name: 'compass-os-onos-nofeature-ha-baremetal-master-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'compass-os-ocl-nofeature-ha-baremetal-master-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'compass-os-onos-sfc-ha-baremetal-master-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'compass-os-odl_l2-moon-ha-baremetal-master-trigger'
     triggers:
-        - timed: '0 12 * * *'
+      - timed: '0 12 * * *'
 - trigger:
     name: 'compass-os-nosdn-kvm-ha-baremetal-master-trigger'
     triggers:
-        - timed: '0 14 * * *'
+      - timed: '0 14 * * *'
 - trigger:
     name: 'compass-os-nosdn-ovs_dpdk-ha-baremetal-master-trigger'
     triggers:
-        - timed: '0 16 * * *'
+      - timed: '0 16 * * *'
 - trigger:
     name: 'compass-k8-nosdn-nofeature-ha-baremetal-master-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'compass-os-odl-sfc-ha-baremetal-master-trigger'
     triggers:
-        - timed: '0 10 * * *'
+      - timed: '0 10 * * *'
 
-#----------------------
+# ---------------------
 # noha-baremetal-master
-#----------------------
+# ---------------------
 - trigger:
     name: 'compass-os-nosdn-kvm-noha-baremetal-master-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'compass-os-nosdn-nofeature-noha-baremetal-master-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'compass-os-odl_l3-nofeature-noha-baremetal-master-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'compass-os-odl_l2-moon-noha-baremetal-master-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'compass-os-odl-sfc-noha-baremetal-master-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'compass-os-nosdn-ovs_dpdk-noha-baremetal-master-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 
-#--------------------
+# -------------------
 # ha-baremetal-euphrates
-#--------------------
+# -------------------
 - trigger:
     name: 'compass-os-nosdn-nofeature-ha-baremetal-euphrates-trigger'
     triggers:
-        - timed: '0 1 * * *'
+      - timed: '0 1 * * *'
 - trigger:
     name: 'compass-os-nosdn-openo-ha-baremetal-euphrates-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'compass-os-odl_l2-nofeature-ha-baremetal-euphrates-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'compass-os-odl_l3-nofeature-ha-baremetal-euphrates-trigger'
     triggers:
-        - timed: '0 21 * * *'
+      - timed: '0 21 * * *'
 - trigger:
     name: 'compass-os-onos-nofeature-ha-baremetal-euphrates-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'compass-os-ocl-nofeature-ha-baremetal-euphrates-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'compass-os-onos-sfc-ha-baremetal-euphrates-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'compass-os-odl_l2-moon-ha-baremetal-euphrates-trigger'
     triggers:
-        - timed: '0 5 * * *'
+      - timed: '0 5 * * *'
 - trigger:
     name: 'compass-os-nosdn-kvm-ha-baremetal-euphrates-trigger'
     triggers:
-        - timed: '0 13 * * *'
+      - timed: '0 13 * * *'
 - trigger:
     name: 'compass-os-nosdn-ovs_dpdk-ha-baremetal-euphrates-trigger'
     triggers:
-        - timed: '0 9 * * *'
+      - timed: '0 9 * * *'
 - trigger:
     name: 'compass-k8-nosdn-nofeature-ha-baremetal-euphrates-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'compass-os-odl-sfc-ha-baremetal-euphrates-trigger'
     triggers:
-        - timed: '0 17 * * *'
+      - timed: '0 17 * * *'
 
-#----------------------
+# ---------------------
 # noha-baremetal-euphrates
-#----------------------
+# ---------------------
 - trigger:
     name: 'compass-os-nosdn-kvm-noha-baremetal-euphrates-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'compass-os-nosdn-nofeature-noha-baremetal-euphrates-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'compass-os-odl_l3-nofeature-noha-baremetal-euphrates-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'compass-os-odl_l2-moon-noha-baremetal-euphrates-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'compass-os-odl-sfc-noha-baremetal-euphrates-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'compass-os-nosdn-ovs_dpdk-noha-baremetal-euphrates-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 
-#------------------
+# -----------------
 # ha-virtual-master
-#------------------
+# -----------------
 - trigger:
     name: 'compass-os-nosdn-nofeature-ha-virtual-master-trigger'
     triggers:
-        - timed: '0 21 * * *'
+      - timed: '0 21 * * *'
 - trigger:
     name: 'compass-os-nosdn-openo-ha-virtual-master-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'compass-os-odl_l2-nofeature-ha-virtual-master-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'compass-os-odl_l3-nofeature-ha-virtual-master-trigger'
     triggers:
-        - timed: '0 19 * * *'
+      - timed: '0 19 * * *'
 - trigger:
     name: 'compass-os-onos-nofeature-ha-virtual-master-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'compass-os-ocl-nofeature-ha-virtual-master-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'compass-os-onos-sfc-ha-virtual-master-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'compass-os-odl_l2-moon-ha-virtual-master-trigger'
     triggers:
-        - timed: '30 12 * * *'
+      - timed: '30 12 * * *'
 - trigger:
     name: 'compass-os-nosdn-kvm-ha-virtual-master-trigger'
     triggers:
-        - timed: '0 13 * * *'
+      - timed: '0 13 * * *'
 - trigger:
     name: 'compass-os-nosdn-ovs_dpdk-ha-virtual-master-trigger'
     triggers:
-        - timed: '0 17 * * *'
+      - timed: '0 17 * * *'
 - trigger:
     name: 'compass-k8-nosdn-nofeature-ha-virtual-master-trigger'
     triggers:
-        - timed: '0 12 * * *'
+      - timed: '0 12 * * *'
 - trigger:
     name: 'compass-os-odl-sfc-ha-virtual-master-trigger'
     triggers:
-        - timed: '0 16 * * *'
+      - timed: '0 16 * * *'
 
-#--------------------
+# -------------------
 # noha-virtual-master
-#--------------------
+# -------------------
 - trigger:
     name: 'compass-os-nosdn-kvm-noha-virtual-master-trigger'
     triggers:
-        - timed: '30 13 * * *'
+      - timed: '30 13 * * *'
 - trigger:
     name: 'compass-os-nosdn-nofeature-noha-virtual-master-trigger'
     triggers:
-        - timed: '0 14 * * *'
+      - timed: '0 14 * * *'
 - trigger:
     name: 'compass-os-odl_l3-nofeature-noha-virtual-master-trigger'
     triggers:
-        - timed: '0 15 * * *'
+      - timed: '0 15 * * *'
 - trigger:
     name: 'compass-os-odl_l2-moon-noha-virtual-master-trigger'
     triggers:
-        - timed: '0 18 * * *'
+      - timed: '0 18 * * *'
 - trigger:
     name: 'compass-os-odl-sfc-noha-virtual-master-trigger'
     triggers:
-        - timed: '0 20 * * *'
+      - timed: '0 20 * * *'
 - trigger:
     name: 'compass-os-nosdn-ovs_dpdk-noha-virtual-master-trigger'
     triggers:
-        - timed: '0 11 * * *'
+      - timed: '0 11 * * *'
 
-#------------------
+# -----------------
 # ha-virtual-euphrates
-#------------------
+# -----------------
 - trigger:
     name: 'compass-os-nosdn-nofeature-ha-virtual-euphrates-trigger'
     triggers:
-        - timed: '0 23 * * *'
+      - timed: '0 23 * * *'
 - trigger:
     name: 'compass-os-nosdn-openo-ha-virtual-euphrates-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'compass-os-odl_l2-nofeature-ha-virtual-euphrates-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'compass-os-odl_l3-nofeature-ha-virtual-euphrates-trigger'
     triggers:
-        - timed: '0 22 * * *'
+      - timed: '0 22 * * *'
 - trigger:
     name: 'compass-os-onos-nofeature-ha-virtual-euphrates-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'compass-os-ocl-nofeature-ha-virtual-euphrates-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'compass-os-onos-sfc-ha-virtual-euphrates-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'compass-os-odl_l2-moon-ha-virtual-euphrates-trigger'
     triggers:
-        - timed: '0 20 * * *'
+      - timed: '0 20 * * *'
 - trigger:
     name: 'compass-os-nosdn-kvm-ha-virtual-euphrates-trigger'
     triggers:
-        - timed: '0 16 * * *'
+      - timed: '0 16 * * *'
 - trigger:
     name: 'compass-os-nosdn-ovs_dpdk-ha-virtual-euphrates-trigger'
     triggers:
-        - timed: '0 14 * * *'
+      - timed: '0 14 * * *'
 - trigger:
     name: 'compass-os-odl-sfc-ha-virtual-euphrates-trigger'
     triggers:
-        - timed: '0 18 * * *'
+      - timed: '0 18 * * *'
 - trigger:
     name: 'compass-k8-nosdn-nofeature-ha-virtual-euphrates-trigger'
     triggers:
-        - timed: '0 13 * * *'
+      - timed: '0 13 * * *'
 
-#--------------------
+# -------------------
 # noha-virtual-euphrates
-#--------------------
+# -------------------
 - trigger:
     name: 'compass-os-nosdn-kvm-noha-virtual-euphrates-trigger'
     triggers:
-        - timed: '0 15 * * *'
+      - timed: '0 15 * * *'
 - trigger:
     name: 'compass-os-nosdn-nofeature-noha-virtual-euphrates-trigger'
     triggers:
-        - timed: '0 17 * * *'
+      - timed: '0 17 * * *'
 - trigger:
     name: 'compass-os-odl_l3-nofeature-noha-virtual-euphrates-trigger'
     triggers:
-        - timed: '0 23 * * *'
+      - timed: '0 23 * * *'
 - trigger:
     name: 'compass-os-odl_l2-moon-noha-virtual-euphrates-trigger'
     triggers:
-        - timed: '0 21 * * *'
+      - timed: '0 21 * * *'
 - trigger:
     name: 'compass-os-odl-sfc-noha-virtual-euphrates-trigger'
     triggers:
-        - timed: '0 19 * * *'
+      - timed: '0 19 * * *'
 - trigger:
     name: 'compass-os-nosdn-ovs_dpdk-noha-virtual-euphrates-trigger'
     triggers:
-        - timed: '0 12 * * *'
+      - timed: '0 12 * * *'
index 101db82..f0e1c2d 100644 (file)
@@ -1,38 +1,39 @@
+---
 - project:
 
     name: 'compass-dovetail-jobs'
     installer: 'compass'
     project: 'compass4nfv'
-#----------------------------------
-# BRANCH ANCHORS
-#----------------------------------
+    # ---------------------------------
+    # BRANCH ANCHORS
+    # ---------------------------------
     danube: &danube
-        stream: danube
-        branch: 'stable/{stream}'
-        gs-pathname: '/{stream}'
-        disabled: false
-        dovetail-branch: master
-#------------------------------------
-# POD, INSTALLER, AND BRANCH MAPPING
-#------------------------------------
-#        CI PODs
-#------------------------------------
+      stream: danube
+      branch: 'stable/{stream}'
+      gs-pathname: '/{stream}'
+      disabled: false
+      dovetail-branch: master
+    # -----------------------------------
+    # POD, INSTALLER, AND BRANCH MAPPING
+    # -----------------------------------
+    #        CI PODs
+    # -----------------------------------
     pod:
-        - baremetal:
-            slave-label: compass-baremetal-branch
-            os-version: 'xenial'
-            <<: *danube
-#-----------------------------------
-# scenarios
-#-----------------------------------
+      - baremetal:
+          slave-label: compass-baremetal-branch
+          os-version: 'xenial'
+          <<: *danube
+    # ----------------------------------
+    # scenarios
+    # ----------------------------------
     scenario:
-        - 'os-nosdn-nofeature-ha':
-            disabled: true
-            auto-trigger-name: 'compass-{scenario}-{pod}-weekly-{stream}-trigger'
+      - 'os-nosdn-nofeature-ha':
+          disabled: true
+          auto-trigger-name: 'compass-{scenario}-{pod}-weekly-{stream}-trigger'
 
     jobs:
-        - 'compass-{scenario}-{pod}-weekly-{stream}'
-        - 'compass-deploy-{pod}-weekly-{stream}'
+      - 'compass-{scenario}-{pod}-weekly-{stream}'
+      - 'compass-deploy-{pod}-weekly-{stream}'
 
 ########################
 # job templates
     concurrent: false
 
     properties:
-        - build-blocker:
-            use-build-blocker: true
-            blocking-jobs:
-                - 'compass-os-.*?-{pod}-daily-.*?'
-                - 'compass-os-.*?-{pod}-weekly-.*?'
-            block-level: 'NODE'
+      - build-blocker:
+          use-build-blocker: true
+          blocking-jobs:
+            - 'compass-os-.*?-{pod}-daily-.*?'
+            - 'compass-os-.*?-{pod}-weekly-.*?'
+          block-level: 'NODE'
 
     wrappers:
-        - build-name:
-            name: '$BUILD_NUMBER - Scenario: $DEPLOY_SCENARIO'
-        - fix-workspace-permissions
+      - build-name:
+          name: '$BUILD_NUMBER - Scenario: $DEPLOY_SCENARIO'
+      - fix-workspace-permissions
 
     triggers:
-        - '{auto-trigger-name}'
+      - '{auto-trigger-name}'
 
     parameters:
-        - project-parameter:
-            project: '{project}'
-            branch: '{branch}'
-        - compass-dovetail-parameter:
-            installer: '{installer}'
-            gs-pathname: '{gs-pathname}'
-        - string:
-            name: DEPLOY_SCENARIO
-            default: '{scenario}'
-        - '{slave-label}-defaults'
-        - '{installer}-defaults'
-
-    triggers:
-        - '{auto-trigger-name}'
+      - project-parameter:
+          project: '{project}'
+          branch: '{branch}'
+      - compass-dovetail-parameter:
+          installer: '{installer}'
+          gs-pathname: '{gs-pathname}'
+      - string:
+          name: DEPLOY_SCENARIO
+          default: '{scenario}'
+      - '{slave-label}-defaults'
+      - '{installer}-defaults'
 
     builders:
-        - description-setter:
-            description: "POD: $NODE_NAME"
-        - trigger-builds:
-            - project: 'compass-deploy-{pod}-weekly-{stream}'
-              current-parameters: false
-              predefined-parameters: |
-                DEPLOY_SCENARIO={scenario}
-                COMPASS_OS_VERSION={os-version}
-              same-node: true
-              block: true
-        - trigger-builds:
-            - project: 'dovetail-compass-{pod}-compliance_set-weekly-{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: 'dovetail-compass-{pod}-proposed_tests-weekly-{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'
+      - description-setter:
+          description: "POD: $NODE_NAME"
+      - trigger-builds:
+          - project: 'compass-deploy-{pod}-weekly-{stream}'
+            current-parameters: false
+            predefined-parameters: |
+              DEPLOY_SCENARIO={scenario}
+              COMPASS_OS_VERSION={os-version}
+            same-node: true
+            block: true
+      - trigger-builds:
+          - project: 'dovetail-compass-{pod}-compliance_set-weekly-{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: 'dovetail-compass-{pod}-proposed_tests-weekly-{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'
 
 - job-template:
     name: 'compass-deploy-{pod}-weekly-{stream}'
     concurrent: true
 
     properties:
-        - logrotate-default
-        - throttle:
-            enabled: true
-            max-total: 4
-            max-per-node: 1
-            option: 'project'
-        - build-blocker:
-            use-build-blocker: true
-            blocking-jobs:
-                - 'compass-deploy-{pod}-daily-.*?'
-                - 'compass-deploy-{pod}-weekly-.*'
-                - 'compass-verify-deploy-.*?'
-            block-level: 'NODE'
+      - logrotate-default
+      - throttle:
+          enabled: true
+          max-total: 4
+          max-per-node: 1
+          option: 'project'
+      - build-blocker:
+          use-build-blocker: true
+          blocking-jobs:
+            - 'compass-deploy-{pod}-daily-.*?'
+            - 'compass-deploy-{pod}-weekly-.*'
+            - 'compass-verify-deploy-.*?'
+          block-level: 'NODE'
 
     wrappers:
-        - build-name:
-            name: '$BUILD_NUMBER - Scenario: $DEPLOY_SCENARIO'
-        - timeout:
-            timeout: 240
-            abort: true
-        - fix-workspace-permissions
+      - build-name:
+          name: '$BUILD_NUMBER - Scenario: $DEPLOY_SCENARIO'
+      - timeout:
+          timeout: 240
+          abort: true
+      - fix-workspace-permissions
 
     parameters:
-        - project-parameter:
-            project: '{project}'
-            branch: '{branch}'
-        - compass-dovetail-parameter:
-            installer: '{installer}'
-            gs-pathname: '{gs-pathname}'
-        - '{slave-label}-defaults'
-        - '{installer}-defaults'
+      - project-parameter:
+          project: '{project}'
+          branch: '{branch}'
+      - compass-dovetail-parameter:
+          installer: '{installer}'
+          gs-pathname: '{gs-pathname}'
+      - '{slave-label}-defaults'
+      - '{installer}-defaults'
 
     scm:
-        - git-scm
+      - git-scm
 
     builders:
-        - description-setter:
-            description: "POD: $NODE_NAME"
-        - shell:
-            !include-raw-escape: ./compass-download-artifact.sh
-        - shell:
-            !include-raw-escape: ./compass-deploy.sh
+      - description-setter:
+          description: "POD: $NODE_NAME"
+      - shell:
+          !include-raw-escape: ./compass-download-artifact.sh
+      - shell:
+          !include-raw-escape: ./compass-deploy.sh
 
 ########################
 # parameter macros
 - parameter:
     name: compass-dovetail-parameter
     parameters:
-        - string:
-            name: BUILD_DIRECTORY
-            default: $WORKSPACE/build_output
-            description: "Directory where the build artifact will be located upon the completion of the build."
-        - string:
-            name: GS_URL
-            default: '$GS_BASE{gs-pathname}'
-            description: "URL to Google Storage."
-        - choice:
-            name: COMPASS_OPENSTACK_VERSION
-            choices:
-                - 'newton'
+      - string:
+          name: BUILD_DIRECTORY
+          default: $WORKSPACE/build_output
+          description: "Directory where the build artifact will be located upon the completion of the build."
+      - string:
+          name: GS_URL
+          default: '$GS_BASE{gs-pathname}'
+          description: "URL to Google Storage."
+      - choice:
+          name: COMPASS_OPENSTACK_VERSION
+          choices:
+            - 'newton'
 
 ########################
 # trigger macros
 - trigger:
     name: 'compass-os-nosdn-nofeature-ha-baremetal-weekly-danube-trigger'
     triggers:
-        - timed: 'H H * * 0'
+      - timed: 'H H * * 0'
 
 - trigger:
     name: 'dovetail-weekly-trigger'
     triggers:
-        - timed: 'H H * * 0'
+      - timed: 'H H * * 0'
index fe91705..13830ce 100644 (file)
@@ -1,3 +1,4 @@
+---
 - project:
 
     name: compass-project
     slave-label: 'compass-virtual'
 
     stream:
-        - master:
-            branch: '{stream}'
-            gs-pathname: ''
-            ppa-pathname: '/{stream}'
-            disabled: false
-        - danube:
-            branch: 'stable/{stream}'
-            gs-pathname: '/{stream}'
-            ppa-pathname: '/{stream}'
-            disabled: false
-        - euphrates:
-            branch: 'stable/{stream}'
-            gs-pathname: '/{stream}'
-            ppa-pathname: '/{stream}'
-            disabled: false
+      - master:
+          branch: '{stream}'
+          gs-pathname: ''
+          ppa-pathname: '/{stream}'
+          disabled: false
+      - danube:
+          branch: 'stable/{stream}'
+          gs-pathname: '/{stream}'
+          ppa-pathname: '/{stream}'
+          disabled: false
+      - euphrates:
+          branch: 'stable/{stream}'
+          gs-pathname: '/{stream}'
+          ppa-pathname: '/{stream}'
+          disabled: false
 
     jobs:
-        - '{installer}-build-daily-{stream}'
-        - 'compass-build-ppa-{stream}'
+      - '{installer}-build-daily-{stream}'
+      - 'compass-build-ppa-{stream}'
 
 ########################
 # job templates
     concurrent: true
 
     properties:
-        - logrotate-default
-        - throttle:
-            enabled: true
-            max-total: 1
-            max-per-node: 1
-            option: 'project'
+      - logrotate-default
+      - throttle:
+          enabled: true
+          max-total: 1
+          max-per-node: 1
+          option: 'project'
 
     parameters:
-        - project-parameter:
-            project: '{project}'
-            branch: '{branch}'
-        - compass-project-parameter:
-            installer: '{installer}'
-            gs-pathname: '{gs-pathname}'
-            ppa-pathname: '{ppa-pathname}'
-        - 'opnfv-build-ubuntu-defaults'
-        - '{installer}-defaults'
+      - project-parameter:
+          project: '{project}'
+          branch: '{branch}'
+      - compass-project-parameter:
+          installer: '{installer}'
+          gs-pathname: '{gs-pathname}'
+          ppa-pathname: '{ppa-pathname}'
+      - 'opnfv-build-ubuntu-defaults'
+      - '{installer}-defaults'
 
     scm:
-        - git-scm
+      - git-scm
 
     triggers:
-        - timed: 'H 8 * * *'
+      - timed: 'H 8 * * *'
 
     builders:
-        - shell:
-            !include-raw-escape: ./compass-build.sh
-        - shell:
-            !include-raw-escape: ./compass-upload-artifact.sh
-        - 'clean-workspace'
+      - shell:
+          !include-raw-escape: ./compass-build.sh
+      - shell:
+          !include-raw-escape: ./compass-upload-artifact.sh
+      - 'clean-workspace'
 
 - job-template:
     name: 'compass-build-ppa-{stream}'
     concurrent: true
 
     properties:
-        - logrotate-default
-        - throttle:
-            enabled: true
-            max-total: 1
-            max-per-node: 1
-            option: 'project'
+      - logrotate-default
+      - throttle:
+          enabled: true
+          max-total: 1
+          max-per-node: 1
+          option: 'project'
 
     parameters:
-        - project-parameter:
-            project: '{project}'
-            branch: '{branch}'
-        - compass-project-parameter:
-            installer: '{installer}'
-            gs-pathname: '{gs-pathname}'
-            ppa-pathname: '{ppa-pathname}'
-        - '{node}-defaults'
-        - '{installer}-defaults'
+      - project-parameter:
+          project: '{project}'
+          branch: '{branch}'
+      - compass-project-parameter:
+          installer: '{installer}'
+          gs-pathname: '{gs-pathname}'
+          ppa-pathname: '{ppa-pathname}'
+      - '{node}-defaults'
+      - '{installer}-defaults'
     scm:
-        - git-scm
+      - git-scm
 
     builders:
-        - shell:
-            !include-raw-escape: ./compass-makeppa.sh
-
+      - shell:
+          !include-raw-escape: ./compass-makeppa.sh
 
 
 ########################
 - parameter:
     name: compass-project-parameter
     parameters:
-        - string:
-            name: BUILD_DIRECTORY
-            default: $WORKSPACE/build_output
-            description: "Directory where the build artifact will be located upon the completion of the build."
-        - string:
-            name: CACHE_DIRECTORY
-            default: "$HOME/opnfv/cache/$PROJECT{gs-pathname}"
-            description: "Directory where the cache to be used during the build is located."
-        - string:
-            name: GS_URL
-            default: '$GS_BASE{gs-pathname}'
-            description: "URL to Google Storage."
-        - string:
-            name: PPA_REPO
-            default: "http://artifacts.opnfv.org/compass4nfv/package{ppa-pathname}"
-        - string:
-            name: PPA_CACHE
-            default: "$WORKSPACE/work/repo/"
-
+      - string:
+          name: BUILD_DIRECTORY
+          default: $WORKSPACE/build_output
+          description: "Directory where the build artifact will be located upon the completion of the build."
+      - string:
+          name: CACHE_DIRECTORY
+          default: "$HOME/opnfv/cache/$PROJECT{gs-pathname}"
+          description: "Directory where the cache to be used during the build is located."
+      - string:
+          name: GS_URL
+          default: '$GS_BASE{gs-pathname}'
+          description: "URL to Google Storage."
+      - string:
+          name: PPA_REPO
+          default: "http://artifacts.opnfv.org/compass4nfv/package{ppa-pathname}"
+      - string:
+          name: PPA_CACHE
+          default: "$WORKSPACE/work/repo/"
index f4fe8f6..6927145 100644 (file)
@@ -1,50 +1,51 @@
+---
 - project:
     name: 'compass-verify-jobs'
 
     project: 'compass4nfv'
 
     installer: 'compass'
-#####################################
-# branch definitions
-#####################################
+    #####################################
+    # branch definitions
+    #####################################
     stream:
-        - master:
-            branch: '{stream}'
-            gs-pathname: ''
-            ppa-pathname: '/{stream}'
-            disabled: false
-            openstack-version: 'ocata'
-            branch-type: 'master'
-        - danube:
-            branch: 'stable/{stream}'
-            gs-pathname: '/{stream}'
-            ppa-pathname: '/{stream}'
-            disabled: false
-            openstack-version: 'newton'
-            branch-type: 'branch'
+      - master:
+          branch: '{stream}'
+          gs-pathname: ''
+          ppa-pathname: '/{stream}'
+          disabled: false
+          openstack-version: 'ocata'
+          branch-type: 'master'
+      - danube:
+          branch: 'stable/{stream}'
+          gs-pathname: '/{stream}'
+          ppa-pathname: '/{stream}'
+          disabled: false
+          openstack-version: 'newton'
+          branch-type: 'branch'
 
     distro:
-        - 'xenial':
-            disabled: false
-            os-version: 'xenial'
-            openstack-os-version: ''
-        - 'centos7':
-            disabled: true
-            os-version: 'centos7'
-            openstack-os-version: ''
-#####################################
-# patch verification phases
-#####################################
+      - 'xenial':
+          disabled: false
+          os-version: 'xenial'
+          openstack-os-version: ''
+      - 'centos7':
+          disabled: true
+          os-version: 'centos7'
+          openstack-os-version: ''
+    #####################################
+    # patch verification phases
+    #####################################
     phase:
-        - 'basic'
-        - 'deploy-virtual'
-#####################################
-# jobs
-#####################################
+      - 'basic'
+      - 'deploy-virtual'
+    #####################################
+    # jobs
+    #####################################
     jobs:
-        - 'compass-verify-{distro}-{stream}'
-        - 'compass-verify-k8-{distro}-{stream}'
-        - 'compass-verify-{phase}-{distro}-{stream}'
+      - 'compass-verify-{distro}-{stream}'
+      - 'compass-verify-k8-{distro}-{stream}'
+      - 'compass-verify-{phase}-{distro}-{stream}'
 #####################################
 # job templates
 #####################################
     concurrent: true
 
     properties:
-        - logrotate-default
-        - throttle:
-            enabled: true
-            max-total: 4
-            max-per-node: 1
-            option: 'project'
-        - build-blocker:
-            use-build-blocker: true
-            blocking-jobs:
-                - 'compass-verify-[^-]*-[^-]*'
-                - 'compass-os-.*?-virtual-daily-.*?'
-            block-level: 'NODE'
+      - logrotate-default
+      - throttle:
+          enabled: true
+          max-total: 4
+          max-per-node: 1
+          option: 'project'
+      - build-blocker:
+          use-build-blocker: true
+          blocking-jobs:
+            - 'compass-verify-[^-]*-[^-]*'
+            - 'compass-os-.*?-virtual-daily-.*?'
+          block-level: 'NODE'
 
     wrappers:
-        - ssh-agent-wrapper
-        - timeout:
-            timeout: 240
-            fail: true
-        - fix-workspace-permissions
+      - ssh-agent-wrapper
+      - timeout:
+          timeout: 240
+          fail: true
+      - fix-workspace-permissions
 
     scm:
-        - git-scm-gerrit
+      - git-scm-gerrit
 
     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: '**/*'
-                disable-strict-forbidden-file-verification: 'true'
-                forbidden-file-paths:
-                  - compare-type: ANT
-                    pattern: 'docs/**'
-            readable-message: true
+      - 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: '**/*'
+              disable-strict-forbidden-file-verification: 'true'
+              forbidden-file-paths:
+                - compare-type: ANT
+                  pattern: 'docs/**'
+          readable-message: true
 
     parameters:
-        - project-parameter:
-            project: '{project}'
-            branch: '{branch}'
-        - 'compass-virtual-{branch-type}-defaults'
-        - '{installer}-defaults'
-        - 'compass-verify-defaults':
-            installer: '{installer}'
-            gs-pathname: '{gs-pathname}'
-            ppa-pathname: '{ppa-pathname}'
-        - string:
-            name: DEPLOY_SCENARIO
-            default: 'os-nosdn-nofeature-ha'
+      - project-parameter:
+          project: '{project}'
+          branch: '{branch}'
+      - 'compass-virtual-{branch-type}-defaults'
+      - '{installer}-defaults'
+      - 'compass-verify-defaults':
+          installer: '{installer}'
+          gs-pathname: '{gs-pathname}'
+          ppa-pathname: '{ppa-pathname}'
+      - string:
+          name: DEPLOY_SCENARIO
+          default: 'os-nosdn-nofeature-ha'
 
     builders:
-        - description-setter:
-            description: "Built on $NODE_NAME"
-        - multijob:
-            name: basic
-            condition: SUCCESSFUL
-            projects:
-                - name: 'opnfv-lint-verify-{stream}'
-                  current-parameters: true
-                  node-parameters: true
-                  kill-phase-on: FAILURE
-                  abort-all-job: true
-                - name: 'opnfv-yamllint-verify-{stream}'
-                  current-parameters: true
-                  node-parameters: true
-                  kill-phase-on: FAILURE
-                  abort-all-job: true
-        - multijob:
-            name: deploy-virtual
-            condition: SUCCESSFUL
-            projects:
-                - name: 'compass-verify-deploy-virtual-{distro}-{stream}'
-                  current-parameters: true
-                  predefined-parameters: |
-                    COMPASS_OS_VERSION={os-version}
-                    COMPASS_OPENSTACK_VERSION={openstack-version}
-                  node-parameters: true
-                  kill-phase-on: FAILURE
-                  abort-all-job: true
-        - multijob:
-            name: smoke-test
-            condition: SUCCESSFUL
-            projects:
-                - name: 'functest-compass-virtual-suite-{stream}'
-                  current-parameters: false
-                  predefined-parameters: |
-                    FUNCTEST_MODE=tier
-                    FUNCTEST_TIER=healthcheck
-                    DEPLOY_SCENARIO=os-nosdn-nofeature-ha
-                  node-parameters: true
-                  kill-phase-on: NEVER
-                  abort-all-job: true
-                - name: 'functest-compass-virtual-suite-{stream}'
-                  current-parameters: false
-                  predefined-parameters: |
-                    FUNCTEST_MODE=testcase
-                    FUNCTEST_SUITE_NAME=vping_ssh
-                    DEPLOY_SCENARIO=os-nosdn-nofeature-ha
-                  node-parameters: true
-                  kill-phase-on: NEVER
-                  abort-all-job: true
+      - description-setter:
+          description: "Built on $NODE_NAME"
+      - multijob:
+          name: basic
+          condition: SUCCESSFUL
+          projects:
+            - name: 'opnfv-lint-verify-{stream}'
+              current-parameters: true
+              node-parameters: true
+              kill-phase-on: FAILURE
+              abort-all-job: true
+            - name: 'opnfv-yamllint-verify-{stream}'
+              current-parameters: true
+              node-parameters: true
+              kill-phase-on: FAILURE
+              abort-all-job: true
+      - multijob:
+          name: deploy-virtual
+          condition: SUCCESSFUL
+          projects:
+            - name: 'compass-verify-deploy-virtual-{distro}-{stream}'
+              current-parameters: true
+              predefined-parameters: |
+                COMPASS_OS_VERSION={os-version}
+                COMPASS_OPENSTACK_VERSION={openstack-version}
+              node-parameters: true
+              kill-phase-on: FAILURE
+              abort-all-job: true
+      - multijob:
+          name: smoke-test
+          condition: SUCCESSFUL
+          projects:
+            - name: 'functest-compass-virtual-suite-{stream}'
+              current-parameters: false
+              predefined-parameters: |
+                FUNCTEST_MODE=tier
+                FUNCTEST_TIER=healthcheck
+                DEPLOY_SCENARIO=os-nosdn-nofeature-ha
+              node-parameters: true
+              kill-phase-on: NEVER
+              abort-all-job: true
+            - name: 'functest-compass-virtual-suite-{stream}'
+              current-parameters: false
+              predefined-parameters: |
+                FUNCTEST_MODE=testcase
+                FUNCTEST_SUITE_NAME=vping_ssh
+                DEPLOY_SCENARIO=os-nosdn-nofeature-ha
+              node-parameters: true
+              kill-phase-on: NEVER
+              abort-all-job: true
 
 - job-template:
     name: 'compass-verify-k8-{distro}-{stream}'
     concurrent: true
 
     properties:
-        - logrotate-default
-        - throttle:
-            enabled: true
-            max-total: 4
-            max-per-node: 1
-            option: 'project'
-        - build-blocker:
-            use-build-blocker: true
-            blocking-jobs:
-                - 'compass-verify-[^-]*-[^-]*'
-                - 'compass-os-.*?-virtual-daily-.*?'
-            block-level: 'NODE'
+      - logrotate-default
+      - throttle:
+          enabled: true
+          max-total: 4
+          max-per-node: 1
+          option: 'project'
+      - build-blocker:
+          use-build-blocker: true
+          blocking-jobs:
+            - 'compass-verify-[^-]*-[^-]*'
+            - 'compass-os-.*?-virtual-daily-.*?'
+          block-level: 'NODE'
 
     wrappers:
-        - ssh-agent-wrapper
-        - timeout:
-            timeout: 240
-            fail: true
-        - fix-workspace-permissions
+      - ssh-agent-wrapper
+      - timeout:
+          timeout: 240
+          fail: true
+      - fix-workspace-permissions
 
     scm:
-        - git-scm-gerrit
+      - git-scm-gerrit
 
     triggers:
-        - gerrit:
-            server-name: 'gerrit.opnfv.org'
-            trigger-on:
-                - comment-added-contains-event:
-                    comment-contains-value: 'check k8'
-                - comment-added-contains-event:
-                    comment-contains-value: 'verify k8'
-                - comment-added-contains-event:
-                    comment-contains-value: 'check kubernetes'
-                - comment-added-contains-event:
-                    comment-contains-value: 'verify kubernetes'
-            projects:
-              - project-compare-type: 'ANT'
-                project-pattern: '{project}'
-                branches:
-                  - branch-compare-type: 'ANT'
-                    branch-pattern: '**/{branch}'
-                file-paths:
-                  - compare-type: ANT
-                    pattern: '**/*'
-                forbidden-file-paths:
-                  - compare-type: ANT
-                    pattern: 'docs/**'
-            readable-message: true
+      - gerrit:
+          server-name: 'gerrit.opnfv.org'
+          trigger-on:
+            - comment-added-contains-event:
+                comment-contains-value: 'check k8'
+            - comment-added-contains-event:
+                comment-contains-value: 'verify k8'
+            - comment-added-contains-event:
+                comment-contains-value: 'check kubernetes'
+            - comment-added-contains-event:
+                comment-contains-value: 'verify kubernetes'
+          projects:
+            - project-compare-type: 'ANT'
+              project-pattern: '{project}'
+              branches:
+                - branch-compare-type: 'ANT'
+                  branch-pattern: '**/{branch}'
+              file-paths:
+                - compare-type: ANT
+                  pattern: '**/*'
+              forbidden-file-paths:
+                - compare-type: ANT
+                  pattern: 'docs/**'
+          readable-message: true
 
     parameters:
-        - project-parameter:
-            project: '{project}'
-            branch: '{branch}'
-        - 'compass-virtual-{branch-type}-defaults'
-        - '{installer}-defaults'
-        - 'compass-verify-defaults':
-            installer: '{installer}'
-            gs-pathname: '{gs-pathname}'
-            ppa-pathname: '{ppa-pathname}'
-        - string:
-            name: DEPLOY_SCENARIO
-            default: 'k8-nosdn-nofeature-ha'
+      - project-parameter:
+          project: '{project}'
+          branch: '{branch}'
+      - 'compass-virtual-{branch-type}-defaults'
+      - '{installer}-defaults'
+      - 'compass-verify-defaults':
+          installer: '{installer}'
+          gs-pathname: '{gs-pathname}'
+          ppa-pathname: '{ppa-pathname}'
+      - string:
+          name: DEPLOY_SCENARIO
+          default: 'k8-nosdn-nofeature-ha'
 
     builders:
-        - description-setter:
-            description: "Built on $NODE_NAME"
-        - multijob:
-            name: basic
-            condition: SUCCESSFUL
-            projects:
-                - name: 'opnfv-lint-verify-{stream}'
-                  current-parameters: true
-                  node-parameters: true
-                  kill-phase-on: FAILURE
-                  abort-all-job: true
-                - name: 'opnfv-yamllint-verify-{stream}'
-                  current-parameters: true
-                  node-parameters: true
-                  kill-phase-on: FAILURE
-                  abort-all-job: true
-        - multijob:
-            name: deploy-virtual
-            condition: SUCCESSFUL
-            projects:
-                - name: 'compass-verify-deploy-virtual-{distro}-{stream}'
-                  current-parameters: true
-                  predefined-parameters: |
-                    COMPASS_OS_VERSION={os-version}
-                  node-parameters: true
-                  kill-phase-on: FAILURE
-                  abort-all-job: true
+      - description-setter:
+          description: "Built on $NODE_NAME"
+      - multijob:
+          name: basic
+          condition: SUCCESSFUL
+          projects:
+            - name: 'opnfv-lint-verify-{stream}'
+              current-parameters: true
+              node-parameters: true
+              kill-phase-on: FAILURE
+              abort-all-job: true
+            - name: 'opnfv-yamllint-verify-{stream}'
+              current-parameters: true
+              node-parameters: true
+              kill-phase-on: FAILURE
+              abort-all-job: true
+      - multijob:
+          name: deploy-virtual
+          condition: SUCCESSFUL
+          projects:
+            - name: 'compass-verify-deploy-virtual-{distro}-{stream}'
+              current-parameters: true
+              predefined-parameters: |
+                COMPASS_OS_VERSION={os-version}
+              node-parameters: true
+              kill-phase-on: FAILURE
+              abort-all-job: true
 
 - job-template:
     name: 'compass-verify-{phase}-{distro}-{stream}'
     concurrent: true
 
     properties:
-        - logrotate-default
-        - throttle:
-            enabled: true
-            max-per-node: 1
-            option: 'project'
-        - build-blocker:
-            use-build-blocker: true
-            blocking-jobs:
-                - 'compass-os-.*?-virtual-daily-.*?'
-                - 'compass-verify-deploy-.*'
-                - 'functest-compass-virtual.*'
-            block-level: 'NODE'
+      - logrotate-default
+      - throttle:
+          enabled: true
+          max-per-node: 1
+          option: 'project'
+      - build-blocker:
+          use-build-blocker: true
+          blocking-jobs:
+            - 'compass-os-.*?-virtual-daily-.*?'
+            - 'compass-verify-deploy-.*'
+            - 'functest-compass-virtual.*'
+          block-level: 'NODE'
 
     wrappers:
-        - ssh-agent-wrapper
-        - timeout:
-            timeout: 240
-            fail: true
-        - fix-workspace-permissions
+      - ssh-agent-wrapper
+      - timeout:
+          timeout: 240
+          fail: true
+      - fix-workspace-permissions
 
     scm:
-        - git-scm-gerrit
+      - git-scm-gerrit
 
     builders:
-        - description-setter:
-            description: "Built on $NODE_NAME"
-        - '{project}-verify-{phase}-macro'
+      - description-setter:
+          description: "Built on $NODE_NAME"
+      - '{project}-verify-{phase}-macro'
 
 #####################################
 # builder macros
 - builder:
     name: 'compass4nfv-verify-basic-macro'
     builders:
-        - shell: |
-            #!/bin/bash
+      - shell: |
+          #!/bin/bash
 
-            echo "Not activated!"
+          echo "Not activated!"
 
 - builder:
     name: 'compass4nfv-verify-deploy-virtual-macro'
     builders:
-        - shell:
-            !include-raw: ./compass-build.sh
-        - shell:
-            !include-raw: ./compass-deploy.sh
+      - shell:
+          !include-raw: ./compass-build.sh
+      - shell:
+          !include-raw: ./compass-deploy.sh
 #####################################
 # parameter macros
 #####################################
 - parameter:
     name: 'compass-verify-defaults'
     parameters:
-        - string:
-            name: BUILD_DIRECTORY
-            default: $WORKSPACE/build_output
-            description: "Directory where the build artifact will be located upon the completion of the build."
-        - string:
-            name: CACHE_DIRECTORY
-            default: "$HOME/opnfv/cache/$PROJECT{gs-pathname}"
-            description: "Directory where the cache to be used during the build is located."
-        - string:
-            name: GS_URL
-            default: '$GS_BASE{gs-pathname}'
-            description: "URL to Google Storage."
-        - string:
-            name: PPA_REPO
-            default: "http://artifacts.opnfv.org/compass4nfv/package{ppa-pathname}"
-        - string:
-            name: PPA_CACHE
-            default: "$WORKSPACE/work/repo/"
-        - choice:
-            name: COMPASS_OS_VERSION
-            choices:
-                - 'xenial'
-                - 'centos7'
+      - string:
+          name: BUILD_DIRECTORY
+          default: $WORKSPACE/build_output
+          description: "Directory where the build artifact will be located upon the completion of the build."
+      - string:
+          name: CACHE_DIRECTORY
+          default: "$HOME/opnfv/cache/$PROJECT{gs-pathname}"
+          description: "Directory where the cache to be used during the build is located."
+      - string:
+          name: GS_URL
+          default: '$GS_BASE{gs-pathname}'
+          description: "URL to Google Storage."
+      - string:
+          name: PPA_REPO
+          default: "http://artifacts.opnfv.org/compass4nfv/package{ppa-pathname}"
+      - string:
+          name: PPA_CACHE
+          default: "$WORKSPACE/work/repo/"
+      - choice:
+          name: COMPASS_OS_VERSION
+          choices:
+            - 'xenial'
+            - 'centos7'
index 593bbf7..3e5e5de 100644 (file)
@@ -16,7 +16,7 @@
           branch: '{stream}'
           gs-pathname: ''
           disabled: false
-      - danube:
+      - euphrates:
           branch: 'stable/{stream}'
           gs-pathname: '/{stream}'
           disabled: false
index db365cb..70a3cc5 100644 (file)
@@ -16,7 +16,7 @@
           branch: '{stream}'
           gs-pathname: ''
           disabled: false
-      - danube:
+      - euphrates:
           branch: 'stable/{stream}'
           gs-pathname: '/{stream}'
           disabled: false
index c85725b..d9ac0b8 100644 (file)
@@ -16,7 +16,7 @@
           branch: '{stream}'
           gs-pathname: ''
           disabled: false
-      - danube:
+      - euphrates:
           branch: 'stable/{stream}'
           gs-pathname: '/{stream}'
           disabled: false
index 237861d..b3c37b8 100644 (file)
@@ -1,3 +1,4 @@
+---
 # jenkins job templates for Daisy
 # TODO
 # [ ] enable baremetal jobs after baremetal deployment finish
     project: '{name}'
     installer: '{name}'
 
-#--------------------------------
-# BRANCH ANCHORS
-#--------------------------------
+    # -------------------------------
+    # BRANCH ANCHORS
+    # -------------------------------
     master: &master
-        stream: master
-        branch: '{stream}'
-        disabled: false
-        gs-pathname: ''
+      stream: master
+      branch: '{stream}'
+      disabled: false
+      gs-pathname: ''
     euphrates: &euphrates
-        stream: euphrates
-        branch: 'stable/{stream}'
-        gs-pathname: '/{stream}'
-        disabled: false
+      stream: euphrates
+      branch: 'stable/{stream}'
+      gs-pathname: '/{stream}'
+      disabled: false
 
-#--------------------------------
-# POD, INSTALLER, AND BRANCH MAPPING
-#--------------------------------
-#        CI PODs
-#--------------------------------
+    # -------------------------------
+    # POD, INSTALLER, AND BRANCH MAPPING
+    # -------------------------------
+    #        CI PODs
+    # -------------------------------
     pod:
-#        - baremetal:
-#            slave-label: daisy-baremetal
-#            <<: *master
-        - virtual:
-            slave-label: daisy-virtual
-            <<: *master
-        - baremetal:
-            slave-label: daisy-baremetal
-            <<: *euphrates
-        - virtual:
-            slave-label: daisy-virtual
-            <<: *euphrates
-#--------------------------------
-#        None-CI PODs
-#--------------------------------
-        - baremetal:
-            slave-label: zte-pod3
-            <<: *master
+      # - baremetal:
+      #     slave-label: daisy-baremetal
+      #     <<: *master
+      - virtual:
+          slave-label: daisy-virtual
+          <<: *master
+      - baremetal:
+          slave-label: daisy-baremetal
+          <<: *euphrates
+      - virtual:
+          slave-label: daisy-virtual
+          <<: *euphrates
+      # -------------------------------
+      #        None-CI PODs
+      # -------------------------------
+      - baremetal:
+          slave-label: zte-pod3
+          <<: *master
 
-#--------------------------------
-#       scenarios
-#--------------------------------
+    # -------------------------------
+    #        None-CI PODs
+    # -------------------------------
+
+    # -------------------------------
+    #       scenarios
+    # -------------------------------
     scenario:
-        # HA scenarios
-        - 'os-nosdn-nofeature-ha':
-            auto-trigger-name: 'daisy-{scenario}-{pod}-daily-{stream}-trigger'
-        # NOHA scenarios
-        - 'os-nosdn-nofeature-noha':
-            auto-trigger-name: 'daisy-{scenario}-{pod}-daily-{stream}-trigger'
-        # ODL_L3 scenarios
-        - 'os-odl-nofeature-ha':
-            auto-trigger-name: 'daisy-{scenario}-{pod}-daily-{stream}-trigger'
+      # HA scenarios
+      - 'os-nosdn-nofeature-ha':
+          auto-trigger-name: 'daisy-{scenario}-{pod}-daily-{stream}-trigger'
+      # NOHA scenarios
+      - 'os-nosdn-nofeature-noha':
+          auto-trigger-name: 'daisy-{scenario}-{pod}-daily-{stream}-trigger'
+      # ODL_L3 scenarios
+      - 'os-odl-nofeature-ha':
+          auto-trigger-name: 'daisy-{scenario}-{pod}-daily-{stream}-trigger'
 
     jobs:
-        - '{project}-{scenario}-{pod}-daily-{stream}'
-        - '{project}-deploy-{pod}-daily-{stream}'
+      - '{project}-{scenario}-{pod}-daily-{stream}'
+      - '{project}-deploy-{pod}-daily-{stream}'
 
 ########################
 # job templates
     concurrent: false
 
     properties:
-        - logrotate-default
-        - throttle:
-            enabled: true
-            max-total: 4
-            max-per-node: 1
-            option: 'project'
-        - build-blocker:
-            use-build-blocker: true
-            blocking-jobs:
-                - 'daisy-daily-.*'
-            block-level: 'NODE'
+      - logrotate-default
+      - throttle:
+          enabled: true
+          max-total: 4
+          max-per-node: 1
+          option: 'project'
+      - build-blocker:
+          use-build-blocker: true
+          blocking-jobs:
+            - 'daisy-daily-.*'
+          block-level: 'NODE'
 
     wrappers:
-        - build-name:
-            name: '$BUILD_NUMBER - Scenario: $DEPLOY_SCENARIO'
+      - build-name:
+          name: '$BUILD_NUMBER - Scenario: $DEPLOY_SCENARIO'
 
     triggers:
-        - '{auto-trigger-name}'
+      - '{auto-trigger-name}'
 
     parameters:
-        - project-parameter:
-            project: '{project}'
-            branch: '{branch}'
-        - '{installer}-defaults'
-        - '{slave-label}-defaults':
-            installer: '{installer}'
-        - string:
-            name: DEPLOY_SCENARIO
-            default: '{scenario}'
-        - 'daisy-project-parameter':
-            gs-pathname: '{gs-pathname}'
+      - project-parameter:
+          project: '{project}'
+          branch: '{branch}'
+      - '{installer}-defaults'
+      - '{slave-label}-defaults':
+          installer: '{installer}'
+      - string:
+          name: DEPLOY_SCENARIO
+          default: '{scenario}'
+      - 'daisy-project-parameter':
+          gs-pathname: '{gs-pathname}'
 
     builders:
-        - description-setter:
-            description: "POD: $NODE_NAME"
-        - trigger-builds:
-            - project: 'daisy-deploy-{pod}-daily-{stream}'
-              current-parameters: false
-              predefined-parameters:
-                DEPLOY_SCENARIO={scenario}
-              same-node: true
-              block: true
-        - trigger-builds:
-            - project: 'functest-daisy-{pod}-daily-{stream}'
-              current-parameters: false
-              predefined-parameters:
-                DEPLOY_SCENARIO={scenario}
-              same-node: true
-              block: true
-              block-thresholds:
-                build-step-failure-threshold: 'never'
-                failure-threshold: 'never'
-                unstable-threshold: 'FAILURE'
+      - description-setter:
+          description: "POD: $NODE_NAME"
+      - trigger-builds:
+          - project: 'daisy-deploy-{pod}-daily-{stream}'
+            current-parameters: false
+            predefined-parameters:
+              DEPLOY_SCENARIO={scenario}
+            same-node: true
+            block: true
+      - trigger-builds:
+          - project: 'functest-daisy-{pod}-daily-{stream}'
+            current-parameters: false
+            predefined-parameters:
+              DEPLOY_SCENARIO={scenario}
+            same-node: true
+            block: true
+            block-thresholds:
+              build-step-failure-threshold: 'never'
+              failure-threshold: 'never'
+              unstable-threshold: 'FAILURE'
 
 - job-template:
     name: '{project}-deploy-{pod}-daily-{stream}'
     concurrent: true
 
     properties:
-        - logrotate-default
-        - throttle:
-            enabled: true
-            max-total: 4
-            max-per-node: 1
-            option: 'project'
-        - build-blocker:
-            use-build-blocker: true
-            blocking-jobs:
-                - 'daisy.*-deploy-({pod})?-daily-.*'
-            block-level: 'NODE'
+      - logrotate-default
+      - throttle:
+          enabled: true
+          max-total: 4
+          max-per-node: 1
+          option: 'project'
+      - build-blocker:
+          use-build-blocker: true
+          blocking-jobs:
+            - 'daisy.*-deploy-({pod})?-daily-.*'
+          block-level: 'NODE'
 
     parameters:
-        - project-parameter:
-            project: '{project}'
-            branch: '{branch}'
-        - '{installer}-defaults'
-        - '{slave-label}-defaults':
-            installer: '{installer}'
-        - string:
-            name: DEPLOY_SCENARIO
-            default: 'os-nosdn-nofeature-ha'
-        - 'daisy-project-parameter':
-            gs-pathname: '{gs-pathname}'
-        - string:
-            name: DEPLOY_TIMEOUT
-            default: '150'
-            description: 'Deployment timeout in minutes'
+      - project-parameter:
+          project: '{project}'
+          branch: '{branch}'
+      - '{installer}-defaults'
+      - '{slave-label}-defaults':
+          installer: '{installer}'
+      - string:
+          name: DEPLOY_SCENARIO
+          default: 'os-nosdn-nofeature-ha'
+      - 'daisy-project-parameter':
+          gs-pathname: '{gs-pathname}'
+      - string:
+          name: DEPLOY_TIMEOUT
+          default: '150'
+          description: 'Deployment timeout in minutes'
 
     scm:
-        - git-scm
+      - git-scm
 
     wrappers:
-        - build-name:
-            name: '$BUILD_NUMBER - Scenario: $DEPLOY_SCENARIO'
+      - build-name:
+          name: '$BUILD_NUMBER - Scenario: $DEPLOY_SCENARIO'
 
     builders:
-        - description-setter:
-            description: "POD: $NODE_NAME"
-        - shell:
-            !include-raw-escape: ./daisy4nfv-download-artifact.sh
-        - shell:
-            !include-raw-escape: ./daisy-deploy.sh
-
+      - description-setter:
+          description: "POD: $NODE_NAME"
+      - shell:
+          !include-raw-escape: ./daisy4nfv-download-artifact.sh
+      - shell:
+          !include-raw-escape: ./daisy-deploy.sh
 
 ########################
 # trigger macros
 ########################
-#-----------------------------------------------
+# ----------------------------------------------
 # Triggers for job running on daisy-baremetal against master branch
-#-----------------------------------------------
+# ----------------------------------------------
 # Basic HA Scenarios
 - trigger:
     name: 'daisy-os-nosdn-nofeature-ha-baremetal-daily-master-trigger'
     triggers:
-        - timed: '0 16 * * *'
+      - timed: '0 16 * * *'
 # Basic NOHA Scenarios
 - trigger:
     name: 'daisy-os-nosdn-nofeature-noha-baremetal-daily-master-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 # ODL Scenarios
 - trigger:
     name: 'daisy-os-odl-nofeature-ha-baremetal-daily-master-trigger'
     triggers:
-        - timed: '0 12 * * *'
-#-----------------------------------------------
+      - timed: '0 12 * * *'
+
+# ----------------------------------------------
 # Triggers for job running on daisy-virtual against master branch
-#-----------------------------------------------
+# ----------------------------------------------
 # Basic HA Scenarios
 - trigger:
     name: 'daisy-os-nosdn-nofeature-ha-virtual-daily-master-trigger'
     triggers:
-        - timed: '0 16 * * *'
+      - timed: '0 16 * * *'
 # Basic NOHA Scenarios
 - trigger:
     name: 'daisy-os-nosdn-nofeature-noha-virtual-daily-master-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 # ODL Scenarios
 - trigger:
     name: 'daisy-os-odl-nofeature-ha-virtual-daily-master-trigger'
     triggers:
-        - timed: '0 12 * * *'
+      - timed: '0 12 * * *'
 
-#-----------------------------------------------
+# ----------------------------------------------
 # Triggers for job running on daisy-baremetal against euphrates branch
-#-----------------------------------------------
+# ----------------------------------------------
 # Basic HA Scenarios
 - trigger:
     name: 'daisy-os-nosdn-nofeature-ha-baremetal-daily-euphrates-trigger'
     triggers:
-        - timed: '0 0 * * *'
+      - timed: '0 0 * * *'
 # Basic NOHA Scenarios
 - trigger:
     name: 'daisy-os-nosdn-nofeature-noha-baremetal-daily-euphrates-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 # ODL Scenarios
 - trigger:
     name: 'daisy-os-odl-nofeature-ha-baremetal-daily-euphrates-trigger'
     triggers:
-        - timed: '0 20 * * *'
-#-----------------------------------------------
+      - timed: '0 20 * * *'
+
+# ----------------------------------------------
 # Triggers for job running on daisy-virtual against euphrates branch
-#-----------------------------------------------
+# ----------------------------------------------
 # Basic HA Scenarios
 - trigger:
     name: 'daisy-os-nosdn-nofeature-ha-virtual-daily-euphrates-trigger'
     triggers:
-        - timed: '0 0 * * *'
+      - timed: '0 0 * * *'
 # Basic NOHA Scenarios
 - trigger:
     name: 'daisy-os-nosdn-nofeature-noha-virtual-daily-euphrates-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 # ODL Scenarios
 - trigger:
     name: 'daisy-os-odl-nofeature-ha-virtual-daily-euphrates-trigger'
     triggers:
-        - timed: '0 20 * * *'
+      - timed: '0 20 * * *'
index 8ecee7b..b6e9526 100644 (file)
@@ -1,3 +1,4 @@
+---
 ######################################################################
 # Add daily jobs, for buidoing, deploying and testing
 # TODO:
     installer: 'daisy'
 
     stream:
-        - master:
-            branch: '{stream}'
-            gs-pathname: ''
-            disabled: false
-        - euphrates:
-            branch: 'stable/{stream}'
-            gs-pathname: '/{stream}'
-            disabled: false
+      - master:
+          branch: '{stream}'
+          gs-pathname: ''
+          disabled: false
+      - euphrates:
+          branch: 'stable/{stream}'
+          gs-pathname: '/{stream}'
+          disabled: false
 
     phase:
-        - 'build':
-            slave-label: 'opnfv-build-centos'
-        - 'deploy':
-            slave-label: 'daisy-baremetal'
-        - 'test':
-            slave-label: 'opnfv-build-centos'
+      - 'build':
+          slave-label: 'opnfv-build-centos'
+      - 'deploy':
+          slave-label: 'daisy-baremetal'
+      - 'test':
+          slave-label: 'opnfv-build-centos'
+
     jobs:
-        - '{installer}-daily-{stream}'
-        - '{installer}-{phase}-daily-{stream}'
+      - '{installer}-daily-{stream}'
+      - '{installer}-{phase}-daily-{stream}'
 
 ########################
 # job templates
     concurrent: true
 
     properties:
-        - logrotate-default
-        - throttle:
-            enabled: true
-            max-total: 4
-            option: 'project'
-        - build-blocker:
-            use-build-blocker: true
-            blocking-jobs:
-                - '{installer}-daily-.*'
-                - 'daisy4nfv-merge-build-.*'
-                - 'daisy4nfv-verify-build-.*'
-            block-level: 'NODE'
+      - logrotate-default
+      - throttle:
+          enabled: true
+          max-total: 4
+          option: 'project'
+      - build-blocker:
+          use-build-blocker: true
+          blocking-jobs:
+            - '{installer}-daily-.*'
+            - 'daisy4nfv-merge-build-.*'
+            - 'daisy4nfv-verify-build-.*'
+          block-level: 'NODE'
 
     scm:
-        - git-scm
+      - git-scm
 
     triggers:
-        - timed: '0 8 * * *'
+      - timed: '0 8 * * *'
 
     parameters:
-        - project-parameter:
-            project: '{project}'
-            branch: '{branch}'
-        - 'opnfv-build-centos-defaults'
-        - '{installer}-defaults'
-        - '{installer}-project-parameter':
-            gs-pathname: '{gs-pathname}'
+      - project-parameter:
+          project: '{project}'
+          branch: '{branch}'
+      - 'opnfv-build-centos-defaults'
+      - '{installer}-defaults'
+      - '{installer}-project-parameter':
+          gs-pathname: '{gs-pathname}'
 
     wrappers:
-        - ssh-agent-wrapper
-        - timeout:
-            timeout: 360
-            fail: true
+      - ssh-agent-wrapper
+      - timeout:
+          timeout: 360
+          fail: true
 
     builders:
-        - description-setter:
-            description: "Built on $NODE_NAME"
-        - multijob:
-            name: build
-            condition: SUCCESSFUL
-            projects:
-                - name: '{installer}-build-daily-{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
-                  kill-phase-on: FAILURE
-                  abort-all-job: true
-        - multijob:
-            name: deploy
-            condition: SUCCESSFUL
-            projects:
-                - name: '{installer}-deploy-daily-{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
-                  kill-phase-on: FAILURE
-                  abort-all-job: true
-        - multijob:
-            name: test
-            condition: SUCCESSFUL
-            projects:
-                - name: '{installer}-test-daily-{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
-                  kill-phase-on: FAILURE
-                  abort-all-job: true
+      - description-setter:
+          description: "Built on $NODE_NAME"
+      - multijob:
+          name: build
+          condition: SUCCESSFUL
+          projects:
+            - name: '{installer}-build-daily-{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
+              kill-phase-on: FAILURE
+              abort-all-job: true
+      - multijob:
+          name: deploy
+          condition: SUCCESSFUL
+          projects:
+            - name: '{installer}-deploy-daily-{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
+              kill-phase-on: FAILURE
+              abort-all-job: true
+      - multijob:
+          name: test
+          condition: SUCCESSFUL
+          projects:
+            - name: '{installer}-test-daily-{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
+              kill-phase-on: FAILURE
+              abort-all-job: true
 
     publishers:
-        - '{installer}-recipients'
-        - email-jenkins-admins-on-failure
+      - '{installer}-recipients'
+      - email-jenkins-admins-on-failure
 
 - job-template:
     name: '{installer}-{phase}-daily-{stream}'
     concurrent: true
 
     properties:
-        - logrotate-default
-        - throttle:
-            enabled: true
-            max-total: 6
-            option: 'project'
+      - logrotate-default
+      - throttle:
+          enabled: true
+          max-total: 6
+          option: 'project'
 
     scm:
-        - git-scm
+      - git-scm
 
     wrappers:
-        - ssh-agent-wrapper
-        - timeout:
-            timeout: 360
-            fail: true
+      - ssh-agent-wrapper
+      - timeout:
+          timeout: 360
+          fail: true
 
     parameters:
-        - project-parameter:
-            project: '{project}'
-            branch: '{branch}'
-        - '{installer}-defaults'
-        - '{slave-label}-defaults'
-        - string:
-            name: GIT_BASE
-            default: https://gerrit.opnfv.org/gerrit/$PROJECT
-            description: 'Git URL to use on this Jenkins Slave'
-        - string:
-            name: DEPLOY_SCENARIO
-            default: 'os-nosdn-nofeature-ha'
-        - '{installer}-project-parameter':
-            gs-pathname: '{gs-pathname}'
+      - project-parameter:
+          project: '{project}'
+          branch: '{branch}'
+      - '{installer}-defaults'
+      - '{slave-label}-defaults'
+      - string:
+          name: GIT_BASE
+          default: https://gerrit.opnfv.org/gerrit/$PROJECT
+          description: 'Git URL to use on this Jenkins Slave'
+      - string:
+          name: DEPLOY_SCENARIO
+          default: 'os-nosdn-nofeature-ha'
+      - '{installer}-project-parameter':
+          gs-pathname: '{gs-pathname}'
 
     builders:
-        - description-setter:
-              description: "Built on $NODE_NAME"
-        - '{installer}-{phase}-daily-macro'
+      - description-setter:
+          description: "Built on $NODE_NAME"
+      - '{installer}-{phase}-daily-macro'
 
 #####################################
 # builder macros
 - builder:
     name: 'daisy-build-daily-macro'
     builders:
-        - shell:
-            !include-raw: ./daisy4nfv-basic.sh
-        - shell:
-            !include-raw: ./daisy4nfv-build.sh
-        - shell:
-            !include-raw: ./daisy4nfv-upload-artifact.sh
-        - 'clean-workspace'
+      - shell:
+          !include-raw: ./daisy4nfv-basic.sh
+      - shell:
+          !include-raw: ./daisy4nfv-build.sh
+      - shell:
+          !include-raw: ./daisy4nfv-upload-artifact.sh
+      - 'clean-workspace'
 
 - builder:
     name: 'daisy-deploy-daily-macro'
     builders:
-        - shell:
-            !include-raw: ./daisy4nfv-download-artifact.sh
-        - shell:
-            !include-raw: ./daisy-deploy.sh
+      - shell:
+          !include-raw: ./daisy4nfv-download-artifact.sh
+      - shell:
+          !include-raw: ./daisy-deploy.sh
 
 - builder:
     name: 'daisy-test-daily-macro'
     builders:
-        - shell: |
-            #!/bin/bash
+      - shell: |
+          #!/bin/bash
 
-            echo "Not activated!"
+          echo "Not activated!"
 
 #####################################
 # parameter macros
 - publisher:
     name: 'daisy-recipients'
     publishers:
-        - email:
-            recipients: hu.zhijiang@zte.com.cn lu.yao135@zte.com.cn zhou.ya@zte.com.cn yangyang1@zte.com.cn julienjut@gmail.com
-        - email-jenkins-admins-on-failure
+      # yamllint disable rule:line-length
+      - email:
+          recipients: hu.zhijiang@zte.com.cn lu.yao135@zte.com.cn zhou.ya@zte.com.cn yangyang1@zte.com.cn julienjut@gmail.com
+      # yamllint enable rule:line-length
+      - email-jenkins-admins-on-failure
 
 - parameter:
     name: 'daisy-project-parameter'
     parameters:
-        - string:
-            name: BUILD_DIRECTORY
-            default: $WORKSPACE/build_output
-            description: "Directory where the build artifact will be located upon the completion of the build."
-        - string:
-            name: CACHE_DIRECTORY
-            default: $HOME/opnfv/cache/$INSTALLER_TYPE
-            description: "Directory where the cache to be used during the build is located."
-        - string:
-            name: GS_URL
-            default: artifacts.opnfv.org/$PROJECT{gs-pathname}
-            description: "URL to Google Storage."
+      - string:
+          name: BUILD_DIRECTORY
+          default: $WORKSPACE/build_output
+          description: "Directory where the build artifact will be located upon the completion of the build."
+      - string:
+          name: CACHE_DIRECTORY
+          default: $HOME/opnfv/cache/$INSTALLER_TYPE
+          description: "Directory where the cache to be used during the build is located."
+      - string:
+          name: GS_URL
+          default: artifacts.opnfv.org/$PROJECT{gs-pathname}
+          description: "URL to Google Storage."
index 925f68e..a081b3b 100755 (executable)
@@ -31,6 +31,8 @@ cd $WORKSPACE
     echo "OPNFV_GIT_SHA1=$(git rev-parse HEAD)"
     echo "OPNFV_ARTIFACT_URL=$GS_URL/opnfv-$OPNFV_ARTIFACT_VERSION.bin"
     echo "OPNFV_ARTIFACT_SHA512SUM=$(sha512sum $OUTPUT_DIR/opnfv-$OPNFV_ARTIFACT_VERSION.bin | cut -d' ' -f1)"
+    echo "OPNFV_ARTIFACT_URL_ISO=$GS_URL/opnfv-$OPNFV_ARTIFACT_VERSION.iso"
+    echo "OPNFV_ARTIFACT_SHA512SUM_ISO=$(sha512sum $OUTPUT_DIR/opnfv-$OPNFV_ARTIFACT_VERSION.iso | cut -d' ' -f1)"
     echo "OPNFV_BUILD_URL=$BUILD_URL"
 ) > $WORKSPACE/opnfv.properties
 
index 5bfac1f..f304d0b 100644 (file)
@@ -1,3 +1,4 @@
+---
 - project:
     name: 'daisy4nfv-merge-jobs'
 
@@ -5,37 +6,39 @@
 
     installer: 'daisy'
 
-###########################################################
-# use alias to keep the jobs'name existed already unchanged
-###########################################################
+    ###########################################################
+    # use alias to keep the jobs'name existed already unchanged
+    ###########################################################
     alias: 'daisy4nfv'
 
-#####################################
-# branch definitions
-#####################################
+    #####################################
+    # branch definitions
+    #####################################
     stream:
-        - master:
-            branch: '{stream}'
-            gs-pathname: ''
-            disabled: false
-        - euphrates:
-            branch: 'stable/{stream}'
-            gs-pathname: '/{stream}'
-            disabled: false
-#####################################
-# patch merge phases
-#####################################
+      - master:
+          branch: '{stream}'
+          gs-pathname: ''
+          disabled: false
+      - euphrates:
+          branch: 'stable/{stream}'
+          gs-pathname: '/{stream}'
+          disabled: false
+    #####################################
+    # patch merge phases
+    #####################################
     phase:
-        - 'build':
-            slave-label: 'opnfv-build-centos'
-        - 'deploy-virtual':
-            slave-label: 'daisy-virtual'
-#####################################
-# jobs
-#####################################
+      - 'build':
+          slave-label: 'opnfv-build-centos'
+      - 'deploy-virtual':
+          slave-label: 'daisy-virtual'
+
+    #####################################
+    # jobs
+    #####################################
     jobs:
-        - '{alias}-merge-{stream}'
-        - '{alias}-merge-{phase}-{stream}'
+      - '{alias}-merge-{stream}'
+      - '{alias}-merge-{phase}-{stream}'
+
 #####################################
 # job templates
 #####################################
     concurrent: true
 
     properties:
-        - logrotate-default
-        - throttle:
-            enabled: true
-            max-total: 4
-            option: 'project'
-        - build-blocker:
-            use-build-blocker: true
-            blocking-jobs:
-                - '{alias}-merge-(master|euphrates)'
-            block-level: 'NODE'
+      - logrotate-default
+      - throttle:
+          enabled: true
+          max-total: 4
+          option: 'project'
+      - build-blocker:
+          use-build-blocker: true
+          blocking-jobs:
+            - '{alias}-merge-(master|euphrates)'
+          block-level: 'NODE'
 
     scm:
-        - git-scm
+      - git-scm
 
     wrappers:
-        - ssh-agent-wrapper
-        - timeout:
-            timeout: 360
-            fail: true
+      - ssh-agent-wrapper
+      - timeout:
+          timeout: 360
+          fail: true
 
     triggers:
-        - gerrit:
-            server-name: 'gerrit.opnfv.org'
-            trigger-on:
-                - change-merged-event
-                - comment-added-contains-event:
-                    comment-contains-value: 'remerge'
-            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: 'code/**'
-                      - compare-type: ANT
-                        pattern: 'deploy/**'
-                  disable-strict-forbidden-file-verification: 'true'
-                  forbidden-file-paths:
-                      - compare-type: ANT
-                        pattern: 'docs/**'
-                      - compare-type: ANT
-                        pattern: '.gitignore'
-            readable-message: true
+      - gerrit:
+          server-name: 'gerrit.opnfv.org'
+          trigger-on:
+            - change-merged-event
+            - comment-added-contains-event:
+                comment-contains-value: 'remerge'
+          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: 'code/**'
+                - compare-type: ANT
+                  pattern: 'deploy/**'
+              disable-strict-forbidden-file-verification: 'true'
+              forbidden-file-paths:
+                - compare-type: ANT
+                  pattern: 'docs/**'
+                - compare-type: ANT
+                  pattern: '.gitignore'
+          readable-message: true
 
     parameters:
-        - project-parameter:
-            project: '{project}'
-            branch: '{branch}'
-        - 'opnfv-build-centos-defaults'
-        - '{alias}-merge-defaults':
-            gs-pathname: '{gs-pathname}'
+      - project-parameter:
+          project: '{project}'
+          branch: '{branch}'
+      - 'opnfv-build-centos-defaults'
+      - '{alias}-merge-defaults':
+          gs-pathname: '{gs-pathname}'
 
     builders:
-        - description-setter:
-            description: "Built on $NODE_NAME"
-        - multijob:
-            name: build
-            condition: SUCCESSFUL
-            projects:
-                - name: '{alias}-merge-build-{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
-                  kill-phase-on: FAILURE
-                  abort-all-job: true
-        - multijob:
-            name: deploy-virtual
-            condition: SUCCESSFUL
-            projects:
-                - name: '{alias}-merge-deploy-virtual-{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
-                  kill-phase-on: FAILURE
-                  abort-all-job: true
+      - description-setter:
+          description: "Built on $NODE_NAME"
+      - multijob:
+          name: build
+          condition: SUCCESSFUL
+          projects:
+            - name: '{alias}-merge-build-{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
+              kill-phase-on: FAILURE
+              abort-all-job: true
+      - multijob:
+          name: deploy-virtual
+          condition: SUCCESSFUL
+          projects:
+            - name: '{alias}-merge-deploy-virtual-{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
+              kill-phase-on: FAILURE
+              abort-all-job: true
 
 - job-template:
     name: '{alias}-merge-{phase}-{stream}'
     concurrent: true
 
     properties:
-        - logrotate-default
-        - throttle:
-            enabled: true
-            max-total: 4
-            option: 'project'
-        - build-blocker:
-            use-build-blocker: true
-            blocking-jobs:
-                - '{alias}-merge-{phase}-.*'
-                - '{installer}-daily-.*'
-            block-level: 'NODE'
+      - logrotate-default
+      - throttle:
+          enabled: true
+          max-total: 4
+          option: 'project'
+      - build-blocker:
+          use-build-blocker: true
+          blocking-jobs:
+            - '{alias}-merge-{phase}-.*'
+            - '{installer}-daily-.*'
+          block-level: 'NODE'
 
     scm:
-        - git-scm
+      - git-scm
 
     wrappers:
-        - ssh-agent-wrapper
-        - timeout:
-            timeout: 360
-            fail: true
+      - ssh-agent-wrapper
+      - timeout:
+          timeout: 360
+          fail: true
 
     parameters:
-        - project-parameter:
-            project: '{project}'
-            branch: '{branch}'
-        - '{installer}-defaults'
-        - '{slave-label}-defaults'
-        - '{alias}-merge-defaults':
-            gs-pathname: '{gs-pathname}'
+      - project-parameter:
+          project: '{project}'
+          branch: '{branch}'
+      - '{installer}-defaults'
+      - '{slave-label}-defaults'
+      - '{alias}-merge-defaults':
+          gs-pathname: '{gs-pathname}'
 
     builders:
-        - description-setter:
-            description: "Built on $NODE_NAME"
-        - '{project}-merge-{phase}-macro'
+      - description-setter:
+          description: "Built on $NODE_NAME"
+      - '{project}-merge-{phase}-macro'
 
 #####################################
 # builder macros
 - builder:
     name: 'daisy-merge-build-macro'
     builders:
-        - shell:
-            !include-raw: ./daisy4nfv-basic.sh
-        - shell:
-            !include-raw: ./daisy4nfv-build.sh
-        - shell:
-            !include-raw: ./daisy4nfv-upload-artifact.sh
-        - 'clean-workspace'
+      - shell:
+          !include-raw: ./daisy4nfv-basic.sh
+      - shell:
+          !include-raw: ./daisy4nfv-build.sh
+      - shell:
+          !include-raw: ./daisy4nfv-upload-artifact.sh
+      - 'clean-workspace'
 
 - builder:
     name: 'daisy-merge-deploy-virtual-macro'
     builders:
-        - shell:
-            !include-raw: ./daisy4nfv-download-artifact.sh
-        - shell:
-            !include-raw: ./daisy-deploy.sh
-        - 'clean-workspace'
+      - shell:
+          !include-raw: ./daisy4nfv-download-artifact.sh
+      - shell:
+          !include-raw: ./daisy-deploy.sh
+      - 'clean-workspace'
 
 #####################################
 # parameter macros
 - parameter:
     name: 'daisy4nfv-merge-defaults'
     parameters:
-        - string:
-            name: BUILD_DIRECTORY
-            default: $WORKSPACE/build_output
-            description: "Directory where the build artifact will be located upon the completion of the build."
-        - string:
-            name: CACHE_DIRECTORY
-            default: $HOME/opnfv/cache/$INSTALLER_TYPE
-            description: "Directory where the cache to be used during the build is located."
-        - string:
-            name: GS_URL
-            default: artifacts.opnfv.org/$PROJECT{gs-pathname}
-            description: "URL to Google Storage."
+      - string:
+          name: BUILD_DIRECTORY
+          default: $WORKSPACE/build_output
+          description: "Directory where the build artifact will be located upon the completion of the build."
+      - string:
+          name: CACHE_DIRECTORY
+          default: $HOME/opnfv/cache/$INSTALLER_TYPE
+          description: "Directory where the cache to be used during the build is located."
+      - string:
+          name: GS_URL
+          default: artifacts.opnfv.org/$PROJECT{gs-pathname}
+          description: "URL to Google Storage."
index 6b0aec5..27bb8de 100755 (executable)
@@ -50,13 +50,15 @@ cd $WORKSPACE
 # upload artifact and additional files to google storage
 gsutil cp $BUILD_DIRECTORY/opnfv-$OPNFV_ARTIFACT_VERSION.bin \
     gs://$GS_URL/opnfv-$OPNFV_ARTIFACT_VERSION.bin > gsutil.bin.log 2>&1
+gsutil cp $BUILD_DIRECTORY/opnfv-$OPNFV_ARTIFACT_VERSION.iso \
+    gs://$GS_URL/opnfv-$OPNFV_ARTIFACT_VERSION.bin >> gsutil.bin.log 2>&1
 gsutil cp $WORKSPACE/opnfv.properties \
     gs://$GS_URL/opnfv-$OPNFV_ARTIFACT_VERSION.properties > gsutil.properties.log 2>&1
 if [[ ! "$JOB_NAME" =~ (verify|merge) ]]; then
     gsutil cp $WORKSPACE/opnfv.properties \
     gs://$GS_URL/latest.properties > gsutil.latest.log 2>&1
 elif [[ "$JOB_NAME" =~ "merge" ]]; then
-    echo "Uploaded Daisy4nfv BIN for a merged change"
+    echo "Uploaded Daisy4nfv artifacts for a merged change"
 fi
 
 gsutil -m setmeta \
index 2cf68a9..4100990 100644 (file)
@@ -1,38 +1,42 @@
+---
 - project:
     name: 'daisy4nfv-verify-jobs'
     project: 'daisy'
     installer: 'daisy'
-##########################################################
-# use alias to keep the jobs'name existed alread unchanged
-##########################################################
+    ##########################################################
+    # use alias to keep the jobs'name existed alread unchanged
+    ##########################################################
     alias: 'daisy4nfv'
 
-#####################################
-# branch definitions
-#####################################
+    #####################################
+    # branch definitions
+    #####################################
     stream:
-        - master:
-            branch: '{stream}'
-            gs-pathname: ''
-            disabled: false
-        - euphrates:
-            branch: 'stable/{stream}'
-            gs-pathname: '/{stream}'
-            disabled: false
-#####################################
-# patch verification phases
-#####################################
+      - master:
+          branch: '{stream}'
+          gs-pathname: ''
+          disabled: false
+      - euphrates:
+          branch: 'stable/{stream}'
+          gs-pathname: '/{stream}'
+          disabled: false
+
+    #####################################
+    # patch verification phases
+    #####################################
     phase:
-        - unit:
-            slave-label: 'opnfv-build'
-        - build:
-            slave-label: 'opnfv-build-centos'
-#####################################
-# jobs
-#####################################
+      - unit:
+          slave-label: 'opnfv-build'
+      - build:
+          slave-label: 'opnfv-build-centos'
+
+    #####################################
+    # jobs
+    #####################################
     jobs:
-        - '{alias}-verify-{stream}'
-        - '{alias}-verify-{phase}-{stream}'
+      - '{alias}-verify-{stream}'
+      - '{alias}-verify-{phase}-{stream}'
+
 #####################################
 # job templates
 #####################################
     disabled: false
     concurrent: true
     properties:
-        - logrotate-default
-        - throttle:
-            enabled: true
-            max-total: 4
-            option: 'project'
-        - build-blocker:
-            use-build-blocker: true
-            blocking-jobs:
-                - '{alias}-merge-build-.*'
-            block-level: 'NODE'
+      - logrotate-default
+      - throttle:
+          enabled: true
+          max-total: 4
+          option: 'project'
+      - build-blocker:
+          use-build-blocker: true
+          blocking-jobs:
+            - '{alias}-merge-build-.*'
+          block-level: 'NODE'
 
     scm:
-        - git-scm-gerrit
+      - git-scm-gerrit
+
     wrappers:
-        - ssh-agent-wrapper
-        - timeout:
-            timeout: 360
-            fail: true
+      - ssh-agent-wrapper
+      - timeout:
+          timeout: 360
+          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: 'code/**'
-                      - compare-type: ANT
-                        pattern: 'deploy/**'
-                      - compare-type: ANT
-                        pattern: 'tests/**'
-                  disable-strict-forbidden-file-verification: 'true'
-                  forbidden-file-paths:
-                      - compare-type: ANT
-                        pattern: 'docs/**'
-                      - compare-type: ANT
-                        pattern: '.gitignore'
-            readable-message: true
+      - 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: 'code/**'
+                - compare-type: ANT
+                  pattern: 'deploy/**'
+                - compare-type: ANT
+                  pattern: 'tests/**'
+              disable-strict-forbidden-file-verification: 'true'
+              forbidden-file-paths:
+                - compare-type: ANT
+                  pattern: 'docs/**'
+                - compare-type: ANT
+                  pattern: '.gitignore'
+          readable-message: true
 
     parameters:
-        - project-parameter:
-            project: '{project}'
-            branch: '{branch}'
-        - 'opnfv-build-centos-defaults'
-        - '{alias}-verify-defaults':
-            gs-pathname: '{gs-pathname}'
+      - project-parameter:
+          project: '{project}'
+          branch: '{branch}'
+      - 'opnfv-build-centos-defaults'
+      - '{alias}-verify-defaults':
+          gs-pathname: '{gs-pathname}'
 
     builders:
-        - description-setter:
-            description: "Built on $NODE_NAME"
-        - multijob:
-            name: unit
-            condition: SUCCESSFUL
-            projects:
-                - name: '{alias}-verify-unit-{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
-                  kill-phase-on: FAILURE
-                  abort-all-job: true
-        - multijob:
-            name: build
-            condition: SUCCESSFUL
-            projects:
-                - name: '{alias}-verify-build-{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
-                  kill-phase-on: FAILURE
-                  abort-all-job: true
+      - description-setter:
+          description: "Built on $NODE_NAME"
+      - multijob:
+          name: unit
+          condition: SUCCESSFUL
+          projects:
+            - name: '{alias}-verify-unit-{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
+              kill-phase-on: FAILURE
+              abort-all-job: true
+      - multijob:
+          name: build
+          condition: SUCCESSFUL
+          projects:
+            - name: '{alias}-verify-build-{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
+              kill-phase-on: FAILURE
+              abort-all-job: true
 
 - job-template:
     name: '{alias}-verify-{phase}-{stream}'
     disabled: '{obj:disabled}'
     concurrent: true
     properties:
-        - logrotate-default
-        - throttle:
-            enabled: true
-            max-total: 6
-            option: 'project'
-        - build-blocker:
-            use-build-blocker: true
-            blocking-jobs:
-                - '{alias}-merge-build-.*'
-                - '{alias}-verify-build-.*'
-                - '{installer}-daily-.*'
-            block-level: 'NODE'
+      - logrotate-default
+      - throttle:
+          enabled: true
+          max-total: 6
+          option: 'project'
+      - build-blocker:
+          use-build-blocker: true
+          blocking-jobs:
+            - '{alias}-merge-build-.*'
+            - '{alias}-verify-build-.*'
+            - '{installer}-daily-.*'
+          block-level: 'NODE'
 
     scm:
-        - git-scm-gerrit
+      - git-scm-gerrit
+
     wrappers:
-        - ssh-agent-wrapper
-        - timeout:
-            timeout: 360
-            fail: true
+      - ssh-agent-wrapper
+      - timeout:
+          timeout: 360
+          fail: true
+
     parameters:
-        - project-parameter:
-            project: '{project}'
-            branch: '{branch}'
-        - '{installer}-defaults'
-        - '{slave-label}-defaults'
-        - '{alias}-verify-defaults':
-            gs-pathname: '{gs-pathname}'
+      - project-parameter:
+          project: '{project}'
+          branch: '{branch}'
+      - '{installer}-defaults'
+      - '{slave-label}-defaults'
+      - '{alias}-verify-defaults':
+          gs-pathname: '{gs-pathname}'
 
     builders:
-        - description-setter:
-            description: "Built on $NODE_NAME"
-        - '{project}-verify-{phase}-macro'
+      - description-setter:
+          description: "Built on $NODE_NAME"
+      - '{project}-verify-{phase}-macro'
 
 #####################################
 # builder macros
 - builder:
     name: 'daisy-verify-build-macro'
     builders:
-        - shell:
-            !include-raw: ./daisy4nfv-basic.sh
-        - shell:
-            !include-raw: ./daisy4nfv-build.sh
-        - 'clean-workspace'
+      - shell:
+          !include-raw: ./daisy4nfv-basic.sh
+      - shell:
+          !include-raw: ./daisy4nfv-build.sh
+      - 'clean-workspace'
 
 - builder:
     name: daisy-verify-unit-macro
     builders:
-        - shell: |
-            #!/bin/bash
-            set -o errexit
-            set -o pipefail
-            set -o xtrace
-            tox -e py27
+      - shell: |
+          #!/bin/bash
+          set -o errexit
+          set -o pipefail
+          set -o xtrace
+          tox -e py27
 
 #####################################
 # parameter macros
 - parameter:
     name: 'daisy4nfv-verify-defaults'
     parameters:
-        - string:
-            name: BUILD_DIRECTORY
-            default: $WORKSPACE/build_output
-            description: "Directory where the build artifact will be located upon the completion of the build."
-        - string:
-            name: CACHE_DIRECTORY
-            default: $HOME/opnfv/cache/$INSTALLER_TYPE
-            description: "Directory where the cache to be used during the build is located."
-        - string:
-            name: GS_URL
-            default: artifacts.opnfv.org/$PROJECT{gs-pathname}
-            description: "URL to Google Storage."
+      - string:
+          name: BUILD_DIRECTORY
+          default: $WORKSPACE/build_output
+          description: "Directory where the build artifact will be located upon the completion of the build."
+      - string:
+          name: CACHE_DIRECTORY
+          default: $HOME/opnfv/cache/$INSTALLER_TYPE
+          description: "Directory where the cache to be used during the build is located."
+      - string:
+          name: GS_URL
+          default: artifacts.opnfv.org/$PROJECT{gs-pathname}
+          description: "URL to Google Storage."
index c806429..6a04c5f 100644 (file)
@@ -1,51 +1,52 @@
+---
 - project:
     name: doctor
 
     project: '{name}'
 
     stream:
-        - master:
-            branch: '{stream}'
-            gs-pathname: ''
-            docker-tag: 'latest'
-            disabled: false
-        - euphrates:
-            branch: 'stable/{stream}'
-            gs-pathname: '/{stream}'
-            docker-tag: 'stable'
-            disabled: false
+      - master:
+          branch: '{stream}'
+          gs-pathname: ''
+          docker-tag: 'latest'
+          disabled: false
+      - euphrates:
+          branch: 'stable/{stream}'
+          gs-pathname: '/{stream}'
+          docker-tag: 'stable'
+          disabled: false
 
     installer:
-        - apex:
-            slave-label: 'doctor-apex-verify'
-        - fuel:
-            slave-label: 'doctor-fuel-verify'
-        #- joid:
-        #    slave-label: 'ool-virtual3'
-        #    pod: 'ool-virtual3'
+      - apex:
+          slave-label: 'doctor-apex-verify'
+      - fuel:
+          slave-label: 'doctor-fuel-verify'
+    - joid:
+        slave-label: 'ool-virtual3'
+        pod: 'ool-virtual3'
 
     inspector:
-        - 'sample'
-        - 'congress'
+      - 'sample'
+      - 'congress'
 
     task:
-        - verify:
-            auto-trigger-name: 'doctor-verify'
-            is-python: false
-        - python-verify:
-            auto-trigger-name: 'doctor-verify'
-            is-python: true
+      - verify:
+          auto-trigger-name: 'doctor-verify'
+          is-python: false
+      - python-verify:
+          auto-trigger-name: 'doctor-verify'
+          is-python: true
 
     pod:
-        - armband-baremetal:
-            slave-label: '{pod}'
-        - armband-virtual:
-            slave-label: '{pod}'
+      - armband-baremetal:
+          slave-label: '{pod}'
+      - armband-virtual:
+          slave-label: '{pod}'
 
     jobs:
-        - 'doctor-verify-{stream}'
-        - 'doctor-{task}-{installer}-{inspector}-{pod}-{stream}'
-        - 'doctor-{task}-{installer}-{inspector}-{stream}'
+      - 'doctor-verify-{stream}'
+      - 'doctor-{task}-{installer}-{inspector}-{pod}-{stream}'
+      - 'doctor-{task}-{installer}-{inspector}-{stream}'
 
 - job-template:
     name: 'doctor-verify-{stream}'
     disabled: '{obj:disabled}'
 
     parameters:
-        - project-parameter:
-            project: '{project}'
-            branch: '{branch}'
-        - 'opnfv-build-ubuntu-defaults'
+      - project-parameter:
+          project: '{project}'
+          branch: '{branch}'
+      - 'opnfv-build-ubuntu-defaults'
 
     scm:
-        - git-scm-gerrit
+      - git-scm-gerrit
 
     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: 'doctor_tests/**'
+      - 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: 'doctor_tests/**'
 
     builders:
-        - shell: "[ -e tests/run.sh ] && bash -n ./tests/run.sh"
+      - shell: "[ -e tests/run.sh ] && bash -n ./tests/run.sh"
 
 - job-template:
     name: 'doctor-{task}-{installer}-{inspector}-{pod}-{stream}'
     disabled: '{obj:disabled}'
 
     parameters:
-        - project-parameter:
-            project: '{project}'
-            branch: '{branch}'
-        - 'opnfv-build-ubuntu-defaults'
+      - project-parameter:
+          project: '{project}'
+          branch: '{branch}'
+      - 'opnfv-build-ubuntu-defaults'
 
     scm:
-        - git-scm-gerrit
+      - git-scm-gerrit
 
 
     triggers:
-        - '{auto-trigger-name}':
-            project: '{project}'
-            branch: '{branch}'
-            files: 'doctor_tests/**'
+      - '{auto-trigger-name}':
+          project: '{project}'
+          branch: '{branch}'
+          files: 'doctor_tests/**'
 
     builders:
-        - shell: "[ -e tests/run.sh ] && bash -n ./tests/run.sh"
+      - shell: "[ -e tests/run.sh ] && bash -n ./tests/run.sh"
 
 
 - job-template:
     node: '{slave-label}'
 
     parameters:
-        - project-parameter:
-            project: '{project}'
-            branch: '{branch}'
-        - string:
-            name: OS_CREDS
-            default: /home/jenkins/openstack.creds
-            description: 'OpenStack credentials'
-        - '{slave-label}-defaults'
-        - '{installer}-defaults'
-        - string:
-            name: DOCKER_TAG
-            default: '{docker-tag}'
-            description: 'Tag to pull docker image'
-        - string:
-            name: CLEAN_DOCKER_IMAGES
-            default: 'false'
-            description: 'Remove downloaded docker images (opnfv/functest:*)'
-        - string:
-            name: DEPLOY_SCENARIO
-            default: 'os-nosdn-nofeature-ha'
-            description: 'Scenario to deploy and test'
-        # functest-suite-parameter
-        - string:
-            name: FUNCTEST_MODE
-            default: 'testcase'
-        - string:
-            name: FUNCTEST_SUITE_NAME
-            default: 'doctor-notification'
-        - string:
-            name: TESTCASE_OPTIONS
-            default: '-e INSPECTOR_TYPE={inspector} -e PYTHON_ENABLE={is-python} -v $WORKSPACE:/home/opnfv/repos/doctor'
-            description: 'Addtional parameters specific to test case(s)'
-        # functest-parameter
-        - string:
-            name: GS_PATHNAME
-            default: '{gs-pathname}'
-            description: "Version directory where the opnfv documents will be stored in gs repository"
-        - string:
-            name: FUNCTEST_REPO_DIR
-            default: "/home/opnfv/repos/functest"
-            description: "Directory where the Functest repository is cloned"
-        - string:
-            name: PUSH_RESULTS_TO_DB
-            default: "true"
-            description: "Push the results of all the tests to the resultDB"
-        - string:
-            name: CI_DEBUG
-            default: 'true'
-            description: "Show debug output information"
+      - project-parameter:
+          project: '{project}'
+          branch: '{branch}'
+      - string:
+          name: OS_CREDS
+          default: /home/jenkins/openstack.creds
+          description: 'OpenStack credentials'
+      - '{slave-label}-defaults'
+      - '{installer}-defaults'
+      - string:
+          name: DOCKER_TAG
+          default: '{docker-tag}'
+          description: 'Tag to pull docker image'
+      - string:
+          name: CLEAN_DOCKER_IMAGES
+          default: 'false'
+          description: 'Remove downloaded docker images (opnfv/functest:*)'
+      - string:
+          name: DEPLOY_SCENARIO
+          default: 'os-nosdn-nofeature-ha'
+          description: 'Scenario to deploy and test'
+      # functest-suite-parameter
+      - string:
+          name: FUNCTEST_MODE
+          default: 'testcase'
+      - string:
+          name: FUNCTEST_SUITE_NAME
+          default: 'doctor-notification'
+      - string:
+          name: TESTCASE_OPTIONS
+          default: '-e INSPECTOR_TYPE={inspector} -e PYTHON_ENABLE={is-python} -v $WORKSPACE:/home/opnfv/repos/doctor'
+          description: 'Addtional parameters specific to test case(s)'
+      # functest-parameter
+      - string:
+          name: GS_PATHNAME
+          default: '{gs-pathname}'
+          description: "Version directory where the opnfv documents will be stored in gs repository"
+      - string:
+          name: FUNCTEST_REPO_DIR
+          default: "/home/opnfv/repos/functest"
+          description: "Directory where the Functest repository is cloned"
+      - string:
+          name: PUSH_RESULTS_TO_DB
+          default: "true"
+          description: "Push the results of all the tests to the resultDB"
+      - string:
+          name: CI_DEBUG
+          default: 'true'
+          description: "Show debug output information"
 
     scm:
-        - git-scm-gerrit
+      - git-scm-gerrit
 
     triggers:
-        - '{auto-trigger-name}':
-            project: '{project}'
-            branch: '{branch}'
-            files: 'doctor_tests/**'
+      - '{auto-trigger-name}':
+          project: '{project}'
+          branch: '{branch}'
+          files: 'doctor_tests/**'
 
     builders:
-        - 'clean-workspace-log'
-        - shell: |
-            # NOTE: Create symbolic link, so that we can archive file outside
-            #       of $WORKSPACE .
-            # NOTE: We are printing all logs under 'tests/' during test run,
-            #       so this symbolic link should not be in 'tests/'. Otherwise,
-            #       we'll have the same log twice in jenkins console log.
-            ln -sfn $HOME/opnfv/functest/results/{stream} functest_results
-            # NOTE: Get functest script in $WORKSPACE. This functest script is
-            #       needed to perform VM image download in set-functest-env.sh
-            #       from E release cycle.
-            mkdir -p functest/ci
-            wget https://git.opnfv.org/functest/plain/functest/ci/download_images.sh -O functest/ci/download_images.sh
-        - 'functest-suite-builder'
-        - shell: |
-            functest_log="$HOME/opnfv/functest/results/{stream}/$FUNCTEST_SUITE_NAME.log"
-            # NOTE: checking the test result, as the previous job could return
-            #       0 regardless the result of doctor test scenario.
-            grep -e 'doctor test successfully' $functest_log || exit 1
+      - 'clean-workspace-log'
+      - shell: |
+          # NOTE: Create symbolic link, so that we can archive file outside
+          #       of $WORKSPACE .
+          # NOTE: We are printing all logs under 'tests/' during test run,
+          #       so this symbolic link should not be in 'tests/'. Otherwise,
+          #       we'll have the same log twice in jenkins console log.
+          ln -sfn $HOME/opnfv/functest/results/{stream} functest_results
+          # NOTE: Get functest script in $WORKSPACE. This functest script is
+          #       needed to perform VM image download in set-functest-env.sh
+          #       from E release cycle.
+          mkdir -p functest/ci
+          wget https://git.opnfv.org/functest/plain/functest/ci/download_images.sh -O functest/ci/download_images.sh
+      - 'functest-suite-builder'
+      - shell: |
+          functest_log="$HOME/opnfv/functest/results/{stream}/$FUNCTEST_SUITE_NAME.log"
+          # NOTE: checking the test result, as the previous job could return
+          #       0 regardless the result of doctor test scenario.
+          grep -e 'doctor test successfully' $functest_log || exit 1
 
     publishers:
-        - archive:
-            artifacts: 'doctor_tests/*.log'
-        - archive:
-            artifacts: 'functest_results/$FUNCTEST_SUITE_NAME.log'
-        - email-jenkins-admins-on-failure
+      - archive:
+          artifacts: 'doctor_tests/*.log'
+      - archive:
+          artifacts: 'functest_results/$FUNCTEST_SUITE_NAME.log'
+      - email-jenkins-admins-on-failure
 
 
 #####################################
 - trigger:
     name: 'doctor-verify'
     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: '{files}'
-            skip-vote:
-                successful: true
-                failed: true
-                unstable: true
-                notbuilt: true
+      - 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: '{files}'
+          skip-vote:
+            successful: true
+            failed: true
+            unstable: true
+            notbuilt: true
index 0c8efbe..9a11c6e 100644 (file)
@@ -1,3 +1,4 @@
+---
 ############################################
 # dovetail upload artifacts job
 ############################################
@@ -7,20 +8,20 @@
     project: 'dovetail'
 
     jobs:
-        - 'dovetail-{image}-artifacts-upload-{stream}'
+      - 'dovetail-{image}-artifacts-upload-{stream}'
 
     stream:
-        - master:
-            branch: '{stream}'
-            gs-pathname: ''
-            disabled: false
+      - master:
+          branch: '{stream}'
+          gs-pathname: ''
+          disabled: false
 
     image:
-        - 'dovetail'
-        - 'functest'
-        - 'yardstick'
-        - 'testapi'
-        - 'mongo'
+      - 'dovetail'
+      - 'functest'
+      - 'yardstick'
+      - 'testapi'
+      - 'mongo'
 
 #############################################
 # job template
     concurrent: true
 
     properties:
-        - logrotate-default
-        - throttle:
-            enabled: true
-            max-total: 1
-            max-per-node: 1
-            option: 'project'
+      - logrotate-default
+      - throttle:
+          enabled: true
+          max-total: 1
+          max-per-node: 1
+          option: 'project'
 
     parameters:
-        - project-parameter:
-            project: '{project}'
-            branch: '{branch}'
-        - 'opnfv-build-ubuntu-defaults'
-        - dovetail-parameter:
-            gs-pathname: '{gs-pathname}'
-            image: '{image}'
-            branch: '{branch}'
+      - project-parameter:
+          project: '{project}'
+          branch: '{branch}'
+      - 'opnfv-build-ubuntu-defaults'
+      - dovetail-parameter:
+          gs-pathname: '{gs-pathname}'
+          image: '{image}'
+          branch: '{branch}'
 
     scm:
-        - git-scm
+      - git-scm
 
     builders:
-        - 'dovetail-builder-artifacts-upload'
-        - 'dovetail-upload-artifacts-cache-cleanup'
-        - 'dovetail-images-cleanup'
+      - 'dovetail-builder-artifacts-upload'
+      - 'dovetail-upload-artifacts-cache-cleanup'
+      - 'dovetail-images-cleanup'
 
 ####################
 # parameter macros
 - parameter:
     name: dovetail-parameter
     parameters:
-        - string:
-            name: CACHE_DIR
-            default: $WORKSPACE/cache{gs-pathname}
-            description: "the cache to store packages downloaded"
-        - string:
-            name: STORE_URL
-            default: gs://artifacts.opnfv.org/dovetail{gs-pathname}
-            description: "LF artifacts url for storage of dovetail packages"
-        - string:
-            name: DOCKER_REPO_NAME
-            default: opnfv/{image}
-            description: "docker repo name"
-        - string:
-            name: DOCKER_TAG
-            default: latest
-            description: "docker image tag of which will be uploaded to artifacts"
-        - string:
-            name: STORE_FILE_NAME
-            default: image_{image}_{branch}_$BUILD_ID.docker
-            description: "stored file name"
+      - string:
+          name: CACHE_DIR
+          default: $WORKSPACE/cache{gs-pathname}
+          description: "the cache to store packages downloaded"
+      - string:
+          name: STORE_URL
+          default: gs://artifacts.opnfv.org/dovetail{gs-pathname}
+          description: "LF artifacts url for storage of dovetail packages"
+      - string:
+          name: DOCKER_REPO_NAME
+          default: opnfv/{image}
+          description: "docker repo name"
+      - string:
+          name: DOCKER_TAG
+          default: latest
+          description: "docker image tag of which will be uploaded to artifacts"
+      - string:
+          name: STORE_FILE_NAME
+          default: image_{image}_{branch}_$BUILD_ID.docker
+          description: "stored file name"
 
 ####################################
-#builders for dovetail project
+# builders for dovetail project
 ####################################
 - builder:
     name: dovetail-builder-artifacts-upload
     builders:
-        - shell:
-            !include-raw: ./dovetail-artifacts-upload.sh
+      - shell:
+          !include-raw: ./dovetail-artifacts-upload.sh
 
 - builder:
     name: dovetail-upload-artifacts-cache-cleanup
     builders:
-        - shell: |
-            #!/bin/bash
-            set -o errexit
+      - shell: |
+          #!/bin/bash
+          set -o errexit
 
-            echo "Dovetail: cleanup cache used for storage downloaded packages"
+          echo "Dovetail: cleanup cache used for storage downloaded packages"
 
-            /bin/rm -rf $CACHE_DIR
+          /bin/rm -rf $CACHE_DIR
 
 - builder:
     name: dovetail-images-cleanup
     builders:
-        - shell:
-            !include-raw: ./dovetail-cleanup.sh
+      - shell:
+          !include-raw: ./dovetail-cleanup.sh
index 94f38b1..9fde120 100644 (file)
@@ -1,3 +1,4 @@
+---
 ###################################
 # job configuration for dovetail
 ###################################
 
     project: '{name}'
 
-#---------------------------------------
-# BRANCH ANCHORS
-#---------------------------------------
-# 1)the stream/branch here represents the SUT(System Under Test) stream/branch
-# 2)docker-tag is the docker tag of dovetail(only master by now, then all latest used)
-#   the dovetail stream is one-to-one mapping with dovetail docker-tag
-#   the dovetail is not sync with A/B/C release
-#
+    # --------------------------------------
+    # BRANCH ANCHORS
+    # --------------------------------------
+    # 1)the stream/branch here represents the SUT(System Under Test) stream/branch
+    # 2)docker-tag is the docker tag of dovetail(only master by now, then all latest used)
+    #   the dovetail stream is one-to-one mapping with dovetail docker-tag
+    #   the dovetail is not sync with A/B/C release
     master: &master
-        stream: master
-        branch: '{stream}'
-        dovetail-branch: '{stream}'
-        gs-pathname: ''
-        docker-tag: 'latest'
+      stream: master
+      branch: '{stream}'
+      dovetail-branch: '{stream}'
+      gs-pathname: ''
+      docker-tag: 'latest'
     danube: &danube
-        stream: danube
-        branch: 'stable/{stream}'
-        dovetail-branch: master
-        gs-pathname: '/{stream}'
-        docker-tag: 'cvp.0.7.0'
+      stream: danube
+      branch: 'stable/{stream}'
+      dovetail-branch: master
+      gs-pathname: '/{stream}'
+      docker-tag: 'cvp.0.7.0'
 
-#-----------------------------------
-# POD, PLATFORM, AND BRANCH MAPPING
-#-----------------------------------
-#            CI PODs
-# This section should only contain the SUTs
-# that have been switched using labels for slaves
-#------------------------------------------------
-# the pods, SUTs listed here are just examples to
-# let the dovetail tool run, there can be more ways beside CI to
-# run the dovetail tool.
-# pods, SUTs will be added/adjusted when needed
+    # ----------------------------------
+    # POD, PLATFORM, AND BRANCH MAPPING
+    # ----------------------------------
+    #            CI PODs
+    # This section should only contain the SUTs
+    # that have been switched using labels for slaves
+    # -----------------------------------------------
+    # the pods, SUTs listed here are just examples to
+    # let the dovetail tool run, there can be more ways beside CI to
+    # run the dovetail tool.
+    # pods, SUTs will be added/adjusted when needed
     pod:
-# fuel CI PODs
-        - baremetal:
-            slave-label: fuel-baremetal
-            SUT: fuel
-            auto-trigger-name: 'daily-trigger-disabled'
-            <<: *master
-        - virtual:
-            slave-label: fuel-virtual
-            SUT: fuel
-            auto-trigger-name: 'daily-trigger-disabled'
-            <<: *master
-        - baremetal:
-            slave-label: fuel-baremetal
-            SUT: fuel
-            auto-trigger-name: 'daily-trigger-disabled'
-            <<: *danube
-        - virtual:
-            slave-label: fuel-virtual
-            SUT: fuel
-            auto-trigger-name: 'daily-trigger-disabled'
-            <<: *danube
-#compass CI PODs
-        - baremetal:
-            slave-label: compass-baremetal
-            SUT: compass
-            auto-trigger-name: 'daily-trigger-disabled'
-            <<: *master
-        - virtual:
-            slave-label: compass-virtual
-            SUT: compass
-            auto-trigger-name: 'daily-trigger-disabled'
-            <<: *master
-        - baremetal:
-            slave-label: compass-baremetal
-            SUT: compass
-            auto-trigger-name: 'daily-trigger-disabled'
-            <<: *danube
-        - virtual:
-            slave-label: compass-virtual
-            SUT: compass
-            auto-trigger-name: 'daily-trigger-disabled'
-            <<: *danube
-#--------------------------------
-#    Installers not using labels
-#            CI PODs
-# This section should only contain the installers
-# that have not been switched using labels for slaves
-#--------------------------------
-#apex PODs
-        - virtual:
-            slave-label: apex-virtual-master
-            SUT: apex
-            auto-trigger-name: 'daily-trigger-disabled'
-            <<: *master
-        - baremetal:
-            slave-label: apex-baremetal-master
-            SUT: apex
-            auto-trigger-name: 'daily-trigger-disabled'
-            <<: *master
-        - virtual:
-            slave-label: apex-virtual-danube
-            SUT: apex
-            auto-trigger-name: 'daily-trigger-disabled'
-            <<: *danube
-        - baremetal:
-            slave-label: apex-baremetal-danube
-            SUT: apex
-            auto-trigger-name: 'daily-trigger-disabled'
-            <<: *danube
-#armband CI PODs
-        - armband-baremetal:
-            slave-label: armband-baremetal
-            SUT: fuel
-            auto-trigger-name: 'daily-trigger-disabled'
-            <<: *master
-        - armband-virtual:
-            slave-label: armband-virtual
-            SUT: fuel
-            auto-trigger-name: 'daily-trigger-disabled'
-            <<: *master
-        - armband-baremetal:
-            slave-label: armband-baremetal
-            SUT: fuel
-            auto-trigger-name: 'daily-trigger-disabled'
-            <<: *danube
-        - armband-virtual:
-            slave-label: armband-virtual
-            SUT: fuel
-            auto-trigger-name: 'daily-trigger-disabled'
-            <<: *danube
-#--------------------------------
-#        None-CI PODs
-#--------------------------------
-        - baremetal-centos:
-            slave-label: 'intel-pod8'
-            SUT: compass
-            auto-trigger-name: 'daily-trigger-disabled'
-            <<: *master
-        - zte-pod1:
-            slave-label: zte-pod1
-            SUT: fuel
-            auto-trigger-name: 'daily-trigger-disabled'
-            <<: *master
-        - zte-pod2:
-            slave-label: zte-pod2
-            SUT: fuel
-            auto-trigger-name: 'daily-trigger-disabled'
-            <<: *master
-        - zte-pod3:
-            slave-label: zte-pod3
-            SUT: fuel
-            auto-trigger-name: 'daily-trigger-disabled'
-            <<: *master
-        - zte-pod1:
-            slave-label: zte-pod1
-            SUT: fuel
-            auto-trigger-name: 'daily-trigger-disabled'
-            <<: *danube
-        - zte-pod3:
-            slave-label: zte-pod3
-            SUT: fuel
-            auto-trigger-name: 'daily-trigger-disabled'
-            <<: *danube
-        - huawei-pod4:
-            slave-label: huawei-pod4
-            SUT: apex
-            auto-trigger-name: 'daily-trigger-disabled'
-            <<: *danube
-        - huawei-pod7:
-            slave-label: huawei-pod7
-            SUT: compass
-            auto-trigger-name: 'daily-trigger-disabled'
-            <<: *danube
-#--------------------------------
+      # fuel CI PODs
+      - baremetal:
+          slave-label: fuel-baremetal
+          SUT: fuel
+          auto-trigger-name: 'daily-trigger-disabled'
+          <<: *master
+      - virtual:
+          slave-label: fuel-virtual
+          SUT: fuel
+          auto-trigger-name: 'daily-trigger-disabled'
+          <<: *master
+      - baremetal:
+          slave-label: fuel-baremetal
+          SUT: fuel
+          auto-trigger-name: 'daily-trigger-disabled'
+          <<: *danube
+      - virtual:
+          slave-label: fuel-virtual
+          SUT: fuel
+          auto-trigger-name: 'daily-trigger-disabled'
+          <<: *danube
+      # compass CI PODs
+      - baremetal:
+          slave-label: compass-baremetal
+          SUT: compass
+          auto-trigger-name: 'daily-trigger-disabled'
+          <<: *master
+      - virtual:
+          slave-label: compass-virtual
+          SUT: compass
+          auto-trigger-name: 'daily-trigger-disabled'
+          <<: *master
+      - baremetal:
+          slave-label: compass-baremetal
+          SUT: compass
+          auto-trigger-name: 'daily-trigger-disabled'
+          <<: *danube
+      - virtual:
+          slave-label: compass-virtual
+          SUT: compass
+          auto-trigger-name: 'daily-trigger-disabled'
+          <<: *danube
+      # -------------------------------
+      #    Installers not using labels
+      #            CI PODs
+      # This section should only contain the installers
+      # that have not been switched using labels for slaves
+      # -------------------------------
+      # apex PODs
+      - virtual:
+          slave-label: apex-virtual-master
+          SUT: apex
+          auto-trigger-name: 'daily-trigger-disabled'
+          <<: *master
+      - baremetal:
+          slave-label: apex-baremetal-master
+          SUT: apex
+          auto-trigger-name: 'daily-trigger-disabled'
+          <<: *master
+      - virtual:
+          slave-label: apex-virtual-danube
+          SUT: apex
+          auto-trigger-name: 'daily-trigger-disabled'
+          <<: *danube
+      - baremetal:
+          slave-label: apex-baremetal-danube
+          SUT: apex
+          auto-trigger-name: 'daily-trigger-disabled'
+          <<: *danube
+      # armband CI PODs
+      - armband-baremetal:
+          slave-label: armband-baremetal
+          SUT: fuel
+          auto-trigger-name: 'daily-trigger-disabled'
+          <<: *master
+      - armband-virtual:
+          slave-label: armband-virtual
+          SUT: fuel
+          auto-trigger-name: 'daily-trigger-disabled'
+          <<: *master
+      - armband-baremetal:
+          slave-label: armband-baremetal
+          SUT: fuel
+          auto-trigger-name: 'daily-trigger-disabled'
+          <<: *danube
+      - armband-virtual:
+          slave-label: armband-virtual
+          SUT: fuel
+          auto-trigger-name: 'daily-trigger-disabled'
+          <<: *danube
+      # -------------------------------
+      #        None-CI PODs
+      # -------------------------------
+      - baremetal-centos:
+          slave-label: 'intel-pod8'
+          SUT: compass
+          auto-trigger-name: 'daily-trigger-disabled'
+          <<: *master
+      - zte-pod1:
+          slave-label: zte-pod1
+          SUT: fuel
+          auto-trigger-name: 'daily-trigger-disabled'
+          <<: *master
+      - zte-pod2:
+          slave-label: zte-pod2
+          SUT: fuel
+          auto-trigger-name: 'daily-trigger-disabled'
+          <<: *master
+      - zte-pod3:
+          slave-label: zte-pod3
+          SUT: fuel
+          auto-trigger-name: 'daily-trigger-disabled'
+          <<: *master
+      - zte-pod1:
+          slave-label: zte-pod1
+          SUT: fuel
+          auto-trigger-name: 'daily-trigger-disabled'
+          <<: *danube
+      - zte-pod3:
+          slave-label: zte-pod3
+          SUT: fuel
+          auto-trigger-name: 'daily-trigger-disabled'
+          <<: *danube
+      - huawei-pod4:
+          slave-label: huawei-pod4
+          SUT: apex
+          auto-trigger-name: 'daily-trigger-disabled'
+          <<: *danube
+      - huawei-pod7:
+          slave-label: huawei-pod7
+          SUT: compass
+          auto-trigger-name: 'daily-trigger-disabled'
+          <<: *danube
+
+    # -------------------------------
     testsuite:
-        - 'compliance_set'
-        - 'proposed_tests'
+      - 'compliance_set'
+      - 'proposed_tests'
 
     jobs:
-        - 'dovetail-{SUT}-{pod}-{testsuite}-{stream}'
+      - 'dovetail-{SUT}-{pod}-{testsuite}-{stream}'
 
 ################################
 # job templates
     concurrent: true
 
     properties:
-        - logrotate-default
-        - throttle:
-            enabled: true
-            max-per-node: 1
-            option: 'project'
+      - logrotate-default
+      - throttle:
+          enabled: true
+          max-per-node: 1
+          option: 'project'
 
     wrappers:
-        - build-name:
-            name: '$BUILD_NUMBER - Scenario: $DEPLOY_SCENARIO'
-        - timeout:
-            timeout: 300
-            abort: true
-        - fix-workspace-permissions
+      - build-name:
+          name: '$BUILD_NUMBER - Scenario: $DEPLOY_SCENARIO'
+      - timeout:
+          timeout: 300
+          abort: true
+      - fix-workspace-permissions
 
     triggers:
-        - '{auto-trigger-name}'
+      - '{auto-trigger-name}'
 
     parameters:
-        - project-parameter:
-            project: '{project}'
-            branch: '{dovetail-branch}'
-        - '{SUT}-defaults'
-        - '{slave-label}-defaults'
-        - string:
-            name: DEPLOY_SCENARIO
-            default: 'os-nosdn-nofeature-ha'
-        - string:
-            name: DOCKER_TAG
-            default: '{docker-tag}'
-            description: 'Tag to pull dovetail docker image'
-        - string:
-            name: CI_DEBUG
-            default: 'true'
-            description: "Show debug output information"
-        - string:
-            name: TESTSUITE
-            default: '{testsuite}'
-            description: "dovetail testsuite to run"
-        - string:
-            name: DOVETAIL_REPO_DIR
-            default: "/home/opnfv/dovetail"
-            description: "Directory where the dovetail repository is cloned"
-        - string:
-            name: SUT_BRANCH
-            default: '{branch}'
-            description: "SUT branch"
+      - project-parameter:
+          project: '{project}'
+          branch: '{dovetail-branch}'
+      - '{SUT}-defaults'
+      - '{slave-label}-defaults'
+      - string:
+          name: DEPLOY_SCENARIO
+          default: 'os-nosdn-nofeature-ha'
+      - string:
+          name: DOCKER_TAG
+          default: '{docker-tag}'
+          description: 'Tag to pull dovetail docker image'
+      - string:
+          name: CI_DEBUG
+          default: 'true'
+          description: "Show debug output information"
+      - string:
+          name: TESTSUITE
+          default: '{testsuite}'
+          description: "dovetail testsuite to run"
+      - string:
+          name: DOVETAIL_REPO_DIR
+          default: "/home/opnfv/dovetail"
+          description: "Directory where the dovetail repository is cloned"
+      - string:
+          name: SUT_BRANCH
+          default: '{branch}'
+          description: "SUT branch"
 
     scm:
-        - git-scm
+      - git-scm
 
     builders:
-        - description-setter:
-            description: "POD: $NODE_NAME"
-        - 'dovetail-cleanup'
-        - 'dovetail-run'
+      - description-setter:
+          description: "POD: $NODE_NAME"
+      - 'dovetail-cleanup'
+      - 'dovetail-run'
 
     publishers:
-        - archive:
-            artifacts: 'results/**/*'
-            allow-empty: true
-            fingerprint: true
-        - email-jenkins-admins-on-failure
+      - archive:
+          artifacts: 'results/**/*'
+          allow-empty: true
+          fingerprint: true
+      - email-jenkins-admins-on-failure
 
-#--------------------------
+# -------------------------
 # builder macros
-#--------------------------
+# -------------------------
 - builder:
     name: dovetail-run
     builders:
-        - shell:
-            !include-raw: ./dovetail-run.sh
+      - shell:
+          !include-raw: ./dovetail-run.sh
 
 - builder:
     name: dovetail-cleanup
     builders:
-        - shell:
-            !include-raw: ./dovetail-cleanup.sh
+      - shell:
+          !include-raw: ./dovetail-cleanup.sh
index 9dc4808..c38ec96 100644 (file)
@@ -1,3 +1,4 @@
+---
 ###################################################
 # Non-ci jobs for Dovetail project
 # They will only be enabled on request by projects!
@@ -8,13 +9,13 @@
     project: 'dovetail'
 
     jobs:
-        - 'dovetail-verify-{stream}'
-        - 'dovetail-merge-{stream}'
+      - 'dovetail-verify-{stream}'
+      - 'dovetail-merge-{stream}'
 
     stream:
-        - master:
-            branch: '{stream}'
-            disabled: false
+      - master:
+          branch: '{stream}'
+          disabled: false
 
 ################################
 # job templates
     disabled: '{obj:disabled}'
 
     parameters:
-        - project-parameter:
-            project: '{project}'
-            branch: '{branch}'
-        - 'opnfv-build-ubuntu-defaults'
+      - project-parameter:
+          project: '{project}'
+          branch: '{branch}'
+      - 'opnfv-build-ubuntu-defaults'
 
     scm:
-        - git-scm-gerrit
+      - git-scm-gerrit
 
     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}'
+      - 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}'
     builders:
-        - dovetail-unit-tests
+      - dovetail-unit-tests
 
 - job-template:
     name: 'dovetail-merge-{stream}'
     disabled: '{obj:disabled}'
 
     parameters:
-        - project-parameter:
-            project: '{project}'
-            branch: '{branch}'
-        - 'opnfv-build-ubuntu-defaults'
+      - project-parameter:
+          project: '{project}'
+          branch: '{branch}'
+      - 'opnfv-build-ubuntu-defaults'
 
     scm:
-        - git-scm
+      - git-scm
 
     triggers:
-        - gerrit:
-            server-name: 'gerrit.opnfv.org'
-            trigger-on:
-                - change-merged-event
-                - comment-added-contains-event:
-                    comment-contains-value: 'remerge'
-            projects:
-              - project-compare-type: 'ANT'
-                project-pattern: '{project}'
-                branches:
-                    - branch-compare-type: 'ANT'
-                      branch-pattern: '**/{branch}'
+      - gerrit:
+          server-name: 'gerrit.opnfv.org'
+          trigger-on:
+            - change-merged-event
+            - comment-added-contains-event:
+                comment-contains-value: 'remerge'
+          projects:
+            - project-compare-type: 'ANT'
+              project-pattern: '{project}'
+              branches:
+                - branch-compare-type: 'ANT'
+                  branch-pattern: '**/{branch}'
 
     builders:
-        - dovetail-unit-tests
+      - dovetail-unit-tests
 
 ################################
-#builders for dovetail project
+# builders for dovetail project
 ###############################
 - builder:
     name: dovetail-hello-world
     builders:
-        - shell: |
-            #!/bin/bash
-            set -o errexit
+      - shell: |
+          #!/bin/bash
+          set -o errexit
 
-            echo "hello world"
+          echo "hello world"
 
 
 - builder:
     name: dovetail-unit-tests
     builders:
-        - shell: |
-            #!/bin/bash
-            set -o errexit
-            set -o pipefail
+      - shell: |
+          #!/bin/bash
+          set -o errexit
+          set -o pipefail
 
-            tox
+          tox
index 11904cb..5a162bb 100644 (file)
@@ -1,59 +1,60 @@
+---
 - project:
     name: dovetail-weekly-jobs
     project: dovetail
-#--------------------------------
-# BRANCH ANCHORS
-#--------------------------------
+    # -------------------------------
+    # BRANCH ANCHORS
+    # -------------------------------
     master: &master
-        stream: master
-        branch: '{stream}'
-        dovetail-branch: '{stream}'
-        gs-pathname: ''
-        docker-tag: 'latest'
+      stream: master
+      branch: '{stream}'
+      dovetail-branch: '{stream}'
+      gs-pathname: ''
+      docker-tag: 'latest'
     danube: &danube
-        stream: danube
-        branch: 'stable/{stream}'
-        dovetail-branch: master
-        gs-pathname: '/{stream}'
-        docker-tag: 'latest'
+      stream: danube
+      branch: 'stable/{stream}'
+      dovetail-branch: master
+      gs-pathname: '/{stream}'
+      docker-tag: 'latest'
 
-#--------------------------------
-# POD, INSTALLER, AND BRANCH MAPPING
-#--------------------------------
-#    Installers using labels
-#            CI PODs
-# This section should only contain the installers
-# that have been switched using labels for slaves
-#--------------------------------
+    # -------------------------------
+    # POD, INSTALLER, AND BRANCH MAPPING
+    # -------------------------------
+    #    Installers using labels
+    #            CI PODs
+    # This section should only contain the installers
+    # that have been switched using labels for slaves
+    # -------------------------------
     pod:
-#        - baremetal:
-#            slave-label: apex-baremetal
-#            SUT: apex
-#            <<: *danube
-        - baremetal:
-            slave-label: compass-baremetal
-            SUT: compass
-            <<: *danube
-#        - baremetal:
-#            slave-label: fuel-baremetal
-#            SUT: fuel
-#            <<: *danube
-#        - baremetal:
-#            slave-label: joid-baremetal
-#            SUT: joid
-#            <<: *danube
+      # - baremetal:
+      #     slave-label: apex-baremetal
+      #     SUT: apex
+      #     <<: *danube
+      - baremetal:
+          slave-label: compass-baremetal
+          SUT: compass
+          <<: *danube
+    # - baremetal:
+    #     slave-label: fuel-baremetal
+    #     SUT: fuel
+    #     <<: *danube
+    # - baremetal:
+    #     slave-label: joid-baremetal
+    #     SUT: joid
+    #     <<: *danube
 
     testsuite:
-        - 'debug'
-        - 'compliance_set'
-        - 'proposed_tests'
+      - 'debug'
+      - 'compliance_set'
+      - 'proposed_tests'
 
     loop:
-        - 'weekly':
-            job-timeout: 180
+      - 'weekly':
+          job-timeout: 180
 
     jobs:
-        - 'dovetail-{SUT}-{pod}-{testsuite}-{loop}-{stream}'
+      - 'dovetail-{SUT}-{pod}-{testsuite}-{loop}-{stream}'
 
 ################################
 # job template
     concurrent: true
 
     properties:
-        - logrotate-default
-        - throttle:
-            enabled: true
-            max-per-node: 1
-            option: 'project'
+      - logrotate-default
+      - throttle:
+          enabled: true
+          max-per-node: 1
+          option: 'project'
 
     wrappers:
-        - build-name:
-            name: '$BUILD_NUMBER Scenario: $DEPLOY_SCENARIO'
-        - timeout:
-            timeout: '{job-timeout}'
-            abort: true
-        - fix-workspace-permissions
+      - build-name:
+          name: '$BUILD_NUMBER Scenario: $DEPLOY_SCENARIO'
+      - timeout:
+          timeout: '{job-timeout}'
+          abort: true
+      - fix-workspace-permissions
 
     parameters:
-        - project-parameter:
-            project: '{project}'
-            branch: '{dovetail-branch}'
-        - '{SUT}-defaults'
-        - '{slave-label}-defaults'
-        - string:
-            name: DEPLOY_SCENARIO
-            default: 'os-nosdn-nofeature-ha'
-        - string:
-            name: DOCKER_TAG
-            default: '{docker-tag}'
-            description: 'Tag to pull dovetail docker image'
-        - string:
-            name: CI_DEBUG
-            default: 'true'
-            description: "Show debug output information"
-        - string:
-            name: TESTSUITE
-            default: '{testsuite}'
-            description: "dovetail testsuite to run"
-        - string:
-            name: DOVETAIL_REPO_DIR
-            default: "/home/opnfv/dovetail"
-            description: "Directory where the dovetail repository is cloned"
+      - project-parameter:
+          project: '{project}'
+          branch: '{dovetail-branch}'
+      - '{SUT}-defaults'
+      - '{slave-label}-defaults'
+      - string:
+          name: DEPLOY_SCENARIO
+          default: 'os-nosdn-nofeature-ha'
+      - string:
+          name: DOCKER_TAG
+          default: '{docker-tag}'
+          description: 'Tag to pull dovetail docker image'
+      - string:
+          name: CI_DEBUG
+          default: 'true'
+          description: "Show debug output information"
+      - string:
+          name: TESTSUITE
+          default: '{testsuite}'
+          description: "dovetail testsuite to run"
+      - string:
+          name: DOVETAIL_REPO_DIR
+          default: "/home/opnfv/dovetail"
+          description: "Directory where the dovetail repository is cloned"
 
     scm:
-        - git-scm
+      - git-scm
 
     builders:
-        - description-setter:
-            description: "POD: $NODE_NAME"
-        - 'dovetail-cleanup'
-        - 'dovetail-run'
+      - description-setter:
+          description: "POD: $NODE_NAME"
+      - 'dovetail-cleanup'
+      - 'dovetail-run'
 
     publishers:
-        - archive:
-            artifacts: 'results/**/*'
-            allow-empty: true
-            fingerprint: true
-        - email-jenkins-admins-on-failure
+      - archive:
+          artifacts: 'results/**/*'
+          allow-empty: true
+          fingerprint: true
+      - email-jenkins-admins-on-failure
 
 ########################
 # builder macros
 - builder:
     name: dovetail-run-weekly
     builders:
-        - shell:
-            !include-raw: ./dovetail-run.sh
+      - shell:
+          !include-raw: ./dovetail-run.sh
+
 - builder:
     name: dovetail-cleanup-weekly
     builders:
-        - shell:
-            !include-raw: ./dovetail-cleanup.sh
+      - shell:
+          !include-raw: ./dovetail-cleanup.sh
index 39f3d56..3501d27 100644 (file)
@@ -16,7 +16,7 @@
           branch: '{stream}'
           gs-pathname: ''
           disabled: false
-      - danube:
+      - euphrates:
           branch: 'stable/{stream}'
           gs-pathname: '/{stream}'
           disabled: false
index 3ca6d05..92ad8e6 100644 (file)
@@ -1,3 +1,4 @@
+---
 # jenkins job templates for Fuel
 - project:
 
 
     installer: '{name}'
 
-#--------------------------------
-# BRANCH ANCHORS
-#--------------------------------
+    # -------------------------------
+    # BRANCH ANCHORS
+    # -------------------------------
     master: &master
-        stream: master
-        branch: '{stream}'
-        disabled: false
-        gs-pathname: ''
+      stream: master
+      branch: '{stream}'
+      disabled: false
+      gs-pathname: ''
     euphrates: &euphrates
-        stream: euphrates
-        branch: 'stable/{stream}'
-        disabled: false
-        gs-pathname: '/{stream}'
+      stream: euphrates
+      branch: 'stable/{stream}'
+      disabled: false
+      gs-pathname: '/{stream}'
     danube: &danube
-        stream: danube
-        branch: 'stable/{stream}'
-        disabled: false
-        gs-pathname: '/{stream}'
-#--------------------------------
-# POD, INSTALLER, AND BRANCH MAPPING
-#--------------------------------
-#        CI PODs
-#--------------------------------
+      stream: danube
+      branch: 'stable/{stream}'
+      disabled: false
+      gs-pathname: '/{stream}'
+    # -------------------------------
+    # POD, INSTALLER, AND BRANCH MAPPING
+    # -------------------------------
+    #        CI PODs
+    # -------------------------------
     pod:
-        - baremetal:
-            slave-label: fuel-baremetal
-            <<: *master
-        - virtual:
-            slave-label: fuel-virtual
-            <<: *master
-        - baremetal:
-            slave-label: fuel-baremetal
-            <<: *euphrates
-        - virtual:
-            slave-label: fuel-virtual
-            <<: *euphrates
-#--------------------------------
-#        None-CI PODs
-#--------------------------------
-        - zte-pod1:
-            slave-label: zte-pod1
-            <<: *master
-        - zte-pod3:
-            slave-label: zte-pod3
-            <<: *master
-        - zte-pod1:
-            slave-label: zte-pod1
-            <<: *euphrates
-        - zte-pod3:
-            slave-label: zte-pod3
-            <<: *euphrates
-        - zte-pod1:
-            slave-label: zte-pod1
-            <<: *danube
-#--------------------------------
-#       scenarios
-#--------------------------------
+      - baremetal:
+          slave-label: fuel-baremetal
+          <<: *master
+      - virtual:
+          slave-label: fuel-virtual
+          <<: *master
+      - baremetal:
+          slave-label: fuel-baremetal
+          <<: *euphrates
+      - virtual:
+          slave-label: fuel-virtual
+          <<: *euphrates
+      # -------------------------------
+      #        None-CI PODs
+      # -------------------------------
+      - zte-pod1:
+          slave-label: zte-pod1
+          <<: *master
+      - zte-pod3:
+          slave-label: zte-pod3
+          <<: *master
+      - zte-pod1:
+          slave-label: zte-pod1
+          <<: *euphrates
+      - zte-pod3:
+          slave-label: zte-pod3
+          <<: *euphrates
+      - zte-pod1:
+          slave-label: zte-pod1
+          <<: *danube
+    # -------------------------------
+    #       scenarios
+    # -------------------------------
     scenario:
-        # HA scenarios
-        - 'os-nosdn-nofeature-ha':
-            auto-trigger-name: 'fuel-{scenario}-{pod}-daily-{stream}-trigger'
-        - 'os-odl-nofeature-ha':
-            auto-trigger-name: 'fuel-{scenario}-{pod}-daily-{stream}-trigger'
-        - 'os-onos-sfc-ha':
-            auto-trigger-name: 'fuel-{scenario}-{pod}-daily-{stream}-trigger'
-        - 'os-onos-nofeature-ha':
-            auto-trigger-name: 'fuel-{scenario}-{pod}-daily-{stream}-trigger'
-        - 'os-nosdn-kvm-ha':
-            auto-trigger-name: 'fuel-{scenario}-{pod}-daily-{stream}-trigger'
-        - 'os-nosdn-ovs-ha':
-            auto-trigger-name: 'fuel-{scenario}-{pod}-daily-{stream}-trigger'
-        - 'os-nosdn-kvm_ovs-ha':
-            auto-trigger-name: 'daily-trigger-disabled'
-        - 'os-nosdn-kvm_ovs_dpdk-ha':
-            auto-trigger-name: 'fuel-{scenario}-{pod}-daily-{stream}-trigger'
-        - 'os-nosdn-kvm_ovs_dpdk_bar-ha':
-            auto-trigger-name: 'fuel-{scenario}-{pod}-daily-{stream}-trigger'
-        # NOHA scenarios
-        - 'os-nosdn-nofeature-noha':
-            auto-trigger-name: 'fuel-{scenario}-{pod}-daily-{stream}-trigger'
-        - 'os-odl-nofeature-noha':
-            auto-trigger-name: 'fuel-{scenario}-{pod}-daily-{stream}-trigger'
-        - 'os-onos-sfc-noha':
-            auto-trigger-name: 'fuel-{scenario}-{pod}-daily-{stream}-trigger'
-        - 'os-onos-nofeature-noha':
-            auto-trigger-name: 'fuel-{scenario}-{pod}-daily-{stream}-trigger'
-        - 'os-nosdn-kvm-noha':
-            auto-trigger-name: 'fuel-{scenario}-{pod}-daily-{stream}-trigger'
-        - 'os-nosdn-ovs-noha':
-            auto-trigger-name: 'fuel-{scenario}-{pod}-daily-{stream}-trigger'
-        - 'os-nosdn-kvm_ovs_dpdk-noha':
-            auto-trigger-name: 'fuel-{scenario}-{pod}-daily-{stream}-trigger'
-        - 'os-nosdn-kvm_ovs_dpdk_bar-noha':
-            auto-trigger-name: 'fuel-{scenario}-{pod}-daily-{stream}-trigger'
-        # danube scenario for Dovetail only
-        - 'os-odl_l2-bgpvpn-ha':
-            auto-trigger-name: 'fuel-{scenario}-{pod}-daily-{stream}-trigger'
+      # HA scenarios
+      - 'os-nosdn-nofeature-ha':
+          auto-trigger-name: 'fuel-{scenario}-{pod}-daily-{stream}-trigger'
+      - 'os-odl-nofeature-ha':
+          auto-trigger-name: 'fuel-{scenario}-{pod}-daily-{stream}-trigger'
+      - 'os-onos-sfc-ha':
+          auto-trigger-name: 'fuel-{scenario}-{pod}-daily-{stream}-trigger'
+      - 'os-onos-nofeature-ha':
+          auto-trigger-name: 'fuel-{scenario}-{pod}-daily-{stream}-trigger'
+      - 'os-nosdn-kvm-ha':
+          auto-trigger-name: 'fuel-{scenario}-{pod}-daily-{stream}-trigger'
+      - 'os-nosdn-ovs-ha':
+          auto-trigger-name: 'fuel-{scenario}-{pod}-daily-{stream}-trigger'
+      - 'os-nosdn-kvm_ovs-ha':
+          auto-trigger-name: 'daily-trigger-disabled'
+      - 'os-nosdn-kvm_ovs_dpdk-ha':
+          auto-trigger-name: 'fuel-{scenario}-{pod}-daily-{stream}-trigger'
+      - 'os-nosdn-kvm_ovs_dpdk_bar-ha':
+          auto-trigger-name: 'fuel-{scenario}-{pod}-daily-{stream}-trigger'
+      # NOHA scenarios
+      - 'os-nosdn-nofeature-noha':
+          auto-trigger-name: 'fuel-{scenario}-{pod}-daily-{stream}-trigger'
+      - 'os-odl-nofeature-noha':
+          auto-trigger-name: 'fuel-{scenario}-{pod}-daily-{stream}-trigger'
+      - 'os-onos-sfc-noha':
+          auto-trigger-name: 'fuel-{scenario}-{pod}-daily-{stream}-trigger'
+      - 'os-onos-nofeature-noha':
+          auto-trigger-name: 'fuel-{scenario}-{pod}-daily-{stream}-trigger'
+      - 'os-nosdn-kvm-noha':
+          auto-trigger-name: 'fuel-{scenario}-{pod}-daily-{stream}-trigger'
+      - 'os-nosdn-ovs-noha':
+          auto-trigger-name: 'fuel-{scenario}-{pod}-daily-{stream}-trigger'
+      - 'os-nosdn-kvm_ovs_dpdk-noha':
+          auto-trigger-name: 'fuel-{scenario}-{pod}-daily-{stream}-trigger'
+      - 'os-nosdn-kvm_ovs_dpdk_bar-noha':
+          auto-trigger-name: 'fuel-{scenario}-{pod}-daily-{stream}-trigger'
+      # danube scenario for Dovetail only
+      - 'os-odl_l2-bgpvpn-ha':
+          auto-trigger-name: 'fuel-{scenario}-{pod}-daily-{stream}-trigger'
 
     exclude:
-        - scenario: os-odl_l2-bgpvpn-ha
-          stream: master
-        - scenario: os-odl_l2-bgpvpn-ha
-          stream: euphrates
+      - scenario: os-odl_l2-bgpvpn-ha
+        stream: master
+      - scenario: os-odl_l2-bgpvpn-ha
+        stream: euphrates
 
     jobs:
-        - 'fuel-{scenario}-{pod}-daily-{stream}'
-        - 'fuel-deploy-{pod}-daily-{stream}'
+      - 'fuel-{scenario}-{pod}-daily-{stream}'
+      - 'fuel-deploy-{pod}-daily-{stream}'
+      - 'fuel-collect-logs-{pod}-daily-{stream}'
 
 ########################
 # job templates
     concurrent: false
 
     properties:
-        - logrotate-default
-        - throttle:
-            enabled: true
-            max-total: 4
-            max-per-node: 1
-            option: 'project'
-        - build-blocker:
-            use-build-blocker: true
-            blocking-jobs:
-                - 'fuel-os-.*?-{pod}-daily-.*'
-                - 'fuel-os-.*?-{pod}-weekly-.*'
-                - 'fuel-verify-.*'
-            block-level: 'NODE'
+      - logrotate-default
+      - throttle:
+          enabled: true
+          max-total: 4
+          max-per-node: 1
+          option: 'project'
+      - build-blocker:
+          use-build-blocker: true
+          blocking-jobs:
+            - 'fuel-os-.*?-{pod}-daily-.*'
+            - 'fuel-os-.*?-{pod}-weekly-.*'
+            - 'fuel-verify-.*'
+          block-level: 'NODE'
 
     wrappers:
-        - build-name:
-            name: '$BUILD_NUMBER - Scenario: $DEPLOY_SCENARIO'
+      - build-name:
+          name: '$BUILD_NUMBER - Scenario: $DEPLOY_SCENARIO'
 
     triggers:
-        - '{auto-trigger-name}'
+      - '{auto-trigger-name}'
 
     parameters:
-        - project-parameter:
-            project: '{project}'
-            branch: '{branch}'
-        - '{installer}-defaults':
-            gs-pathname: '{gs-pathname}'
-        - '{slave-label}-defaults':
-            installer: '{installer}'
-        - string:
-            name: DEPLOY_SCENARIO
-            default: '{scenario}'
+      - project-parameter:
+          project: '{project}'
+          branch: '{branch}'
+      - '{installer}-defaults':
+          gs-pathname: '{gs-pathname}'
+      - '{slave-label}-defaults':
+          installer: '{installer}'
+      - string:
+          name: DEPLOY_SCENARIO
+          default: '{scenario}'
 
     builders:
-        - description-setter:
-            description: "Built on $NODE_NAME"
-        - trigger-builds:
-            - project: 'fuel-deploy-{pod}-daily-{stream}'
-              current-parameters: false
-              predefined-parameters:
-                DEPLOY_SCENARIO={scenario}
-              same-node: true
-              block: true
-        - trigger-builds:
-            - project: 'functest-fuel-{pod}-daily-{stream}'
-              current-parameters: false
-              predefined-parameters:
-                DEPLOY_SCENARIO={scenario}
-              same-node: true
-              block: true
-              block-thresholds:
-                build-step-failure-threshold: 'never'
-                failure-threshold: 'never'
-                unstable-threshold: 'FAILURE'
-        - trigger-builds:
-            - project: 'yardstick-fuel-{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 has master, based on D release
-        # 2.here the stream means the SUT stream, dovetail stream is defined in its own job
-        # 3.only debug testsuite here(refstack, ha, ipv6, bgpvpn)
-        # 4.not used for release criteria or compliance,
-        #   only to debug the dovetail tool bugs with bgpvpn and nosdn-nofeature
-        # 5.only run against scenario os-odl-bgpvpn-ha(regex used here, can extend to more scenarios future)
-        # 6.ZTE pod1, os-nosdn-nofeature-ha and os-odl-bgpvpn-ha, run against danube
-        - conditional-step:
+      - description-setter:
+          description: "Built on $NODE_NAME"
+      - trigger-builds:
+          - project: 'fuel-deploy-{pod}-daily-{stream}'
+            current-parameters: false
+            predefined-parameters:
+              DEPLOY_SCENARIO={scenario}
+            same-node: true
+            block: true
+      - trigger-builds:
+          - project: 'functest-fuel-{pod}-daily-{stream}'
+            current-parameters: false
+            predefined-parameters:
+              DEPLOY_SCENARIO={scenario}
+            same-node: true
+            block: true
+            block-thresholds:
+              build-step-failure-threshold: 'never'
+              failure-threshold: 'never'
+              unstable-threshold: 'FAILURE'
+      - trigger-builds:
+          - project: 'yardstick-fuel-{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 has master, based on D release
+      # 2.here the stream means the SUT stream, dovetail stream is defined in its own job
+      # 3.only debug testsuite here(refstack, ha, ipv6, bgpvpn)
+      # 4.not used for release criteria or compliance,
+      #   only to debug the dovetail tool bugs with bgpvpn and nosdn-nofeature
+      # 5.only run against scenario os-odl-bgpvpn-ha(regex used here, can extend to more scenarios future)
+      # 6.ZTE pod1, os-nosdn-nofeature-ha and os-odl-bgpvpn-ha, run against danube
+      - conditional-step:
+          condition-kind: regex-match
+          regex: os-(nosdn-nofeature|odl_l2-bgpvpn)-ha
+          label: '{scenario}'
+          steps:
+            - trigger-builds:
+                - project: 'dovetail-fuel-{pod}-proposed_tests-master'
+                  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: os-(nosdn-nofeature|odl_l2-bgpvpn)-ha
-            label: '{scenario}'
-            steps:
-                - trigger-builds:
-                    - project: 'dovetail-fuel-{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'
+            regex: 'danube'
+            label: '{stream}'
+          steps:
+            - trigger-builds:
+                - project: 'fuel-collect-logs-{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'
 
     publishers:
-        - email:
-            recipients: peter.barabas@ericsson.com fzhadaev@mirantis.com
-        - email-jenkins-admins-on-failure
+      - email:
+          recipients: peter.barabas@ericsson.com fzhadaev@mirantis.com
+      - email-jenkins-admins-on-failure
 
 - job-template:
     name: 'fuel-deploy-{pod}-daily-{stream}'
     concurrent: true
 
     properties:
-        - logrotate-default
-        - throttle:
-            enabled: true
-            max-total: 4
-            max-per-node: 1
-            option: 'project'
-        - build-blocker:
-            use-build-blocker: true
-            blocking-jobs:
-                - 'fuel-deploy-{pod}-daily-.*'
-                - 'fuel-deploy-generic-daily-.*'
-                - 'fuel-deploy-{pod}-weekly-.*'
-                - 'fuel-deploy-generic-weekly-.*'
-            block-level: 'NODE'
+      - logrotate-default
+      - throttle:
+          enabled: true
+          max-total: 4
+          max-per-node: 1
+          option: 'project'
+      - build-blocker:
+          use-build-blocker: true
+          blocking-jobs:
+            - 'fuel-deploy-{pod}-daily-.*'
+            - 'fuel-deploy-generic-daily-.*'
+            - 'fuel-deploy-{pod}-weekly-.*'
+            - 'fuel-deploy-generic-weekly-.*'
+          block-level: 'NODE'
+
+    parameters:
+      - project-parameter:
+          project: '{project}'
+          branch: '{branch}'
+      - '{installer}-defaults':
+          gs-pathname: '{gs-pathname}'
+      - '{slave-label}-defaults':
+          installer: '{installer}'
+      - string:
+          name: DEPLOY_SCENARIO
+          default: 'os-odl-nofeature-ha'
+
+    scm:
+      - git-scm
+
+    wrappers:
+      - build-name:
+          name: '$BUILD_NUMBER - Scenario: $DEPLOY_SCENARIO'
+
+    builders:
+      - description-setter:
+          description: "Built on $NODE_NAME"
+      - shell:
+          !include-raw-escape: ./fuel-download-artifact.sh
+      - shell:
+          !include-raw-escape: ./fuel-deploy.sh
+
+    publishers:
+      - email:
+          recipients: peter.barabas@ericsson.com fzhadaev@mirantis.com
+      - email-jenkins-admins-on-failure
+
+- job-template:
+    name: 'fuel-collect-logs-{pod}-daily-{stream}'
+
+    disabled: '{obj:disabled}'
+
+    concurrent: true
+
+    properties:
+      - logrotate-default
 
     parameters:
-        - project-parameter:
-            project: '{project}'
-            branch: '{branch}'
-        - '{installer}-defaults':
-            gs-pathname: '{gs-pathname}'
-        - '{slave-label}-defaults':
-            installer: '{installer}'
-        - string:
-            name: DEPLOY_SCENARIO
-            default: 'os-odl-nofeature-ha'
-        - string:
-            name: DEPLOY_TIMEOUT
-            default: '150'
-            description: 'Deployment timeout in minutes'
+      - project-parameter:
+          project: '{project}'
+          branch: '{branch}'
+      - '{installer}-defaults':
+          gs-pathname: '{gs-pathname}'
+      - '{slave-label}-defaults':
+          installer: '{installer}'
+      - string:
+          name: DEPLOY_SCENARIO
+          default: 'os-odl-nofeature-ha'
 
     scm:
-        - git-scm
+      - git-scm
 
     wrappers:
-        - build-name:
-            name: '$BUILD_NUMBER - Scenario: $DEPLOY_SCENARIO'
+      - build-name:
+          name: '$BUILD_NUMBER - Scenario: $DEPLOY_SCENARIO'
 
     builders:
-        - description-setter:
-            description: "Built on $NODE_NAME"
-        - shell:
-            !include-raw-escape: ./fuel-download-artifact.sh
-        - shell:
-            !include-raw-escape: ./fuel-deploy.sh
+      - description-setter:
+          description: "Built on $NODE_NAME"
+      - shell:
+          !include-raw-escape: ./fuel-logs.sh
 
     publishers:
-        - email:
-            recipients: peter.barabas@ericsson.com fzhadaev@mirantis.com
-        - email-jenkins-admins-on-failure
+      - email-jenkins-admins-on-failure
 
 ########################
 # trigger macros
 ########################
-#-----------------------------------------------
+# ----------------------------------------------
 # Triggers for job running on fuel-baremetal against master branch
-#-----------------------------------------------
+# ----------------------------------------------
 # HA Scenarios
 - trigger:
     name: 'fuel-os-nosdn-nofeature-ha-baremetal-daily-master-trigger'
     triggers:
-        - timed: '5 20 * * *'
+      - timed: '5 20 * * *'
 - trigger:
     name: 'fuel-os-odl-nofeature-ha-baremetal-daily-master-trigger'
     triggers:
-        - timed: '5 2 * * *'
+      - timed: '5 2 * * *'
 - trigger:
     name: 'fuel-os-nosdn-ovs-ha-baremetal-daily-master-trigger'
     triggers:
-        - timed: '5 5 * * *'
+      - timed: '5 5 * * *'
 - trigger:
     name: 'fuel-os-onos-sfc-ha-baremetal-daily-master-trigger'
     triggers:
-        - timed: '' # '5 5 * * *'
+      - timed: ''  # '5 5 * * *'
 - trigger:
     name: 'fuel-os-onos-nofeature-ha-baremetal-daily-master-trigger'
     triggers:
-        - timed: '' # '5 8 * * *'
+      - timed: ''  # '5 8 * * *'
 - trigger:
     name: 'fuel-os-nosdn-kvm-ha-baremetal-daily-master-trigger'
     triggers:
-        - timed: '' # '5 17 * * *'
+      - timed: ''  # '5 17 * * *'
 - trigger:
     name: 'fuel-os-nosdn-kvm_ovs_dpdk-ha-baremetal-daily-master-trigger'
     triggers:
-        - timed: '' # '30 12 * * *'
+      - timed: ''  # '30 12 * * *'
 - trigger:
     name: 'fuel-os-nosdn-kvm_ovs_dpdk_bar-ha-baremetal-daily-master-trigger'
     triggers:
-        - timed: '' # '30 8 * * *'
+      - timed: ''  # '30 8 * * *'
 # NOHA Scenarios
 - trigger:
     name: 'fuel-os-nosdn-nofeature-noha-baremetal-daily-master-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'fuel-os-odl-nofeature-noha-baremetal-daily-master-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'fuel-os-onos-sfc-noha-baremetal-daily-master-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'fuel-os-onos-nofeature-noha-baremetal-daily-master-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'fuel-os-nosdn-kvm-noha-baremetal-daily-master-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'fuel-os-nosdn-ovs-noha-baremetal-daily-master-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'fuel-os-nosdn-kvm_ovs_dpdk-noha-baremetal-daily-master-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'fuel-os-nosdn-kvm_ovs_dpdk_bar-noha-baremetal-daily-master-trigger'
     triggers:
-        - timed: ''
-#-----------------------------------------------
+      - timed: ''
+# ----------------------------------------------
 # Triggers for job running on fuel-baremetal against euphrates branch
-#-----------------------------------------------
+# ----------------------------------------------
 # HA Scenarios
 - trigger:
     name: 'fuel-os-nosdn-nofeature-ha-baremetal-daily-euphrates-trigger'
     triggers:
-        - timed: '0 20 * * *'
+      - timed: '0 20 * * *'
 - trigger:
     name: 'fuel-os-odl-nofeature-ha-baremetal-daily-euphrates-trigger'
     triggers:
-        - timed: '0 2 * * *'
+      - timed: '0 2 * * *'
 - trigger:
     name: 'fuel-os-onos-sfc-ha-baremetal-daily-euphrates-trigger'
     triggers:
-        - timed: '' # '0 5 * * *'
+      - timed: ''  # '0 5 * * *'
 - trigger:
     name: 'fuel-os-onos-nofeature-ha-baremetal-daily-euphrates-trigger'
     triggers:
-        - timed: '' # '0 8 * * *'
+      - timed: ''  # '0 8 * * *'
 - trigger:
     name: 'fuel-os-nosdn-kvm-ha-baremetal-daily-euphrates-trigger'
     triggers:
-        - timed: '' # '0 17 * * *'
+      - timed: ''  # '0 17 * * *'
 - trigger:
     name: 'fuel-os-nosdn-ovs-ha-baremetal-daily-euphrates-trigger'
     triggers:
-        - timed: '0 20 * * *'
+      - timed: '0 20 * * *'
 - trigger:
     name: 'fuel-os-nosdn-kvm_ovs_dpdk-ha-baremetal-daily-euphrates-trigger'
     triggers:
-        - timed: '' # '0 12 * * *'
+      - timed: ''  # '0 12 * * *'
 - trigger:
     name: 'fuel-os-nosdn-kvm_ovs_dpdk_bar-ha-baremetal-daily-euphrates-trigger'
     triggers:
-        - timed: '' # '0 8 * * *'
+      - timed: ''  # '0 8 * * *'
 # NOHA Scenarios
 - trigger:
     name: 'fuel-os-nosdn-nofeature-noha-baremetal-daily-euphrates-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'fuel-os-odl-nofeature-noha-baremetal-daily-euphrates-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'fuel-os-onos-sfc-noha-baremetal-daily-euphrates-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'fuel-os-onos-nofeature-noha-baremetal-daily-euphrates-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'fuel-os-nosdn-kvm-noha-baremetal-daily-euphrates-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'fuel-os-nosdn-ovs-noha-baremetal-daily-euphrates-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'fuel-os-nosdn-kvm_ovs_dpdk-noha-baremetal-daily-euphrates-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'fuel-os-nosdn-kvm_ovs_dpdk_bar-noha-baremetal-daily-euphrates-trigger'
     triggers:
-        - timed: ''
-#-----------------------------------------------
+      - timed: ''
+# ----------------------------------------------
 # Triggers for job running on fuel-virtual against master branch
-#-----------------------------------------------
+# ----------------------------------------------
 - trigger:
     name: 'fuel-os-nosdn-nofeature-ha-virtual-daily-master-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'fuel-os-odl-nofeature-ha-virtual-daily-master-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'fuel-os-onos-sfc-ha-virtual-daily-master-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'fuel-os-onos-nofeature-ha-virtual-daily-master-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'fuel-os-nosdn-kvm-ha-virtual-daily-master-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'fuel-os-nosdn-ovs-ha-virtual-daily-master-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'fuel-os-nosdn-kvm_ovs_dpdk-ha-virtual-daily-master-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'fuel-os-nosdn-kvm_ovs_dpdk_bar-ha-virtual-daily-master-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 # NOHA Scenarios
 - trigger:
     name: 'fuel-os-nosdn-nofeature-noha-virtual-daily-master-trigger'
     triggers:
-        - timed: '5 13 * * *'
+      - timed: '5 13 * * *'
 - trigger:
     name: 'fuel-os-odl-nofeature-noha-virtual-daily-master-trigger'
     triggers:
-        - timed: '5 18 * * *'
+      - timed: '5 18 * * *'
 - trigger:
     name: 'fuel-os-onos-sfc-noha-virtual-daily-master-trigger'
     triggers:
-        - timed: '' # '35 20 * * *'
+      - timed: ''  # '35 20 * * *'
 - trigger:
     name: 'fuel-os-onos-nofeature-noha-virtual-daily-master-trigger'
     triggers:
-        - timed: '' # '5 23 * * *'
+      - timed: ''  # '5 23 * * *'
 - trigger:
     name: 'fuel-os-nosdn-kvm-noha-virtual-daily-master-trigger'
     triggers:
-        - timed: '' # '35 6 * * *'
+      - timed: ''  # '35 6 * * *'
 - trigger:
     name: 'fuel-os-nosdn-ovs-noha-virtual-daily-master-trigger'
     triggers:
-        - timed: '5 9 * * *'
+      - timed: '5 9 * * *'
 - trigger:
     name: 'fuel-os-nosdn-kvm_ovs_dpdk-noha-virtual-daily-master-trigger'
     triggers:
-        - timed: '' # '30 16 * * *'
+      - timed: ''  # '30 16 * * *'
 - trigger:
     name: 'fuel-os-nosdn-kvm_ovs_dpdk_bar-noha-virtual-daily-master-trigger'
     triggers:
-        - timed: '' # '30 20 * * *'
-#-----------------------------------------------
+      - timed: ''  # '30 20 * * *'
+# ----------------------------------------------
 # Triggers for job running on fuel-virtual against euphrates branch
-#-----------------------------------------------
+# ----------------------------------------------
 - trigger:
     name: 'fuel-os-nosdn-nofeature-ha-virtual-daily-euphrates-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'fuel-os-odl-nofeature-ha-virtual-daily-euphrates-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'fuel-os-onos-sfc-ha-virtual-daily-euphrates-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'fuel-os-onos-nofeature-ha-virtual-daily-euphrates-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'fuel-os-nosdn-kvm-ha-virtual-daily-euphrates-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'fuel-os-nosdn-ovs-ha-virtual-daily-euphrates-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'fuel-os-nosdn-kvm_ovs_dpdk-ha-virtual-daily-euphrates-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'fuel-os-nosdn-kvm_ovs_dpdk_bar-ha-virtual-daily-euphrates-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 # NOHA Scenarios
 - trigger:
     name: 'fuel-os-nosdn-nofeature-noha-virtual-daily-euphrates-trigger'
     triggers:
-        - timed: '0 13 * * *'
+      - timed: '0 13 * * *'
 - trigger:
     name: 'fuel-os-odl-nofeature-noha-virtual-daily-euphrates-trigger'
     triggers:
-        - timed: '0 18 * * *'
+      - timed: '0 18 * * *'
 - trigger:
     name: 'fuel-os-onos-sfc-noha-virtual-daily-euphrates-trigger'
     triggers:
-        - timed: '' # '30 20 * * *'
+      - timed: ''  # '30 20 * * *'
 - trigger:
     name: 'fuel-os-onos-nofeature-noha-virtual-daily-euphrates-trigger'
     triggers:
-        - timed: '' # '0 23 * * *'
+      - timed: ''  # '0 23 * * *'
 - trigger:
     name: 'fuel-os-nosdn-kvm-noha-virtual-daily-euphrates-trigger'
     triggers:
-        - timed: '' # '30 6 * * *'
+      - timed: ''  # '30 6 * * *'
 - trigger:
     name: 'fuel-os-nosdn-ovs-noha-virtual-daily-euphrates-trigger'
     triggers:
-        - timed: '0 9 * * *'
+      - timed: '0 9 * * *'
 - trigger:
     name: 'fuel-os-nosdn-kvm_ovs_dpdk-noha-virtual-daily-euphrates-trigger'
     triggers:
-        - timed: '' # '0 16 * * *'
+      - timed: ''  # '0 16 * * *'
 - trigger:
     name: 'fuel-os-nosdn-kvm_ovs_dpdk_bar-noha-virtual-daily-euphrates-trigger'
     triggers:
-        - timed: '' # '0 20 * * *'
-#-----------------------------------------------
+      - timed: ''  # '0 20 * * *'
+# ----------------------------------------------
 # ZTE POD1 Triggers running against master branch
-#-----------------------------------------------
+# ----------------------------------------------
 - trigger:
     name: 'fuel-os-nosdn-nofeature-ha-zte-pod1-daily-master-trigger'
     triggers:
-        - timed: '0 10 * * *'
+      - timed: '0 10 * * *'
 - trigger:
     name: 'fuel-os-odl-nofeature-ha-zte-pod1-daily-master-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'fuel-os-onos-sfc-ha-zte-pod1-daily-master-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'fuel-os-onos-nofeature-ha-zte-pod1-daily-master-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'fuel-os-nosdn-kvm-ha-zte-pod1-daily-master-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'fuel-os-nosdn-ovs-ha-zte-pod1-daily-master-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'fuel-os-nosdn-kvm_ovs_dpdk-ha-zte-pod1-daily-master-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'fuel-os-nosdn-kvm_ovs_dpdk_bar-ha-zte-pod1-daily-master-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 # NOHA Scenarios
 - trigger:
     name: 'fuel-os-nosdn-nofeature-noha-zte-pod1-daily-master-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'fuel-os-odl-nofeature-noha-zte-pod1-daily-master-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'fuel-os-onos-sfc-noha-zte-pod1-daily-master-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'fuel-os-onos-nofeature-noha-zte-pod1-daily-master-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'fuel-os-nosdn-kvm-noha-zte-pod1-daily-master-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'fuel-os-nosdn-ovs-noha-zte-pod1-daily-master-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'fuel-os-nosdn-kvm_ovs_dpdk-noha-zte-pod1-daily-master-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'fuel-os-nosdn-kvm_ovs_dpdk_bar-noha-zte-pod1-daily-master-trigger'
     triggers:
-        - timed: ''
-#-----------------------------------------------
+      - timed: ''
+# ----------------------------------------------
 # ZTE POD3 Triggers running against master branch
-#-----------------------------------------------
+# ----------------------------------------------
 - trigger:
     name: 'fuel-os-nosdn-nofeature-ha-zte-pod3-daily-master-trigger'
     triggers:
-        - timed: ''    # '0 10 * * *'
+      - timed: ''    # '0 10 * * *'
 - trigger:
     name: 'fuel-os-odl-nofeature-ha-zte-pod3-daily-master-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'fuel-os-onos-sfc-ha-zte-pod3-daily-master-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'fuel-os-onos-nofeature-ha-zte-pod3-daily-master-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'fuel-os-nosdn-kvm-ha-zte-pod3-daily-master-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'fuel-os-nosdn-ovs-ha-zte-pod3-daily-master-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'fuel-os-nosdn-kvm_ovs_dpdk-ha-zte-pod3-daily-master-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'fuel-os-nosdn-kvm_ovs_dpdk_bar-ha-zte-pod3-daily-master-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 # NOHA Scenarios
 - trigger:
     name: 'fuel-os-nosdn-nofeature-noha-zte-pod3-daily-master-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'fuel-os-odl-nofeature-noha-zte-pod3-daily-master-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'fuel-os-onos-sfc-noha-zte-pod3-daily-master-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'fuel-os-onos-nofeature-noha-zte-pod3-daily-master-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'fuel-os-nosdn-kvm-noha-zte-pod3-daily-master-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'fuel-os-nosdn-ovs-noha-zte-pod3-daily-master-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'fuel-os-nosdn-kvm_ovs_dpdk-noha-zte-pod3-daily-master-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'fuel-os-nosdn-kvm_ovs_dpdk_bar-noha-zte-pod3-daily-master-trigger'
     triggers:
-        - timed: ''
-#-----------------------------------------------
+      - timed: ''
+# ----------------------------------------------
 # ZTE POD1 Triggers running against euphrates branch
-#-----------------------------------------------
+# ----------------------------------------------
 - trigger:
     name: 'fuel-os-nosdn-nofeature-ha-zte-pod1-daily-euphrates-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'fuel-os-odl-nofeature-ha-zte-pod1-daily-euphrates-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'fuel-os-onos-sfc-ha-zte-pod1-daily-euphrates-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'fuel-os-onos-nofeature-ha-zte-pod1-daily-euphrates-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'fuel-os-nosdn-kvm-ha-zte-pod1-daily-euphrates-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'fuel-os-nosdn-ovs-ha-zte-pod1-daily-euphrates-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'fuel-os-nosdn-kvm_ovs_dpdk-ha-zte-pod1-daily-euphrates-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'fuel-os-nosdn-kvm_ovs_dpdk_bar-ha-zte-pod1-daily-euphrates-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 # NOHA Scenarios
 - trigger:
     name: 'fuel-os-nosdn-nofeature-noha-zte-pod1-daily-euphrates-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'fuel-os-odl-nofeature-noha-zte-pod1-daily-euphrates-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'fuel-os-onos-sfc-noha-zte-pod1-daily-euphrates-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'fuel-os-onos-nofeature-noha-zte-pod1-daily-euphrates-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'fuel-os-nosdn-kvm-noha-zte-pod1-daily-euphrates-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'fuel-os-nosdn-ovs-noha-zte-pod1-daily-euphrates-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'fuel-os-nosdn-kvm_ovs_dpdk-noha-zte-pod1-daily-euphrates-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'fuel-os-nosdn-kvm_ovs_dpdk_bar-noha-zte-pod1-daily-euphrates-trigger'
     triggers:
-        - timed: ''
-#-----------------------------------------------
+      - timed: ''
+# ----------------------------------------------
 # ZTE POD3 Triggers running against euphrates branch
-#-----------------------------------------------
+# ----------------------------------------------
 - trigger:
     name: 'fuel-os-nosdn-nofeature-ha-zte-pod3-daily-euphrates-trigger'
     triggers:
-        - timed: '' # '0 18 * * *'
+      - timed: ''  # '0 18 * * *'
 - trigger:
     name: 'fuel-os-odl-nofeature-ha-zte-pod3-daily-euphrates-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'fuel-os-onos-sfc-ha-zte-pod3-daily-euphrates-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'fuel-os-onos-nofeature-ha-zte-pod3-daily-euphrates-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'fuel-os-nosdn-kvm-ha-zte-pod3-daily-euphrates-trigger'
     triggers:
-        - timed: '' # '0 2 * * *'
+      - timed: ''  # '0 2 * * *'
 - trigger:
     name: 'fuel-os-nosdn-ovs-ha-zte-pod3-daily-euphrates-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'fuel-os-nosdn-kvm_ovs_dpdk-ha-zte-pod3-daily-euphrates-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'fuel-os-nosdn-kvm_ovs_dpdk_bar-ha-zte-pod3-daily-euphrates-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 # NOHA Scenarios
 - trigger:
     name: 'fuel-os-nosdn-nofeature-noha-zte-pod3-daily-euphrates-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'fuel-os-odl-nofeature-noha-zte-pod3-daily-euphrates-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'fuel-os-onos-sfc-noha-zte-pod3-daily-euphrates-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'fuel-os-onos-nofeature-noha-zte-pod3-daily-euphrates-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'fuel-os-nosdn-kvm-noha-zte-pod3-daily-euphrates-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'fuel-os-nosdn-ovs-noha-zte-pod3-daily-euphrates-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'fuel-os-nosdn-kvm_ovs_dpdk-noha-zte-pod3-daily-euphrates-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'fuel-os-nosdn-kvm_ovs_dpdk_bar-noha-zte-pod3-daily-euphrates-trigger'
     triggers:
-        - timed: ''
-#------------------------------------------------
+      - timed: ''
+# -----------------------------------------------
 # ZTE POD1 Triggers running against danube branch
-#------------------------------------------------
+# -----------------------------------------------
 - trigger:
     name: 'fuel-os-nosdn-nofeature-ha-zte-pod1-daily-danube-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'fuel-os-odl_l2-bgpvpn-ha-zte-pod1-daily-danube-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'fuel-os-odl-nofeature-ha-zte-pod1-daily-danube-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'fuel-os-onos-sfc-ha-zte-pod1-daily-danube-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'fuel-os-onos-nofeature-ha-zte-pod1-daily-danube-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'fuel-os-nosdn-kvm-ha-zte-pod1-daily-danube-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'fuel-os-nosdn-ovs-ha-zte-pod1-daily-danube-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'fuel-os-nosdn-kvm_ovs_dpdk-ha-zte-pod1-daily-danube-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'fuel-os-nosdn-kvm_ovs_dpdk_bar-ha-zte-pod1-daily-danube-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 # NOHA Scenarios
 - trigger:
     name: 'fuel-os-nosdn-nofeature-noha-zte-pod1-daily-danube-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'fuel-os-odl-nofeature-noha-zte-pod1-daily-danube-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'fuel-os-onos-sfc-noha-zte-pod1-daily-danube-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'fuel-os-onos-nofeature-noha-zte-pod1-daily-danube-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'fuel-os-nosdn-kvm-noha-zte-pod1-daily-danube-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'fuel-os-nosdn-ovs-noha-zte-pod1-daily-danube-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'fuel-os-nosdn-kvm_ovs_dpdk-noha-zte-pod1-daily-danube-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
 - trigger:
     name: 'fuel-os-nosdn-kvm_ovs_dpdk_bar-noha-zte-pod1-daily-danube-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
index be45604..3a52d1d 100755 (executable)
@@ -14,22 +14,26 @@ export TERM="vt220"
 
 if [[ "$BRANCH" =~ 'danube' ]]; then
     # source the file so we get OPNFV vars
+    # shellcheck disable=SC1091
     source latest.properties
 
     # echo the info about artifact that is used during the deployment
     echo "Using ${OPNFV_ARTIFACT_URL/*\/} for deployment"
-fi
 
-# shellcheck disable=SC2153
-if [[ "${JOB_NAME}" =~ 'verify' ]]; then
-    # set simplest scenario for virtual deploys to run for verify
-    DEPLOY_SCENARIO="os-nosdn-nofeature-ha"
-elif [[ "${BRANCH}" =~ 'danube' ]]; then
     # for Danube deployments (no artifact for current master or newer branches)
     # checkout the commit that was used for building the downloaded artifact
     # to make sure the ISO and deployment mechanism uses same versions
     echo "Checking out ${OPNFV_GIT_SHA1}"
     git checkout "${OPNFV_GIT_SHA1}" --quiet
+
+    # releng wants us to use nothing else but opnfv.iso for now. We comply.
+    ISO_FILE_ARG="-i file://${WORKSPACE}/opnfv.iso"
+fi
+
+# shellcheck disable=SC2153
+if [[ "${JOB_NAME}" =~ 'verify' ]]; then
+    # set simplest scenario for virtual deploys to run for verify
+    DEPLOY_SCENARIO="os-nosdn-nofeature-noha"
 fi
 
 # set deployment parameters
@@ -76,24 +80,14 @@ if [[ "${LAB_CONFIG_URL}" =~ ^(git|ssh):// ]]; then
     rm -rf "${LOCAL_CFG}"
     git clone --quiet --branch "${BRANCH}" "${LAB_CONFIG_URL}" "${LOCAL_CFG}"
     LAB_CONFIG_URL="file://${LOCAL_CFG}"
-
-    # Source local_env if present, which contains POD-specific config
-    local_env="${LOCAL_CFG}/labs/${LAB_NAME}/${POD_NAME}/fuel/config/local_env"
-    if [ -e "${local_env}" ]; then
-        echo "-- Sourcing local environment file"
-        source "${local_env}"
-    fi
 fi
 
-# releng wants us to use nothing else but opnfv.iso for now. We comply.
-ISO_FILE=file://${WORKSPACE}/opnfv.iso
-
 # log file name
 FUEL_LOG_FILENAME="${JOB_NAME}_${BUILD_NUMBER}.log.tar.gz"
 
 # construct the command
 DEPLOY_COMMAND="${SUDO} ${WORKSPACE}/ci/deploy.sh -b ${LAB_CONFIG_URL} \
-    -l ${LAB_NAME} -p ${POD_NAME} -s ${DEPLOY_SCENARIO} -i ${ISO_FILE} \
+    -l ${LAB_NAME} -p ${POD_NAME} -s ${DEPLOY_SCENARIO} ${ISO_FILE_ARG:-} \
     -B ${DEFAULT_BRIDGE:-${BRIDGE}} -S ${TMPDIR} \
     -L ${WORKSPACE}/${FUEL_LOG_FILENAME}"
 
diff --git a/jjb/fuel/fuel-logs.sh b/jjb/fuel/fuel-logs.sh
new file mode 100755 (executable)
index 0000000..a7d8526
--- /dev/null
@@ -0,0 +1,36 @@
+#!/bin/bash
+# SPDX-license-identifier: Apache-2.0
+##############################################################################
+# Copyright (c) 2017 Ericsson AB, Mirantis Inc., Enea Software AB and others.
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+##############################################################################
+set -o nounset
+set -o pipefail
+
+# Fuel requires deploy script to be ran with sudo, Armband does not
+SUDO='sudo -E'
+[ "${PROJECT}" = 'fuel' ] || SUDO=
+
+# Log file name
+FUEL_PM_LOG_FILENAME="${JOB_NAME}_${BUILD_NUMBER}_pm.log.tar.gz"
+
+# Construct the command
+LOG_COMMAND="${SUDO} ${WORKSPACE}/mcp/scripts/log.sh \
+             ${WORKSPACE}/${FUEL_PM_LOG_FILENAME}"
+
+# Log info to console
+echo "Collecting post mortem logs ..."
+echo "--------------------------------------------------------"
+echo "${LOG_COMMAND}"
+
+${LOG_COMMAND}
+
+# Upload logs for both baremetal and virtual deployments
+echo "Uploading deployment logs"
+echo "--------------------------------------------------------"
+gsutil cp "${WORKSPACE}/${FUEL_PM_LOG_FILENAME}" \
+    "gs://${GS_URL}/logs/${FUEL_PM_LOG_FILENAME}" > /dev/null 2>&1
+echo "Logs are available at http://${GS_URL}/logs/${FUEL_PM_LOG_FILENAME}"
index 09342b5..9e890cd 100644 (file)
@@ -1,3 +1,4 @@
+---
 ########################
 # Job configuration for fuel
 ########################
     installer: 'fuel'
 
     stream:
-        - master:
-            branch: '{stream}'
-            gs-pathname: ''
-            disabled: false
-        - euphrates:
-            branch: 'stable/{stream}'
-            gs-pathname: '/{stream}'
-            disabled: false
+      - master:
+          branch: '{stream}'
+          gs-pathname: ''
+          disabled: false
+      - euphrates:
+          branch: 'stable/{stream}'
+          gs-pathname: '/{stream}'
+          disabled: false
 
     jobs:
-        - 'fuel-deploy-generic-daily-{stream}'
+      - 'fuel-deploy-generic-daily-{stream}'
 
 ########################
 # job templates
     disabled: '{obj:disabled}'
 
     properties:
-        - logrotate-default
-        - throttle:
-            enabled: true
-            max-per-node: 1
-            option: 'project'
-        - build-blocker:
-            use-build-blocker: true
-            blocking-jobs:
-                - 'fuel-os-.*?-daily-.*'
-                - 'fuel-deploy-generic-daily-.*'
-            block-level: 'NODE'
+      - logrotate-default
+      - throttle:
+          enabled: true
+          max-per-node: 1
+          option: 'project'
+      - build-blocker:
+          use-build-blocker: true
+          blocking-jobs:
+            - 'fuel-os-.*?-daily-.*'
+            - 'fuel-deploy-generic-daily-.*'
+          block-level: 'NODE'
 
     parameters:
-        - project-parameter:
-            project: '{project}'
-            branch: '{branch}'
-        - '{installer}-defaults':
-            gs-pathname: '{gs-pathname}'
-        - string:
-            name: GIT_BASE
-            default: https://gerrit.opnfv.org/gerrit/$PROJECT
-            description: 'Git URL to use on this Jenkins Slave'
-        - string:
-            name: DEPLOY_SCENARIO
-            default: 'os-odl-nofeature-ha'
-        - node:
-            name: SLAVE_NAME
-            description: 'Slave name on Jenkins'
-            allowed-slaves:
-                - ericsson-pod2
-                - lf-pod2
-                - ericsson-pod1
-            default-slaves:
-                - ericsson-pod2
+      - project-parameter:
+          project: '{project}'
+          branch: '{branch}'
+      - '{installer}-defaults':
+          gs-pathname: '{gs-pathname}'
+      - string:
+          name: GIT_BASE
+          default: https://gerrit.opnfv.org/gerrit/$PROJECT
+          description: 'Git URL to use on this Jenkins Slave'
+      - string:
+          name: DEPLOY_SCENARIO
+          default: 'os-odl-nofeature-ha'
+      - node:
+          name: SLAVE_NAME
+          description: 'Slave name on Jenkins'
+          allowed-slaves:
+            - ericsson-pod2
+            - lf-pod2
+            - ericsson-pod1
+          default-slaves:
+            - ericsson-pod2
 
     scm:
-        - git-scm
+      - git-scm
 
     wrappers:
-        - build-name:
-            name: '$BUILD_NUMBER - POD: $NODE_NAME Scenario: $DEPLOY_SCENARIO'
+      - build-name:
+          name: '$BUILD_NUMBER - POD: $NODE_NAME Scenario: $DEPLOY_SCENARIO'
 
     builders:
-        - shell:
-            !include-raw-escape: ./fuel-deploy.sh
+      - shell:
+          !include-raw-escape: ./fuel-deploy.sh
index d605e30..8026c19 100644 (file)
@@ -1,37 +1,38 @@
+---
 - project:
     name: 'fuel-verify-jobs'
 
     project: 'fuel'
 
     installer: 'fuel'
-#####################################
-# branch definitions
-#####################################
+    #####################################
+    # branch definitions
+    #####################################
     stream:
-        - master:
-            branch: '{stream}'
-            gs-pathname: ''
-            disabled: false
-        - euphrates:
-            branch: 'stable/{stream}'
-            gs-pathname: '/{stream}'
-            disabled: false
-#####################################
-# patch verification phases
-#####################################
+      - master:
+          branch: '{stream}'
+          gs-pathname: ''
+          disabled: false
+      - euphrates:
+          branch: 'stable/{stream}'
+          gs-pathname: '/{stream}'
+          disabled: false
+    #####################################
+    # patch verification phases
+    #####################################
     phase:
-        - 'basic':
-            slave-label: 'fuel-virtual'
-        - 'deploy-virtual':
-            slave-label: 'fuel-virtual'
-        - 'smoke-test':
-            slave-label: 'fuel-virtual'
-#####################################
-# jobs
-#####################################
+      - 'basic':
+          slave-label: 'fuel-virtual'
+      - 'deploy-virtual':
+          slave-label: 'fuel-virtual'
+      - 'smoke-test':
+          slave-label: 'fuel-virtual'
+    #####################################
+    # jobs
+    #####################################
     jobs:
-        - 'fuel-verify-{stream}'
-        - 'fuel-verify-{phase}-{stream}'
+      - 'fuel-verify-{stream}'
+      - 'fuel-verify-{phase}-{stream}'
 #####################################
 # job templates
 #####################################
     concurrent: true
 
     properties:
-        - logrotate-default
-        - throttle:
-            enabled: true
-            max-total: 4
-            option: 'project'
-        - build-blocker:
-            use-build-blocker: true
-            blocking-jobs:
-                - 'fuel-os-.*?-virtual-daily-.*'
-            block-level: 'NODE'
+      - logrotate-default
+      - throttle:
+          enabled: true
+          max-total: 4
+          option: 'project'
+      - build-blocker:
+          use-build-blocker: true
+          blocking-jobs:
+            - 'fuel-os-.*?-virtual-daily-.*'
+          block-level: 'NODE'
 
     scm:
-        - git-scm-gerrit
+      - git-scm-gerrit
 
     wrappers:
-        - ssh-agent-wrapper
-        - timeout:
-            timeout: 360
-            fail: true
+      - ssh-agent-wrapper
+      - timeout:
+          timeout: 360
+          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
+      - 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
 
     parameters:
-        - project-parameter:
-            project: '{project}'
-            branch: '{branch}'
-        - 'fuel-virtual-defaults':
-            installer: '{installer}'
-        - '{installer}-defaults':
-            gs-pathname: '{gs-pathname}'
+      - project-parameter:
+          project: '{project}'
+          branch: '{branch}'
+      - 'fuel-virtual-defaults':
+          installer: '{installer}'
+      - '{installer}-defaults':
+          gs-pathname: '{gs-pathname}'
 
     builders:
-        - description-setter:
-            description: "Built on $NODE_NAME"
-        - multijob:
-            name: basic
-            condition: SUCCESSFUL
-            projects:
-                - name: 'fuel-verify-basic-{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
-                  kill-phase-on: FAILURE
-                  abort-all-job: true
-        - multijob:
-            name: deploy-virtual
-            condition: SUCCESSFUL
-            projects:
-                - name: 'fuel-verify-deploy-virtual-{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
-                  kill-phase-on: FAILURE
-                  abort-all-job: true
-        - multijob:
-            name: smoke-test
-            condition: SUCCESSFUL
-            projects:
-                - name: 'fuel-verify-smoke-test-{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
-                  kill-phase-on: FAILURE
-                  abort-all-job: true
+      - description-setter:
+          description: "Built on $NODE_NAME"
+      - multijob:
+          name: basic
+          condition: SUCCESSFUL
+          projects:
+            - name: 'fuel-verify-basic-{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
+              kill-phase-on: FAILURE
+              abort-all-job: true
+      - multijob:
+          name: deploy-virtual
+          condition: SUCCESSFUL
+          projects:
+            - name: 'fuel-verify-deploy-virtual-{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
+              kill-phase-on: FAILURE
+              abort-all-job: true
+      - multijob:
+          name: smoke-test
+          condition: SUCCESSFUL
+          projects:
+            - name: 'fuel-verify-smoke-test-{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
+              kill-phase-on: FAILURE
+              abort-all-job: true
 
 - job-template:
     name: 'fuel-verify-{phase}-{stream}'
     concurrent: true
 
     properties:
-        - logrotate-default
-        - throttle:
-            enabled: true
-            max-total: 2
-            max-per-node: 1
-            option: 'project'
-        - build-blocker:
-            use-build-blocker: true
-            blocking-jobs:
-                - 'fuel-verify-deploy-.*'
-                - 'fuel-verify-test-.*'
-            block-level: 'NODE'
+      - logrotate-default
+      - throttle:
+          enabled: true
+          max-total: 2
+          max-per-node: 1
+          option: 'project'
+      - build-blocker:
+          use-build-blocker: true
+          blocking-jobs:
+            - 'fuel-verify-deploy-.*'
+            - 'fuel-verify-test-.*'
+          block-level: 'NODE'
 
     scm:
-        - git-scm-gerrit
+      - git-scm-gerrit
 
     wrappers:
-        - ssh-agent-wrapper
-        - timeout:
-            timeout: 360
-            fail: true
+      - ssh-agent-wrapper
+      - timeout:
+          timeout: 360
+          fail: true
+
     parameters:
-        - project-parameter:
-            project: '{project}'
-            branch: '{branch}'
-        - '{slave-label}-defaults'
-        - 'fuel-virtual-defaults':
-            installer: '{installer}'
-        - '{installer}-defaults':
-            gs-pathname: '{gs-pathname}'
+      - project-parameter:
+          project: '{project}'
+          branch: '{branch}'
+      - '{slave-label}-defaults'
+      - 'fuel-virtual-defaults':
+          installer: '{installer}'
+      - '{installer}-defaults':
+          gs-pathname: '{gs-pathname}'
 
     builders:
-        - description-setter:
-            description: "Built on $NODE_NAME"
-        - '{project}-verify-{phase}-macro'
+      - description-setter:
+          description: "Built on $NODE_NAME"
+      - '{project}-verify-{phase}-macro'
 #####################################
 # builder macros
 #####################################
 - builder:
     name: 'fuel-verify-basic-macro'
     builders:
-        - shell: |
-            #!/bin/bash
+      - shell: |
+          #!/bin/bash
 
-            echo "Not activated!"
+          echo "Not activated!"
 
 - builder:
     name: 'fuel-verify-deploy-virtual-macro'
     builders:
-        - shell:
-            !include-raw: ./fuel-deploy.sh
+      - shell:
+          !include-raw: ./fuel-deploy.sh
 
 - builder:
     name: 'fuel-verify-smoke-test-macro'
     builders:
-        - shell: |
-            #!/bin/bash
+      - shell: |
+          #!/bin/bash
 
-            echo "Not activated!"
+          echo "Not activated!"
index c8a8c17..f21c586 100644 (file)
@@ -1,3 +1,4 @@
+---
 # jenkins job templates for Fuel
 - project:
 
@@ -7,48 +8,48 @@
 
     installer: fuel
 
-#--------------------------------
-# BRANCH ANCHORS
-#--------------------------------
+    # -------------------------------
+    # BRANCH ANCHORS
+    # -------------------------------
     master: &master
-        stream: master
-        branch: '{stream}'
-        disabled: false
-        gs-pathname: ''
+      stream: master
+      branch: '{stream}'
+      disabled: false
+      gs-pathname: ''
     euphrates: &euphrates
-        stream: euphrates
-        branch: 'stable/{stream}'
-        disabled: false
-        gs-pathname: '/{stream}'
-#--------------------------------
-# POD, INSTALLER, AND BRANCH MAPPING
-#--------------------------------
-#        CI PODs
-#--------------------------------
+      stream: euphrates
+      branch: 'stable/{stream}'
+      disabled: false
+      gs-pathname: '/{stream}'
+    # -------------------------------
+    # POD, INSTALLER, AND BRANCH MAPPING
+    # -------------------------------
+    #        CI PODs
+    # -------------------------------
     pod:
-        - baremetal:
-            slave-label: fuel-baremetal
-            <<: *master
-        - virtual:
-            slave-label: fuel-virtual
-            <<: *master
-        - baremetal:
-            slave-label: fuel-baremetal
-            <<: *euphrates
-        - virtual:
-            slave-label: fuel-virtual
-            <<: *euphrates
-#--------------------------------
-#       scenarios
-#--------------------------------
+      - baremetal:
+          slave-label: fuel-baremetal
+          <<: *master
+      - virtual:
+          slave-label: fuel-virtual
+          <<: *master
+      - baremetal:
+          slave-label: fuel-baremetal
+          <<: *euphrates
+      - virtual:
+          slave-label: fuel-virtual
+          <<: *euphrates
+    # -------------------------------
+    #       scenarios
+    # -------------------------------
     scenario:
-        # HA scenarios
-        - 'os-nosdn-nofeature-ha':
-            auto-trigger-name: 'weekly-trigger-disabled'
+      # HA scenarios
+      - 'os-nosdn-nofeature-ha':
+          auto-trigger-name: 'weekly-trigger-disabled'
 
     jobs:
-        - 'fuel-{scenario}-{pod}-weekly-{stream}'
-        - 'fuel-deploy-{pod}-weekly-{stream}'
+      - 'fuel-{scenario}-{pod}-weekly-{stream}'
+      - 'fuel-deploy-{pod}-weekly-{stream}'
 
 ########################
 # job templates
     concurrent: false
 
     properties:
-        - logrotate-default
-        - throttle:
-            enabled: true
-            max-total: 4
-            max-per-node: 1
-            option: 'project'
-        - build-blocker:
-            use-build-blocker: true
-            blocking-jobs:
-                - 'fuel-os-.*?-{pod}-daily-.*'
-                - 'fuel-os-.*?-{pod}-weekly-.*'
-                - 'fuel-verify-.*'
-            block-level: 'NODE'
+      - logrotate-default
+      - throttle:
+          enabled: true
+          max-total: 4
+          max-per-node: 1
+          option: 'project'
+      - build-blocker:
+          use-build-blocker: true
+          blocking-jobs:
+            - 'fuel-os-.*?-{pod}-daily-.*'
+            - 'fuel-os-.*?-{pod}-weekly-.*'
+            - 'fuel-verify-.*'
+          block-level: 'NODE'
 
     wrappers:
-        - build-name:
-            name: '$BUILD_NUMBER - Scenario: $DEPLOY_SCENARIO'
+      - build-name:
+          name: '$BUILD_NUMBER - Scenario: $DEPLOY_SCENARIO'
 
     triggers:
-        - '{auto-trigger-name}'
+      - '{auto-trigger-name}'
 
     parameters:
-        - project-parameter:
-            project: '{project}'
-            branch: '{branch}'
-        - '{installer}-defaults':
-            gs-pathname: '{gs-pathname}'
-        - '{slave-label}-defaults':
-            installer: '{installer}'
-        - string:
-            name: DEPLOY_SCENARIO
-            default: '{scenario}'
+      - project-parameter:
+          project: '{project}'
+          branch: '{branch}'
+      - '{installer}-defaults':
+          gs-pathname: '{gs-pathname}'
+      - '{slave-label}-defaults':
+          installer: '{installer}'
+      - string:
+          name: DEPLOY_SCENARIO
+          default: '{scenario}'
 
     builders:
-        - description-setter:
-            description: "Built on $NODE_NAME"
-        - trigger-builds:
-            - project: 'fuel-deploy-{pod}-weekly-{stream}'
-              current-parameters: false
-              predefined-parameters:
-                DEPLOY_SCENARIO={scenario}
-              same-node: true
-              block: true
-        - trigger-builds:
-            - project: 'functest-fuel-{pod}-weekly-{stream}'
-              current-parameters: false
-              predefined-parameters:
-                DEPLOY_SCENARIO={scenario}
-              same-node: true
-              block: true
-              block-thresholds:
-                build-step-failure-threshold: 'never'
-                failure-threshold: 'never'
-                unstable-threshold: 'FAILURE'
+      - description-setter:
+          description: "Built on $NODE_NAME"
+      - trigger-builds:
+          - project: 'fuel-deploy-{pod}-weekly-{stream}'
+            current-parameters: false
+            predefined-parameters:
+              DEPLOY_SCENARIO={scenario}
+            same-node: true
+            block: true
+      - trigger-builds:
+          - project: 'functest-fuel-{pod}-weekly-{stream}'
+            current-parameters: false
+            predefined-parameters:
+              DEPLOY_SCENARIO={scenario}
+            same-node: true
+            block: true
+            block-thresholds:
+              build-step-failure-threshold: 'never'
+              failure-threshold: 'never'
+              unstable-threshold: 'FAILURE'
 
     publishers:
-        - email:
-            recipients: peter.barabas@ericsson.com fzhadaev@mirantis.com
-        - email-jenkins-admins-on-failure
+      - email:
+          recipients: peter.barabas@ericsson.com fzhadaev@mirantis.com
+      - email-jenkins-admins-on-failure
 
 - job-template:
     name: 'fuel-deploy-{pod}-weekly-{stream}'
     concurrent: true
 
     properties:
-        - logrotate-default
-        - throttle:
-            enabled: true
-            max-total: 4
-            max-per-node: 1
-            option: 'project'
-        - build-blocker:
-            use-build-blocker: true
-            blocking-jobs:
-                - 'fuel-deploy-{pod}-daily-.*'
-                - 'fuel-deploy-generic-daily-.*'
-                - 'fuel-deploy-{pod}-weekly-.*'
-                - 'fuel-deploy-generic-weekly-.*'
-            block-level: 'NODE'
+      - logrotate-default
+      - throttle:
+          enabled: true
+          max-total: 4
+          max-per-node: 1
+          option: 'project'
+      - build-blocker:
+          use-build-blocker: true
+          blocking-jobs:
+            - 'fuel-deploy-{pod}-daily-.*'
+            - 'fuel-deploy-generic-daily-.*'
+            - 'fuel-deploy-{pod}-weekly-.*'
+            - 'fuel-deploy-generic-weekly-.*'
+          block-level: 'NODE'
 
     parameters:
-        - project-parameter:
-            project: '{project}'
-            branch: '{branch}'
-        - '{installer}-defaults':
-            gs-pathname: '{gs-pathname}'
-        - '{slave-label}-defaults':
-            installer: '{installer}'
-        - string:
-            name: DEPLOY_SCENARIO
-            default: 'os-odl-nofeature-ha'
-        - string:
-            name: DEPLOY_TIMEOUT
-            default: '150'
-            description: 'Deployment timeout in minutes'
+      - project-parameter:
+          project: '{project}'
+          branch: '{branch}'
+      - '{installer}-defaults':
+          gs-pathname: '{gs-pathname}'
+      - '{slave-label}-defaults':
+          installer: '{installer}'
+      - string:
+          name: DEPLOY_SCENARIO
+          default: 'os-odl-nofeature-ha'
 
     scm:
-        - git-scm
+      - git-scm
 
     wrappers:
-        - build-name:
-            name: '$BUILD_NUMBER - Scenario: $DEPLOY_SCENARIO'
+      - build-name:
+          name: '$BUILD_NUMBER - Scenario: $DEPLOY_SCENARIO'
 
     builders:
-        - description-setter:
-            description: "Built on $NODE_NAME"
-        - shell:
-            !include-raw-escape: ./fuel-deploy.sh
+      - description-setter:
+          description: "Built on $NODE_NAME"
+      - shell:
+          !include-raw-escape: ./fuel-deploy.sh
 
     publishers:
-        - email:
-            recipients: peter.barabas@ericsson.com fzhadaev@mirantis.com
-        - email-jenkins-admins-on-failure
+      - email:
+          recipients: peter.barabas@ericsson.com fzhadaev@mirantis.com
+      - email-jenkins-admins-on-failure
 
 ########################
 # trigger macros
 ########################
-#-----------------------------------------------
+# ----------------------------------------------
 # Triggers for job running on fuel-baremetal against master branch
-#-----------------------------------------------
+# ----------------------------------------------
 # HA Scenarios
 - trigger:
     name: 'fuel-os-nosdn-nofeature-ha-baremetal-weekly-master-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
index 797f660..f5f39b8 100755 (executable)
@@ -23,7 +23,7 @@ run_tiers() {
             echo ${ret_value} > ${ret_val_file}
             if [ ${tier} == 'healthcheck' ]; then
                 echo "Healthcheck tier failed. Exiting Functest..."
-                exit 1
+                break
             fi
         fi
     done
index 04a2936..bddb277 100644 (file)
@@ -1,3 +1,4 @@
+---
 ###################################
 # job configuration for functest
 ###################################
 
     project: functest
 
-#--------------------------------
-# BRANCH ANCHORS
-#--------------------------------
+    # -------------------------------
+    # BRANCH ANCHORS
+    # -------------------------------
     master: &master
-        stream: master
-        branch: '{stream}'
-        gs-pathname: ''
-        docker-tag: 'latest'
+      stream: master
+      branch: '{stream}'
+      gs-pathname: ''
+      docker-tag: 'latest'
     euphrates: &euphrates
-        stream: euphrates
-        branch: 'stable/{stream}'
-        gs-pathname: '/{stream}'
-        docker-tag: 'stable'
-#--------------------------------
-# POD, INSTALLER, AND BRANCH MAPPING
-#--------------------------------
-#    Installers using labels
-#            CI PODs
-# This section should only contain the installers
-# that have been switched using labels for slaves
-#--------------------------------
+      stream: euphrates
+      branch: 'stable/{stream}'
+      gs-pathname: '/{stream}'
+      docker-tag: 'stable'
+    # -------------------------------
+    # POD, INSTALLER, AND BRANCH MAPPING
+    # -------------------------------
+    #    Installers using labels
+    #            CI PODs
+    # This section should only contain the installers
+    # that have been switched using labels for slaves
+    # -------------------------------
     pod:
-# fuel CI PODs
-        - baremetal:
-            slave-label: fuel-baremetal
-            installer: fuel
-            <<: *master
-        - virtual:
-            slave-label: fuel-virtual
-            installer: fuel
-            <<: *master
-        - baremetal:
-            slave-label: fuel-baremetal
-            installer: fuel
-            <<: *euphrates
-        - virtual:
-            slave-label: fuel-virtual
-            installer: fuel
-            <<: *euphrates
-# joid CI PODs
-        - baremetal:
-            slave-label: joid-baremetal
-            installer: joid
-            <<: *master
-        - virtual:
-            slave-label: joid-virtual
-            installer: joid
-            <<: *master
-        - baremetal:
-            slave-label: joid-baremetal
-            installer: joid
-            <<: *euphrates
-        - virtual:
-            slave-label: joid-virtual
-            installer: joid
-            <<: *euphrates
-# compass CI PODs
-        - baremetal:
-            slave-label: compass-baremetal
-            installer: compass
-            <<: *master
-        - virtual:
-            slave-label: compass-virtual
-            installer: compass
-            <<: *master
-        - baremetal:
-            slave-label: compass-baremetal
-            installer: compass
-            <<: *euphrates
-        - virtual:
-            slave-label: compass-virtual
-            installer: compass
-            <<: *euphrates
-# apex CI PODs
-        - virtual:
-            slave-label: apex-virtual-master
-            installer: apex
-            <<: *master
-        - baremetal:
-            slave-label: apex-baremetal-master
-            installer: apex
-            <<: *master
-        - virtual:
-            slave-label: apex-virtual-euphrates
-            installer: apex
-            <<: *euphrates
-        - baremetal:
-            slave-label: apex-baremetal-euphrates
-            installer: apex
-            <<: *euphrates
-# armband CI PODs
-        - armband-baremetal:
-            slave-label: armband-baremetal
-            installer: fuel
-            <<: *master
-        - armband-virtual:
-            slave-label: armband-virtual
-            installer: fuel
-            <<: *master
-        - armband-baremetal:
-            slave-label: armband-baremetal
-            installer: fuel
-            <<: *euphrates
-        - armband-virtual:
-            slave-label: armband-virtual
-            installer: fuel
-            <<: *euphrates
-# daisy CI PODs
-        - baremetal:
-            slave-label: daisy-baremetal
-            installer: daisy
-            <<: *master
-        - virtual:
-            slave-label: daisy-virtual
-            installer: daisy
-            <<: *master
-        - baremetal:
-            slave-label: daisy-baremetal
-            installer: daisy
-            <<: *euphrates
-        - virtual:
-            slave-label: daisy-virtual
-            installer: daisy
-            <<: *euphrates
-# netvirt 3rd party ci
-        - virtual:
-            slave-label: odl-netvirt-virtual
-            installer: netvirt
-            <<: *master
-#--------------------------------
-#        None-CI PODs
-#--------------------------------
-        - orange-pod1:
-            slave-label: '{pod}'
-            installer: joid
-            <<: *master
-        - orange-pod5:
-            slave-label: '{pod}'
-            installer: fuel
-            <<: *master
-        - orange-pod2:
-            slave-label: '{pod}'
-            installer: joid
-            <<: *master
-        - baremetal-centos:
-            slave-label: 'intel-pod8'
-            installer: compass
-            <<: *master
-        - nokia-pod1:
-            slave-label: '{pod}'
-            installer: apex
-            <<: *master
-        - zte-pod1:
-            slave-label: '{pod}'
-            installer: fuel
-            <<: *master
-        - zte-pod1:
-            slave-label: '{pod}'
-            installer: fuel
-            <<: *euphrates
-        - zte-pod2:
-            slave-label: '{pod}'
-            installer: daisy
-            <<: *master
-        - zte-pod2:
-            slave-label: '{pod}'
-            installer: daisy
-            <<: *euphrates
-        - zte-pod3:
-            slave-label: '{pod}'
-            installer: daisy
-            <<: *master
-        - zte-pod3:
-            slave-label: '{pod}'
-            installer: daisy
-            <<: *euphrates
-# PODs for verify jobs triggered by each patch upload
-#        - ool-virtual1:
-#            slave-label: '{pod}'
-#            installer: apex
-#            <<: *master
-#--------------------------------
+      # fuel CI PODs
+      - baremetal:
+          slave-label: fuel-baremetal
+          installer: fuel
+          <<: *master
+      - virtual:
+          slave-label: fuel-virtual
+          installer: fuel
+          <<: *master
+      - baremetal:
+          slave-label: fuel-baremetal
+          installer: fuel
+          <<: *euphrates
+      - virtual:
+          slave-label: fuel-virtual
+          installer: fuel
+          <<: *euphrates
+      # joid CI PODs
+      - baremetal:
+          slave-label: joid-baremetal
+          installer: joid
+          <<: *master
+      - virtual:
+          slave-label: joid-virtual
+          installer: joid
+          <<: *master
+      - baremetal:
+          slave-label: joid-baremetal
+          installer: joid
+          <<: *euphrates
+      - virtual:
+          slave-label: joid-virtual
+          installer: joid
+          <<: *euphrates
+      # compass CI PODs
+      - baremetal:
+          slave-label: compass-baremetal
+          installer: compass
+          <<: *master
+      - virtual:
+          slave-label: compass-virtual
+          installer: compass
+          <<: *master
+      - baremetal:
+          slave-label: compass-baremetal
+          installer: compass
+          <<: *euphrates
+      - virtual:
+          slave-label: compass-virtual
+          installer: compass
+          <<: *euphrates
+      # apex CI PODs
+      - virtual:
+          slave-label: apex-virtual-master
+          installer: apex
+          <<: *master
+      - baremetal:
+          slave-label: apex-baremetal-master
+          installer: apex
+          <<: *master
+      - virtual:
+          slave-label: apex-virtual-euphrates
+          installer: apex
+          <<: *euphrates
+      - baremetal:
+          slave-label: apex-baremetal-euphrates
+          installer: apex
+          <<: *euphrates
+      # armband CI PODs
+      - armband-baremetal:
+          slave-label: armband-baremetal
+          installer: fuel
+          <<: *master
+      - armband-virtual:
+          slave-label: armband-virtual
+          installer: fuel
+          <<: *master
+      - armband-baremetal:
+          slave-label: armband-baremetal
+          installer: fuel
+          <<: *euphrates
+      - armband-virtual:
+          slave-label: armband-virtual
+          installer: fuel
+          <<: *euphrates
+      # daisy CI PODs
+      - baremetal:
+          slave-label: daisy-baremetal
+          installer: daisy
+          <<: *master
+      - virtual:
+          slave-label: daisy-virtual
+          installer: daisy
+          <<: *master
+      - baremetal:
+          slave-label: daisy-baremetal
+          installer: daisy
+          <<: *euphrates
+      - virtual:
+          slave-label: daisy-virtual
+          installer: daisy
+          <<: *euphrates
+      # netvirt 3rd party ci
+      - virtual:
+          slave-label: odl-netvirt-virtual
+          installer: netvirt
+          <<: *master
+      # -------------------------------
+      #        None-CI PODs
+      # -------------------------------
+      - orange-pod1:
+          slave-label: '{pod}'
+          installer: joid
+          <<: *master
+      - orange-pod5:
+          slave-label: '{pod}'
+          installer: fuel
+          <<: *master
+      - orange-pod2:
+          slave-label: '{pod}'
+          installer: joid
+          <<: *master
+      - baremetal-centos:
+          slave-label: 'intel-pod8'
+          installer: compass
+          <<: *master
+      - nokia-pod1:
+          slave-label: '{pod}'
+          installer: apex
+          <<: *master
+      - zte-pod1:
+          slave-label: '{pod}'
+          installer: fuel
+          <<: *master
+      - zte-pod1:
+          slave-label: '{pod}'
+          installer: fuel
+          <<: *euphrates
+      - zte-pod2:
+          slave-label: '{pod}'
+          installer: daisy
+          <<: *master
+      - zte-pod2:
+          slave-label: '{pod}'
+          installer: daisy
+          <<: *euphrates
+      - zte-pod3:
+          slave-label: '{pod}'
+          installer: daisy
+          <<: *master
+      - zte-pod3:
+          slave-label: '{pod}'
+          installer: daisy
+          <<: *euphrates
+    # PODs for verify jobs triggered by each patch upload
+    #   - ool-virtual1:
+    #       slave-label: '{pod}'
+    #       installer: apex
+    #       <<: *master
+    # -------------------------------
 
     alpine-pod:
-        - ericsson-virtual-pod1bl01:
-            slave-label: '{alpine-pod}'
-            installer: fuel
-            <<: *master
-        - huawei-virtual5:
-            slave-label: '{alpine-pod}'
-            installer: compass
-            <<: *master
+      - ericsson-virtual-pod1bl01:
+          slave-label: '{alpine-pod}'
+          installer: fuel
+          <<: *master
+      - huawei-virtual5:
+          slave-label: '{alpine-pod}'
+          installer: compass
+          <<: *master
 
     testsuite:
-        - 'suite':
-            job-timeout: 60
-        - 'daily':
-            job-timeout: 240
-        - 'arm-daily':
-            job-timeout: 240
+      - 'suite':
+          job-timeout: 60
+      - 'daily':
+          job-timeout: 240
+      - 'arm-daily':
+          job-timeout: 240
 
     jobs:
-        - 'functest-{installer}-{pod}-{testsuite}-{stream}'
-        - 'functest-alpine-{installer}-{alpine-pod}-{testsuite}-{stream}'
+      - 'functest-{installer}-{pod}-{testsuite}-{stream}'
+      - 'functest-alpine-{installer}-{alpine-pod}-{testsuite}-{stream}'
 
 ################################
 # job template
     concurrent: true
 
     properties:
-        - logrotate-default
-        - throttle:
-            enabled: true
-            max-per-node: 1
-            option: 'project'
+      - logrotate-default
+      - throttle:
+          enabled: true
+          max-per-node: 1
+          option: 'project'
 
     wrappers:
-        - build-name:
-            name: '$BUILD_NUMBER Suite: $FUNCTEST_MODE Scenario: $DEPLOY_SCENARIO'
-        - timeout:
-            timeout: '{job-timeout}'
-            abort: true
+      - build-name:
+          name: '$BUILD_NUMBER Suite: $FUNCTEST_MODE Scenario: $DEPLOY_SCENARIO'
+      - timeout:
+          timeout: '{job-timeout}'
+          abort: true
 
     parameters:
-        - project-parameter:
-            project: '{project}'
-            branch: '{branch}'
-        - '{installer}-defaults'
-        - '{slave-label}-defaults'
-        - 'functest-{testsuite}-parameter'
-        - string:
-            name: DEPLOY_SCENARIO
-            default: 'os-odl_l2-nofeature-ha'
-        - string:
-            name: DOCKER_TAG
-            default: '{docker-tag}'
-            description: 'Tag to pull docker image'
-        - string:
-            name: CLEAN_DOCKER_IMAGES
-            default: 'false'
-            description: 'Remove downloaded docker images (opnfv/functest*:*)'
-        - functest-parameter:
-            gs-pathname: '{gs-pathname}'
+      - project-parameter:
+          project: '{project}'
+          branch: '{branch}'
+      - '{installer}-defaults'
+      - '{slave-label}-defaults'
+      - 'functest-{testsuite}-parameter'
+      - string:
+          name: DEPLOY_SCENARIO
+          default: 'os-odl_l2-nofeature-ha'
+      - string:
+          name: DOCKER_TAG
+          default: '{docker-tag}'
+          description: 'Tag to pull docker image'
+      - string:
+          name: CLEAN_DOCKER_IMAGES
+          default: 'false'
+          description: 'Remove downloaded docker images (opnfv/functest*:*)'
+      - functest-parameter:
+          gs-pathname: '{gs-pathname}'
 
     scm:
-        - git-scm
+      - git-scm
 
     builders:
-        - description-setter:
-            description: "Built on $NODE_NAME"
-        - 'functest-{testsuite}-builder'
+      - description-setter:
+          description: "Built on $NODE_NAME"
+      - 'functest-{testsuite}-builder'
 
 - job-template:
     name: 'functest-alpine-{installer}-{alpine-pod}-{testsuite}-{stream}'
     concurrent: true
 
     properties:
-        - logrotate-default
-        - throttle:
-            enabled: true
-            max-per-node: 1
-            option: 'project'
+      - logrotate-default
+      - throttle:
+          enabled: true
+          max-per-node: 1
+          option: 'project'
 
     wrappers:
-        - build-name:
-            name: '$BUILD_NUMBER Suite: $FUNCTEST_SUITE_NAME Scenario: $DEPLOY_SCENARIO'
-        - timeout:
-            timeout: '{job-timeout}'
-            abort: true
+      - build-name:
+          name: '$BUILD_NUMBER Suite: $FUNCTEST_SUITE_NAME Scenario: $DEPLOY_SCENARIO'
+      - timeout:
+          timeout: '{job-timeout}'
+          abort: true
 
     parameters:
-        - project-parameter:
-            project: '{project}'
-            branch: '{branch}'
-        - '{installer}-defaults'
-        - '{slave-label}-defaults'
-        - 'functest-{testsuite}-parameter'
-        - string:
-            name: DEPLOY_SCENARIO
-            default: 'os-nosdn-nofeature-noha'
-        - functest-parameter:
-            gs-pathname: '{gs-pathname}'
+      - project-parameter:
+          project: '{project}'
+          branch: '{branch}'
+      - '{installer}-defaults'
+      - '{slave-label}-defaults'
+      - 'functest-{testsuite}-parameter'
+      - string:
+          name: DEPLOY_SCENARIO
+          default: 'os-nosdn-nofeature-noha'
+      - functest-parameter:
+          gs-pathname: '{gs-pathname}'
 
     scm:
-        - git-scm
+      - git-scm
 
     builders:
-        - description-setter:
-            description: "Built on $NODE_NAME"
-        - 'functest-alpine-daily-builder'
+      - description-setter:
+          description: "Built on $NODE_NAME"
+      - 'functest-alpine-daily-builder'
 
 ########################
 # parameter macros
 - parameter:
     name: functest-daily-parameter
     parameters:
-        - string:
-            name: FUNCTEST_MODE
-            default: 'daily'
-            description: "Daily suite name to run"
+      - string:
+          name: FUNCTEST_MODE
+          default: 'daily'
+          description: "Daily suite name to run"
+
 - parameter:
     name: functest-arm-daily-parameter
     parameters:
-        - string:
-            name: FUNCTEST_MODE
-            default: 'arm-daily'
-            description: "Daily suite name (Aarch64) to run"
+      - string:
+          name: FUNCTEST_MODE
+          default: 'arm-daily'
+          description: "Daily suite name (Aarch64) to run"
+
 - parameter:
     name: functest-suite-parameter
     parameters:
-        - choice:
-            name: FUNCTEST_MODE
-            choices:
-                - 'tier'
-                - 'testcase'
-            default: 'tier'
-            description: "Test case or Tier to be run"
-        - choice:
-            name: FUNCTEST_SUITE_NAME
-            choices:
-                - 'connection_check'
-                - 'api_check'
-                - 'snaps_health_check'
-                - 'vping_userdata'
-                - 'vping_ssh'
-                - 'tempest_smoke_serial'
-                - 'rally_sanity'
-                - 'odl'
-                - 'odl_netvirt'
-                - 'snaps_smoke'
-                - 'refstack_defcore'
-                - 'promise'
-                - 'doctor'
-                - 'bgpvpn'
-                - 'parser'
-                - 'security_scan'
-                - 'tempest_full_parallel'
-                - 'rally_full'
-                - 'cloudify_ims'
-                - 'cloudify_vrouter'
-                - 'orchestra_openims'
-                - 'orchestra_clearwaterims'
-            default: 'connection_check'
-        - choice:
-            name: FUNCTEST_TIER
-            choices:
-                - 'healthcheck'
-                - 'smoke'
-                - 'features'
-                - 'components'
-                - 'vnf'
-            default: 'healthcheck'
-        - string:
-            name: TESTCASE_OPTIONS
-            default: ''
-            description: 'Additional parameters specific to test case(s)'
+      - choice:
+          name: FUNCTEST_MODE
+          choices:
+            - 'tier'
+            - 'testcase'
+          default: 'tier'
+          description: "Test case or Tier to be run"
+      - choice:
+          name: FUNCTEST_SUITE_NAME
+          choices:
+            - 'connection_check'
+            - 'api_check'
+            - 'snaps_health_check'
+            - 'vping_userdata'
+            - 'vping_ssh'
+            - 'tempest_smoke_serial'
+            - 'rally_sanity'
+            - 'odl'
+            - 'odl_netvirt'
+            - 'snaps_smoke'
+            - 'refstack_defcore'
+            - 'promise'
+            - 'doctor'
+            - 'bgpvpn'
+            - 'parser'
+            - 'security_scan'
+            - 'tempest_full_parallel'
+            - 'rally_full'
+            - 'cloudify_ims'
+            - 'cloudify_vrouter'
+            - 'orchestra_openims'
+            - 'orchestra_clearwaterims'
+          default: 'connection_check'
+      - choice:
+          name: FUNCTEST_TIER
+          choices:
+            - 'healthcheck'
+            - 'smoke'
+            - 'features'
+            - 'components'
+            - 'vnf'
+          default: 'healthcheck'
+      - string:
+          name: TESTCASE_OPTIONS
+          default: ''
+          description: 'Additional parameters specific to test case(s)'
+
 - parameter:
     name: functest-parameter
     parameters:
-        - string:
-            name: GS_PATHNAME
-            default: '{gs-pathname}'
-            description: "Version directory where the opnfv documents will be stored in gs repository"
-        - string:
-            name: FUNCTEST_REPO_DIR
-            default: "/home/opnfv/repos/functest"
-            description: "Directory where the Functest repository is cloned"
-        - string:
-            name: PUSH_RESULTS_TO_DB
-            default: "true"
-            description: "Push the results of all the tests to the resultDB"
-        - string:
-            name: CI_DEBUG
-            default: 'false'
-            description: "Show debug output information"
-        - string:
-            name: RC_FILE_PATH
-            default: ''
-            description: "Path to the OS credentials file if given"
+      - string:
+          name: GS_PATHNAME
+          default: '{gs-pathname}'
+          description: "Version directory where the opnfv documents will be stored in gs repository"
+      - string:
+          name: FUNCTEST_REPO_DIR
+          default: "/home/opnfv/repos/functest"
+          description: "Directory where the Functest repository is cloned"
+      - string:
+          name: PUSH_RESULTS_TO_DB
+          default: "true"
+          description: "Push the results of all the tests to the resultDB"
+      - string:
+          name: CI_DEBUG
+          default: 'false'
+          description: "Show debug output information"
+      - string:
+          name: RC_FILE_PATH
+          default: ''
+          description: "Path to the OS credentials file if given"
 ########################
 # trigger macros
 ########################
 - trigger:
     name: 'functest-master'
     triggers:
-        - pollscm:
-            cron: "H 9 * * *"
+      - pollscm:
+          cron: "H 9 * * *"
 ########################
 # builder macros
 ########################
 - builder:
     name: functest-daily-builder
     builders:
-        - 'functest-cleanup'
-        - 'functest-daily'
-        - 'functest-store-results'
-        - 'functest-exit'
+      - 'functest-cleanup'
+      - 'functest-daily'
+      - 'functest-store-results'
+      - 'functest-exit'
 
 - builder:
     name: functest-arm-daily-builder
     builders:
-        - 'functest-cleanup'
-        - 'set-functest-env'
-        - 'functest-arm-daily'
-        - 'functest-store-results'
-        - 'functest-exit'
+      - 'functest-cleanup'
+      - 'set-functest-env'
+      - 'functest-arm-daily'
+      - 'functest-store-results'
+      - 'functest-exit'
 
 - builder:
     name: functest-suite-builder
     builders:
-        - 'functest-cleanup'
-        - 'set-functest-env-alpine'
-        - 'functest-suite'
-        - 'functest-store-results'
-        - 'functest-exit'
+      - 'functest-cleanup'
+      - 'set-functest-env-alpine'
+      - 'functest-suite'
+      - 'functest-store-results'
+      - 'functest-exit'
 
 - builder:
     name: functest-alpine-daily-builder
     builders:
-        - 'functest-cleanup'
-        - 'set-functest-env-alpine'
-        - 'functest-daily'
-        - 'functest-store-results'
-        - 'functest-exit'
+      - 'functest-cleanup'
+      - 'set-functest-env-alpine'
+      - 'functest-daily'
+      - 'functest-store-results'
+      - 'functest-exit'
 
 - builder:
     name: functest-daily
     builders:
-        - shell:
-            !include-raw:
-                - ./functest-env-presetup.sh
-                - ../../utils/fetch_os_creds.sh
-                - ./functest-alpine.sh
+      # yamllint disable rule:indentation
+      - shell:
+          !include-raw:
+              - ./functest-env-presetup.sh
+              - ../../utils/fetch_os_creds.sh
+              - ./functest-alpine.sh
 
+# yamllint enable rule:indentation
 - builder:
     name: functest-arm-daily
     builders:
-        - shell:
-            !include-raw: ./functest-loop.sh
+      - shell:
+          !include-raw: ./functest-loop.sh
 
 - builder:
     name: functest-suite
     builders:
-        - shell:
-            !include-raw:
-                - ./functest-alpine.sh
+      # yamllint disable rule:indentation
+      - shell:
+          !include-raw:
+              - ./functest-alpine.sh
 
+# yamllint enable rule:indentation
 - builder:
     name: set-functest-env
     builders:
-        - shell:
-            !include-raw:
-                - ./functest-env-presetup.sh
-                - ../../utils/fetch_os_creds.sh
-                - ./set-functest-env.sh
+      # yamllint disable rule:indentation
+      - shell:
+          !include-raw:
+              - ./functest-env-presetup.sh
+              - ../../utils/fetch_os_creds.sh
+              - ./set-functest-env.sh
 
+# yamllint enable rule:indentation
 - builder:
     name: set-functest-env-alpine
     builders:
-        - shell:
-            !include-raw:
-                - ./functest-env-presetup.sh
-                - ../../utils/fetch_os_creds.sh
+      # yamllint disable rule:indentation
+      - shell:
+          !include-raw:
+              - ./functest-env-presetup.sh
+              - ../../utils/fetch_os_creds.sh
 
+# yamllint enable rule:indentation
 - builder:
     name: functest-store-results
     builders:
-        - shell:
-            !include-raw: ../../utils/push-test-logs.sh
+      - shell:
+          !include-raw: ../../utils/push-test-logs.sh
 
 - builder:
     name: functest-cleanup
     builders:
-        - shell:
-            !include-raw: ./functest-cleanup.sh
+      - shell:
+          !include-raw: ./functest-cleanup.sh
 
 - builder:
     name: functest-exit
     builders:
-        - shell:
-            !include-raw: ./functest-exit.sh
+      - shell:
+          !include-raw: ./functest-exit.sh
index 329db5b..e068a4f 100644 (file)
@@ -1,3 +1,4 @@
+---
 ###################################################
 # All the jobs except verify have been removed!
 # They will only be enabled on request by projects!
@@ -8,27 +9,27 @@
     project: 'functest'
 
     jobs:
-        - 'functest-verify-{stream}'
-        - 'functest-verify-{phase}-{stream}'
-        - 'functest-docs-upload-{stream}'
+      - 'functest-verify-{stream}'
+      - 'functest-verify-{phase}-{stream}'
+      - 'functest-docs-upload-{stream}'
 
     stream:
-        - master:
-            branch: '{stream}'
-            gs-pathname: ''
-            disabled: false
-        - euphrates:
-            branch: 'stable/{stream}'
-            gs-pathname: '/{stream}'
-            disabled: false
+      - master:
+          branch: '{stream}'
+          gs-pathname: ''
+          disabled: false
+      - euphrates:
+          branch: 'stable/{stream}'
+          gs-pathname: '/{stream}'
+          disabled: false
 
     phase:
-        - 'unit-tests-and-docs':
-            slave-label: 'opnfv-build-ubuntu'
-        - 'build-x86_64':
-            slave-label: 'opnfv-build-ubuntu'
-        - 'build-aarch64':
-            slave-label: 'opnfv-build-ubuntu-arm'
+      - 'unit-tests-and-docs':
+          slave-label: 'opnfv-build-ubuntu'
+      - 'build-x86_64':
+          slave-label: 'opnfv-build-ubuntu'
+      - 'build-aarch64':
+          slave-label: 'opnfv-build-ubuntu-arm'
 
 - job-template:
     name: 'functest-verify-{stream}'
     project-type: 'multijob'
 
     parameters:
-        - project-parameter:
-            project: '{project}'
-            branch: '{branch}'
-        - 'opnfv-build-ubuntu-defaults'
+      - project-parameter:
+          project: '{project}'
+          branch: '{branch}'
+      - 'opnfv-build-ubuntu-defaults'
 
     scm:
-        - git-scm-gerrit
+      - git-scm-gerrit
 
     triggers:
-        - 'functest-verify-triggers-macro':
-            project: '{project}'
-            branch: '{branch}'
+      - 'functest-verify-triggers-macro':
+          project: '{project}'
+          branch: '{branch}'
 
     builders:
-        - shell: |
-            #!/bin/bash
-            # we do nothing here as the main stuff will be done
-            # in phase jobs
-            echo "Triggering phase jobs!"
-        - multijob:
-            name: 'functest-build-and-unittest'
-            execution-type: PARALLEL
-            projects:
-                - name: 'functest-verify-unit-tests-and-docs-{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
-                  git-revision: true
-                  node-parameters: false
-                  kill-phase-on: FAILURE
-                  abort-all-job: false
-                - name: 'functest-verify-build-x86_64-{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
-                    ARCH=x86_64
-                  git-revision: true
-                  node-parameters: false
-                  kill-phase-on: FAILURE
-                  abort-all-job: false
-                - name: 'functest-verify-build-aarch64-{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
-                    ARCH=aarch64
-                  git-revision: true
-                  node-parameters: false
-                  kill-phase-on: FAILURE
-                  abort-all-job: false
+      - shell: |
+          #!/bin/bash
+          # we do nothing here as the main stuff will be done
+          # in phase jobs
+          echo "Triggering phase jobs!"
+      - multijob:
+          name: 'functest-build-and-unittest'
+          execution-type: PARALLEL
+          projects:
+            - name: 'functest-verify-unit-tests-and-docs-{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
+              git-revision: true
+              node-parameters: false
+              kill-phase-on: FAILURE
+              abort-all-job: false
+            - name: 'functest-verify-build-x86_64-{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
+                ARCH=x86_64
+              git-revision: true
+              node-parameters: false
+              kill-phase-on: FAILURE
+              abort-all-job: false
+            - name: 'functest-verify-build-aarch64-{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
+                ARCH=aarch64
+              git-revision: true
+              node-parameters: false
+              kill-phase-on: FAILURE
+              abort-all-job: false
 
 - job-template:
     name: 'functest-verify-{phase}-{stream}'
     disabled: '{obj:disabled}'
 
     wrappers:
-        - ssh-agent-wrapper
-        - build-timeout:
-            timeout: 30
+      - ssh-agent-wrapper
+      - build-timeout:
+          timeout: 30
 
     parameters:
-        - project-parameter:
-            project: '{project}'
-            branch: '{branch}'
-        - '{slave-label}-defaults'
+      - project-parameter:
+          project: '{project}'
+          branch: '{branch}'
+      - '{slave-label}-defaults'
 
     scm:
-        - git-scm-gerrit
+      - git-scm-gerrit
 
     builders:
-        - 'functest-verify-{phase}-builders-macro'
+      - 'functest-verify-{phase}-builders-macro'
 
     publishers:
-        - 'functest-verify-{phase}-publishers-macro'
+      - 'functest-verify-{phase}-publishers-macro'
 
 - job-template:
     name: 'functest-docs-upload-{stream}'
     disabled: '{obj:disabled}'
 
     parameters:
-        - project-parameter:
-            project: '{project}'
-            branch: '{branch}'
-        - 'opnfv-build-ubuntu-defaults'
+      - project-parameter:
+          project: '{project}'
+          branch: '{branch}'
+      - 'opnfv-build-ubuntu-defaults'
 
     scm:
-        - git-scm
+      - git-scm
 
     triggers:
-        - 'functest-docs-upload-triggers-macro':
-            project: '{project}'
-            branch: '{branch}'
+      - 'functest-docs-upload-triggers-macro':
+          project: '{project}'
+          branch: '{branch}'
 
     builders:
-        - functest-upload-doc-artifact
+      - functest-upload-doc-artifact
 
 ################################
 # job triggers
 - trigger:
     name: 'functest-verify-triggers-macro'
     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}'
-                disable-strict-forbidden-file-verification: 'true'
-                forbidden-file-paths:
-                  - compare-type: ANT
-                    pattern: 'docs/**|.gitignore'
+      - 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}'
+              disable-strict-forbidden-file-verification: 'true'
+              forbidden-file-paths:
+                - compare-type: ANT
+                  pattern: 'docs/**|.gitignore'
+
 - trigger:
     name: 'functest-docs-upload-triggers-macro'
     triggers:
-        - gerrit:
-            server-name: 'gerrit.opnfv.org'
-            trigger-on:
-                - change-merged-event
-                - comment-added-contains-event:
-                    comment-contains-value: 'remerge'
-            projects:
-              - project-compare-type: 'ANT'
-                project-pattern: '{project}'
-                branches:
-                  - branch-compare-type: 'ANT'
-                    branch-pattern: '**/{branch}'
-                disable-strict-forbidden-file-verification: 'true'
-                forbidden-file-paths:
-                  - compare-type: ANT
-                    pattern: 'docs/**|.gitignore'
+      - gerrit:
+          server-name: 'gerrit.opnfv.org'
+          trigger-on:
+            - change-merged-event
+            - comment-added-contains-event:
+                comment-contains-value: 'remerge'
+          projects:
+            - project-compare-type: 'ANT'
+              project-pattern: '{project}'
+              branches:
+                - branch-compare-type: 'ANT'
+                  branch-pattern: '**/{branch}'
+              disable-strict-forbidden-file-verification: 'true'
+              forbidden-file-paths:
+                - compare-type: ANT
+                  pattern: 'docs/**|.gitignore'
 ################################
 # job builders
 ################################
 - builder:
     name: 'functest-verify-unit-tests-and-docs-builders-macro'
     builders:
-        - shell: |
-            cd $WORKSPACE && tox
+      - shell: |
+          cd $WORKSPACE && tox
+
 - builder:
     name: 'functest-verify-build-x86_64-builders-macro'
     builders:
-        - shell: |
-            echo "Not activated!"
+      - shell: |
+          echo "Not activated!"
+
 - builder:
     name: 'functest-verify-build-aarch64-builders-macro'
     builders:
-        - shell: |
-            echo "Not activated!"
+      - shell: |
+          echo "Not activated!"
+
 - builder:
     name: 'functest-upload-doc-artifact'
     builders:
-        - shell: |
-            cd $WORKSPACE && tox -edocs
+      - shell: |
+          cd $WORKSPACE && tox -edocs
             wget -O - https://git.opnfv.org/releng/plain/utils/upload-artifact.sh | bash -s "api/_build" "docs"
 ################################
 # job publishers
 - publisher:
     name: 'functest-verify-unit-tests-and-docs-publishers-macro'
     publishers:
-        - junit:
-            results: nosetests.xml
-        - cobertura:
-            report-file: "coverage.xml"
-            only-stable: "true"
-            health-auto-update: "true"
-            stability-auto-update: "true"
-            zoom-coverage-chart: "true"
-            targets:
-                - files:
-                    healthy: 10
-                    unhealthy: 20
-                    failing: 30
-                - method:
-                    healthy: 50
-                    unhealthy: 40
-                    failing: 30
-        - email-jenkins-admins-on-failure
+      - junit:
+          results: nosetests.xml
+      - cobertura:
+          report-file: "coverage.xml"
+          only-stable: "true"
+          health-auto-update: "true"
+          stability-auto-update: "true"
+          zoom-coverage-chart: "true"
+          targets:
+            - files:
+                healthy: 10
+                unhealthy: 20
+                failing: 30
+            - method:
+                healthy: 50
+                unhealthy: 40
+                failing: 30
+      - email-jenkins-admins-on-failure
+
 - publisher:
     name: 'functest-verify-build-x86_64-publishers-macro'
     publishers:
-        - email-jenkins-admins-on-failure
+      - email-jenkins-admins-on-failure
+
 - publisher:
     name: 'functest-verify-build-aarch64-publishers-macro'
     publishers:
-        - email-jenkins-admins-on-failure
+      - email-jenkins-admins-on-failure
index fe331e0..6826e41 100644 (file)
@@ -1,3 +1,4 @@
+---
 ###################################
 # job configuration for functest
 ###################################
@@ -6,50 +7,50 @@
 
     project: functest
 
-#--------------------------------
-# BRANCH ANCHORS
-#--------------------------------
+    # -------------------------------
+    # BRANCH ANCHORS
+    # -------------------------------
     master: &master
-        stream: master
-        branch: '{stream}'
-        gs-pathname: ''
-        docker-tag: 'latest'
-        disabled: false
+      stream: master
+      branch: '{stream}'
+      gs-pathname: ''
+      docker-tag: 'latest'
+      disabled: false
     euphrates: &euphrates
-        stream: euphrates
-        branch: 'stable/{stream}'
-        gs-pathname: '/{stream}'
-        docker-tag: 'stable'
-        disabled: false
-#--------------------------------
-# POD, INSTALLER, AND BRANCH MAPPING
-#--------------------------------
-#    Installers using labels
-#            CI PODs
-# This section should only contain the installers
-# that have been switched using labels for slaves
-#--------------------------------
+      stream: euphrates
+      branch: 'stable/{stream}'
+      gs-pathname: '/{stream}'
+      docker-tag: 'stable'
+      disabled: false
+    # -------------------------------
+    # POD, INSTALLER, AND BRANCH MAPPING
+    # -------------------------------
+    #    Installers using labels
+    #            CI PODs
+    # This section should only contain the installers
+    # that have been switched using labels for slaves
+    # -------------------------------
     pod:
-# fuel CI PODs
-        - baremetal:
-            slave-label: fuel-baremetal
-            installer: fuel
-            <<: *master
-        - virtual:
-            slave-label: fuel-virtual
-            installer: fuel
-            <<: *master
-        - baremetal:
-            slave-label: fuel-baremetal
-            installer: fuel
-            <<: *euphrates
-        - virtual:
-            slave-label: fuel-virtual
-            installer: fuel
-            <<: *euphrates
-#--------------------------------
+      # fuel CI PODs
+      - baremetal:
+          slave-label: fuel-baremetal
+          installer: fuel
+          <<: *master
+      - virtual:
+          slave-label: fuel-virtual
+          installer: fuel
+          <<: *master
+      - baremetal:
+          slave-label: fuel-baremetal
+          installer: fuel
+          <<: *euphrates
+      - virtual:
+          slave-label: fuel-virtual
+          installer: fuel
+          <<: *euphrates
+    # -------------------------------
     jobs:
-        - 'functest-{installer}-{pod}-weekly-{stream}'
+      - 'functest-{installer}-{pod}-weekly-{stream}'
 
 ################################
 # job template
     concurrent: true
 
     properties:
-        - logrotate-default
-        - throttle:
-            enabled: true
-            max-per-node: 1
-            option: 'project'
+      - logrotate-default
+      - throttle:
+          enabled: true
+          max-per-node: 1
+          option: 'project'
 
     wrappers:
-        - build-name:
-            name: '$BUILD_NUMBER Suite: $FUNCTEST_SUITE_NAME Scenario: $DEPLOY_SCENARIO'
-        - timeout:
-            timeout: '400'
-            abort: true
+      - build-name:
+          name: '$BUILD_NUMBER Suite: $FUNCTEST_SUITE_NAME Scenario: $DEPLOY_SCENARIO'
+      - timeout:
+          timeout: '400'
+          abort: true
 
     parameters:
-        - project-parameter:
-            project: '{project}'
-            branch: '{branch}'
-        - '{installer}-defaults'
-        - '{slave-label}-defaults'
-        - string:
-            name: FUNCTEST_SUITE_NAME
-            default: 'weekly'
-            description: "Weekly suite name to run"
-        - string:
-            name: DEPLOY_SCENARIO
-            default: 'os-odl_l2-nofeature-ha'
-        - string:
-            name: DOCKER_TAG
-            default: '{docker-tag}'
-            description: 'Tag to pull docker image'
-        - string:
-            name: CLEAN_DOCKER_IMAGES
-            default: 'false'
-            description: 'Remove downloaded docker images (opnfv/functest*:*)'
-        - functest-parameter:
-            gs-pathname: '{gs-pathname}'
+      - project-parameter:
+          project: '{project}'
+          branch: '{branch}'
+      - '{installer}-defaults'
+      - '{slave-label}-defaults'
+      - string:
+          name: FUNCTEST_SUITE_NAME
+          default: 'weekly'
+          description: "Weekly suite name to run"
+      - string:
+          name: DEPLOY_SCENARIO
+          default: 'os-odl_l2-nofeature-ha'
+      - string:
+          name: DOCKER_TAG
+          default: '{docker-tag}'
+          description: 'Tag to pull docker image'
+      - string:
+          name: CLEAN_DOCKER_IMAGES
+          default: 'false'
+          description: 'Remove downloaded docker images (opnfv/functest*:*)'
+      - functest-parameter:
+          gs-pathname: '{gs-pathname}'
 
     scm:
-        - git-scm
+      - git-scm
 
     builders:
-        - description-setter:
-            description: "Built on $NODE_NAME"
-        - 'functest-weekly-builder'
+      - description-setter:
+          description: "Built on $NODE_NAME"
+      - 'functest-weekly-builder'
 ########################
 # builder macros
 ########################
 - builder:
     name: functest-weekly-builder
     builders:
-        - shell:
-            !include-raw: ./functest-cleanup.sh
-        - shell:
-            !include-raw:
-                - ./functest-env-presetup.sh
-                - ../../utils/fetch_os_creds.sh
-                - ./set-functest-env.sh
-        - shell:
-            !include-raw: ./functest-loop.sh
-        - shell:
-            !include-raw: ../../utils/push-test-logs.sh
-        - shell:
-            !include-raw: ./functest-exit.sh
+      - shell:
+          !include-raw: ./functest-cleanup.sh
+      # yamllint disable rule:indentation
+      - shell:
+          !include-raw:
+             - ./functest-env-presetup.sh
+             - ../../utils/fetch_os_creds.sh
+             - ./set-functest-env.sh
+      # yamllint enable rule:indentation
+      - shell:
+          !include-raw: ./functest-loop.sh
+      - shell:
+          !include-raw: ../../utils/push-test-logs.sh
+      - shell:
+          !include-raw: ./functest-exit.sh
index 8c01a9f..454cee8 100644 (file)
@@ -48,7 +48,7 @@
           description: 'Installer used for deploying OPNFV on this POD'
       - string:
           name: EXTERNAL_NETWORK
-          default: 'admin_floating_net'
+          default: 'floating_net'
           description: 'external network for test'
       - string:
           name: BRIDGE
index 8739a78..5b94607 100644 (file)
           default-slaves:
             - lf-pod3
 
-- parameter:
-    name: 'arm-pod5-defaults'
-    parameters:
-      - node:
-          name: SLAVE_NAME
-          description: 'Slave name on Jenkins'
-          allowed-slaves:
-            - arm-pod5
-          default-slaves:
-            - arm-pod5
-      - string:
-          name: BRIDGE
-          default: 'admin7_br0,mgmt7_br0,,public7_br0'
-          description: 'Pre-existing bridges used by Fuel'
-
 - parameter:
     name: 'lf-pod1-defaults'
     parameters:
           default: /root/.ssh/id_rsa
           description: 'SSH key to use for Apex'
 
-- parameter:
-    name: 'lf-pod2-defaults'
-    parameters:
-      - node:
-          name: SLAVE_NAME
-          description: 'Slave name on Jenkins'
-          allowed-slaves:
-            - lf-pod2
-          default-slaves:
-            - lf-pod2
-      - string:
-          name: BRIDGE
-          default: 'pxebr,br-ctl'
-          description: 'Pre-existing bridges used by Fuel'
-
 - parameter:
     name: 'lf-pod3-defaults'
     parameters:
 #####################################################
 # Parameters for none-CI PODs
 #####################################################
-- parameter:
-    name: 'ericsson-pod1-defaults'
-    parameters:
-      - node:
-          name: SLAVE_NAME
-          description: 'Slave name on Jenkins'
-          allowed-slaves:
-            - ericsson-pod1
-          default-slaves:
-            - ericsson-pod1
-      - string:
-          name: INSTALLER_IP
-          default: '10.20.1.2'
-          description: 'IP of the installer'
-      - string:
-          name: GIT_BASE
-          default: https://gerrit.opnfv.org/gerrit/$PROJECT
-          description: 'Git URL to use on this Jenkins Slave'
-
 - parameter:
     name: 'cengn-pod1-defaults'
     parameters:
           default: /root/.ssh/id_rsa
           description: 'SSH key to use for Apex'
 
-- parameter:
-    name: 'arm-virtual2-defaults'
-    parameters:
-      - node:
-          name: SLAVE_NAME
-          description: 'Slave name on Jenkins'
-          allowed-slaves:
-            - arm-virtual2
-          default-slaves:
-            - arm-virtual2
-      - string:
-          name: BRIDGE
-          default: ',,,public8_br0'
-          description: 'Pre-existing bridges used by Fuel'
-
 - parameter:
     name: 'intel-virtual6-defaults'
     parameters:
index b28efc3..0897bbd 100644 (file)
     # BRANCH ANCHORS
     # -------------------------------
     euphrates: &euphrates
-        stream: euphrates
-        branch: 'stable/{stream}'
-        disabled: false
-        gs-pathname: '/{stream}'
+      stream: euphrates
+      branch: 'stable/{stream}'
+      disabled: false
+      gs-pathname: '/{stream}'
     # -------------------------------
     # POD, INSTALLER, AND BRANCH MAPPING
     # -------------------------------
index 3b30cb6..53bc3f3 100644 (file)
@@ -13,7 +13,7 @@
           branch: '{stream}'
           gs-pathname: ''
           disabled: false
-      - danube:
+      - euphrates:
           branch: 'stable/{stream}'
           gs-pathname: '/{stream}'
           disabled: false
index 2055da9..2e542ac 100644 (file)
@@ -8,19 +8,19 @@
       - master:
           branch: '{stream}'
           gs-pathname: ''
+          disabled: false
       - euphrates:
           branch: 'stable/{stream}'
           gs-pathname: '/{stream}'
+          disabled: false
     #####################################
     # patch verification phases
     #####################################
     phase:
       - 'build':
           slave-label: 'opnfv-build-ubuntu'
-          disabled: false
       - 'test':
           slave-label: 'intel-pod10'
-          disabled: true
     #####################################
     # patch verification phases
     #####################################
index 3a9f4c6..b317c05 100644 (file)
@@ -16,7 +16,7 @@
           branch: '{stream}'
           gs-pathname: ''
           disabled: false
-      - danube:
+      - euphrates:
           branch: 'stable/{stream}'
           gs-pathname: '/{stream}'
           disabled: false
index aa4aa40..d254129 100644 (file)
@@ -52,7 +52,7 @@
                   pattern: 'docs/**|.gitignore'
 
     builders:
-      - shell:
+      - shell: |
           #!/bin/bash
           echo "launch Moon unit tests"
           nosetest $WORKSPACE/keystone-moon/keystone/tests/moon/unit
index f51db1b..fb6263d 100644 (file)
@@ -1,3 +1,4 @@
+---
 ################################
 # job configuration for Octopus
 ################################
@@ -7,17 +8,17 @@
     project: '{name}'
 
     jobs:
-        - 'octopus-verify-{stream}'
+      - 'octopus-verify-{stream}'
 
     stream:
-        - master:
-            branch: '{stream}'
-            gs-pathname: ''
-            disabled: false
-        - euphrates:
-            branch: 'stable/{stream}'
-            gs-pathname: '/{stream}'
-            disabled: false
+      - master:
+          branch: '{stream}'
+          gs-pathname: ''
+          disabled: false
+      - euphrates:
+          branch: 'stable/{stream}'
+          gs-pathname: '/{stream}'
+          disabled: false
 
 - job-template:
     name: 'octopus-verify-{stream}'
     disabled: '{obj:disabled}'
 
     parameters:
-        - project-parameter:
-            project: '{project}'
-            branch: '{branch}'
-        - 'opnfv-build-ubuntu-defaults'
+      - project-parameter:
+          project: '{project}'
+          branch: '{branch}'
+      - 'opnfv-build-ubuntu-defaults'
 
     scm:
-        - git-scm-gerrit
+      - git-scm-gerrit
 
     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}'
-                disable-strict-forbidden-file-verification: 'true'
-                forbidden-file-paths:
-                  - compare-type: ANT
-                    pattern: 'docs/**|.gitignore'
+      - 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}'
+              disable-strict-forbidden-file-verification: 'true'
+              forbidden-file-paths:
+                - compare-type: ANT
+                  pattern: 'docs/**|.gitignore'
 
     builders:
-        - shell: |
-            echo "Nothing to verify!"
+      - shell: |
+          echo "Nothing to verify!"
index 6029204..58a50bd 100644 (file)
@@ -14,7 +14,7 @@
           branch: '{stream}'
           gs-pathname: ''
           disabled: false
-      - danube:
+      - euphrates:
           branch: 'stable/{stream}'
           gs-pathname: '/{stream}'
           disabled: false
index 4a72ac1..ac2c449 100644 (file)
@@ -14,7 +14,7 @@
           branch: '{stream}'
           gs-pathname: ''
           disabled: false
-      - danube:
+      - euphrates:
           branch: 'stable/{stream}'
           gs-pathname: '/{stream}'
           disabled: false
index 09f9700..5e6e834 100644 (file)
@@ -16,7 +16,7 @@
           branch: '{stream}'
           gs-pathname: ''
           disabled: false
-      - danube:
+      - euphrates:
           branch: 'stable/{stream}'
           gs-pathname: '/{stream}'
           disabled: false
index 75c475a..cd77d0a 100644 (file)
@@ -53,6 +53,7 @@
 - job-template:
     name: 'qtip-{qpi}-{installer}-{stream}'
     disabled: false
+
     parameters:
       - project-parameter:
           project: '{project}'
       - string:
           name: TEST_SUITE
           default: '{qpi}'
+      - string:
+          name: TESTAPI_URL
+          default: 'http://testresults.opnfv.org/test/api/v1'
+      - string:
+          name: OPNFV_RELEASE
+          default: '{stream}'
     scm:
       - git-scm
 
+    wrappers:
+      - timeout:
+          elastic-percentage: 150
+          elastic-default-timeout: 30
+          abort: true
+          type: elastic
+      - timestamps
+
     triggers:
       - 'qtip-daily'
 
index 2d02056..2a25061 100644 (file)
@@ -1,15 +1,16 @@
+---
 - project:
     name: releng-artifact-cleanup
 
     project: 'releng'
 
     jobs:
-        - 'releng-artifact-cleanup-daily-{stream}'
+      - 'releng-artifact-cleanup-daily-{stream}'
 
     stream:
-        - master:
-            branch: '{stream}'
-            gs-pathname: ''
+      - master:
+          branch: '{stream}'
+          gs-pathname: ''
 
 
 - job-template:
     disabled: false
 
     parameters:
-        - project-parameter:
-            project: '{project}'
-            branch: '{branch}'
+      - project-parameter:
+          project: '{project}'
+          branch: '{branch}'
 
     scm:
-        - git-scm
+      - git-scm
 
     triggers:
-        - timed: 'H H * * *'
+      - timed: 'H H * * *'
 
     builders:
-        - shell: |
-            $WORKSPACE/utils/retention_script.sh
+      - shell: |
+          $WORKSPACE/utils/retention_script.sh
index 908e9a1..de7fcd6 100644 (file)
@@ -1,22 +1,23 @@
+---
 - project:
     name: utils-automate
     stream:
-        - master:
-            branch: '{stream}'
+      - master:
+          branch: '{stream}'
 
     module:
-        - 'testapi'
-        - 'reporting'
+      - 'testapi'
+      - 'reporting'
 
     phase:
-        - 'docker-deploy':
-            slave-label: 'testresults'
-        - 'generate-doc'
+      - 'docker-deploy':
+          slave-label: 'testresults'
+      - 'generate-doc'
 
     jobs:
-        - '{module}-automate-{stream}'
-        - '{module}-automate-{phase}-{stream}'
-        - '{module}-verify-{stream}'
+      - '{module}-automate-{stream}'
+      - '{module}-automate-{phase}-{stream}'
+      - '{module}-verify-{stream}'
 
     project: 'releng'
 
     name: 'testapi-mongodb-backup'
 
     parameters:
-        - label:
-            name: SLAVE_LABEL
-            default: 'testresults'
-            description: 'Slave label on Jenkins'
-        - project-parameter:
-            project: 'releng'
-            branch: 'master'
-        - string:
-            name: GIT_BASE
-            default: https://gerrit.opnfv.org/gerrit/releng
-            description: 'Git URL to use on this Jenkins Slave'
+      - label:
+          name: SLAVE_LABEL
+          default: 'testresults'
+          description: 'Slave label on Jenkins'
+      - project-parameter:
+          project: 'releng'
+          branch: 'master'
+      - string:
+          name: GIT_BASE
+          default: https://gerrit.opnfv.org/gerrit/releng
+          description: 'Git URL to use on this Jenkins Slave'
 
     scm:
-        - git-scm
+      - git-scm
 
     triggers:
-        - timed: '@weekly'
+      - timed: '@weekly'
 
     builders:
-        - mongodb-backup
+      - mongodb-backup
 
 - job-template:
     name: '{module}-verify-{stream}'
 
     parameters:
-        - project-parameter:
-            project: '{project}'
-            branch: '{branch}'
-        - 'opnfv-build-ubuntu-defaults'
+      - project-parameter:
+          project: '{project}'
+          branch: '{branch}'
+      - 'opnfv-build-ubuntu-defaults'
 
     scm:
-        - git-scm-gerrit
+      - git-scm-gerrit
 
     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: 'utils/test/{module}/**'
+      - 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: 'utils/test/{module}/**'
 
     builders:
-        - shell: |
-            cd ./utils/test/{module}/
-            tox
-            if [ -e *.xml ];then
-                cp *.xml $WORKSPACE
-            fi
+      - shell: |
+          cd ./utils/test/{module}/
+          tox
+          if [ -e *.xml ];then
+              cp *.xml $WORKSPACE
+          fi
 
     publishers:
-        - publish-coverage
-        - email-jenkins-admins-on-failure
+      - publish-coverage
+      - email-jenkins-admins-on-failure
 
 - job-template:
     name: '{module}-automate-{stream}'
     project-type: multijob
 
     properties:
-        - throttle:
-            enabled: true
-            max-total: 1
-            max-per-node: 1
-            option: 'project'
+      - throttle:
+          enabled: true
+          max-total: 1
+          max-per-node: 1
+          option: 'project'
 
     parameters:
-        - project-parameter:
-            project: '{project}'
-            branch: '{branch}'
-        - string:
-            name: DOCKER_TAG
-            default: 'latest'
-            description: 'Tag name for {module} docker image'
-        - string:
-            name: MODULE_NAME
-            default: '{module}'
-            description: "Name of the module"
-        - 'opnfv-build-defaults'
+      - project-parameter:
+          project: '{project}'
+          branch: '{branch}'
+      - string:
+          name: DOCKER_TAG
+          default: 'latest'
+          description: 'Tag name for {module} docker image'
+      - string:
+          name: MODULE_NAME
+          default: '{module}'
+          description: "Name of the module"
+      - 'opnfv-build-defaults'
 
     scm:
-        - git-scm
+      - git-scm
 
     wrappers:
-        - ssh-agent-wrapper
-        - timeout:
-            timeout: 360
-            fail: true
+      - ssh-agent-wrapper
+      - timeout:
+          timeout: 360
+          fail: true
 
     triggers:
-        - gerrit:
-            server-name: 'gerrit.opnfv.org'
-            trigger-on:
-                - change-merged-event
-                - comment-added-contains-event:
-                    comment-contains-value: 'remerge'
-            projects:
-              - project-compare-type: 'ANT'
-                project-pattern: '{project}'
-                branches:
-                  - branch-compare-type: 'ANT'
-                    branch-pattern: '**/{branch}'
-                file-paths:
-                  - compare-type: 'ANT'
-                    pattern: 'utils/test/{module}/**'
+      - gerrit:
+          server-name: 'gerrit.opnfv.org'
+          trigger-on:
+            - change-merged-event
+            - comment-added-contains-event:
+                comment-contains-value: 'remerge'
+          projects:
+            - project-compare-type: 'ANT'
+              project-pattern: '{project}'
+              branches:
+                - branch-compare-type: 'ANT'
+                  branch-pattern: '**/{branch}'
+              file-paths:
+                - compare-type: 'ANT'
+                  pattern: 'utils/test/{module}/**'
 
     builders:
-        - description-setter:
-            description: "Built on $NODE_NAME"
-        - docker-update
-        - multijob:
-            name: docker-deploy
-            condition: SUCCESSFUL
-            projects:
-                - name: '{module}-automate-docker-deploy-{stream}'
-                  current-parameters: false
-                  predefined-parameters: |
-                    GIT_BASE=$GIT_BASE
-                  node-label-name: SLAVE_LABEL
-                  node-label: testresults
-                  kill-phase-on: FAILURE
-                  abort-all-job: true
-        - multijob:
-            name: generate-doc
-            condition: SUCCESSFUL
-            projects:
-                - name: '{module}-automate-generate-doc-{stream}'
-                  current-parameters: true
-                  kill-phase-on: FAILURE
-                  abort-all-job: true
+      - description-setter:
+          description: "Built on $NODE_NAME"
+      - docker-update
+      - multijob:
+          name: docker-deploy
+          condition: SUCCESSFUL
+          projects:
+            - name: '{module}-automate-docker-deploy-{stream}'
+              current-parameters: false
+              predefined-parameters: |
+                GIT_BASE=$GIT_BASE
+              node-label-name: SLAVE_LABEL
+              node-label: testresults
+              kill-phase-on: FAILURE
+              abort-all-job: true
+      - multijob:
+          name: generate-doc
+          condition: SUCCESSFUL
+          projects:
+            - name: '{module}-automate-generate-doc-{stream}'
+              current-parameters: true
+              kill-phase-on: FAILURE
+              abort-all-job: true
 
     publishers:
-        - 'email-publisher'
-        - email-jenkins-admins-on-failure
+      - 'email-publisher'
+      - email-jenkins-admins-on-failure
 
 - job-template:
     name: '{module}-automate-{phase}-{stream}'
 
     properties:
-        - throttle:
-            enabled: true
-            max-per-node: 1
-            option: 'project'
+      - throttle:
+          enabled: true
+          max-per-node: 1
+          option: 'project'
 
     parameters:
-        - project-parameter:
-            project: '{project}'
-            branch: '{branch}'
+      - project-parameter:
+          project: '{project}'
+          branch: '{branch}'
 
     wrappers:
-        - ssh-agent-wrapper
-        - timeout:
-            timeout: 120
-            fail: true
+      - ssh-agent-wrapper
+      - timeout:
+          timeout: 120
+          fail: true
 
     scm:
-        - git-scm
+      - git-scm
 
     builders:
-        - description-setter:
-            description: "Built on $NODE_NAME"
-        - '{module}-automate-{phase}-macro'
+      - description-setter:
+          description: "Built on $NODE_NAME"
+      - '{module}-automate-{phase}-macro'
 
 ################################
 # job builders
 - builder:
     name: 'docker-update'
     builders:
-        - shell:
-            !include-raw: ./docker-update.sh
+      - shell:
+          !include-raw: ./docker-update.sh
 
 - builder:
     name: 'testapi-automate-generate-doc-macro'
     builders:
-        - 'testapi-doc-build'
-        - 'upload-doc-artifact'
+      - 'testapi-doc-build'
+      - 'upload-doc-artifact'
 
 - builder:
     name: 'testapi-doc-build'
     builders:
-        - shell: |
-            bash ./utils/test/testapi/htmlize/doc-build.sh
+      - shell: |
+          bash ./jjb/releng/htmlize/doc-build.sh
 
 - builder:
     name: 'upload-doc-artifact'
     builders:
-        - shell: |
-            bash ./utils/test/testapi/htmlize/push-doc-artifact.sh
+      - shell: |
+          bash ./jjb/releng/htmlize/push-doc-artifact.sh
 
 - builder:
     name: 'reporting-automate-generate-doc-macro'
     builders:
-        - shell: echo "To Be Done"
+      - shell: echo "To Be Done"
 
 - builder:
     name: 'testapi-automate-docker-deploy-macro'
     builders:
-        - shell: |
-            sudo bash ./jjb/releng/docker-deploy.sh "sudo docker run -dti --name testapi -p 8082:8000
-            -e mongodb_url=mongodb://172.17.0.1:27017
-            -e base_url=http://testresults.opnfv.org/test opnfv/testapi" \
-            "http://testresults.opnfv.org/test/" "testapi"
+      - shell: |
+          sudo bash ./jjb/releng/docker-deploy.sh "sudo docker run -dti --name testapi -p 8082:8000
+          -e mongodb_url=mongodb://172.17.0.1:27017
+          -e base_url=http://testresults.opnfv.org/test opnfv/testapi" \
+          "http://testresults.opnfv.org/test/" "testapi"
 
 - builder:
     name: 'reporting-automate-docker-deploy-macro'
     builders:
-        - shell: |
-            sudo bash ./jjb/releng/docker-deploy.sh "sudo docker run -itd --name reporting -p 8084:8000 opnfv/reporting" \
-            "http://testresults.opnfv.org/reporting/index.html" "reporting"
+      - shell: |
+          sudo bash ./jjb/releng/docker-deploy.sh "sudo docker run -itd --name reporting -p 8084:8000 opnfv/reporting" \
+          "http://testresults.opnfv.org/reporting/index.html" "reporting"
 
 - builder:
     name: mongodb-backup
     builders:
-        - shell: |
-            bash ./jjb/releng/testapi-backup-mongodb.sh
+      - shell: |
+          bash ./jjb/releng/testapi-backup-mongodb.sh
 
 ################################
 # job publishers
 - publisher:
     name: 'email-publisher'
     publishers:
-        - email:
-            recipients: rohitsakala@gmail.com feng.xiaowei@zte.com.cn morgan.richomme@orange.com
-            notify-every-unstable-build: false
-            send-to-individuals: true
+      - email:
+          recipients: rohitsakala@gmail.com feng.xiaowei@zte.com.cn morgan.richomme@orange.com
+          notify-every-unstable-build: false
+          send-to-individuals: true
index 7f2574e..b488592 100644 (file)
@@ -1,3 +1,4 @@
+---
 ##############################################
 # job configuration for docker build and push
 ##############################################
     name: opnfv-docker-arm
 
     master: &master
-        stream: master
-        branch: '{stream}'
-        disabled: false
+      stream: master
+      branch: '{stream}'
+      disabled: false
     euphrates: &euphrates
-        stream: euphrates
-        branch: 'stable/{stream}'
-        disabled: false
+      stream: euphrates
+      branch: 'stable/{stream}'
+      disabled: false
     functest-arm-receivers: &functest-arm-receivers
-        receivers: >
-            cristina.pauna@enea.com
-            alexandru.avadanii@enea.com
-            delia.popescu@enea.com
+      receivers: >
+          cristina.pauna@enea.com
+          alexandru.avadanii@enea.com
+          delia.popescu@enea.com
     dovetail-arm-receivers: &dovetail-arm-receivers
-        receivers: >
-            cristina.pauna@enea.com
-            alexandru.avadanii@enea.com
-            alexandru.nemes@enea.com
+      receivers: >
+          cristina.pauna@enea.com
+          alexandru.avadanii@enea.com
+          alexandru.nemes@enea.com
     storperf-arm-receivers: &storperf-arm-receivers
-        receivers: >
-            cristina.pauna@enea.com
-            alexandru.avadanii@enea.com
-            mark.beierl@emc.com
+      receivers: >
+          cristina.pauna@enea.com
+          alexandru.avadanii@enea.com
+          mark.beierl@emc.com
     yardstick-arm-receivers: &yardstick-arm-receivers
-        receivers: >
-            cristina.pauna@enea.com
-            alexandru.avadanii@enea.com
-            alexandru.nemes@enea.com
-            catalina.focsa@enea.com
-            delia.popescu@enea.com
+      receivers: >
+          cristina.pauna@enea.com
+          alexandru.avadanii@enea.com
+          alexandru.nemes@enea.com
+          catalina.focsa@enea.com
+          delia.popescu@enea.com
     other-receivers: &other-receivers
-        receivers: ''
+      receivers: ''
 
     dockerfile: "Dockerfile.aarch64"
     dockerdir: "docker"
     docker_repo_name: "opnfv/{project}_aarch64"
     arch_tag: ""
 
+    # yamllint disable rule:key-duplicates
     dockerrepo:
-        # projects with jobs for master
-        - 'functest':
-            project: 'functest'
-            <<: *master
-            <<: *functest-arm-receivers
-        - 'dovetail':
-            project: 'dovetail'
-            <<: *master
-            <<: *dovetail-arm-receivers
-        - 'storperf-master':
-            project: 'storperf'
-            dockerdir: 'docker/storperf-master'
-            dockerfile: 'Dockerfile'
-            docker_repo_name: 'opnfv/storperf-master'
-            arch_tag: 'aarch64'
-            <<: *master
-            <<: *storperf-arm-receivers
-        - 'storperf-graphite':
-            project: 'storperf'
-            dockerdir: 'docker/storperf-graphite'
-            dockerfile: 'Dockerfile'
-            docker_repo_name: 'opnfv/storperf-graphite'
-            arch_tag: 'aarch64'
-            <<: *master
-            <<: *storperf-arm-receivers
-        - 'storperf-httpfrontend':
-            project: 'storperf'
-            dockerdir: 'docker/storperf-httpfrontend'
-            dockerfile: 'Dockerfile'
-            docker_repo_name: 'opnfv/storperf-httpfrontend'
-            arch_tag: 'aarch64'
-            <<: *master
-            <<: *storperf-arm-receivers
-        - 'storperf-reporting':
-            project: 'storperf'
-            dockerdir: 'docker/storperf-reporting'
-            dockerfile: 'Dockerfile'
-            docker_repo_name: 'opnfv/storperf-reporting'
-            arch_tag: 'aarch64'
-            <<: *master
-            <<: *storperf-arm-receivers
-        - 'storperf-swaggerui':
-            project: 'storperf'
-            dockerdir: 'docker/storperf-swaggerui'
-            dockerfile: 'Dockerfile'
-            docker_repo_name: 'opnfv/storperf-swaggerui'
-            arch_tag: 'aarch64'
-            <<: *master
-            <<: *storperf-arm-receivers
-        - 'yardstick':
-            project: 'yardstick'
-            <<: *master
-            <<: *yardstick-arm-receivers
-        # projects with jobs for stable/euphrates
-        - 'functest':
-            project: 'functest'
-            <<: *euphrates
-            <<: *functest-arm-receivers
-        - 'dovetail':
-            project: 'dovetail'
-            <<: *euphrates
-            <<: *dovetail-arm-receivers
-        - 'storperf-master':
-            project: 'storperf'
-            dockerdir: 'docker/storperf-master'
-            dockerfile: 'Dockerfile'
-            docker_repo_name: 'opnfv/storperf-master'
-            arch_tag: 'aarch64'
-            <<: *euphrates
-            <<: *storperf-arm-receivers
-        - 'storperf-graphite':
-            project: 'storperf'
-            dockerdir: 'docker/storperf-graphite'
-            dockerfile: 'Dockerfile'
-            docker_repo_name: 'opnfv/storperf-graphite'
-            arch_tag: 'aarch64'
-            <<: *euphrates
-            <<: *storperf-arm-receivers
-        - 'storperf-httpfrontend':
-            project: 'storperf'
-            dockerdir: 'docker/storperf-httpfrontend'
-            dockerfile: 'Dockerfile'
-            docker_repo_name: 'opnfv/storperf-httpfrontend'
-            arch_tag: 'aarch64'
-            <<: *euphrates
-            <<: *storperf-arm-receivers
-        - 'storperf-reporting':
-            project: 'storperf'
-            dockerdir: 'docker/storperf-reporting'
-            dockerfile: 'Dockerfile'
-            docker_repo_name: 'opnfv/storperf-reporting'
-            arch_tag: 'aarch64'
-            <<: *euphrates
-            <<: *storperf-arm-receivers
-        - 'storperf-swaggerui':
-            project: 'storperf'
-            dockerdir: 'docker/storperf-swaggerui'
-            dockerfile: 'Dockerfile'
-            docker_repo_name: 'opnfv/storperf-swaggerui'
-            arch_tag: 'aarch64'
-            <<: *euphrates
-            <<: *storperf-arm-receivers
-        - 'yardstick':
-            project: 'yardstick'
-            <<: *euphrates
-            <<: *yardstick-arm-receivers
+      # projects with jobs for master
+      - 'functest':
+          project: 'functest'
+          <<: *master
+          <<: *functest-arm-receivers
+      - 'dovetail':
+          project: 'dovetail'
+          <<: *master
+          <<: *dovetail-arm-receivers
+      - 'storperf-master':
+          project: 'storperf'
+          dockerdir: 'docker/storperf-master'
+          dockerfile: 'Dockerfile'
+          docker_repo_name: 'opnfv/storperf-master'
+          arch_tag: 'aarch64'
+          <<: *master
+          <<: *storperf-arm-receivers
+      - 'storperf-graphite':
+          project: 'storperf'
+          dockerdir: 'docker/storperf-graphite'
+          dockerfile: 'Dockerfile'
+          docker_repo_name: 'opnfv/storperf-graphite'
+          arch_tag: 'aarch64'
+          <<: *master
+          <<: *storperf-arm-receivers
+      - 'storperf-httpfrontend':
+          project: 'storperf'
+          dockerdir: 'docker/storperf-httpfrontend'
+          dockerfile: 'Dockerfile'
+          docker_repo_name: 'opnfv/storperf-httpfrontend'
+          arch_tag: 'aarch64'
+          <<: *master
+          <<: *storperf-arm-receivers
+      - 'storperf-reporting':
+          project: 'storperf'
+          dockerdir: 'docker/storperf-reporting'
+          dockerfile: 'Dockerfile'
+          docker_repo_name: 'opnfv/storperf-reporting'
+          arch_tag: 'aarch64'
+          <<: *master
+          <<: *storperf-arm-receivers
+      - 'storperf-swaggerui':
+          project: 'storperf'
+          dockerdir: 'docker/storperf-swaggerui'
+          dockerfile: 'Dockerfile'
+          docker_repo_name: 'opnfv/storperf-swaggerui'
+          arch_tag: 'aarch64'
+          <<: *master
+          <<: *storperf-arm-receivers
+      - 'yardstick':
+          project: 'yardstick'
+          <<: *master
+          <<: *yardstick-arm-receivers
+      # projects with jobs for stable/euphrates
+      - 'functest':
+          project: 'functest'
+          <<: *euphrates
+          <<: *functest-arm-receivers
+      - 'dovetail':
+          project: 'dovetail'
+          <<: *euphrates
+          <<: *dovetail-arm-receivers
+      - 'storperf-master':
+          project: 'storperf'
+          dockerdir: 'docker/storperf-master'
+          dockerfile: 'Dockerfile'
+          docker_repo_name: 'opnfv/storperf-master'
+          arch_tag: 'aarch64'
+          <<: *euphrates
+          <<: *storperf-arm-receivers
+      - 'storperf-graphite':
+          project: 'storperf'
+          dockerdir: 'docker/storperf-graphite'
+          dockerfile: 'Dockerfile'
+          docker_repo_name: 'opnfv/storperf-graphite'
+          arch_tag: 'aarch64'
+          <<: *euphrates
+          <<: *storperf-arm-receivers
+      - 'storperf-httpfrontend':
+          project: 'storperf'
+          dockerdir: 'docker/storperf-httpfrontend'
+          dockerfile: 'Dockerfile'
+          docker_repo_name: 'opnfv/storperf-httpfrontend'
+          arch_tag: 'aarch64'
+          <<: *euphrates
+          <<: *storperf-arm-receivers
+      - 'storperf-reporting':
+          project: 'storperf'
+          dockerdir: 'docker/storperf-reporting'
+          dockerfile: 'Dockerfile'
+          docker_repo_name: 'opnfv/storperf-reporting'
+          arch_tag: 'aarch64'
+          <<: *euphrates
+          <<: *storperf-arm-receivers
+      - 'storperf-swaggerui':
+          project: 'storperf'
+          dockerdir: 'docker/storperf-swaggerui'
+          dockerfile: 'Dockerfile'
+          docker_repo_name: 'opnfv/storperf-swaggerui'
+          arch_tag: 'aarch64'
+          <<: *euphrates
+          <<: *storperf-arm-receivers
+      - 'yardstick':
+          project: 'yardstick'
+          <<: *euphrates
+          <<: *yardstick-arm-receivers
 
+    # yamllint enable rule:key-duplicates
     jobs:
-        - '{dockerrepo}-docker-build-arm-push-{stream}'
+      - '{dockerrepo}-docker-build-arm-push-{stream}'
 
 ########################
 # job templates
     disabled: '{obj:disabled}'
 
     parameters: &parameters
-        - project-parameter:
-            project: '{project}'
-            branch: '{branch}'
-        - 'opnfv-build-ubuntu-arm-defaults'
-        - string:
-            name: PUSH_IMAGE
-            default: "true"
-            description: "To enable/disable pushing the image to Dockerhub."
-        - string:
-            name: DOCKER_REPO_NAME
-            default: "{docker_repo_name}"
-            description: "Dockerhub repo to be pushed to."
-        - string:
-            name: RELEASE_VERSION
-            default: ""
-            description: "Release version, e.g. 1.0, 2.0, 3.0"
-        - string:
-            name: DOCKER_DIR
-            default: "{dockerdir}"
-            description: "Directory containing files needed by the Dockerfile"
-        - string:
-            name: DOCKERFILE
-            default: "{dockerfile}"
-            description: "Dockerfile to use for creating the image."
-        - string:
-            name: ARCH_TAG
-            default: "{arch_tag}"
-            description: "If set, this value will be added to the docker image tag"
+      - project-parameter:
+          project: '{project}'
+          branch: '{branch}'
+      - 'opnfv-build-ubuntu-arm-defaults'
+      - string:
+          name: PUSH_IMAGE
+          default: "true"
+          description: "To enable/disable pushing the image to Dockerhub."
+      - string:
+          name: DOCKER_REPO_NAME
+          default: "{docker_repo_name}"
+          description: "Dockerhub repo to be pushed to."
+      - string:
+          name: RELEASE_VERSION
+          default: ""
+          description: "Release version, e.g. 1.0, 2.0, 3.0"
+      - string:
+          name: DOCKER_DIR
+          default: "{dockerdir}"
+          description: "Directory containing files needed by the Dockerfile"
+      - string:
+          name: DOCKERFILE
+          default: "{dockerfile}"
+          description: "Dockerfile to use for creating the image."
+      - string:
+          name: ARCH_TAG
+          default: "{arch_tag}"
+          description: "If set, this value will be added to the docker image tag"
 
     properties:
-        - throttle:
-            max-per-node: 1
-            option: 'project'
+      - throttle:
+          max-per-node: 1
+          option: 'project'
 
     scm:
-        - git-scm
+      - git-scm
 
     builders: &builders
-        - shell:
-            !include-raw-escape: ./opnfv-docker.sh
+      - shell:
+          !include-raw-escape: ./opnfv-docker.sh
 
     triggers:
-        - pollscm:
-            cron: "*/30 * * * *"
+      - pollscm:
+          cron: "*/30 * * * *"
 
     publishers:
-        - email:
-            recipients: '{receivers}'
-        - email-jenkins-admins-on-failure
+      - email:
+          recipients: '{receivers}'
+      - email-jenkins-admins-on-failure
diff --git a/jjb/releng/opnfv-docker-custom.yml b/jjb/releng/opnfv-docker-custom.yml
new file mode 100644 (file)
index 0000000..3e4a40d
--- /dev/null
@@ -0,0 +1,111 @@
+########################
+# Job configuration for opnfv-docker-custom
+########################
+- project:
+
+    name: opnfv-docker-custom
+
+    project: '{name}'
+
+    jobs:
+        - 'opnfv-docker-custom-verify-{stream}'
+        - 'opnfv-docker-custom-merge-{stream}'
+
+    stream:
+        - master:
+            branch: '{stream}'
+            gs-pathname: ''
+            disabled: false
+        - danube:
+            branch: 'stable/{stream}'
+            gs-pathname: '/{stream}'
+            disabled: false
+
+########################
+# job templates
+########################
+
+- job-template:
+    name: 'opnfv-docker-custom-verify-{stream}'
+
+    disabled: '{obj:disabled}'
+
+    parameters:
+        - project-parameter:
+            project: $GERRIT_PROJECT
+            branch: '{branch}'
+
+    scm:
+        - git-scm-gerrit
+
+    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: 'REG_EXP'
+                project-pattern: 'disabled'
+                branches:
+                  - branch-compare-type: 'ANT'
+                    branch-pattern: '**/{branch}'
+                file-paths:
+                  - compare-type: ANT
+                    pattern: 'docker/**'
+
+    builders:
+        - verify-docker
+
+- job-template:
+    name: 'opnfv-docker-custom-merge-{stream}'
+
+    disabled: '{obj:disabled}'
+
+    parameters:
+        - project-parameter:
+            project: $GERRIT_PROJECT
+            branch: '{branch}'
+
+    scm:
+        - git-scm
+
+    triggers:
+        - gerrit:
+            server-name: 'gerrit.opnfv.org'
+            trigger-on:
+                - change-merged-event
+                - comment-added-contains-event:
+                    comment-contains-value: 'remerge'
+            projects:
+              - project-compare-type: 'REG_EXP'
+                project-pattern: 'disabled'
+                branches:
+                  - branch-compare-type: 'ANT'
+                    branch-pattern: '**/{branch}'
+                file-paths:
+                  - compare-type: ANT
+                    pattern: 'docker/**'
+
+    builders:
+        - merge-docker
+
+- builder:
+    name: verify-docker
+    builders:
+        - shell: |
+            /bin/bash $WORKSPACE/verify-docker.sh
+
+- builder:
+    name: merge-docker
+    builders:
+        - shell: |
+            /bin/bash $WORKSPACE/merge-docker.sh
+
index 954d7c8..298d2af 100644 (file)
@@ -17,6 +17,17 @@ echo "Starting opnfv-docker for $DOCKER_REPO_NAME ..."
 echo "--------------------------------------------------------"
 echo
 
+count=30 # docker build jobs might take up to ~30 min
+while [[ -n `ps -ef| grep 'docker build' | grep $DOCKER_REPO_NAME | grep -v grep` ]]; do
+    echo "Build or cleanup of $DOCKER_REPO_NAME in progress. Waiting..."
+    sleep 60
+    count=$(( $count - 1 ))
+    if [ $count -eq 0 ]; then
+        echo "Timeout. Aborting..."
+        exit 1
+    fi
+done
+
 # Remove previous running containers if exist
 if [[ -n "$(docker ps -a | grep $DOCKER_REPO_NAME)" ]]; then
     echo "Removing existing $DOCKER_REPO_NAME containers..."
index 01736c2..f0020ae 100644 (file)
@@ -1,3 +1,4 @@
+---
 ##############################################
 # job configuration for docker build and push
 ##############################################
@@ -7,27 +8,27 @@
     name: opnfv-docker
 
     master: &master
-        stream: master
-        branch: '{stream}'
-        disabled: false
+      stream: master
+      branch: '{stream}'
+      disabled: false
     danube: &danube
-        stream: danube
-        branch: 'stable/{stream}'
-        disabled: false
+      stream: danube
+      branch: 'stable/{stream}'
+      disabled: false
     euphrates: &euphrates
-        stream: euphrates
-        branch: 'stable/{stream}'
-        disabled: false
+      stream: euphrates
+      branch: 'stable/{stream}'
+      disabled: false
     functest-receivers: &functest-receivers
-        receivers: >
-            jalausuch@suse.com morgan.richomme@orange.com
-            cedric.ollivier@orange.com feng.xiaowei@zte.com.cn
-            juha.kosonen@nokia.com wangwulin@huawei.com
+      receivers: >
+          jalausuch@suse.com morgan.richomme@orange.com
+          cedric.ollivier@orange.com feng.xiaowei@zte.com.cn
+          juha.kosonen@nokia.com wangwulin@huawei.com
     storperf-receivers: &storperf-receivers
-        receivers: >
-            mark.beierl@emc.com
+      receivers: >
+          mark.beierl@emc.com
     other-receivers: &other-receivers
-        receivers: ''
+      receivers: ''
 
     dockerfile: "Dockerfile"
     dockerdir: "docker"
     # This is the dockerhub repo the image will be pushed to as
     # 'opnfv/{dockerrepo}. See: DOCKER_REPO_NAME parameter.
     # 'project' is the OPNFV repo we expect to contain the Dockerfile
+    # yamllint disable rule:key-duplicates
     dockerrepo:
-        # projects with jobs for master
-        - 'releng-anteater':
-            project: 'releng-anteater'
-            <<: *master
-            <<: *other-receivers
-        - 'bottlenecks':
-            project: 'bottlenecks'
-            <<: *master
-            <<: *other-receivers
-        - 'cperf':
-            project: 'cperf'
-            <<: *master
-            <<: *other-receivers
-        - 'dovetail':
-            project: 'dovetail'
-            <<: *master
-            <<: *other-receivers
-        - 'functest':
-            project: 'functest'
-            <<: *master
-            <<: *functest-receivers
-        - 'nfvbench':
-            project: 'nfvbench'
-            <<: *master
-            <<: *other-receivers
-        - 'qtip':
-            project: 'qtip'
-            <<: *master
-            <<: *other-receivers
-        - 'storperf-master':
-            project: 'storperf'
-            dockerdir: 'docker/storperf-master'
-            arch_tag: 'x86_64'
-            <<: *master
-            <<: *storperf-receivers
-        - 'storperf-graphite':
-            project: 'storperf'
-            dockerdir: 'docker/storperf-graphite'
-            arch_tag: 'x86_64'
-            <<: *master
-            <<: *storperf-receivers
-        - 'storperf-httpfrontend':
-            project: 'storperf'
-            dockerdir: 'docker/storperf-httpfrontend'
-            arch_tag: 'x86_64'
-            <<: *master
-            <<: *storperf-receivers
-        - 'storperf-reporting':
-            project: 'storperf'
-            dockerdir: 'docker/storperf-reporting'
-            arch_tag: 'x86_64'
-            <<: *master
-            <<: *storperf-receivers
-        - 'storperf-swaggerui':
-            project: 'storperf'
-            dockerdir: 'docker/storperf-swaggerui'
-            arch_tag: 'x86_64'
-            <<: *master
-            <<: *storperf-receivers
-        - 'yardstick':
-            project: 'yardstick'
-            <<: *master
-            <<: *other-receivers
-        # projects with jobs for Danube
-        - 'qtip':
-            project: 'qtip'
-            <<: *euphrates
-            <<: *other-receivers
-        - 'yardstick':
-            project: 'yardstick'
-            <<: *euphrates
-            <<: *other-receivers
-        # projects with jobs for euphrates
-        - 'bottlenecks':
-            project: 'bottlenecks'
-            <<: *euphrates
-            <<: *other-receivers
-        - 'functest':
-            project: 'functest'
-            <<: *euphrates
-            <<: *functest-receivers
-        - 'functest-core':
-            project: 'functest'
-            dockerdir: 'docker/core'
-            <<: *euphrates
-            <<: *functest-receivers
-        - 'functest-healthcheck':
-            project: 'functest'
-            dockerdir: 'docker/healthcheck'
-            <<: *euphrates
-            <<: *functest-receivers
-        - 'functest-smoke':
-            project: 'functest'
-            dockerdir: 'docker/smoke'
-            <<: *euphrates
-            <<: *functest-receivers
-        - 'functest-features':
-            project: 'functest'
-            dockerdir: 'docker/features'
-            <<: *euphrates
-            <<: *functest-receivers
-        - 'functest-components':
-            project: 'functest'
-            dockerdir: 'docker/components'
-            <<: *euphrates
-            <<: *functest-receivers
-        - 'functest-vnf':
-            project: 'functest'
-            dockerdir: 'docker/vnf'
-            <<: *euphrates
-            <<: *functest-receivers
-        - 'functest-parser':
-            project: 'functest'
-            dockerdir: 'docker/parser'
-            <<: *euphrates
-            <<: *functest-receivers
-        - 'functest-restapi':
-            project: 'functest'
-            dockerdir: 'docker/restapi'
-            <<: *euphrates
-            <<: *functest-receivers
-        - 'storperf-master':
-            project: 'storperf'
-            dockerdir: 'docker/storperf-master'
-            arch_tag: 'x86_64'
-            <<: *euphrates
-            <<: *storperf-receivers
-        - 'storperf-graphite':
-            project: 'storperf'
-            dockerdir: 'docker/storperf-graphite'
-            arch_tag: 'x86_64'
-            <<: *euphrates
-            <<: *storperf-receivers
-        - 'storperf-httpfrontend':
-            project: 'storperf'
-            dockerdir: 'docker/storperf-httpfrontend'
-            arch_tag: 'x86_64'
-            <<: *euphrates
-            <<: *storperf-receivers
-        - 'storperf-reporting':
-            project: 'storperf'
-            dockerdir: 'docker/storperf-reporting'
-            arch_tag: 'x86_64'
-            <<: *euphrates
-            <<: *storperf-receivers
-        - 'storperf-swaggerui':
-            project: 'storperf'
-            dockerdir: 'docker/storperf-swaggerui'
-            arch_tag: 'x86_64'
-            <<: *euphrates
-            <<: *storperf-receivers
-        - 'nfvbench':
-            project: 'nfvbench'
-            <<: *euphrates
-            <<: *other-receivers
+      # projects with jobs for master
+      - 'releng-anteater':
+          project: 'releng-anteater'
+          <<: *master
+          <<: *other-receivers
+      - 'bottlenecks':
+          project: 'bottlenecks'
+          <<: *master
+          <<: *other-receivers
+      - 'cperf':
+          project: 'cperf'
+          <<: *master
+          <<: *other-receivers
+      - 'dovetail':
+          project: 'dovetail'
+          <<: *master
+          <<: *other-receivers
+      - 'functest':
+          project: 'functest'
+          <<: *master
+          <<: *functest-receivers
+      - 'nfvbench':
+          project: 'nfvbench'
+          <<: *master
+          <<: *other-receivers
+      - 'qtip':
+          project: 'qtip'
+          <<: *master
+          <<: *other-receivers
+      - 'storperf-master':
+          project: 'storperf'
+          dockerdir: 'docker/storperf-master'
+          arch_tag: 'x86_64'
+          <<: *master
+          <<: *storperf-receivers
+      - 'storperf-graphite':
+          project: 'storperf'
+          dockerdir: 'docker/storperf-graphite'
+          arch_tag: 'x86_64'
+          <<: *master
+          <<: *storperf-receivers
+      - 'storperf-httpfrontend':
+          project: 'storperf'
+          dockerdir: 'docker/storperf-httpfrontend'
+          arch_tag: 'x86_64'
+          <<: *master
+          <<: *storperf-receivers
+      - 'storperf-reporting':
+          project: 'storperf'
+          dockerdir: 'docker/storperf-reporting'
+          arch_tag: 'x86_64'
+          <<: *master
+          <<: *storperf-receivers
+      - 'storperf-swaggerui':
+          project: 'storperf'
+          dockerdir: 'docker/storperf-swaggerui'
+          arch_tag: 'x86_64'
+          <<: *master
+          <<: *storperf-receivers
+      - 'yardstick':
+          project: 'yardstick'
+          <<: *master
+          <<: *other-receivers
+      # projects with jobs for Danube
+      - 'qtip':
+          project: 'qtip'
+          <<: *euphrates
+          <<: *other-receivers
+      - 'yardstick':
+          project: 'yardstick'
+          <<: *euphrates
+          <<: *other-receivers
+      # projects with jobs for euphrates
+      - 'bottlenecks':
+          project: 'bottlenecks'
+          <<: *euphrates
+          <<: *other-receivers
+      - 'functest':
+          project: 'functest'
+          <<: *euphrates
+          <<: *functest-receivers
+      - 'storperf-master':
+          project: 'storperf'
+          dockerdir: 'docker/storperf-master'
+          arch_tag: 'x86_64'
+          <<: *euphrates
+          <<: *storperf-receivers
+      - 'storperf-graphite':
+          project: 'storperf'
+          dockerdir: 'docker/storperf-graphite'
+          arch_tag: 'x86_64'
+          <<: *euphrates
+          <<: *storperf-receivers
+      - 'storperf-httpfrontend':
+          project: 'storperf'
+          dockerdir: 'docker/storperf-httpfrontend'
+          arch_tag: 'x86_64'
+          <<: *euphrates
+          <<: *storperf-receivers
+      - 'storperf-reporting':
+          project: 'storperf'
+          dockerdir: 'docker/storperf-reporting'
+          arch_tag: 'x86_64'
+          <<: *euphrates
+          <<: *storperf-receivers
+      - 'storperf-swaggerui':
+          project: 'storperf'
+          dockerdir: 'docker/storperf-swaggerui'
+          arch_tag: 'x86_64'
+          <<: *euphrates
+          <<: *storperf-receivers
+      - 'nfvbench':
+          project: 'nfvbench'
+          <<: *euphrates
+          <<: *other-receivers
 
+    # yamllint enable rule:key-duplicates
     jobs:
-        - "{dockerrepo}-docker-build-push-{stream}"
-
+      - "{dockerrepo}-docker-build-push-{stream}"
 
 - project:
 
     arch_tag: ""
 
     project:
-        # projects with jobs for master
-        - 'daisy':
-            dockerrepo: 'daisy'
-            <<: *master
-        - 'escalator':
-            dockerrepo: 'escalator'
-            <<: *master
+      # projects with jobs for master
+      - 'daisy':
+          dockerrepo: 'daisy'
+          <<: *master
+      - 'escalator':
+          dockerrepo: 'escalator'
+          <<: *master
 
     jobs:
-        - '{project}-docker-build-push-monitor-{stream}'
+      - '{project}-docker-build-push-monitor-{stream}'
 
 ########################
 # job templates
     disabled: '{obj:disabled}'
 
     parameters: &parameters
-        - project-parameter:
-            project: '{project}'
-            branch: '{branch}'
-        - 'opnfv-build-ubuntu-defaults'
-        - string:
-            name: PUSH_IMAGE
-            default: "true"
-            description: "To enable/disable pushing the image to Dockerhub."
-        - string:
-            name: DOCKER_REPO_NAME
-            default: "opnfv/{dockerrepo}"
-            description: "Dockerhub repo to be pushed to."
-        - string:
-            name: DOCKER_DIR
-            default: "{dockerdir}"
-            description: "Directory containing files needed by the Dockerfile"
-        - string:
-            name: COMMIT_ID
-            default: ""
-            description: "commit id to make a snapshot docker image"
-        - string:
-            name: RELEASE_VERSION
-            default: ""
-            description: "Release version, e.g. 1.0, 2.0, 3.0"
-        - string:
-            name: DOCKERFILE
-            default: "{dockerfile}"
-            description: "Dockerfile to use for creating the image."
-        - string:
-            name: ARCH_TAG
-            default: "{arch_tag}"
-            description: "If set, this value will be added to the docker image tag as a prefix"
+      - project-parameter:
+          project: '{project}'
+          branch: '{branch}'
+      - 'opnfv-build-ubuntu-defaults'
+      - string:
+          name: PUSH_IMAGE
+          default: "true"
+          description: "To enable/disable pushing the image to Dockerhub."
+      - string:
+          name: DOCKER_REPO_NAME
+          default: "opnfv/{dockerrepo}"
+          description: "Dockerhub repo to be pushed to."
+      - string:
+          name: DOCKER_DIR
+          default: "{dockerdir}"
+          description: "Directory containing files needed by the Dockerfile"
+      - string:
+          name: COMMIT_ID
+          default: ""
+          description: "commit id to make a snapshot docker image"
+      - string:
+          name: RELEASE_VERSION
+          default: ""
+          description: "Release version, e.g. 1.0, 2.0, 3.0"
+      - string:
+          name: DOCKERFILE
+          default: "{dockerfile}"
+          description: "Dockerfile to use for creating the image."
+      - string:
+          name: ARCH_TAG
+          default: "{arch_tag}"
+          description: "If set, this value will be added to the docker image tag as a prefix"
 
     properties:
-        - throttle:
-            max-per-node: 1
-            option: 'project'
+      - throttle:
+          max-per-node: 1
+          option: 'project'
 
     scm:
-        - git-scm
+      - git-scm
 
     builders: &builders
-        - shell:
-            !include-raw-escape: ./opnfv-docker.sh
+      - shell:
+          !include-raw-escape: ./opnfv-docker.sh
 
     triggers:
-        - pollscm:
-            cron: "*/30 * * * *"
+      - pollscm:
+          cron: "*/30 * * * *"
 
     publishers:
-        - email:
-            recipients: '{receivers}'
-        - email-jenkins-admins-on-failure
+      - email:
+          recipients: '{receivers}'
+      - email-jenkins-admins-on-failure
 
 - job-template:
     name: '{project}-docker-build-push-monitor-{stream}'
     disabled: '{obj:disabled}'
     parameters: *parameters
+
     scm:
-        - git-scm
+      - git-scm
+
     builders: *builders
 
     # trigger only matching the file name
     triggers:
-        - gerrit:
-            trigger-on:
-                - change-merged-event
-                - comment-added-contains-event:
-                    comment-contains-value: 'remerge'
-            projects:
-              - project-compare-type: 'ANT'
-                project-pattern: '{project}'
-                branches:
-                    - branch-compare-type: 'ANT'
-                      branch-pattern: '**/{branch}'
-                file-paths:
-                  - compare-type: ANT
-                    pattern: 'docker/**'
-
+      - gerrit:
+          trigger-on:
+            - change-merged-event
+            - comment-added-contains-event:
+                comment-contains-value: 'remerge'
+          projects:
+            - project-compare-type: 'ANT'
+              project-pattern: '{project}'
+              branches:
+                - branch-compare-type: 'ANT'
+                  branch-pattern: '**/{branch}'
+              file-paths:
+                - compare-type: ANT
+                  pattern: 'docker/**'
index f4b2501..afe8523 100644 (file)
@@ -1,3 +1,4 @@
+---
 ########################
 # Job configuration for opnfv-docs
 ########################
@@ -8,20 +9,20 @@
     project: opnfv-docs
 
     jobs:
-        - 'opnfv-docs-verify-{stream}'
-        - 'opnfv-docs-merge-{stream}'
+      - 'opnfv-docs-verify-{stream}'
+      - 'opnfv-docs-merge-{stream}'
 
     stream:
-        - master:
-            branch: '{stream}'
-            doc-version: ''
-            gs-pathname: ''
-            disabled: false
-        - danube:
-            branch: 'stable/{stream}'
-            doc-version: '3.0'
-            gs-pathname: '/{stream}/{doc-version}'
-            disabled: true
+      - master:
+          branch: '{stream}'
+          doc-version: ''
+          gs-pathname: ''
+          disabled: false
+      - danube:
+          branch: 'stable/{stream}'
+          doc-version: '3.0'
+          gs-pathname: '/{stream}/{doc-version}'
+          disabled: true
 
 ########################
 # job templates
     disabled: '{obj:disabled}'
 
     parameters:
-        - project-parameter:
-            project: $GERRIT_PROJECT
-            branch: '{branch}'
+      - project-parameter:
+          project: $GERRIT_PROJECT
+          branch: '{branch}'
 
     scm:
-        - git-scm-gerrit
+      - git-scm-gerrit
 
     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: '*'
-                  branches:
-                      - branch-compare-type: 'ANT'
-                        branch-pattern: '**/{branch}'
-                  file-paths:
-                      - compare-type: ANT
-                        pattern: docs/**
-                      - compare-type: ANT
-                        pattern: yardstick/**
+      - 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: '*'
+              branches:
+                - branch-compare-type: 'ANT'
+                  branch-pattern: '**/{branch}'
+              file-paths:
+                - compare-type: ANT
+                  pattern: docs/**
+                - compare-type: ANT
+                  pattern: yardstick/**
 
     builders:
-        - upload-review-docs
+      - upload-review-docs
 
 - job-template:
     name: 'opnfv-docs-merge-{stream}'
     disabled: '{obj:disabled}'
 
     parameters:
-        - project-parameter:
-            project: $GERRIT_PROJECT
-            branch: '{branch}'
-        - string:
-            name: GS_URL
-            default: '$GS_BASE{gs-pathname}'
-            description: "Directory where the build artifact will be located upon the completion of the build."
-        - string:
-            name: GERRIT_REFSPEC
-            default: 'refs/heads/{branch}'
-            description: "JJB configured GERRIT_REFSPEC parameter"
+      - project-parameter:
+          project: $GERRIT_PROJECT
+          branch: '{branch}'
+      - string:
+          name: GS_URL
+          default: '$GS_BASE{gs-pathname}'
+          description: "Directory where the build artifact will be located upon the completion of the build."
+      - string:
+          name: GERRIT_REFSPEC
+          default: 'refs/heads/{branch}'
+          description: "JJB configured GERRIT_REFSPEC parameter"
 
     scm:
-        - git-scm
+      - git-scm
 
     triggers:
-        - gerrit:
-            server-name: 'gerrit.opnfv.org'
-            trigger-on:
-                - change-merged-event
-                - comment-added-contains-event:
-                    comment-contains-value: 'remerge'
-                - comment-added-contains-event:
-                    comment-contains-value: 'rebuild docs'
-            projects:
-                - project-compare-type: 'ANT'
-                  project-pattern: '*'
-                  branches:
-                      - branch-compare-type: 'ANT'
-                        branch-pattern: '**/{branch}'
-                  file-paths:
-                      - compare-type: ANT
-                        pattern: docs/**
-                      - compare-type: ANT
-                        pattern: yardstick/**
+      - gerrit:
+          server-name: 'gerrit.opnfv.org'
+          trigger-on:
+            - change-merged-event
+            - comment-added-contains-event:
+                comment-contains-value: 'remerge'
+            - comment-added-contains-event:
+                comment-contains-value: 'rebuild docs'
+          projects:
+            - project-compare-type: 'ANT'
+              project-pattern: '*'
+              branches:
+                - branch-compare-type: 'ANT'
+                  branch-pattern: '**/{branch}'
+              file-paths:
+                - compare-type: ANT
+                  pattern: docs/**
+                - compare-type: ANT
+                  pattern: yardstick/**
 
     builders:
-        - upload-merged-docs
+      - upload-merged-docs
index d253da0..b51779f 100644 (file)
@@ -1,3 +1,4 @@
+---
 ########################
 # Job configuration for opnfv-lint
 ########################
@@ -8,18 +9,18 @@
     project: opnfv-lint
 
     jobs:
-        - 'opnfv-lint-verify-{stream}'
-        - 'opnfv-yamllint-verify-{stream}'
+      - 'opnfv-lint-verify-{stream}'
+      - 'opnfv-yamllint-verify-{stream}'
 
     stream:
-        - master:
-            branch: '{stream}'
-            gs-pathname: ''
-            disabled: false
-        - danube:
-            branch: 'stable/{stream}'
-            gs-pathname: '/{stream}'
-            disabled: false
+      - master:
+          branch: '{stream}'
+          gs-pathname: ''
+          disabled: false
+      - danube:
+          branch: 'stable/{stream}'
+          gs-pathname: '/{stream}'
+          disabled: false
 
 ########################
 # job templates
     disabled: '{obj:disabled}'
 
     parameters:
-        - project-parameter:
-            project: $GERRIT_PROJECT
-            branch: '{branch}'
+      - project-parameter:
+          project: $GERRIT_PROJECT
+          branch: '{branch}'
 
     scm:
-        - git-scm-gerrit
+      - git-scm-gerrit
 
     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: 'REG_EXP'
-                project-pattern: 'functest|sdnvpn|qtip|daisy|sfc|escalator|releng'
-                branches:
-                  - branch-compare-type: 'ANT'
-                    branch-pattern: '**/{branch}'
-                file-paths:
-                  - compare-type: ANT
-                    pattern: '**/*.py'
+      - 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: 'REG_EXP'
+              project-pattern: 'functest|sdnvpn|qtip|daisy|sfc|escalator|releng'
+              branches:
+                - branch-compare-type: 'ANT'
+                  branch-pattern: '**/{branch}'
+              file-paths:
+                - compare-type: ANT
+                  pattern: '**/*.py'
 
     builders:
-        - lint-python-code
-        - report-lint-result-to-gerrit
+      - lint-python-code
+      - report-lint-result-to-gerrit
 
 - job-template:
     name: 'opnfv-yamllint-verify-{stream}'
     concurrent: true
 
     parameters:
-        - project-parameter:
-            project: $GERRIT_PROJECT
-            branch: '{branch}'
-        - node:
-            name: SLAVE_NAME
-            description: Slaves to execute yamllint
-            default-slaves:
-                - lf-build1
-            allowed-multiselect: true
-            ignore-offline-nodes: true
+      - project-parameter:
+          project: $GERRIT_PROJECT
+          branch: '{branch}'
+      - node:
+          name: SLAVE_NAME
+          description: Slaves to execute yamllint
+          default-slaves:
+            - lf-build1
+          allowed-multiselect: true
+          ignore-offline-nodes: true
 
     scm:
-        - git-scm-gerrit
+      - git-scm-gerrit
 
     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: 'REG_EXP'
-                project-pattern: 'octopus|releng-anteater|pharos'
-                branches:
-                  - branch-compare-type: 'ANT'
-                    branch-pattern: '**/{branch}'
-                file-paths:
-                  - compare-type: ANT
-                    pattern: '**/*.yml'
-                  - compare-type: ANT
-                    pattern: '**/*.yaml'
+      - 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: 'REG_EXP'
+              project-pattern: 'octopus|releng-anteater|pharos'
+              branches:
+                - branch-compare-type: 'ANT'
+                  branch-pattern: '**/{branch}'
+              file-paths:
+                - compare-type: ANT
+                  pattern: '**/*.yml'
+                - compare-type: ANT
+                  pattern: '**/*.yaml'
 
     builders:
-        - lint-yaml-code
-        - report-lint-result-to-gerrit
+      - lint-yaml-code
+      - report-lint-result-to-gerrit
index 721b5de..80cd08f 100644 (file)
@@ -1,11 +1,12 @@
+---
 - project:
 
     name: opnfv-utils
 
     jobs:
-        - 'prune-docker-images'
-        - 'archive-repositories'
-        - 'check-status-of-slaves'
+      - 'prune-docker-images'
+      - 'archive-repositories'
+      - 'check-status-of-slaves'
 
 ########################
 # job templates
     concurrent: true
 
     parameters:
-        - node:
-            name: SLAVE_NAME
-            description: Slaves to prune docker images
-            default-slaves:
-                - arm-build2
-                - ericsson-build4
-                - ericsson-build5
-                - lf-build2
-            allowed-multiselect: true
-            ignore-offline-nodes: true
+      - node:
+          name: SLAVE_NAME
+          description: Slaves to prune docker images
+          default-slaves:
+            - arm-build2
+            - ericsson-build4
+            - ericsson-build5
+            - lf-build2
+          allowed-multiselect: true
+          ignore-offline-nodes: true
 
     builders:
-        - description-setter:
-            description: "Built on $NODE_NAME"
-        - shell: |
-            #!/bin/bash
+      - description-setter:
+          description: "Built on $NODE_NAME"
+      - shell: |
+          #!/bin/bash
 
-            (docker ps -q; docker ps -aq) | sort | uniq -u | xargs --no-run-if-empty docker rm
-            docker images -f dangling=true -q | xargs --no-run-if-empty docker rmi
+          (docker ps -q; docker ps -aq) | sort | uniq -u | xargs --no-run-if-empty docker rm
+          docker images -f dangling=true -q | xargs --no-run-if-empty docker rmi
 
     triggers:
-        - timed: '@midnight'
+      - timed: '@midnight'
 
 - job-template:
     name: 'archive-repositories'
     concurrent: true
 
     parameters:
-        - node:
-            name: SLAVE_NAME
-            description: Where to create the archive
-            default-slaves:
-                - master
-            allowed-multiselect: false
-            ignore-offline-nodes: true
+      - node:
+          name: SLAVE_NAME
+          description: Where to create the archive
+          default-slaves:
+            - master
+          allowed-multiselect: false
+          ignore-offline-nodes: true
 
     triggers:
-        - timed: '@monthly'
+      - timed: '@monthly'
 
     builders:
-        - shell:
-            !include-raw-escape: opnfv-repo-archiver.sh
+      - shell:
+          !include-raw-escape: opnfv-repo-archiver.sh
 
 - job-template:
     name: 'check-status-of-slaves'
     concurrent: true
 
     parameters:
-        - node:
-            name: SLAVE_NAME
-            description: We don't want workspace wiped. so I just threw the script on the master
-            default-slaves:
-                - master
-            allowed-multiselect: false
-            ignore-offline-nodes: true
+      - node:
+          name: SLAVE_NAME
+          description: We don't want workspace wiped. so I just threw the script on the master
+          default-slaves:
+            - master
+          allowed-multiselect: false
+          ignore-offline-nodes: true
 
     triggers:
-        - timed: '@midnight'
+      - timed: '@midnight'
 
     builders:
-        - shell: |
-            cd /opt/jenkins-ci/slavemonitor
-            bash slave-monitor-0.1.sh | sort
+      - shell: |
+          cd /opt/jenkins-ci/slavemonitor
+          bash slave-monitor-0.1.sh | sort
index fd58ef2..d4f3970 100644 (file)
@@ -1,10 +1,11 @@
+---
 - project:
     name: releng-builder-jobs
     jobs:
-        - 'releng-verify-jjb'
-        - 'releng-merge-jjb'
-        - 'releng-comment-jjb'
-        - 'releng-generate-artifacts-api'
+      - 'releng-verify-jjb'
+      - 'releng-merge-jjb'
+      - 'releng-comment-jjb'
+      - 'releng-generate-artifacts-api'
 
     project: 'releng'
 
     name: releng-verify-jjb
 
     parameters:
-        - project-parameter:
-            project: '{project}'
-            branch: 'master'
+      - project-parameter:
+          project: '{project}'
+          branch: 'master'
+
     scm:
-        - git-scm-gerrit
+      - git-scm-gerrit
 
     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: 'releng'
-                branches:
-                  - branch-compare-type: 'ANT'
-                    branch-pattern: '**/master'
-                file-paths:
-                    - compare-type: ANT
-                      pattern: jjb/**
-                    - compare-type: ANT
-                      pattern: jjb-templates/**
-                    - compare-type: ANT
-                      pattern: utils/**
+      - 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: 'releng'
+              branches:
+                - branch-compare-type: 'ANT'
+                  branch-pattern: '**/master'
+              file-paths:
+                - compare-type: ANT
+                  pattern: jjb/**
+                - compare-type: ANT
+                  pattern: jjb-templates/**
+                - compare-type: ANT
+                  pattern: utils/**
 
 
     builders:
-        - shell:
-            !include-raw: verify-releng.sh
+      - shell:
+          !include-raw: verify-releng.sh
 
     publishers:
-        - archive-artifacts:
-            artifacts: 'job_output/*'
-        - email-jenkins-admins-on-failure
+      - archive-artifacts:
+          artifacts: 'job_output/*'
+      - email-jenkins-admins-on-failure
 
 - job-template:
     name: releng-comment-jjb
 
     parameters:
-        - project-parameter:
-            project: '{project}'
-            branch: 'master'
+      - project-parameter:
+          project: '{project}'
+          branch: 'master'
+
     scm:
-        - git-scm-gerrit
+      - git-scm-gerrit
 
     triggers:
-        - experimental:
-            project: '{project}'
-            branch: 'master'
-            files: 'jjb/**'
+      - experimental:
+          project: '{project}'
+          branch: 'master'
+          files: 'jjb/**'
 
     builders:
-        - shell:
-            !include-raw-escape: generate-job-list.sh
-        - report-build-result-to-gerrit
+      - shell:
+          !include-raw-escape: generate-job-list.sh
+      - report-build-result-to-gerrit
 
 - job-template:
     name: 'releng-merge-jjb'
     # This job's purpose is to update all the JJB
 
     parameters:
-        - project-parameter:
-            project: '{project}'
-            branch: 'master'
+      - project-parameter:
+          project: '{project}'
+          branch: 'master'
 
     scm:
-        - git-scm
+      - git-scm
 
     triggers:
-        - gerrit:
-            server-name: 'gerrit.opnfv.org'
-            trigger-on:
-                - change-merged-event
-                - comment-added-contains-event:
-                    comment-contains-value: 'remerge'
-            projects:
-              - project-compare-type: 'ANT'
-                project-pattern: 'releng'
-                branches:
-                    - branch-compare-type: 'ANT'
-                      branch-pattern: '**/master'
-                file-paths:
-                    - compare-type: ANT
-                      pattern: jjb/**
-                    - compare-type: ANT
-                      pattern: utils/**
+      - gerrit:
+          server-name: 'gerrit.opnfv.org'
+          trigger-on:
+            - change-merged-event
+            - comment-added-contains-event:
+                comment-contains-value: 'remerge'
+          projects:
+            - project-compare-type: 'ANT'
+              project-pattern: 'releng'
+              branches:
+                - branch-compare-type: 'ANT'
+                  branch-pattern: '**/master'
+              file-paths:
+                - compare-type: ANT
+                  pattern: jjb/**
+                - compare-type: ANT
+                  pattern: utils/**
 
     builders:
-        - shell: |
-                source /opt/virtualenv/jenkins-job-builder/bin/activate
-                cd /opt/jenkins-ci/releng
-                git pull
-                jenkins-jobs update -r --delete-old jjb/
+      - shell: |
+              source /opt/virtualenv/jenkins-job-builder/bin/activate
+              cd /opt/jenkins-ci/releng
+              git pull
+              jenkins-jobs update -r --delete-old jjb/
 
 - job-template:
     name: 'releng-generate-artifacts-api'
     # Generate and upload the JSON file to used for artifacts site
 
     parameters:
-        - project-parameter:
-            project: '{project}'
-            branch: 'master'
+      - project-parameter:
+          project: '{project}'
+          branch: 'master'
 
     scm:
-        - git-scm
+      - git-scm
 
     triggers:
-        - timed: '@hourly'
+      - timed: '@hourly'
 
     builders:
-        - build-and-upload-artifacts-json-api
+      - build-and-upload-artifacts-json-api
index 827be4e..82a2cfb 100644 (file)
@@ -1,3 +1,4 @@
+---
 ###################################################
 # All the jobs except verify have been removed!
 # They will only be enabled on request by projects!
@@ -8,16 +9,17 @@
     project: 'sfc'
 
     jobs:
-        - 'sfc-verify-{stream}'
+      - 'sfc-verify-{stream}'
+
     stream:
-        - master:
-            branch: '{stream}'
-            gs-pathname: ''
-            disabled: false
-        - euphrates:
-            branch: 'stable/{stream}'
-            gs-pathname: '/{stream}'
-            disabled: false
+      - master:
+          branch: '{stream}'
+          gs-pathname: ''
+          disabled: false
+      - euphrates:
+          branch: 'stable/{stream}'
+          gs-pathname: '/{stream}'
+          disabled: false
 
 - job-template:
     name: 'sfc-verify-{stream}'
     disabled: '{obj:disabled}'
 
     parameters:
-        - project-parameter:
-            project: '{project}'
-            branch: '{branch}'
-        - 'opnfv-build-ubuntu-defaults'
+      - project-parameter:
+          project: '{project}'
+          branch: '{branch}'
+      - 'opnfv-build-ubuntu-defaults'
+
     scm:
-        - git-scm-gerrit
+      - git-scm-gerrit
 
     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}'
-                disable-strict-forbidden-file-verification: 'true'
-                forbidden-file-paths:
-                  - compare-type: ANT
-                    pattern: 'docs/**|.gitignore'
+      - 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}'
+              disable-strict-forbidden-file-verification: 'true'
+              forbidden-file-paths:
+                - compare-type: ANT
+                  pattern: 'docs/**|.gitignore'
 
     builders:
-        - sfc-unit-tests
+      - sfc-unit-tests
 
 ################################
 # job builders
@@ -66,5 +69,5 @@
 - builder:
     name: sfc-unit-tests
     builders:
-        - shell: |
-            cd $WORKSPACE && yamllint $(git ls-tree -r HEAD --name-only  | egrep 'yml$|yaml$')
+      - shell: |
+          cd $WORKSPACE && yamllint $(git ls-tree -r HEAD --name-only  | egrep 'yml$|yaml$' | egrep -v 'scenarios')
index 01ea3e4..bc3f393 100644 (file)
@@ -1,3 +1,4 @@
+---
 ###################################################
 # All the jobs except verify have been removed!
 # They will only be enabled on request by projects!
@@ -8,13 +9,13 @@
     project: '{name}'
 
     jobs:
-        - 'snaps-verify-{stream}'
+      - 'snaps-verify-{stream}'
 
     stream:
-        - master:
-            branch: '{stream}'
-            gs-pathname: ''
-            disabled: false
+      - master:
+          branch: '{stream}'
+          gs-pathname: ''
+          disabled: false
 
 - job-template:
     name: 'snaps-verify-{stream}'
     concurrent: false
 
     parameters:
-        - project-parameter:
-            project: '{project}'
-            branch: '{branch}'
-        - string:
-            name: DEPLOYMENT_HOST_IP
-            default: 192.168.122.2
-            description: 'IP of the deployment node'
-        - string:
-            name: CONTROLLER_IP
-            default: 192.168.122.3
-            description: 'IP of the controller node'
-        - 'intel-virtual10-defaults'
+      - project-parameter:
+          project: '{project}'
+          branch: '{branch}'
+      - string:
+          name: DEPLOYMENT_HOST_IP
+          default: 192.168.122.2
+          description: 'IP of the deployment node'
+      - string:
+          name: CONTROLLER_IP
+          default: 192.168.122.3
+          description: 'IP of the controller node'
+      - 'intel-virtual10-defaults'
 
     scm:
-        - git-scm-gerrit
+      - git-scm-gerrit
 
     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}'
-                disable-strict-forbidden-file-verification: 'true'
-                forbidden-file-paths:
-                  - compare-type: ANT
-                    pattern: 'docs/**|.gitignore'
+      - 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}'
+              disable-strict-forbidden-file-verification: 'true'
+              forbidden-file-paths:
+                - compare-type: ANT
+                  pattern: 'docs/**|.gitignore'
 
     builders:
-        - shell: |
-            #!/bin/bash
+      - shell: |
+          #!/bin/bash
 
-            cd $WORKSPACE/ci
-            ./run_tests.sh $DEPLOYMENT_HOST_IP $CONTROLLER_IP
+          cd $WORKSPACE/ci
+          ./run_tests.sh $DEPLOYMENT_HOST_IP $CONTROLLER_IP
index 5885c46..fc479b1 100644 (file)
@@ -16,7 +16,7 @@
           branch: '{stream}'
           gs-pathname: ''
           disabled: false
-      - danube:
+      - euphrates:
           branch: 'stable/{stream}'
           gs-pathname: '/{stream}'
           disabled: false
index bf04712..ebc7823 100644 (file)
@@ -1,3 +1,4 @@
+---
 ###################################
 # job configuration for storperf
 ###################################
@@ -6,90 +7,90 @@
 
     project: storperf
 
-#--------------------------------
-# BRANCH ANCHORS
-#--------------------------------
+    # -------------------------------
+    # BRANCH ANCHORS
+    # -------------------------------
     master: &master
-        stream: master
-        branch: '{stream}'
-        gs-pathname: ''
-        docker-tag: 'latest'
+      stream: master
+      branch: '{stream}'
+      gs-pathname: ''
+      docker-tag: 'latest'
     euphrates: &euphrates
-        stream: euphrates
-        branch: 'stable/{stream}'
-        gs-pathname: '/{stream}'
-        disabled: false
-        docker-tag: 'stable'
-#--------------------------------
-# POD, INSTALLER, AND BRANCH MAPPING
-#--------------------------------
-#    Installers using labels
-#            CI PODs
-# This section should only contain the installers
-# that have been switched using labels for slaves
-#--------------------------------
+      stream: euphrates
+      branch: 'stable/{stream}'
+      gs-pathname: '/{stream}'
+      disabled: false
+      docker-tag: 'stable'
+    # -------------------------------
+    # POD, INSTALLER, AND BRANCH MAPPING
+    # -------------------------------
+    #    Installers using labels
+    #            CI PODs
+    # This section should only contain the installers
+    # that have been switched using labels for slaves
+    # -------------------------------
     pod:
-## fuel CI PODs
-#        - baremetal:
-#            slave-label: fuel-baremetal
-#            installer: fuel
-#            <<: *master
-#        - virtual:
-#            slave-label: fuel-virtual
-#            installer: fuel
-#            <<: *master
-## joid CI PODs
-#        - baremetal:
-#            slave-label: joid-baremetal
-#            installer: joid
-#            <<: *master
-#        - virtual:
-#            slave-label: joid-virtual
-#            installer: joid
-#            <<: *master
-## compass CI PODs
-#        - baremetal:
-#            slave-label: compass-baremetal
-#            installer: compass
-#            <<: *master
-#        - virtual:
-#            slave-label: compass-virtual
-#            installer: compass
-#            <<: *master
-## apex CI PODs
-#        - virtual:
-#            slave-label: apex-virtual-master
-#            installer: apex
-#            <<: *master
-        - baremetal:
-            slave-label: apex-baremetal-master
-            installer: apex
-            <<: *master
-        - baremetal:
-            slave-label: apex-baremetal-master
-            installer: apex
-            <<: *euphrates
-## armband CI PODs
-#        - armband-baremetal:
-#            slave-label: armband-baremetal
-#            installer: fuel
-#            <<: *master
-#        - armband-virtual:
-#            slave-label: armband-virtual
-#            installer: fuel
-#            <<: *master
-## daisy CI PODs
-#        - baremetal:
-#            slave-label: daisy-baremetal
-#            installer: daisy
-#            <<: *master
-#        - virtual:
-#            slave-label: daisy-virtual
-#            installer: daisy
-#            <<: *master
+      # # fuel CI PODs
+      # - baremetal:
+      #     slave-label: fuel-baremetal
+      #     installer: fuel
+      #     <<: *master
+      # - virtual:
+      #     slave-label: fuel-virtual
+      #     installer: fuel
+      #     <<: *master
+      # # joid CI PODs
+      # - baremetal:
+      #     slave-label: joid-baremetal
+      #     installer: joid
+      #     <<: *master
+      # - virtual:
+      #     slave-label: joid-virtual
+      #     installer: joid
+      #     <<: *master
+      # # compass CI PODs
+      # - baremetal:
+      #     slave-label: compass-baremetal
+      #     installer: compass
+      #     <<: *master
+      # - virtual:
+      #     slave-label: compass-virtual
+      #     installer: compass
+      #     <<: *master
+      # # apex CI PODs
+      # - virtual:
+      #     slave-label: apex-virtual-master
+      #     installer: apex
+      #     <<: *master
+      - baremetal:
+          slave-label: apex-baremetal-master
+          installer: apex
+          <<: *master
+      - baremetal:
+          slave-label: apex-baremetal-master
+          installer: apex
+          <<: *euphrates
+    ## armband CI PODs
+    # - armband-baremetal:
+    #     slave-label: armband-baremetal
+    #     installer: fuel
+    #     <<: *master
+    # - armband-virtual:
+    #     slave-label: armband-virtual
+    #     installer: fuel
+    #     <<: *master
+    ## daisy CI PODs
+    # - baremetal:
+    #     slave-label: daisy-baremetal
+    #     installer: daisy
+    #     <<: *master
+    # - virtual:
+    #     slave-label: daisy-virtual
+    #     installer: daisy
+    #     <<: *master
 
     jobs:
-        - 'storperf-{installer}-{pod}-daily-{stream}'
+      - 'storperf-{installer}-{pod}-daily-{stream}'
 
 ################################
 # job template
     concurrent: true
 
     properties:
-        - logrotate-default
-        - throttle:
-            enabled: true
-            max-per-node: 1
-            option: 'project'
+      - logrotate-default
+      - throttle:
+          enabled: true
+          max-per-node: 1
+          option: 'project'
 
     wrappers:
-        - build-name:
-            name: '$BUILD_NUMBER Scenario: $DEPLOY_SCENARIO'
-        - timeout:
-            timeout: '30'
-            abort: true
+      - build-name:
+          name: '$BUILD_NUMBER Scenario: $DEPLOY_SCENARIO'
+      - timeout:
+          timeout: '30'
+          abort: true
 
     parameters:
-        - project-parameter:
-            project: '{project}'
-            branch: '{branch}'
-        - '{installer}-defaults'
-        - '{slave-label}-defaults'
-        - string:
-            name: DEPLOY_SCENARIO
-            default: 'os-odl_l2-nofeature-ha'
-        - string:
-            name: DOCKER_TAG
-            default: '{docker-tag}'
-            description: 'Tag to pull docker image'
-        - string:
-            name: CLEAN_DOCKER_IMAGES
-            default: 'false'
-            description: 'Remove downloaded docker images (opnfv/storperf*:*)'
-        - string:
-            name: GS_PATHNAME
-            default: '{gs-pathname}'
-            description: "Version directory where the opnfv documents will be stored in gs repository"
-        - string:
-            name: DISK_TYPE
-            default: 'HDD'
-            description: 'The type of hard disk that Cinder uses'
-        - string:
-            name: VOLUME_SIZE
-            default: '2'
-            description: 'Size of Cinder volume (in GB)'
-        - string:
-            name: WORKLOADS
-            default: 'rw'
-            description: 'Workloads to run'
-        - string:
-            name: BLOCK_SIZES
-            default: '16384'
-            description: 'Block sizes for VM I/O operations'
-        - string:
-            name: QUEUE_DEPTHS
-            default: '4'
-            description: 'Number of simultaneous I/O operations to keep active'
-        - string:
-            name: STEADY_STATE_SAMPLES
-            default: '10'
-            description: 'Number of samples to use (1 per minute) to measure steady state'
-        - string:
-            name: TEST_CASE
-            choices:
-                - 'snia_steady_state'
-            description: 'The test case to run'
+      - project-parameter:
+          project: '{project}'
+          branch: '{branch}'
+      - '{installer}-defaults'
+      - '{slave-label}-defaults'
+      - string:
+          name: DEPLOY_SCENARIO
+          default: 'os-odl_l2-nofeature-ha'
+      - string:
+          name: DOCKER_TAG
+          default: '{docker-tag}'
+          description: 'Tag to pull docker image'
+      - string:
+          name: CLEAN_DOCKER_IMAGES
+          default: 'false'
+          description: 'Remove downloaded docker images (opnfv/storperf*:*)'
+      - string:
+          name: GS_PATHNAME
+          default: '{gs-pathname}'
+          description: "Version directory where the opnfv documents will be stored in gs repository"
+      - string:
+          name: DISK_TYPE
+          default: 'HDD'
+          description: 'The type of hard disk that Cinder uses'
+      - string:
+          name: VOLUME_SIZE
+          default: '2'
+          description: 'Size of Cinder volume (in GB)'
+      - string:
+          name: WORKLOADS
+          default: 'rw'
+          description: 'Workloads to run'
+      - string:
+          name: BLOCK_SIZES
+          default: '16384'
+          description: 'Block sizes for VM I/O operations'
+      - string:
+          name: QUEUE_DEPTHS
+          default: '4'
+          description: 'Number of simultaneous I/O operations to keep active'
+      - string:
+          name: STEADY_STATE_SAMPLES
+          default: '10'
+          description: 'Number of samples to use (1 per minute) to measure steady state'
+      - string:
+          name: TEST_CASE
+          choices:
+            - 'snia_steady_state'
+          description: 'The test case to run'
 
     scm:
-        - git-scm
+      - git-scm
 
     builders:
-        - description-setter:
-            description: "Built on $NODE_NAME"
-        - 'storperf-daily-builder'
+      - description-setter:
+          description: "Built on $NODE_NAME"
+      - 'storperf-daily-builder'
 
 ########################
 # builder macros
 - builder:
     name: storperf-daily-builder
     builders:
-        - shell: |
-            #!/bin/bash
+      - shell: |
+          #!/bin/bash
 
-            cd $WORKSPACE
-            ./ci/daily.sh
+          cd $WORKSPACE
+          ./ci/daily.sh
index 0b01fd1..7e29add 100644 (file)
@@ -1,41 +1,42 @@
+---
 - project:
     name: storperf-verify
 
     project: 'storperf'
 
-#--------------------------------
-# branches
-#--------------------------------
+    # -------------------------------
+    # branches
+    # -------------------------------
     stream:
-        - master:
-            branch: '{stream}'
-            gs-pathname: ''
-            disabled: false
-            docker-tag: 'latest'
-        - euphrates:
-            branch: 'stable/{stream}'
-            gs-pathname: '/{stream}'
-            disabled: false
-            docker-tag: 'stable'
-#--------------------------------
-# patch verification phases
-#--------------------------------
+      - master:
+          branch: '{stream}'
+          gs-pathname: ''
+          disabled: false
+          docker-tag: 'latest'
+      - euphrates:
+          branch: 'stable/{stream}'
+          gs-pathname: '/{stream}'
+          disabled: false
+          docker-tag: 'stable'
+    # -------------------------------
+    # patch verification phases
+    # -------------------------------
     phase:
-        - 'unit-test':
-            slave-label: 'opnfv-build-ubuntu'
-        - 'build-x86_64':
-            slave-label: 'opnfv-build-ubuntu'
-        - 'build-aarch64':
-            slave-label: 'opnfv-build-ubuntu-arm'
-#--------------------------------
-# jobs
-#--------------------------------
+      - 'unit-test':
+          slave-label: 'opnfv-build-ubuntu'
+      - 'build-x86_64':
+          slave-label: 'opnfv-build-ubuntu'
+      - 'build-aarch64':
+          slave-label: 'opnfv-build-ubuntu-arm'
+    # -------------------------------
+    # jobs
+    # -------------------------------
     jobs:
-        - 'storperf-verify-{stream}'
-        - 'storperf-verify-{phase}-{stream}'
-#--------------------------------
+      - 'storperf-verify-{stream}'
+      - 'storperf-verify-{phase}-{stream}'
+# -------------------------------
 # job templates
-#--------------------------------
+# -------------------------------
 - job-template:
     name: 'storperf-verify-{stream}'
 
     project-type: 'multijob'
 
     parameters:
-        - project-parameter:
-            project: '{project}'
-            branch: '{branch}'
-        - 'opnfv-build-defaults'
+      - project-parameter:
+          project: '{project}'
+          branch: '{branch}'
+      - 'opnfv-build-defaults'
 
     scm:
-        - git-scm-gerrit
+      - git-scm-gerrit
 
     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}'
+      - 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}'
 
     builders:
-        - shell: |
-            #!/bin/bash
-
-            # we do nothing here as the main stuff will be done
-            # in phase jobs
-            echo "Triggering phase jobs!"
-        - multijob:
-            name: 'storperf-build-and-unittest'
-            execution-type: PARALLEL
-            projects:
-                - name: 'storperf-verify-unit-test-{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
-                  git-revision: true
-                  node-parameters: false
-                  kill-phase-on: FAILURE
-                  abort-all-job: false
-                - name: 'storperf-verify-build-x86_64-{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
-                    ARCH=x86_64
-                  git-revision: true
-                  node-parameters: false
-                  kill-phase-on: FAILURE
-                  abort-all-job: false
-                - name: 'storperf-verify-build-aarch64-{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
-                    ARCH=aarch64
-                  git-revision: true
-                  node-parameters: false
-                  kill-phase-on: FAILURE
-                  abort-all-job: false
+      - shell: |
+          #!/bin/bash
+
+          # we do nothing here as the main stuff will be done
+          # in phase jobs
+          echo "Triggering phase jobs!"
+      - multijob:
+          name: 'storperf-build-and-unittest'
+          execution-type: PARALLEL
+          projects:
+            - name: 'storperf-verify-unit-test-{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
+              git-revision: true
+              node-parameters: false
+              kill-phase-on: FAILURE
+              abort-all-job: false
+            - name: 'storperf-verify-build-x86_64-{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
+                ARCH=x86_64
+              git-revision: true
+              node-parameters: false
+              kill-phase-on: FAILURE
+              abort-all-job: false
+            - name: 'storperf-verify-build-aarch64-{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
+                ARCH=aarch64
+              git-revision: true
+              node-parameters: false
+              kill-phase-on: FAILURE
+              abort-all-job: false
 
 - job-template:
     name: 'storperf-verify-{phase}-{stream}'
     disabled: '{obj:disabled}'
 
     wrappers:
-        - ssh-agent-wrapper
-        - build-timeout:
-            timeout: 60
+      - ssh-agent-wrapper
+      - build-timeout:
+          timeout: 60
 
     parameters:
-        - project-parameter:
-            project: '{project}'
-            branch: '{branch}'
-        - '{slave-label}-defaults'
+      - project-parameter:
+          project: '{project}'
+          branch: '{branch}'
+      - '{slave-label}-defaults'
 
     scm:
-        - git-scm-gerrit
+      - git-scm-gerrit
 
     builders:
-        - 'storperf-verify-{phase}-builders-macro'
+      - 'storperf-verify-{phase}-builders-macro'
 
     publishers:
-        - 'storperf-verify-{phase}-publishers-macro'
-#--------------------------------
+      - 'storperf-verify-{phase}-publishers-macro'
+# -------------------------------
 # builder macros
-#--------------------------------
+# -------------------------------
 - builder:
     name: 'storperf-verify-unit-test-builders-macro'
     builders:
-        - shell: |
-            $WORKSPACE/ci/verify.sh
+      - shell: |
+          $WORKSPACE/ci/verify.sh
+
 - builder:
     name: 'storperf-verify-build-x86_64-builders-macro'
     builders:
-        - shell: |
-            $WORKSPACE/ci/verify-build.sh
+      - shell: |
+          $WORKSPACE/ci/verify-build.sh
+
 - builder:
     name: 'storperf-verify-build-aarch64-builders-macro'
     builders:
-        - shell: |
-            $WORKSPACE/ci/verify-build.sh
-#--------------------------------
+      - shell: |
+          $WORKSPACE/ci/verify-build.sh
+# -------------------------------
 # publisher macros
-#--------------------------------
+# -------------------------------
 - publisher:
     name: 'storperf-verify-unit-test-publishers-macro'
     publishers:
-        - junit:
-            results: nosetests.xml
-        - cobertura:
-            report-file: "coverage.xml"
-            only-stable: "true"
-            health-auto-update: "true"
-            stability-auto-update: "true"
-            zoom-coverage-chart: "true"
-            targets:
-                - files:
-                    healthy: 60
-                    unhealthy: 50
-                    failing: 40
-                - method:
-                    healthy: 60
-                    unhealthy: 50
-                    failing: 40
-        - email-jenkins-admins-on-failure
+      - junit:
+          results: nosetests.xml
+      - cobertura:
+          report-file: "coverage.xml"
+          only-stable: "true"
+          health-auto-update: "true"
+          stability-auto-update: "true"
+          zoom-coverage-chart: "true"
+          targets:
+            - files:
+                healthy: 60
+                unhealthy: 50
+                failing: 40
+            - method:
+                healthy: 60
+                unhealthy: 50
+                failing: 40
+      - email-jenkins-admins-on-failure
+
 - publisher:
     name: 'storperf-verify-build-x86_64-publishers-macro'
     publishers:
-        - email-jenkins-admins-on-failure
+      - email-jenkins-admins-on-failure
+
 - publisher:
     name: 'storperf-verify-build-aarch64-publishers-macro'
     publishers:
-        - email-jenkins-admins-on-failure
+      - email-jenkins-admins-on-failure
index caae853..b9f3a36 100644 (file)
@@ -1,22 +1,23 @@
+---
 - project:
     name: storperf
 
     project: '{name}'
 
     jobs:
-        - 'storperf-merge-{stream}'
+      - 'storperf-merge-{stream}'
 
     stream:
-        - master:
-            branch: '{stream}'
-            gs-pathname: ''
-            disabled: false
-            docker-tag: 'latest'
-        - euphrates:
-            branch: 'stable/{stream}'
-            gs-pathname: '/{stream}'
-            disabled: false
-            docker-tag: 'stable'
+      - master:
+          branch: '{stream}'
+          gs-pathname: ''
+          disabled: false
+          docker-tag: 'latest'
+      - euphrates:
+          branch: 'stable/{stream}'
+          gs-pathname: '/{stream}'
+          disabled: false
+          docker-tag: 'stable'
 
 - job-template:
     name: 'storperf-merge-{stream}'
     node: opnfv-build-ubuntu
 
     parameters:
-        - 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 Global Jenkins configuration in case if the stuff is done on none-LF HW."
+      - project-parameter:
+          project: '{project}'
+          branch: '{branch}'
+      - string:
+          name: GIT_BASE
+          default: https://gerrit.opnfv.org/gerrit/$PROJECT
+          # yamllint disable rule:line-length
+          description: "Used for overriding the GIT URL coming from Global Jenkins configuration in case if the stuff is done on none-LF HW."
+          # yamllint enable rule:line-length
 
     scm:
-        - git-scm
+      - git-scm
 
     triggers:
-        - gerrit:
-            server-name: 'gerrit.opnfv.org'
-            trigger-on:
-                - change-merged-event
-                - comment-added-contains-event:
-                    comment-contains-value: 'remerge'
-            projects:
-              - project-compare-type: 'ANT'
-                project-pattern: '{project}'
-                branches:
-                    - branch-compare-type: 'ANT'
-                      branch-pattern: '**/{branch}'
+      - gerrit:
+          server-name: 'gerrit.opnfv.org'
+          trigger-on:
+            - change-merged-event
+            - comment-added-contains-event:
+                comment-contains-value: 'remerge'
+          projects:
+            - project-compare-type: 'ANT'
+              project-pattern: '{project}'
+              branches:
+                - branch-compare-type: 'ANT'
+                  branch-pattern: '**/{branch}'
 
     builders:
-        - shell: |
-            $WORKSPACE/ci/merge.sh
+      - shell: |
+          $WORKSPACE/ci/merge.sh
 
     publishers:
-        - junit:
-            results: nosetests.xml
-        - cobertura:
-            report-file: "coverage.xml"
-            only-stable: "true"
-            health-auto-update: "true"
-            stability-auto-update: "true"
-            zoom-coverage-chart: "true"
-            targets:
-                - files:
-                    healthy: 10
-                    unhealthy: 20
-                    failing: 30
-                - method:
-                    healthy: 50
-                    unhealthy: 40
-                    failing: 30
-        - email-jenkins-admins-on-failure
-
+      - junit:
+          results: nosetests.xml
+      - cobertura:
+          report-file: "coverage.xml"
+          only-stable: "true"
+          health-auto-update: "true"
+          stability-auto-update: "true"
+          zoom-coverage-chart: "true"
+          targets:
+            - files:
+                healthy: 10
+                unhealthy: 20
+                failing: 30
+            - method:
+                healthy: 50
+                unhealthy: 40
+                failing: 30
+      - email-jenkins-admins-on-failure
index 2d21aa5..d2182cb 100644 (file)
@@ -16,7 +16,7 @@
           branch: '{stream}'
           gs-pathname: ''
           disabled: false
-      - danube:
+      - euphrates:
           branch: 'stable/{stream}'
           gs-pathname: '/{stream}'
           disabled: false
index 450599e..7f21032 100644 (file)
@@ -1,20 +1,21 @@
+---
 - project:
     name: vnf_forwarding_graph
 
     project: '{name}'
 
     jobs:
-        - 'vnf_forwarding_graph-verify-{stream}'
+      - 'vnf_forwarding_graph-verify-{stream}'
 
     stream:
-        - master:
-            branch: '{stream}'
-            gs-pathname: ''
-            disabled: false
-        - danube:
-            branch: 'stable/{stream}'
-            gs-pathname: '/{stream}'
-            disabled: false
+      - master:
+          branch: '{stream}'
+          gs-pathname: ''
+          disabled: false
+      - euphrates:
+          branch: 'stable/{stream}'
+          gs-pathname: '/{stream}'
+          disabled: false
 
 - job-template:
     name: 'vnf_forwarding_graph-verify-{stream}'
     disabled: '{obj:disabled}'
 
     parameters:
-        - project-parameter:
-            project: '{project}'
-            branch: '{branch}'
+      - project-parameter:
+          project: '{project}'
+          branch: '{branch}'
     scm:
-        - git-scm-gerrit
+      - git-scm-gerrit
 
     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}'
+      - 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}'
 
     builders:
-        - shell: |
-            echo "Nothing to verify!"
+      - shell: |
+          echo "Nothing to verify!"
index 6f3f51a..d517761 100644 (file)
@@ -1,32 +1,34 @@
+---
 - project:
     name: 'openstack-bifrost-cleanup'
-#--------------------------------
-# branches
-#--------------------------------
+    # -------------------------------
+    # branches
+    # -------------------------------
     stream:
-        - master:
-            branch: '{stream}'
+      - master:
+          branch: '{stream}'
 
-#--------------------------------
-# projects
-#--------------------------------
+    # -------------------------------
+    # projects
+    # -------------------------------
     project:
-        - 'openstack':
-            project-repo: 'https://git.openstack.org/openstack/bifrost'
-            clone-location: '/opt/bifrost'
-        - 'opnfv':
-            project-repo: 'https://gerrit.opnfv.org/gerrit/releng-xci'
-            clone-location: '/opt/releng-xci'
-
-#--------------------------------
-# jobs
-#--------------------------------
+      - 'openstack':
+          project-repo: 'https://git.openstack.org/openstack/bifrost'
+          clone-location: '/opt/bifrost'
+      - 'opnfv':
+          project-repo: 'https://gerrit.opnfv.org/gerrit/releng-xci'
+          clone-location: '/opt/releng-xci'
+
+    # -------------------------------
+    # jobs
+    # -------------------------------
     jobs:
-        - '{project}-bifrost-cleanup-{stream}'
+      - '{project}-bifrost-cleanup-{stream}'
 
 - job-template:
     name: '{project}-bifrost-cleanup-{stream}'
 
+    disabled: true
     concurrent: false
 
     node: bifrost-verify-virtual
     # Make sure no verify job is running on any of the slaves since that would
     # produce build logs after we wipe the destination directory.
     properties:
-        - build-blocker:
-            blocking-jobs:
-                - '{project}-bifrost-verify-*'
+      - build-blocker:
+          blocking-jobs:
+            - '{project}-bifrost-verify-*'
 
     parameters:
-        - string:
-            name: PROJECT
-            default: '{project}'
+      - string:
+          name: PROJECT
+          default: '{project}'
 
     builders:
-        - shell: |
-            #!/bin/bash
-
-            set -eu
-
-            # DO NOT change this unless you know what you are doing.
-            BIFROST_GS_URL="gs://artifacts.opnfv.org/cross-community-ci/openstack/bifrost/$GERRIT_NAME/$GERRIT_CHANGE_NUMBER/"
-
-            # This should never happen... even 'recheck' uses the last jobs'
-            # gerrit information. Better exit with error so we can investigate
-            [[ ! -n $GERRIT_NAME ]] || [[ ! -n $GERRIT_CHANGE_NUMBER ]] && exit 1
-
-            echo "Removing build artifacts for $GERRIT_NAME/$GERRIT_CHANGE_NUMBER"
-
-            if ! [[ "$BIFROST_GS_URL" =~ "/cross-community-ci/openstack/bifrost/" ]]; then
-                echo "Oops! BIFROST_GS_URL=$BIFROST_GS_URL does not seem like a valid"
-                echo "bifrost location on the Google storage server. Please double-check"
-                echo "that it's set properly or fix this line if necessary."
-                echo "gsutil will not be executed until this is fixed!"
-                exit 1
-            fi
-            try_to_rm=1
-            while [[ $try_to_rm -lt 6 ]]; do
-                gsutil -m rm -r $BIFROST_GS_URL && _exitcode=$? && break
-                _exitcode=$?
-                echo "gsutil rm failed! Trying again... (attempt #$try_to_rm)"
-                let try_to_rm += 1
-                # Give it some time...
-                sleep 10
-            done
-            exit $_exitcode
+      - shell: |
+          #!/bin/bash
+
+          set -eu
+
+          # DO NOT change this unless you know what you are doing.
+          BIFROST_GS_URL="gs://artifacts.opnfv.org/cross-community-ci/openstack/bifrost/$GERRIT_NAME/$GERRIT_CHANGE_NUMBER/"
+
+          # This should never happen... even 'recheck' uses the last jobs'
+          # gerrit information. Better exit with error so we can investigate
+          [[ ! -n $GERRIT_NAME ]] || [[ ! -n $GERRIT_CHANGE_NUMBER ]] && exit 1
+
+          echo "Removing build artifacts for $GERRIT_NAME/$GERRIT_CHANGE_NUMBER"
+
+          if ! [[ "$BIFROST_GS_URL" =~ "/cross-community-ci/openstack/bifrost/" ]]; then
+              echo "Oops! BIFROST_GS_URL=$BIFROST_GS_URL does not seem like a valid"
+              echo "bifrost location on the Google storage server. Please double-check"
+              echo "that it's set properly or fix this line if necessary."
+              echo "gsutil will not be executed until this is fixed!"
+              exit 1
+          fi
+          try_to_rm=1
+          while [[ $try_to_rm -lt 6 ]]; do
+              gsutil -m rm -r $BIFROST_GS_URL && _exitcode=$? && break
+              _exitcode=$?
+              echo "gsutil rm failed! Trying again... (attempt #$try_to_rm)"
+              let try_to_rm += 1
+              # Give it some time...
+              sleep 10
+          done
+          exit $_exitcode
 
     triggers:
-        - '{project}-gerrit-trigger-cleanup':
-            branch: '{branch}'
+      - '{project}-gerrit-trigger-cleanup':
+          branch: '{branch}'
 
     publishers:
-        - email:
-            recipients: fatih.degirmenci@ericsson.com yroblamo@redhat.com mchandras@suse.de jack.morgan@intel.com zhang.jun3g@zte.com.cn
-        - email-jenkins-admins-on-failure
-#--------------------------------
+      # yamllint disable rule:line-length
+      - email:
+          recipients: fatih.degirmenci@ericsson.com yroblamo@redhat.com mchandras@suse.de jack.morgan@intel.com zhang.jun3g@zte.com.cn
+      # yamllint enable rule:line-length
+      - email-jenkins-admins-on-failure
+# -------------------------------
 # trigger macros
-#--------------------------------
+# -------------------------------
 - trigger:
     name: 'openstack-gerrit-trigger-cleanup'
     triggers:
-        - gerrit:
-            server-name: 'review.openstack.org'
-            escape-quotes: true
-            trigger-on:
-                # We only run this when the change is merged or
-                # abandoned since we don't need the logs anymore
-                - change-merged-event
-                - change-abandoned-event
-            # This is an OPNFV maintenance job. We don't want to provide
-            # feedback on Gerrit
-            silent: true
-            silent-start: true
-            projects:
-              - project-compare-type: 'PLAIN'
-                project-pattern: 'openstack/bifrost'
-                branches:
-                  - branch-compare-type: 'ANT'
-                    branch-pattern: '**/{branch}'
-                disable-strict-forbidden-file-verification: 'true'
-                forbidden-file-paths:
-                  - compare-type: ANT
-                    pattern: 'doc/**'
-                  - compare-type: ANT
-                    pattern: 'releasenotes/**'
-                disable-strict-forbidden-file-verification: 'true'
-            readable-message: true
+      - gerrit:
+          server-name: 'review.openstack.org'
+          escape-quotes: true
+          trigger-on:
+            # We only run this when the change is merged or
+            # abandoned since we don't need the logs anymore
+            - change-merged-event
+            - change-abandoned-event
+          # This is an OPNFV maintenance job. We don't want to provide
+          # feedback on Gerrit
+          silent: true
+          silent-start: true
+          projects:
+            - project-compare-type: 'PLAIN'
+              project-pattern: 'openstack/bifrost'
+              branches:
+                - branch-compare-type: 'ANT'
+                  branch-pattern: '**/{branch}'
+              disable-strict-forbidden-file-verification: 'true'
+              forbidden-file-paths:
+                - compare-type: ANT
+                  pattern: 'doc/**'
+                - compare-type: ANT
+                  pattern: 'releasenotes/**'
+          readable-message: true
+
 - trigger:
     name: 'opnfv-gerrit-trigger-cleanup'
     triggers:
-        - gerrit:
-            server-name: 'gerrit.opnfv.org'
-            trigger-on:
-                # We only run this when the change is merged or
-                # abandoned since we don't need the logs anymore
-                - change-merged-event
-                - change-abandoned-event
-            # This is an OPNFV maintenance job. We don't want to provide
-            # feedback on Gerrit
-            silent: true
-            silent-start: true
-            projects:
-              - project-compare-type: 'ANT'
-                project-pattern: 'releng-xci'
-                branches:
-                  - branch-compare-type: 'ANT'
-                    branch-pattern: '**/{branch}'
-                file-paths:
-                  - compare-type: ANT
-                    pattern: 'bifrost/**'
-            readable-message: true
+      - gerrit:
+          server-name: 'gerrit.opnfv.org'
+          trigger-on:
+            # We only run this when the change is merged or
+            # abandoned since we don't need the logs anymore
+            - change-merged-event
+            - change-abandoned-event
+          # This is an OPNFV maintenance job. We don't want to provide
+          # feedback on Gerrit
+          silent: true
+          silent-start: true
+          projects:
+            - project-compare-type: 'ANT'
+              project-pattern: 'releng-xci'
+              branches:
+                - branch-compare-type: 'ANT'
+                  branch-pattern: '**/{branch}'
+              file-paths:
+                - compare-type: ANT
+                  pattern: 'bifrost/**'
+          readable-message: true
index 6715189..0bca26a 100644 (file)
@@ -1,68 +1,71 @@
+---
 - project:
     project: 'releng-xci'
 
     name: 'bifrost-periodic'
-#--------------------------------
-# Branch Anchors
-#--------------------------------
-# the versions stated here default to branches which then later
-# on used for checking out the branches, pulling in head of the branch.
+    # -------------------------------
+    # Branch Anchors
+    # -------------------------------
+    # the versions stated here default to branches which then later
+    # on used for checking out the branches, pulling in head of the branch.
     master: &master
-        stream: master
-        openstack-bifrost-version: '{stream}'
-        opnfv-releng-version: 'master'
-        gs-pathname: ''
+      stream: master
+      openstack-bifrost-version: '{stream}'
+      opnfv-releng-version: 'master'
+      gs-pathname: ''
     ocata: &ocata
-        stream: ocata
-        openstack-bifrost-version: 'stable/{stream}'
-        opnfv-releng-version: 'master'
-        gs-pathname: '/{stream}'
-#--------------------------------
-#        XCI PODs
-#--------------------------------
+      stream: ocata
+      openstack-bifrost-version: 'stable/{stream}'
+      opnfv-releng-version: 'master'
+      gs-pathname: '/{stream}'
+    # -------------------------------
+    #        XCI PODs
+    # -------------------------------
     pod:
-        - virtual:
-            <<: *master
-        - virtual:
-            <<: *ocata
-#--------------------------------
-# XCI PODs
-#--------------------------------
-#--------------------------------
-# Supported Distros
-#--------------------------------
+      - virtual:
+          <<: *master
+      - virtual:
+          <<: *ocata
+    # -------------------------------
+    # XCI PODs
+    # -------------------------------
+    # -------------------------------
+    # Supported Distros
+    # -------------------------------
     distro:
-        - 'xenial':
-            disabled: false
-            slave-label: xci-xenial-virtual
-            dib-os-release: 'xenial'
-            dib-os-element: 'ubuntu-minimal'
-            dib-os-packages: 'vlan,vim,less,bridge-utils,sudo,language-pack-en,iputils-ping,rsyslog,curl,python,debootstrap,ifenslave,ifenslave-2.6,lsof,lvm2,tcpdump,nfs-kernel-server,chrony,iptables'
-            extra-dib-elements: 'openssh-server'
-        - 'centos7':
-            disabled: true
-            slave-label: xci-centos7-virtual
-            dib-os-release: '7'
-            dib-os-element: 'centos7'
-            dib-os-packages: 'vim,less,bridge-utils,iputils,rsyslog,curl'
-            extra-dib-elements: 'openssh-server'
-        - 'suse':
-            disabled: true
-            slave-label: xci-suse-virtual
-            dib-os-release: '42.3'
-            dib-os-element: 'opensuse-minimal'
-            dib-os-packages: 'vim,less,bridge-utils,iputils,rsyslog,curl'
-            extra-dib-elements: 'openssh-server'
+      - 'xenial':
+          disabled: false
+          slave-label: xci-xenial-virtual
+          dib-os-release: 'xenial'
+          dib-os-element: 'ubuntu-minimal'
+          # yamllint disable rule:line-length
+          dib-os-packages: 'vlan,vim,less,bridge-utils,sudo,language-pack-en,iputils-ping,rsyslog,curl,python,debootstrap,ifenslave,ifenslave-2.6,lsof,lvm2,tcpdump,nfs-kernel-server,chrony,iptables'
+          # yamllint enable rule:line-length
+          extra-dib-elements: 'openssh-server'
+      - 'centos7':
+          disabled: true
+          slave-label: xci-centos7-virtual
+          dib-os-release: '7'
+          dib-os-element: 'centos7'
+          dib-os-packages: 'vim,less,bridge-utils,iputils,rsyslog,curl'
+          extra-dib-elements: 'openssh-server'
+      - 'suse':
+          disabled: true
+          slave-label: xci-suse-virtual
+          dib-os-release: '42.3'
+          dib-os-element: 'opensuse-minimal'
+          dib-os-packages: 'vim,less,bridge-utils,iputils,rsyslog,curl'
+          extra-dib-elements: 'openssh-server'
 
-#--------------------------------
-# jobs
-#--------------------------------
+    # -------------------------------
+    # jobs
+    # -------------------------------
     jobs:
-        - 'bifrost-provision-{pod}-{distro}-periodic-{stream}'
+      - 'bifrost-provision-{pod}-{distro}-periodic-{stream}'
 
-#--------------------------------
+# -------------------------------
 # job templates
-#--------------------------------
+# -------------------------------
 - job-template:
     name: 'bifrost-provision-{pod}-{distro}-periodic-{stream}'
 
     concurrent: false
 
     properties:
-        - build-blocker:
-            use-build-blocker: true
-            blocking-jobs:
-                - '^xci-os.*'
-                - '^xci-deploy.*'
-                - '^xci-functest.*'
-                - '^bifrost-.*periodic.*'
-                - '^osa-.*periodic.*'
-            block-level: 'NODE'
-        - logrotate-default
+      - build-blocker:
+          use-build-blocker: true
+          blocking-jobs:
+            - '^xci-os.*'
+            - '^xci-deploy.*'
+            - '^xci-functest.*'
+            - '^bifrost-.*periodic.*'
+            - '^osa-.*periodic.*'
+          block-level: 'NODE'
+      - logrotate-default
 
     parameters:
-        - project-parameter:
-            project: '{project}'
-            branch: '{opnfv-releng-version}'
-        - string:
-            name: GIT_BASE
-            default: https://gerrit.opnfv.org/gerrit/$PROJECT
-        - string:
-            name: XCI_FLAVOR
-            default: 'ha'
-        - string:
-            name: OPENSTACK_BIFROST_VERSION
-            default: '{openstack-bifrost-version}'
-        - string:
-            name: OPNFV_RELENG_VERSION
-            default: '{opnfv-releng-version}'
-        - string:
-            name: DISTRO
-            default: '{distro}'
-        - string:
-            name: DIB_OS_RELEASE
-            default: '{dib-os-release}'
-        - string:
-            name: DIB_OS_ELEMENT
-            default: '{dib-os-element}'
-        - string:
-            name: DIB_OS_PACKAGES
-            default: '{dib-os-packages}'
-        - string:
-            name: EXTRA_DIB_ELEMENTS
-            default: '{extra-dib-elements}'
-        - string:
-            name: CLEAN_DIB_IMAGES
-            default: 'true'
-        - label:
-            name: SLAVE_LABEL
-            default: '{slave-label}'
-        - string:
-            name: XCI_LOOP
-            default: 'periodic'
+      - project-parameter:
+          project: '{project}'
+          branch: '{opnfv-releng-version}'
+      - string:
+          name: GIT_BASE
+          default: https://gerrit.opnfv.org/gerrit/$PROJECT
+      - string:
+          name: XCI_FLAVOR
+          default: 'ha'
+      - string:
+          name: OPENSTACK_BIFROST_VERSION
+          default: '{openstack-bifrost-version}'
+      - string:
+          name: OPNFV_RELENG_VERSION
+          default: '{opnfv-releng-version}'
+      - string:
+          name: DISTRO
+          default: '{distro}'
+      - string:
+          name: DIB_OS_RELEASE
+          default: '{dib-os-release}'
+      - string:
+          name: DIB_OS_ELEMENT
+          default: '{dib-os-element}'
+      - string:
+          name: DIB_OS_PACKAGES
+          default: '{dib-os-packages}'
+      - string:
+          name: EXTRA_DIB_ELEMENTS
+          default: '{extra-dib-elements}'
+      - string:
+          name: CLEAN_DIB_IMAGES
+          default: 'true'
+      - label:
+          name: SLAVE_LABEL
+          default: '{slave-label}'
+      - string:
+          name: XCI_LOOP
+          default: 'periodic'
 
     wrappers:
-        - fix-workspace-permissions
+      - fix-workspace-permissions
 
     scm:
-        - git-scm
+      - git-scm
 
     # trigger is disabled until we know which jobs we will have
     # and adjust stuff accordingly
     triggers:
-        - timed: ''  # '@midnight'
+      - timed: ''  # '@midnight'
 
     builders:
-        - description-setter:
-            description: "Built on $NODE_NAME - Flavor: $XCI_FLAVOR"
-        - 'bifrost-provision-builder'
+      - description-setter:
+          description: "Built on $NODE_NAME - Flavor: $XCI_FLAVOR"
+      - 'bifrost-provision-builder'
 
-#---------------------------
+# --------------------------
 # builder macros
-#---------------------------
+# --------------------------
 - builder:
     name: bifrost-provision-builder
     builders:
-        - shell:
-            !include-raw: ./bifrost-provision.sh
+      - shell:
+          !include-raw: ./bifrost-provision.sh
index f910683..5f0b657 100644 (file)
@@ -1,57 +1,48 @@
+---
 - project:
     name: 'openstack-bifrost-verify'
-#--------------------------------
-# branches
-#--------------------------------
+    # -------------------------------
+    # branches
+    # -------------------------------
     stream:
-        - master:
-            branch: '{stream}'
-#--------------------------------
-# projects
-#--------------------------------
-    project:
-        - 'openstack':
-            project-repo: 'https://git.openstack.org/openstack/bifrost'
-            clone-location: '$WORKSPACE/bifrost'
-        - 'opnfv':
-            project-repo: 'https://gerrit.opnfv.org/gerrit/releng-xci'
-            clone-location: '$WORKSPACE/releng-xci'
-#--------------------------------
-# distros
-#--------------------------------
+      - master:
+          branch: '{stream}'
+    # -------------------------------
+    # distros
+    # -------------------------------
     distro:
-        - 'xenial':
-            disabled: true
-            dib-os-release: 'xenial'
-            dib-os-element: 'ubuntu-minimal'
-            dib-os-packages: 'vlan,vim,less,bridge-utils,language-pack-en,iputils-ping,rsyslog,curl'
-            extra-dib-elements: 'openssh-server'
-        - 'centos7':
-            disabled: true
-            dib-os-release: '7'
-            dib-os-element: 'centos-minimal'
-            dib-os-packages: 'vim,less,bridge-utils,iputils,rsyslog,curl'
-            extra-dib-elements: 'openssh-server'
-        - 'suse':
-            disabled: true
-            dib-os-release: '42.3'
-            dib-os-element: 'opensuse-minimal'
-            dib-os-packages: 'vim,less,bridge-utils,iputils,rsyslog,curl'
-            extra-dib-elements: 'openssh-server'
-#--------------------------------
-# type
-#--------------------------------
+      - 'xenial':
+          disabled: true
+          dib-os-release: 'xenial'
+          dib-os-element: 'ubuntu-minimal'
+          dib-os-packages: 'vlan,vim,less,bridge-utils,language-pack-en,iputils-ping,rsyslog,curl'
+          extra-dib-elements: 'openssh-server'
+      - 'centos7':
+          disabled: true
+          dib-os-release: '7'
+          dib-os-element: 'centos-minimal'
+          dib-os-packages: 'vim,less,bridge-utils,iputils,rsyslog,curl'
+          extra-dib-elements: 'openssh-server'
+      - 'suse':
+          disabled: true
+          dib-os-release: '42.3'
+          dib-os-element: 'opensuse-minimal'
+          dib-os-packages: 'vim,less,bridge-utils,iputils,rsyslog,curl'
+          extra-dib-elements: 'openssh-server'
+    # -------------------------------
+    # type
+    # -------------------------------
     type:
-        - virtual
-#--------------------------------
-# jobs
-#--------------------------------
+      - virtual
+    # -------------------------------
+    # jobs
+    # -------------------------------
     jobs:
-        - '{project}-bifrost-verify-{distro}-{type}-{stream}'
+      - 'openstack-bifrost-verify-{distro}-{type}-{stream}'
 
-#--------------------------------
+# -------------------------------
 # VM defaults
-#--------------------------------
+# -------------------------------
 - defaults:
     name: verify_vm_defaults
     test-vm-num-nodes: '3'
     vm-memory-size: '4096'
     vm-disk-cache: 'unsafe'
 
-#--------------------------------
+# -------------------------------
 # job templates
-#--------------------------------
+# -------------------------------
 - job-template:
-    name: '{project}-bifrost-verify-{distro}-{type}-{stream}'
+    name: 'openstack-bifrost-verify-{distro}-{type}-{stream}'
 
     disabled: '{obj:disabled}'
 
     concurrent: false
 
     properties:
-        - logrotate-default
-        - build-blocker:
-            use-build-blocker: true
-            blocking-jobs:
-                - '.*-bifrost-verify.*-{type}'
-            block-level: 'NODE'
+      - logrotate-default
+      - build-blocker:
+          use-build-blocker: true
+          blocking-jobs:
+            - '.*-bifrost-verify.*-{type}'
+          block-level: 'NODE'
 
     parameters:
-        - string:
-            name: PROJECT
-            default: '{project}'
-        - string:
-            name: PROJECT_REPO
-            default: '{project-repo}'
-        - string:
-            name: CLONE_LOCATION
-            default: '{clone-location}'
-        - string:
-            name: DISTRO
-            default: '{distro}'
-        - string:
-            name: DIB_OS_RELEASE
-            default: '{dib-os-release}'
-        - string:
-            name: DIB_OS_ELEMENT
-            default: '{dib-os-element}'
-        - string:
-            name: EXTRA_DIB_ELEMENTS
-            default: '{extra-dib-elements}'
-        - string:
-            name: DIB_OS_PACKAGES
-            default: '{dib-os-packages}'
-        - string:
-            name: TEST_VM_NUM_NODES
-            default: '{test-vm-num-nodes}'
-        - string:
-            name: TEST_VM_NODE_NAMES
-            default: '{test-vm-node-names}'
-        - string:
-            name: VM_DOMAIN_TYPE
-            default: '{vm-domain-type}'
-        - string:
-            name: VM_CPU
-            default: '{vm-cpu}'
-        - string:
-            name: VM_DISK
-            default: '{vm-disk}'
-        - string:
-            name: VM_MEMORY_SIZE
-            default: '{vm-memory-size}'
-        - string:
-            name: VM_DISK_CACHE
-            default: '{vm-disk-cache}'
-        - string:
-            name: CLEAN_DIB_IMAGES
-            default: 'true'
-        - label:
-            name: SLAVE_LABEL
-            default: 'infra-{type}-{distro}'
-        - string:
-            name: BIFROST_LOG_URL
-            default: 'http://artifacts.opnfv.org/cross-community-ci/openstack/bifrost/$GERRIT_NAME/$GERRIT_CHANGE_NUMBER/$GERRIT_PATCHSET_NUMBER/$JOB_NAME'
-        - string:
-            name: XCI_LOOP
-            default: 'verify'
+      - string:
+          name: PROJECT_REPO
+          default: 'https://git.openstack.org/openstack/bifrost'
+      - string:
+          name: CLONE_LOCATION
+          default: '$WORKSPACE/bifrost'
+      - string:
+          name: DISTRO
+          default: '{distro}'
+      - string:
+          name: DIB_OS_RELEASE
+          default: '{dib-os-release}'
+      - string:
+          name: DIB_OS_ELEMENT
+          default: '{dib-os-element}'
+      - string:
+          name: EXTRA_DIB_ELEMENTS
+          default: '{extra-dib-elements}'
+      - string:
+          name: DIB_OS_PACKAGES
+          default: '{dib-os-packages}'
+      - string:
+          name: TEST_VM_NUM_NODES
+          default: '{test-vm-num-nodes}'
+      - string:
+          name: TEST_VM_NODE_NAMES
+          default: '{test-vm-node-names}'
+      - string:
+          name: VM_DOMAIN_TYPE
+          default: '{vm-domain-type}'
+      - string:
+          name: VM_CPU
+          default: '{vm-cpu}'
+      - string:
+          name: VM_DISK
+          default: '{vm-disk}'
+      - string:
+          name: VM_MEMORY_SIZE
+          default: '{vm-memory-size}'
+      - string:
+          name: VM_DISK_CACHE
+          default: '{vm-disk-cache}'
+      - string:
+          name: CLEAN_DIB_IMAGES
+          default: 'true'
+      - label:
+          name: SLAVE_LABEL
+          default: 'xci-virtual'
+      - string:
+          name: XCI_LOOP
+          default: 'verify'
 
     scm:
-        - git:
-            url: '$PROJECT_REPO'
-            refspec: '$GERRIT_REFSPEC'
-            branches:
-                - 'origin/$BRANCH'
-            skip-tag: true
-            choosing-strategy: 'gerrit'
-            timeout: 10
-            wipe-workspace: true
+      - git:
+          url: '$PROJECT_REPO'
+          refspec: '$GERRIT_REFSPEC'
+          branches:
+            - 'origin/$BRANCH'
+          skip-tag: true
+          choosing-strategy: 'gerrit'
+          timeout: 10
+          wipe-workspace: true
 
     triggers:
-        - '{project}-gerrit-trigger':
-            branch: '{branch}'
+      - 'openstack-gerrit-trigger':
+          branch: '{branch}'
 
     builders:
-        - bifrost-set-name
-        - bifrost-build
+      - bifrost-set-name
+      - bifrost-build
 
     wrappers:
-        - fix-workspace-permissions
-        - build-timeout:
-            timeout: 90
+      - fix-workspace-permissions
+      - build-timeout:
+          timeout: 90
 
     publishers:
-        - email:
-            recipients: fatih.degirmenci@ericsson.com yroblamo@redhat.com mchandras@suse.de jack.morgan@intel.com julienjut@gmail.com
-        - email-jenkins-admins-on-failure
-#--------------------------------
+      # yamllint disable rule:line-length
+      - email:
+          recipients: fatih.degirmenci@ericsson.com yroblamo@redhat.com mchandras@suse.de jack.morgan@intel.com julienjut@gmail.com
+      # yamllint enable rule:line-length
+      - email-jenkins-admins-on-failure
+# -------------------------------
 # trigger macros
-#--------------------------------
+# -------------------------------
 - trigger:
     name: 'openstack-gerrit-trigger'
     triggers:
-        - gerrit:
-            server-name: 'review.openstack.org'
-            escape-quotes: true
-            trigger-on:
-                - patchset-created-event:
-                    exclude-drafts: 'false'
-                    exclude-trivial-rebase: 'false'
-                    exclude-no-code-change: 'false'
-                - comment-added-contains-event:
-                    comment-contains-value: 'recheck'
-            custom-url: '* $JOB_NAME $BIFROST_LOG_URL/index.html'
-            silent-start: true
-            projects:
-              - project-compare-type: 'PLAIN'
-                project-pattern: 'openstack/bifrost'
-                branches:
-                  - branch-compare-type: 'ANT'
-                    branch-pattern: '**/{branch}'
-                disable-strict-forbidden-file-verification: 'true'
-                forbidden-file-paths:
-                  - compare-type: ANT
-                    pattern: 'doc/**'
-                  - compare-type: ANT
-                    pattern: 'releasenotes/**'
-                disable-strict-forbidden-file-verification: 'true'
-            readable-message: true
-- trigger:
-    name: 'opnfv-gerrit-trigger'
-    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'
-            custom-url: '* $JOB_NAME $BIFROST_LOG_URL/index.html'
-            projects:
-              - project-compare-type: 'ANT'
-                project-pattern: 'releng-xci'
-                branches:
-                  - branch-compare-type: 'ANT'
-                    branch-pattern: '**/{branch}'
-                file-paths:
-                  - compare-type: ANT
-                    pattern: 'bifrost/**'
-            readable-message: true
+      - gerrit:
+          server-name: 'review.openstack.org'
+          escape-quotes: true
+          trigger-on:
+            - patchset-created-event:
+                exclude-drafts: 'false'
+                exclude-trivial-rebase: 'false'
+                exclude-no-code-change: 'false'
+            - comment-added-contains-event:
+                comment-contains-value: 'recheck'
+          silent-start: true
+          projects:
+            - project-compare-type: 'PLAIN'
+              project-pattern: 'openstack/bifrost'
+              branches:
+                - branch-compare-type: 'ANT'
+                  branch-pattern: '**/{branch}'
+              disable-strict-forbidden-file-verification: 'true'
+              forbidden-file-paths:
+                - compare-type: ANT
+                  pattern: 'doc/**'
+                - compare-type: ANT
+                  pattern: 'releasenotes/**'
+          readable-message: true
 
-#---------------------------
+# --------------------------
 # builder macros
-#---------------------------
+# --------------------------
 - builder:
     name: bifrost-set-name
     builders:
-        - description-setter:
-            description: "Built on $NODE_NAME"
+      - description-setter:
+          description: "Built on $NODE_NAME"
 
 - builder:
     name: bifrost-build
     builders:
-        - shell:
-            !include-raw: ./bifrost-verify.sh
+      - shell:
+          !include-raw: ./bifrost-verify.sh
index 03d9afc..ef07309 100755 (executable)
@@ -11,100 +11,6 @@ set -o errexit
 set -o nounset
 set -o pipefail
 
-trap cleanup_and_upload EXIT
-
-function upload_logs() {
-    BIFROST_CONSOLE_LOG="${BUILD_URL}/consoleText"
-    BIFROST_GS_URL=${BIFROST_LOG_URL/http:/gs:}
-
-    # Make sure the old landing page is gone in case
-    # we break later on. We don't want to publish
-    # stale information.
-    # TODO: Maybe cleanup the entire $BIFROST_GS_URL directory
-    # before we upload the new data.
-    gsutil -q rm ${BIFROST_GS_URL}/index.html || true
-
-    echo "Uploading collected bifrost build logs to ${BIFROST_LOG_URL}"
-
-    if [[ -d ${WORKSPACE}/logs ]]; then
-        pushd ${WORKSPACE}/logs &> /dev/null
-        for x in *.log; do
-            echo "Compressing and uploading $x"
-            gsutil -q cp -Z ${x} ${BIFROST_GS_URL}/${x}
-        done
-        popd &> /dev/null
-    fi
-
-    echo "Generating the ${BIFROST_LOG_URL}/index.html landing page"
-    cat > ${WORKSPACE}/index.html <<EOF
-<html>
-<h1>Build results for <a href=https://$GERRIT_NAME/#/c/$GERRIT_CHANGE_NUMBER/$GERRIT_PATCHSET_NUMBER>$GERRIT_NAME/$GERRIT_CHANGE_NUMBER/$GERRIT_PATCHSET_NUMBER</a></h1>
-<h2>Job: <a href=${BUILD_URL}>$JOB_NAME</a></h2>
-<ul>
-<li><a href=${BIFROST_LOG_URL}/build_log.txt>build_log.txt</a></li>
-EOF
-
-    if [[ -d ${WORKSPACE}/logs ]]; then
-        pushd ${WORKSPACE}/logs &> /dev/null
-        for x in *.log; do
-            echo "<li><a href=${BIFROST_LOG_URL}/${x}>${x}</a></li>" >> ${WORKSPACE}/index.html
-        done
-        popd &> /dev/null
-    fi
-
-    cat >> ${WORKSPACE}/index.html << EOF
-</ul>
-</html>
-EOF
-
-    # Upload landing page
-    echo "Uploading the landing page"
-    gsutil -q cp ${WORKSPACE}/index.html ${BIFROST_GS_URL}/index.html
-    rm -f ${WORKSPACE}/index.html
-
-    # Finally, download and upload the entire build log so we can retain
-    # as much build information as possible
-    echo "Uploading the final console output"
-    curl -s -L ${BIFROST_CONSOLE_LOG} > ${WORKSPACE}/build_log.txt
-    gsutil -q cp -Z ${WORKSPACE}/build_log.txt ${BIFROST_GS_URL}/build_log.txt
-    rm -f ${WORKSPACE}/build_log.txt
-}
-
-function fix_ownership() {
-    if [ -z "${JOB_URL+x}" ]; then
-        echo "Not running as part of Jenkins. Handle the logs manually."
-    else
-        # Make sure cache exists
-        [[ ! -d ${HOME}/.cache ]] && mkdir ${HOME}/.cache
-
-        sudo chown -R jenkins:jenkins $WORKSPACE
-        sudo chown -R jenkins:jenkins ${HOME}/.cache
-    fi
-}
-
-function cleanup_and_upload() {
-    original_exit=$?
-    echo "Job exit code: $original_exit"
-    # Turn off errexit
-    set +o errexit
-    fix_ownership
-    upload_logs
-    exit $original_exit
-}
-
-# check distro to see if we support it
-if [[ ! "$DISTRO" =~ (xenial|centos7|suse) ]]; then
-    echo "Distro $DISTRO is not supported!"
-    exit 1
-fi
-
-# remove previously cloned repos
-/bin/rm -rf $WORKSPACE/bifrost $WORKSPACE/releng-xci
-
-# Fix up permissions
-fix_ownership
-
-# clone all the repos first and checkout the patch afterwards
 git clone https://git.openstack.org/openstack/bifrost $WORKSPACE/bifrost
 git clone https://gerrit.opnfv.org/gerrit/releng-xci $WORKSPACE/releng-xci
 
@@ -115,10 +21,9 @@ git fetch $PROJECT_REPO $GERRIT_REFSPEC && sudo git checkout FETCH_HEAD
 # combine opnfv and upstream scripts/playbooks
 /bin/cp -rf $WORKSPACE/releng-xci/bifrost/* $WORKSPACE/bifrost/
 
-# cleanup remnants of previous deployment
-cd $WORKSPACE/bifrost
-sudo -H -E ./scripts/destroy-env.sh
-
+cd $WORKSPACE/releng-xci
+cat > bifrost_test.sh<<EOF
+cd ~/bifrost
 # provision 3 VMs; xcimaster, controller, and compute
 cd $WORKSPACE/bifrost
 ./scripts/bifrost-provision.sh
@@ -128,3 +33,11 @@ cd $WORKSPACE/bifrost
 source env-vars
 ironic node-list
 sudo -H -E virsh list
+EOF
+chmod a+x bifrost_test.sh
+
+./xci/scripts/vm/start-new-vm.sh $DISTRO
+
+rsync -a $WORKSPACE/bifrost ${DISTRO,,}_xci_vm:~/bifrost
+
+ssh ${DISTRO,,}_xci_vm "cd ~/bifrost && ./bifrost_test.sh"
index 048825e..26c1575 100644 (file)
@@ -1,43 +1,45 @@
+---
 - project:
     name: 'opnfv-osa-periodic'
 
     project: 'releng-xci'
-#--------------------------------
-# branches
-#--------------------------------
+    # -------------------------------
+    # branches
+    # -------------------------------
     stream:
-        - master:
-            branch: '{stream}'
-#--------------------------------
-# distros
-#--------------------------------
+      - master:
+          branch: '{stream}'
+    # -------------------------------
+    # distros
+    # -------------------------------
     distro:
-        - 'xenial':
-            disabled: false
-        - 'centos7':
-            disabled: true
-        - 'suse':
-            disabled: true
-#--------------------------------
-# type
-#--------------------------------
+      - 'xenial':
+          disabled: false
+      - 'centos7':
+          disabled: true
+      - 'suse':
+          disabled: true
+    # -------------------------------
+    # type
+    # -------------------------------
     type:
-        - virtual
-#--------------------------------
-# phases
-#--------------------------------
+      - virtual
+    # -------------------------------
+    # phases
+    # -------------------------------
     phase:
-        - 'deploy'
-        - 'healthcheck'
-#--------------------------------
-# jobs
-#--------------------------------
+      - 'deploy'
+      - 'healthcheck'
+    # -------------------------------
+    # jobs
+    # -------------------------------
     jobs:
-        - 'osa-periodic-{distro}-{type}-{stream}'
-        - 'osa-periodic-{phase}-{type}-{stream}'
-#--------------------------------
+      - 'osa-periodic-{distro}-{type}-{stream}'
+      - 'osa-periodic-{phase}-{type}-{stream}'
+
+# -------------------------------
 # job templates
-#--------------------------------
+# -------------------------------
 - job-template:
     name: 'osa-periodic-{distro}-{type}-{stream}'
 
     concurrent: false
 
     properties:
-        - logrotate-default
-        - build-blocker:
-            use-build-blocker: true
-            blocking-jobs:
-                - 'xci-verify-.*'
-                - 'bifrost-verify-.*'
-                - 'bifrost-periodic-.*'
-                - 'osa-verify-.*'
-                - 'osa-periodic-.*'
-            block-level: 'NODE'
+      - logrotate-default
+      - build-blocker:
+          use-build-blocker: true
+          blocking-jobs:
+            - 'xci-verify-.*'
+            - 'bifrost-verify-.*'
+            - 'bifrost-periodic-.*'
+            - 'osa-verify-.*'
+            - 'osa-periodic-.*'
+          block-level: 'NODE'
 
     wrappers:
-        - ssh-agent-wrapper
-        - build-timeout:
-            timeout: 240
-        - fix-workspace-permissions
+      - ssh-agent-wrapper
+      - build-timeout:
+          timeout: 240
+      - fix-workspace-permissions
 
     scm:
-        - git-scm-osa
+      - git-scm-osa
 
     triggers:
-        - pollscm:
-            cron: "@midnight"
-            ignore-post-commit-hooks: True
+      - pollscm:
+          cron: "@midnight"
+          ignore-post-commit-hooks: true
 
     parameters:
-        - project-parameter:
-            project: '{project}'
-            branch: '{branch}'
-        - label:
-            name: SLAVE_LABEL
-            default: 'xci-virtual-{distro}'
+      - project-parameter:
+          project: '{project}'
+          branch: '{branch}'
+      - label:
+          name: SLAVE_LABEL
+          default: 'xci-virtual-{distro}'
 
     builders:
-        - description-setter:
-            description: "Built on $NODE_NAME"
-        - multijob:
-            name: deploy
-            condition: SUCCESSFUL
-            projects:
-                - name: 'osa-periodic-deploy-{type}-{stream}'
-                  current-parameters: true
-                  predefined-parameters: |
-                    DISTRO={distro}
-                    DEPLOY_SCENARIO=os-nosdn-nofeature-noha
-                  git-revision: true
-                  node-parameters: true
-                  kill-phase-on: FAILURE
-                  abort-all-job: true
-        - multijob:
-            name: healthcheck
-            condition: SUCCESSFUL
-            projects:
-                - name: 'osa-periodic-healthcheck-{type}-{stream}'
-                  current-parameters: true
-                  predefined-parameters: |
-                    DISTRO={distro}
-                    DEPLOY_SCENARIO=os-nosdn-nofeature-noha
-                    FUNCTEST_MODE=tier
-                    FUNCTEST_TIER=healthcheck
-                  node-parameters: true
-                  kill-phase-on: NEVER
-                  abort-all-job: false
+      - description-setter:
+          description: "Built on $NODE_NAME"
+      - multijob:
+          name: deploy
+          condition: SUCCESSFUL
+          projects:
+            - name: 'osa-periodic-deploy-{type}-{stream}'
+              current-parameters: true
+              predefined-parameters: |
+                DISTRO={distro}
+                DEPLOY_SCENARIO=os-nosdn-nofeature-noha
+              git-revision: true
+              node-parameters: true
+              kill-phase-on: FAILURE
+              abort-all-job: true
+      - multijob:
+          name: healthcheck
+          condition: SUCCESSFUL
+          projects:
+            - name: 'osa-periodic-healthcheck-{type}-{stream}'
+              current-parameters: true
+              predefined-parameters: |
+                DISTRO={distro}
+                DEPLOY_SCENARIO=os-nosdn-nofeature-noha
+                FUNCTEST_MODE=tier
+                FUNCTEST_TIER=healthcheck
+              node-parameters: true
+              kill-phase-on: NEVER
+              abort-all-job: false
 
 - job-template:
     name: 'osa-periodic-{phase}-{type}-{stream}'
     concurrent: true
 
     properties:
-        - logrotate-default
-        - build-blocker:
-            use-build-blocker: true
-            blocking-jobs:
-                - 'xci-verify-deploy-.*'
-                - 'xci-verify-healthcheck-.*'
-                - 'bifrost-verify-.*'
-                - 'bifrost-periodic-.*'
-                - 'osa-verify-deploy-.*'
-                - 'osa-verify-halthcheck-.*'
-                - 'osa-periodic-deploy-.*'
-                - 'osa-periodic-healthcheck-.*'
-            block-level: 'NODE'
+      - logrotate-default
+      - build-blocker:
+          use-build-blocker: true
+          blocking-jobs:
+            - 'xci-verify-deploy-.*'
+            - 'xci-verify-healthcheck-.*'
+            - 'bifrost-verify-.*'
+            - 'bifrost-periodic-.*'
+            - 'osa-verify-deploy-.*'
+            - 'osa-verify-halthcheck-.*'
+            - 'osa-periodic-deploy-.*'
+            - 'osa-periodic-healthcheck-.*'
+          block-level: 'NODE'
 
     parameters:
-        - project-parameter:
-            project: '{project}'
-            branch: '{branch}'
-        - label:
-            name: SLAVE_LABEL
-            default: 'xci-virtual-{distro}'
-        - string:
-            name: OPENSTACK_OSA_VERSION
-            default: 'master'
-        - string:
-            name: DISTRO
-            default: 'xenial'
-        - string:
-            name: DEPLOY_SCENARIO
-            default: 'os-nosdn-nofeature-noha'
-        - string:
-            name: XCI_FLAVOR
-            default: 'mini'
-        - string:
-            name: XCI_LOOP
-            default: 'periodic'
-        - string:
-            name: OPNFV_RELENG_DEV_PATH
-            default: $WORKSPACE/releng-xci
-        - string:
-            name: FUNCTEST_MODE
-            default: 'tier'
-        - string:
-            name: FUNCTEST_SUITE_NAME
-            default: 'healthcheck'
-        - string:
-            name: FORCE_MASTER
-            default: 'true'
-        - string:
-            name: GIT_BASE
-            default: https://gerrit.opnfv.org/gerrit/$PROJECT
+      - project-parameter:
+          project: '{project}'
+          branch: '{branch}'
+      - label:
+          name: SLAVE_LABEL
+          default: 'xci-virtual-{distro}'
+      - string:
+          name: OPENSTACK_OSA_VERSION
+          default: 'master'
+      - string:
+          name: DISTRO
+          default: 'xenial'
+      - string:
+          name: DEPLOY_SCENARIO
+          default: 'os-nosdn-nofeature-noha'
+      - string:
+          name: XCI_FLAVOR
+          default: 'mini'
+      - string:
+          name: XCI_LOOP
+          default: 'periodic'
+      - string:
+          name: OPNFV_RELENG_DEV_PATH
+          default: $WORKSPACE/releng-xci
+      - string:
+          name: FUNCTEST_MODE
+          default: 'tier'
+      - string:
+          name: FUNCTEST_SUITE_NAME
+          default: 'healthcheck'
+      - string:
+          name: FORCE_MASTER
+          default: 'true'
+      - string:
+          name: GIT_BASE
+          default: https://gerrit.opnfv.org/gerrit/$PROJECT
 
     scm:
-        - git-scm-osa
+      - git-scm-osa
 
     wrappers:
-        - ssh-agent-wrapper
-        - build-timeout:
-            timeout: 240
-        - fix-workspace-permissions
+      - ssh-agent-wrapper
+      - build-timeout:
+          timeout: 240
+      - fix-workspace-permissions
 
     builders:
-        - description-setter:
-            description: "Built on $NODE_NAME"
-        - 'osa-periodic-{phase}-macro'
+      - description-setter:
+          description: "Built on $NODE_NAME"
+      - 'osa-periodic-{phase}-macro'
 
-#--------------------------------
+# -------------------------------
 # builder macros
-#--------------------------------
+# -------------------------------
 - builder:
     name: 'osa-periodic-deploy-macro'
     builders:
-        - shell: |
-            #!/bin/bash
-
-            # here we will
-            # - clone releng-xci repo as the jobs are running against openstack gerrit
-            #   and we need to clone releng-xci ourselves to $OPNFV_RELENG_DEV_PATH
-            # - run sources-branch-updater.sh from osa to update/pin the role versions
-            #   at the time this job gets triggered against osa master in case if the
-            #   deployment succeeds and we decide to bump version used by xci
-            # - copy generated role versions into $OPNFV_RELENG_DEV_PATH/xci/file
-            # - start the deployment by executing xci-deploy.sh as usual
-            #
-            # we might also need to pin versions of openstack services as well.
-
-            echo "Hello World!"
+      - shell: |
+          #!/bin/bash
+
+          # here we will
+          # - clone releng-xci repo as the jobs are running against openstack gerrit
+          #   and we need to clone releng-xci ourselves to $OPNFV_RELENG_DEV_PATH
+          # - run sources-branch-updater.sh from osa to update/pin the role versions
+          #   at the time this job gets triggered against osa master in case if the
+          #   deployment succeeds and we decide to bump version used by xci
+          # - copy generated role versions into $OPNFV_RELENG_DEV_PATH/xci/file
+          # - start the deployment by executing xci-deploy.sh as usual
+          #
+          # we might also need to pin versions of openstack services as well.
+
+          echo "Hello World!"
 
 - builder:
     name: 'osa-periodic-healthcheck-macro'
     builders:
-        - shell: |
-            #!/bin/bash
+      - shell: |
+          #!/bin/bash
 
-            echo "Hello World!"
-#--------------------------------
+          echo "Hello World!"
+# -------------------------------
 # scm macro
-#--------------------------------
+# -------------------------------
 - scm:
     name: git-scm-osa
     scm:
-        - git:
-            url: https://review.openstack.org/p/openstack/openstack-ansible.git
-            branches:
-                - master
-            timeout: 15
+      - git:
+          url: https://review.openstack.org/p/openstack/openstack-ansible.git
+          branches:
+            - master
+          timeout: 15
index 7d95429..a953749 100644 (file)
@@ -1,85 +1,88 @@
-#--------------------------------
+---
+# -------------------------------
 # These jobs run on a daily basis and deploy OpenStack
 # using the pinned versions of opnfv/releng, openstack/bifrost
 # and openstack/openstack-ansible. Due to this, there is no
 # version/branch is set/passed to jobs and instead the versions
 # are checked out based on what is configured.
-#--------------------------------
+# -------------------------------
 - project:
     project: 'releng-xci'
 
     name: 'xci-daily'
-#--------------------------------
-# Branch Anchors
-#--------------------------------
+    # -------------------------------
+    # Branch Anchors
+    # -------------------------------
     master: &master
-        stream: master
-        opnfv-releng-version: master
-        gs-pathname: ''
-#--------------------------------
-# Scenarios
-#--------------------------------
+      stream: master
+      opnfv-releng-version: master
+      gs-pathname: ''
+    # -------------------------------
+    # Scenarios
+    # -------------------------------
     scenario:
-        - 'os-nosdn-nofeature-ha':
-            auto-trigger-name: 'daily-trigger-disabled'
-            xci-flavor: 'ha'
-        - 'os-nosdn-nofeature-noha':
-            auto-trigger-name: 'daily-trigger-disabled'
-            xci-flavor: 'noha'
-        - 'os-odl-sfc-ha':
-            auto-trigger-name: 'daily-trigger-disabled'
-            xci-flavor: 'ha'
-        - 'os-odl-sfc-noha':
-            auto-trigger-name: 'daily-trigger-disabled'
-            xci-flavor: 'noha'
-#--------------------------------
-# XCI PODs
-#--------------------------------
+      - 'os-nosdn-nofeature-ha':
+          auto-trigger-name: 'daily-trigger-disabled'
+          xci-flavor: 'ha'
+      - 'os-nosdn-nofeature-noha':
+          auto-trigger-name: 'daily-trigger-disabled'
+          xci-flavor: 'noha'
+      - 'os-odl-sfc-ha':
+          auto-trigger-name: 'daily-trigger-disabled'
+          xci-flavor: 'ha'
+      - 'os-odl-sfc-noha':
+          auto-trigger-name: 'daily-trigger-disabled'
+          xci-flavor: 'noha'
+    # -------------------------------
+    # XCI PODs
+    # -------------------------------
     pod:
-        - virtual:
-            <<: *master
-#--------------------------------
-# Supported Distros
-#--------------------------------
+      - virtual:
+          <<: *master
+    # -------------------------------
+    # Supported Distros
+    # -------------------------------
     distro:
-        - 'xenial':
-            disabled: false
-            slave-label: xci-xenial-virtual
-            dib-os-release: 'xenial'
-            dib-os-element: 'ubuntu-minimal'
-            dib-os-packages: 'vlan,vim,less,bridge-utils,sudo,language-pack-en,iputils-ping,rsyslog,curl,python,debootstrap,ifenslave,ifenslave-2.6,lsof,lvm2,tcpdump,nfs-kernel-server,chrony,iptabls'
-            extra-dib-elements: 'openssh-server'
-        - 'centos7':
-            disabled: true
-            slave-label: xci-centos7-virtual
-            dib-os-release: '7'
-            dib-os-element: 'centos7'
-            dib-os-packages: 'vim,less,bridge-utils,iputils,rsyslog,curl'
-            extra-dib-elements: 'openssh-server'
-        - 'suse':
-            disabled: true
-            slave-label: xci-suse-virtual
-            dib-os-release: '42.3'
-            dib-os-element: 'opensuse-minimal'
-            dib-os-packages: 'vim,less,bridge-utils,iputils,rsyslog,curl'
-            extra-dib-elements: 'openssh-server'
-
-#--------------------------------
-#        Phases
-#--------------------------------
+      - 'xenial':
+          disabled: false
+          slave-label: xci-xenial-virtual
+          dib-os-release: 'xenial'
+          dib-os-element: 'ubuntu-minimal'
+          # yamllint disable rule:line-length
+          dib-os-packages: 'vlan,vim,less,bridge-utils,sudo,language-pack-en,iputils-ping,rsyslog,curl,python,debootstrap,ifenslave,ifenslave-2.6,lsof,lvm2,tcpdump,nfs-kernel-server,chrony,iptabls'
+          # yamllint enable rule:line-length
+          extra-dib-elements: 'openssh-server'
+      - 'centos7':
+          disabled: true
+          slave-label: xci-centos7-virtual
+          dib-os-release: '7'
+          dib-os-element: 'centos7'
+          dib-os-packages: 'vim,less,bridge-utils,iputils,rsyslog,curl'
+          extra-dib-elements: 'openssh-server'
+      - 'suse':
+          disabled: true
+          slave-label: xci-suse-virtual
+          dib-os-release: '42.3'
+          dib-os-element: 'opensuse-minimal'
+          dib-os-packages: 'vim,less,bridge-utils,iputils,rsyslog,curl'
+          extra-dib-elements: 'openssh-server'
+
+    # -------------------------------
+    #        Phases
+    # -------------------------------
     phase:
-        - 'deploy'
-        - 'functest'
-#--------------------------------
-# jobs
-#--------------------------------
+      - 'deploy'
+      - 'functest'
+    # -------------------------------
+    # jobs
+    # -------------------------------
     jobs:
-        - 'xci-{scenario}-{pod}-{distro}-daily-{stream}'
-        - 'xci-{phase}-{pod}-{distro}-daily-{stream}'
+      - 'xci-{scenario}-{pod}-{distro}-daily-{stream}'
+      - 'xci-{phase}-{pod}-{distro}-daily-{stream}'
 
-#--------------------------------
+# -------------------------------
 # job templates
-#--------------------------------
+# -------------------------------
 - job-template:
     name: 'xci-{scenario}-{pod}-{distro}-daily-{stream}'
 
     concurrent: false
 
     properties:
-        - build-blocker:
-            use-build-blocker: true
-            blocking-jobs:
-                - '^xci-os.*'
-                - '^xci-deploy.*'
-                - '^xci-functest.*'
-                - '^bifrost-.*periodic.*'
-                - '^osa-.*periodic.*'
-            block-level: 'NODE'
-        - logrotate-default
+      - build-blocker:
+          use-build-blocker: true
+          blocking-jobs:
+            - '^xci-os.*'
+            - '^xci-deploy.*'
+            - '^xci-functest.*'
+            - '^bifrost-.*periodic.*'
+            - '^osa-.*periodic.*'
+          block-level: 'NODE'
+      - logrotate-default
 
     parameters:
-        - string:
-            name: DEPLOY_SCENARIO
-            default: '{scenario}'
-        - string:
-            name: XCI_FLAVOR
-            default: '{xci-flavor}'
-        - label:
-            name: SLAVE_LABEL
-            default: '{slave-label}'
-        - string:
-            name: XCI_LOOP
-            default: 'daily'
+      - string:
+          name: DEPLOY_SCENARIO
+          default: '{scenario}'
+      - string:
+          name: XCI_FLAVOR
+          default: '{xci-flavor}'
+      - label:
+          name: SLAVE_LABEL
+          default: '{slave-label}'
+      - string:
+          name: XCI_LOOP
+          default: 'daily'
 
     triggers:
-        - '{auto-trigger-name}'
+      - '{auto-trigger-name}'
 
     wrappers:
-        - fix-workspace-permissions
+      - fix-workspace-permissions
 
     builders:
-        - description-setter:
-            description: "Built on $NODE_NAME"
-        - trigger-builds:
-            - project: 'xci-deploy-{pod}-{distro}-daily-{stream}'
-              current-parameters: false
-              predefined-parameters: |
-                DEPLOY_SCENARIO=$DEPLOY_SCENARIO
-                XCI_FLAVOR=$XCI_FLAVOR
-                XCI_LOOP=$XCI_LOOP
-              same-node: true
-              block: true
-        - trigger-builds:
-            - project: 'xci-functest-{pod}-{distro}-daily-{stream}'
-              current-parameters: false
-              predefined-parameters: |
-                DEPLOY_SCENARIO=$DEPLOY_SCENARIO
-                XCI_FLAVOR=$XCI_FLAVOR
-                XCI_LOOP=$XCI_LOOP
-              same-node: true
-              block: true
-              block-thresholds:
-                build-step-failure-threshold: 'never'
-                failure-threshold: 'never'
-                unstable-threshold: 'FAILURE'
+      - description-setter:
+          description: "Built on $NODE_NAME"
+      - trigger-builds:
+          - project: 'xci-deploy-{pod}-{distro}-daily-{stream}'
+            current-parameters: false
+            predefined-parameters: |
+              DEPLOY_SCENARIO=$DEPLOY_SCENARIO
+              XCI_FLAVOR=$XCI_FLAVOR
+              XCI_LOOP=$XCI_LOOP
+            same-node: true
+            block: true
+      - trigger-builds:
+          - project: 'xci-functest-{pod}-{distro}-daily-{stream}'
+            current-parameters: false
+            predefined-parameters: |
+              DEPLOY_SCENARIO=$DEPLOY_SCENARIO
+              XCI_FLAVOR=$XCI_FLAVOR
+              XCI_LOOP=$XCI_LOOP
+            same-node: true
+            block: true
+            block-thresholds:
+              build-step-failure-threshold: 'never'
+              failure-threshold: 'never'
+              unstable-threshold: 'FAILURE'
 
     publishers:
-        - email:
-            recipients: fatih.degirmenci@ericsson.com yroblamo@redhat.com mchandras@suse.de jack.morgan@intel.com julienjut@gmail.com
-        - email-jenkins-admins-on-failure
+      # yamllint disable rule:line-length
+      - email:
+          recipients: fatih.degirmenci@ericsson.com yroblamo@redhat.com mchandras@suse.de jack.morgan@intel.com julienjut@gmail.com
+      # yamllint enable rule:line-length
+      - email-jenkins-admins-on-failure
 
 - job-template:
     name: 'xci-{phase}-{pod}-{distro}-daily-{stream}'
     concurrent: false
 
     properties:
-        - build-blocker:
-            use-build-blocker: true
-            blocking-jobs:
-                - '^xci-deploy.*'
-                - '^xci-functest.*'
-                - '^bifrost-.*periodic.*'
-                - '^osa-.*periodic.*'
-            block-level: 'NODE'
-        - logrotate-default
+      - build-blocker:
+          use-build-blocker: true
+          blocking-jobs:
+            - '^xci-deploy.*'
+            - '^xci-functest.*'
+            - '^bifrost-.*periodic.*'
+            - '^osa-.*periodic.*'
+          block-level: 'NODE'
+      - logrotate-default
 
     wrappers:
-        - fix-workspace-permissions
+      - fix-workspace-permissions
 
     scm:
-        - git-scm
+      - git-scm
 
     parameters:
-        - project-parameter:
-            project: '{project}'
-            branch: '{opnfv-releng-version}'
-        - string:
-            name: GIT_BASE
-            default: https://gerrit.opnfv.org/gerrit/$PROJECT
-        - string:
-            name: DEPLOY_SCENARIO
-            default: 'os-nosdn-nofeature-ha'
-        - string:
-            name: XCI_FLAVOR
-            default: 'ha'
-        - string:
-            name: DISTRO
-            default: '{distro}'
-        - string:
-            name: DIB_OS_RELEASE
-            default: '{dib-os-release}'
-        - string:
-            name: DIB_OS_ELEMENT
-            default: '{dib-os-element}'
-        - string:
-            name: DIB_OS_PACKAGES
-            default: '{dib-os-packages}'
-        - string:
-            name: EXTRA_DIB_ELEMENTS
-            default: '{extra-dib-elements}'
-        - string:
-            name: CLEAN_DIB_IMAGES
-            default: 'true'
-        - label:
-            name: SLAVE_LABEL
-            default: '{slave-label}'
-        - string:
-            name: XCI_LOOP
-            default: 'daily'
-        - string:
-            name: INSTALLER_TYPE
-            default: 'osa'
-        - string:
-            name: FUNCTEST_MODE
-            default: 'daily'
-        - string:
-            name: FUNCTEST_SUITE_NAME
-            default: 'daily'
-            description: "Daily suite name to run"
+      - project-parameter:
+          project: '{project}'
+          branch: '{opnfv-releng-version}'
+      - string:
+          name: GIT_BASE
+          default: https://gerrit.opnfv.org/gerrit/$PROJECT
+      - string:
+          name: DEPLOY_SCENARIO
+          default: 'os-nosdn-nofeature-ha'
+      - string:
+          name: XCI_FLAVOR
+          default: 'ha'
+      - string:
+          name: DISTRO
+          default: '{distro}'
+      - string:
+          name: DIB_OS_RELEASE
+          default: '{dib-os-release}'
+      - string:
+          name: DIB_OS_ELEMENT
+          default: '{dib-os-element}'
+      - string:
+          name: DIB_OS_PACKAGES
+          default: '{dib-os-packages}'
+      - string:
+          name: EXTRA_DIB_ELEMENTS
+          default: '{extra-dib-elements}'
+      - string:
+          name: CLEAN_DIB_IMAGES
+          default: 'true'
+      - label:
+          name: SLAVE_LABEL
+          default: '{slave-label}'
+      - string:
+          name: XCI_LOOP
+          default: 'daily'
+      - string:
+          name: INSTALLER_TYPE
+          default: 'osa'
+      - string:
+          name: FUNCTEST_MODE
+          default: 'daily'
+      - string:
+          name: FUNCTEST_SUITE_NAME
+          default: 'daily'
+          description: "Daily suite name to run"
+
     builders:
-        - description-setter:
-            description: "Built on $NODE_NAME - Scenario: $DEPLOY_SCENARIO"
-        - 'xci-{phase}-builder'
+      - description-setter:
+          description: "Built on $NODE_NAME - Scenario: $DEPLOY_SCENARIO"
+      - 'xci-{phase}-builder'
 
-#---------------------------
+# --------------------------
 # builder macros
-#---------------------------
+# --------------------------
 - builder:
     name: xci-deploy-builder
     builders:
-        - shell:
-            !include-raw: ./xci-deploy.sh
+      - shell:
+          !include-raw: ./xci-deploy.sh
 
 - builder:
     name: xci-functest-builder
     builders:
-        - shell: |
-            #!/bin/bash
+      - shell: |
+          #!/bin/bash
 
-            echo "Hello World!"
+          echo "Hello World!"
 
 # this will be enabled once the xci is prepared
-#- builder:
+# - builder:
 #    name: xci-functest-builder
 #    builders:
 #        - shell:
index 17519ac..93ca187 100644 (file)
@@ -1,55 +1,56 @@
+---
 - project:
     name: 'opnfv-xci-verify'
 
     project: releng-xci
-#--------------------------------
-# branches
-#--------------------------------
+    # -------------------------------
+    # branches
+    # -------------------------------
     stream:
-        - master:
-            branch: '{stream}'
-#--------------------------------
-# distros
-#--------------------------------
+      - master:
+          branch: '{stream}'
+    # -------------------------------
+    # distros
+    # -------------------------------
     distro:
-        - ubuntu:
-            disabled: false
-            successful: false
-            failed: false
-            unstable: false
-            notbuilt: false
-        - centos:
-            disabled: false
-            successful: true
-            failed: true
-            unstable: true
-            notbuilt: true
-        - opensuse:
-            disabled: false
-            successful: false
-            failed: false
-            unstable: false
-            notbuilt: false
-#--------------------------------
-# type
-#--------------------------------
+      - ubuntu:
+          disabled: false
+          successful: false
+          failed: false
+          unstable: false
+          notbuilt: false
+      - centos:
+          disabled: false
+          successful: true
+          failed: true
+          unstable: true
+          notbuilt: true
+      - opensuse:
+          disabled: false
+          successful: false
+          failed: false
+          unstable: false
+          notbuilt: false
+    # -------------------------------
+    # type
+    # -------------------------------
     type:
-        - virtual
-#--------------------------------
-# patch verification phases
-#--------------------------------
+      - virtual
+    # -------------------------------
+    # patch verification phases
+    # -------------------------------
     phase:
-        - 'deploy'
-        - 'healthcheck'
-#--------------------------------
-# jobs
-#--------------------------------
+      - 'deploy'
+      - 'healthcheck'
+    # -------------------------------
+    # jobs
+    # -------------------------------
     jobs:
-        - 'xci-verify-{distro}-{type}-{stream}'
-        - 'xci-verify-{distro}-{phase}-{type}-{stream}'
-#--------------------------------
+      - 'xci-verify-{distro}-{type}-{stream}'
+      - 'xci-verify-{distro}-{phase}-{type}-{stream}'
+# -------------------------------
 # job templates
-#--------------------------------
+# -------------------------------
 - job-template:
     name: 'xci-verify-{distro}-{type}-{stream}'
 
     concurrent: true
 
     properties:
-        - logrotate-default
-        - build-blocker:
-            use-build-blocker: true
-            blocking-jobs:
-                - 'xci-verify-{distro}-.*'
-                - 'bifrost-verify-{distro}-.*'
-                - 'bifrost-periodic-{distro}-.*'
-                - 'osa-verify-{distro}-.*'
-                - 'osa-periodic-{distro}-.*'
-            block-level: 'NODE'
-        - throttle:
-            max-per-node: 2
-            max-total: 10
-            categories:
-                - xci-verify-virtual
-            option: category
+      - logrotate-default
+      - build-blocker:
+          use-build-blocker: true
+          blocking-jobs:
+            - 'xci-verify-{distro}-.*'
+            - 'bifrost-verify-{distro}-.*'
+            - 'bifrost-periodic-{distro}-.*'
+            - 'osa-verify-{distro}-.*'
+            - 'osa-periodic-{distro}-.*'
+          block-level: 'NODE'
+      - throttle:
+          max-per-node: 2
+          max-total: 10
+          categories:
+            - xci-verify-virtual
+          option: category
 
     wrappers:
-        - ssh-agent-wrapper
-        - build-timeout:
-            timeout: 240
-        - fix-workspace-permissions
+      - ssh-agent-wrapper
+      - build-timeout:
+          timeout: 240
+      - fix-workspace-permissions
 
     scm:
-        - git-scm-gerrit
+      - git-scm-gerrit
 
     triggers:
-        - gerrit:
-            server-name: 'gerrit.opnfv.org'
-            trigger-on:
-                - patchset-created-event:
-                    exclude-drafts: 'false'
-                    exclude-trivial-rebase: 'false'
-                    exclude-no-code-change: 'true'
-                - 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}'
-                disable-strict-forbidden-file-verification: 'true'
-                file-paths:
-                  - compare-type: ANT
-                    pattern: 'bifrost/**'
-                  - compare-type: ANT
-                    pattern: 'xci/**'
-                forbidden-file-paths:
-                  - compare-type: ANT
-                    pattern: 'prototypes/**'
-                  - compare-type: ANT
-                    pattern: 'upstream/**'
-                  - compare-type: ANT
-                    pattern: '**/README.rst'
-                  - compare-type: ANT
-                    pattern: 'docs/**'
-            readable-message: true
-            skip-vote:
-                successful: '{obj:successful}'
-                failed: '{obj:failed}'
-                unstable: '{obj:unstable}'
-                notbuilt: '{obj:notbuilt}'
+      - gerrit:
+          server-name: 'gerrit.opnfv.org'
+          trigger-on:
+            - patchset-created-event:
+                exclude-drafts: 'false'
+                exclude-trivial-rebase: 'false'
+                exclude-no-code-change: 'true'
+            - 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}'
+              disable-strict-forbidden-file-verification: 'true'
+              file-paths:
+                - compare-type: ANT
+                  pattern: 'bifrost/**'
+                - compare-type: ANT
+                  pattern: 'xci/**'
+              forbidden-file-paths:
+                - compare-type: ANT
+                  pattern: 'prototypes/**'
+                - compare-type: ANT
+                  pattern: 'upstream/**'
+                - compare-type: ANT
+                  pattern: '**/README.rst'
+                - compare-type: ANT
+                  pattern: 'docs/**'
+          readable-message: true
+          skip-vote:
+            successful: '{obj:successful}'
+            failed: '{obj:failed}'
+            unstable: '{obj:unstable}'
+            notbuilt: '{obj:notbuilt}'
 
     parameters:
-        - project-parameter:
-            project: '{project}'
-            branch: '{branch}'
-        - label:
-            name: SLAVE_LABEL
-            default: 'xci-virtual'
-        - string:
-            name: CLEAN_DIB_IMAGES
-            default: 'true'
-        - string:
-            name: GIT_BASE
-            default: https://gerrit.opnfv.org/gerrit/$PROJECT
-            description: 'Git URL to use on this Jenkins Slave'
+      - project-parameter:
+          project: '{project}'
+          branch: '{branch}'
+      - label:
+          name: SLAVE_LABEL
+          default: 'xci-virtual'
+      - string:
+          name: CLEAN_DIB_IMAGES
+          default: 'true'
+      - string:
+          name: GIT_BASE
+          default: https://gerrit.opnfv.org/gerrit/$PROJECT
+          description: 'Git URL to use on this Jenkins Slave'
 
     builders:
-        - description-setter:
-            description: "Built on $NODE_NAME"
-        - multijob:
-            name: deploy
-            condition: SUCCESSFUL
-            projects:
-                - name: 'xci-verify-{distro}-deploy-{type}-{stream}'
-                  current-parameters: true
-                  predefined-parameters: |
-                    DISTRO={distro}
-                    DEPLOY_SCENARIO=os-nosdn-nofeature-noha
-                    CLEAN_DIB_IMAGES=$CLEAN_DIB_IMAGES
-                    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
-        - multijob:
-            name: healthcheck
-            condition: SUCCESSFUL
-            projects:
-                - name: 'xci-verify-{distro}-healthcheck-{type}-{stream}'
-                  current-parameters: true
-                  predefined-parameters: |
-                    DISTRO={distro}
-                    DEPLOY_SCENARIO=os-nosdn-nofeature-noha
-                    CLEAN_DIB_IMAGES=$CLEAN_DIB_IMAGES
-                    FUNCTEST_MODE=tier
-                    FUNCTEST_TIER=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: true
-                  kill-phase-on: NEVER
-                  abort-all-job: true
+      - description-setter:
+          description: "Built on $NODE_NAME"
+      - multijob:
+          name: deploy
+          condition: SUCCESSFUL
+          projects:
+            - name: 'xci-verify-{distro}-deploy-{type}-{stream}'
+              current-parameters: true
+              predefined-parameters: |
+                DISTRO={distro}
+                DEPLOY_SCENARIO=os-nosdn-nofeature-noha
+                CLEAN_DIB_IMAGES=$CLEAN_DIB_IMAGES
+                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
+      - multijob:
+          name: healthcheck
+          condition: SUCCESSFUL
+          projects:
+            - name: 'xci-verify-{distro}-healthcheck-{type}-{stream}'
+              current-parameters: true
+              predefined-parameters: |
+                DISTRO={distro}
+                DEPLOY_SCENARIO=os-nosdn-nofeature-noha
+                CLEAN_DIB_IMAGES=$CLEAN_DIB_IMAGES
+                FUNCTEST_MODE=tier
+                FUNCTEST_TIER=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: true
+              kill-phase-on: NEVER
+              abort-all-job: true
 
 - job-template:
     name: 'xci-verify-{distro}-{phase}-{type}-{stream}'
     concurrent: true
 
     properties:
-        - logrotate-default
-        - build-blocker:
-            use-build-blocker: true
-            blocking-jobs:
-                - 'bifrost-verify-.*'
-                - 'bifrost-periodic-.*'
-                - 'osa-verify-.*'
-                - 'osa-periodic-.*'
-            block-level: 'NODE'
+      - logrotate-default
+      - build-blocker:
+          use-build-blocker: true
+          blocking-jobs:
+            - 'bifrost-verify-.*'
+            - 'bifrost-periodic-.*'
+            - 'osa-verify-.*'
+            - 'osa-periodic-.*'
+          block-level: 'NODE'
 
     parameters:
-        - string:
-            name: PROJECT
-            default: 'releng-xci'
-        - string:
-            name: DISTRO
-            default: 'ubuntu'
-        - string:
-            name: DEPLOY_SCENARIO
-            default: 'os-nosdn-nofeature-noha'
-        - string:
-            name: FUNCTEST_MODE
-            default: 'tier'
-        - string:
-            name: FUNCTEST_SUITE_NAME
-            default: 'healthcheck'
-        - string:
-            name: XCI_FLAVOR
-            default: 'mini'
-        - string:
-            name: CLEAN_DIB_IMAGES
-            default: 'true'
-        - string:
-            name: OPNFV_RELENG_DEV_PATH
-            default: $WORKSPACE/
-        - string:
-            name: INSTALLER_TYPE
-            default: 'osa'
-        - string:
-            name: GIT_BASE
-            default: https://gerrit.opnfv.org/gerrit/$PROJECT
-            description: 'Git URL to use on this Jenkins Slave'
+      - string:
+          name: PROJECT
+          default: 'releng-xci'
+      - string:
+          name: DISTRO
+          default: 'ubuntu'
+      - string:
+          name: DEPLOY_SCENARIO
+          default: 'os-nosdn-nofeature-noha'
+      - string:
+          name: FUNCTEST_MODE
+          default: 'tier'
+      - string:
+          name: FUNCTEST_SUITE_NAME
+          default: 'healthcheck'
+      - string:
+          name: XCI_FLAVOR
+          default: 'mini'
+      - string:
+          name: CLEAN_DIB_IMAGES
+          default: 'true'
+      - string:
+          name: OPNFV_RELENG_DEV_PATH
+          default: $WORKSPACE/
+      - string:
+          name: INSTALLER_TYPE
+          default: 'osa'
+      - string:
+          name: GIT_BASE
+          default: https://gerrit.opnfv.org/gerrit/$PROJECT
+          description: 'Git URL to use on this Jenkins Slave'
 
     wrappers:
-        - ssh-agent-wrapper
-        - build-timeout:
-            timeout: 240
-        - fix-workspace-permissions
+      - ssh-agent-wrapper
+      - build-timeout:
+          timeout: 240
+      - fix-workspace-permissions
 
     scm:
-        - git-scm-gerrit
+      - git-scm-gerrit
 
     builders:
-        - description-setter:
-            description: "Built on $NODE_NAME"
-        - 'xci-verify-{phase}-macro'
+      - description-setter:
+          description: "Built on $NODE_NAME"
+      - 'xci-verify-{phase}-macro'
 
-#--------------------------------
+# -------------------------------
 # builder macros
-#--------------------------------
+# -------------------------------
 - builder:
     name: 'xci-verify-deploy-macro'
     builders:
-        - shell: |
-            #!/bin/bash
-
-            # skip the deployment if the patch doesn't impact the deployment
-            if [[ "$GERRIT_TOPIC" =~ 'skip-verify' ]]; then
-                echo "Skipping the deployment!"
-                exit 0
-            fi
-
-            cd $WORKSPACE
-
-            # The start-new-vm.sh script will copy the entire releng-xci directory
-            # so lets prepare the test script now so it can be copied by the script.
-            # Please do not move it elsewhere or you would have to move it to the VM
-            # yourself.
-            cat > xci_test.sh<<EOF
-            #!/bin/bash
-            export DISTRO=$DISTRO
-            export DEPLOY_SCENARIO=$DEPLOY_SCENARIO
-            export FUNCTEST_MODE=$FUNCTEST_MODE
-            export FUNCTEST_SUITE_NAME=$FUNCTEST_SUITE_NAME
-            export XCI_FLAVOR=$XCI_FLAVOR
-            export CLEAN_DIB_IMAGES=$CLEAN_DIB_IMAGES
-            export OPNFV_RELENG_DEV_PATH=/home/devuser/releng-xci/
-            export INSTALLER_TYPE=$INSTALLER_TYPE
-            export GIT_BASE=$GIT_BASE
-            export JENKINS_HOME=$JENKINS_HOME
-
-            cd xci
-            ./xci-deploy.sh
-            EOF
-            chmod a+x xci_test.sh
-
-            ./xci/scripts/vm/start-new-vm.sh $DISTRO
-        - shell: |
-            #!/bin/bash
-
-            # skip the deployment if the patch doesn't impact the deployment
-            if [[ "$GERRIT_TOPIC" =~ 'skip-verify' ]]; then
-                echo "Skipping the deployment!"
-                exit 0
-            fi
-
-            ssh ${DISTRO}_xci_vm "cd releng-xci && ./xci_test.sh"
+      - shell: |
+          #!/bin/bash
+
+          # skip the deployment if the patch doesn't impact the deployment
+          if [[ "$GERRIT_TOPIC" =~ 'skip-verify' ]]; then
+              echo "Skipping the deployment!"
+              exit 0
+          fi
+
+          cd $WORKSPACE
+
+          # The start-new-vm.sh script will copy the entire releng-xci directory
+          # so lets prepare the test script now so it can be copied by the script.
+          # Please do not move it elsewhere or you would have to move it to the VM
+          # yourself.
+          cat > xci_test.sh<<EOF
+          #!/bin/bash
+          export DISTRO=$DISTRO
+          export DEPLOY_SCENARIO=$DEPLOY_SCENARIO
+          export FUNCTEST_MODE=$FUNCTEST_MODE
+          export FUNCTEST_SUITE_NAME=$FUNCTEST_SUITE_NAME
+          export XCI_FLAVOR=$XCI_FLAVOR
+          export CLEAN_DIB_IMAGES=$CLEAN_DIB_IMAGES
+          export OPNFV_RELENG_DEV_PATH=/home/devuser/releng-xci/
+          export INSTALLER_TYPE=$INSTALLER_TYPE
+          export GIT_BASE=$GIT_BASE
+          export JENKINS_HOME=$JENKINS_HOME
+
+          cd xci
+          ./xci-deploy.sh
+          EOF
+          chmod a+x xci_test.sh
+
+          export XCI_BUILD_CLEAN_VM_OS=false
+          export XCI_UPDATE_CLEAN_VM_OS=true
+
+          ./xci/scripts/vm/start-new-vm.sh $DISTRO
+      - shell: |
+          #!/bin/bash
+
+          # skip the deployment if the patch doesn't impact the deployment
+          if [[ "$GERRIT_TOPIC" =~ skip-verify|skip-deployment ]]; then
+              echo "Skipping the deployment!"
+              exit 0
+          fi
+
+          ssh -F $HOME/.ssh/xci-vm-config ${DISTRO}_xci_vm "cd releng-xci && ./xci_test.sh"
 
 
 - builder:
     name: 'xci-verify-healthcheck-macro'
     builders:
-        - shell: |
-            #!/bin/bash
+      - shell: |
+          #!/bin/bash
 
-            # skip the healthcheck if the patch doesn't impact the deployment
-            if [[ "$GERRIT_TOPIC" =~ 'skip-verify' ]]; then
-                echo "Skipping the healthcheck!"
-                exit 0
-            fi
+          # skip the healthcheck if the patch doesn't impact the deployment
+          if [[ "$GERRIT_TOPIC" =~ skip-verify|skip-deployment ]]; then
+              echo "Skipping the healthcheck!"
+              exit 0
+          fi
 
-            echo "Hello World!"
-        - shell: |
-            #!/bin/bash
+          echo "Hello World!"
+      - shell: |
+          #!/bin/bash
 
-            # skip the deployment if the patch doesn't impact the deployment
-            if [[ "$GERRIT_TOPIC" =~ 'skip-verify' ]]; then
-                echo "Skipping the deployment!"
-                exit 0
-            fi
+          # skip the deployment if the patch doesn't impact the deployment
+          if [[ "$GERRIT_TOPIC" =~ 'skip-verify' ]]; then
+              echo "Skipping the deployment!"
+              exit 0
+          fi
 
-            sudo virsh destroy ${DISTRO}_xci_vm
-            sudo virsh undefine ${DISTRO}_xci_vm
+          sudo virsh destroy ${DISTRO}_xci_vm
+          sudo virsh undefine ${DISTRO}_xci_vm
 
 # this will be enabled once the xci is prepared
-#- builder:
+# - builder:
 #    name: 'xci-verify-healthcheck-macro'
 #    builders:
 #        - shell:
index 4c54b73..1ae79e1 100644 (file)
@@ -1,3 +1,4 @@
+---
 ###################################
 # job configuration for yardstick
 ###################################
 
     project: '{name}'
 
-#--------------------------------
-# BRANCH ANCHORS
-#--------------------------------
+    # -------------------------------
+    # BRANCH ANCHORS
+    # -------------------------------
     master: &master
-        stream: master
-        branch: '{stream}'
-        gs-pathname: ''
-        docker-tag: 'latest'
+      stream: master
+      branch: '{stream}'
+      gs-pathname: ''
+      docker-tag: 'latest'
     euphrates: &euphrates
-        stream: euphrates
-        branch: 'stable/{stream}'
-        gs-pathname: '{stream}'
-        docker-tag: 'stable'
-#--------------------------------
-# POD, INSTALLER, AND BRANCH MAPPING
-#--------------------------------
-#    Installers using labels
-#            CI PODs
-# This section should only contain the installers
-# that have been switched using labels for slaves
-#--------------------------------
+      stream: euphrates
+      branch: 'stable/{stream}'
+      gs-pathname: '{stream}'
+      docker-tag: 'stable'
+    # -------------------------------
+    # POD, INSTALLER, AND BRANCH MAPPING
+    # -------------------------------
+    #    Installers using labels
+    #            CI PODs
+    # This section should only contain the installers
+    # that have been switched using labels for slaves
+    # -------------------------------
     pod:
-# apex CI PODs
-        - virtual:
-            slave-label: apex-virtual-master
-            installer: apex
-            auto-trigger-name: 'daily-trigger-disabled'
-            <<: *master
-        - baremetal:
-            slave-label: apex-baremetal-master
-            installer: apex
-            auto-trigger-name: 'daily-trigger-disabled'
-            <<: *master
-        - virtual:
-            slave-label: apex-virtual-euphrates
-            installer: apex
-            auto-trigger-name: 'daily-trigger-disabled'
-            <<: *euphrates
-        - baremetal:
-            slave-label: apex-baremetal-euphrates
-            installer: apex
-            auto-trigger-name: 'daily-trigger-disabled'
-            <<: *euphrates
-# fuel CI PODs
-        - baremetal:
-            slave-label: fuel-baremetal
-            installer: fuel
-            auto-trigger-name: 'daily-trigger-disabled'
-            <<: *master
-        - virtual:
-            slave-label: fuel-virtual
-            installer: fuel
-            auto-trigger-name: 'daily-trigger-disabled'
-            <<: *master
-        - baremetal:
-            slave-label: fuel-baremetal
-            installer: fuel
-            auto-trigger-name: 'daily-trigger-disabled'
-            <<: *euphrates
-        - virtual:
-            slave-label: fuel-virtual
-            installer: fuel
-            auto-trigger-name: 'daily-trigger-disabled'
-            <<: *euphrates
-# armband CI PODs
-        - armband-baremetal:
-            slave-label: armband-baremetal
-            installer: fuel
-            auto-trigger-name: 'daily-trigger-disabled'
-            <<: *master
-        - armband-virtual:
-            slave-label: armband-virtual
-            installer: fuel
-            auto-trigger-name: 'daily-trigger-disabled'
-            <<: *master
-        - armband-baremetal:
-            slave-label: armband-baremetal
-            installer: fuel
-            auto-trigger-name: 'daily-trigger-disabled'
-            <<: *euphrates
-        - armband-virtual:
-            slave-label: armband-virtual
-            installer: fuel
-            auto-trigger-name: 'daily-trigger-disabled'
-            <<: *euphrates
-# joid CI PODs
-        - baremetal:
-            slave-label: joid-baremetal
-            installer: joid
-            auto-trigger-name: 'daily-trigger-disabled'
-            <<: *master
-        - virtual:
-            slave-label: joid-virtual
-            installer: joid
-            auto-trigger-name: 'daily-trigger-disabled'
-            <<: *master
-        - baremetal:
-            slave-label: joid-baremetal
-            installer: joid
-            auto-trigger-name: 'daily-trigger-disabled'
-            <<: *euphrates
-        - virtual:
-            slave-label: joid-virtual
-            installer: joid
-            auto-trigger-name: 'daily-trigger-disabled'
-            <<: *euphrates
-# compass CI PODs
-        - baremetal:
-            slave-label: compass-baremetal
-            installer: compass
-            auto-trigger-name: 'daily-trigger-disabled'
-            <<: *master
-        - virtual:
-            slave-label: compass-virtual
-            installer: compass
-            auto-trigger-name: 'daily-trigger-disabled'
-            <<: *master
-        - baremetal:
-            slave-label: compass-baremetal
-            installer: compass
-            auto-trigger-name: 'daily-trigger-disabled'
-            <<: *euphrates
-        - virtual:
-            slave-label: compass-virtual
-            installer: compass
-            auto-trigger-name: 'daily-trigger-disabled'
-            <<: *euphrates
-#--------------------------------
-#        None-CI PODs
-#--------------------------------
-        - orange-pod1:
-            slave-label: '{pod}'
-            installer: joid
-            auto-trigger-name: 'daily-trigger-disabled'
-            <<: *master
-        - zte-pod1:
-            slave-label: '{pod}'
-            installer: fuel
-            auto-trigger-name: 'daily-trigger-disabled'
-            <<: *master
-        - zte-pod1:
-            slave-label: '{pod}'
-            installer: fuel
-            auto-trigger-name: 'daily-trigger-disabled'
-            <<: *euphrates
-        - zte-pod2:
-            slave-label: '{pod}'
-            installer: fuel
-            auto-trigger-name: 'daily-trigger-disabled'
-            <<: *master
-        - zte-pod3:
-            slave-label: '{pod}'
-            installer: fuel
-            auto-trigger-name: 'daily-trigger-disabled'
-            <<: *master
-        - zte-pod3:
-            slave-label: '{pod}'
-            installer: fuel
-            auto-trigger-name: 'daily-trigger-disabled'
-            <<: *euphrates
-        - orange-pod2:
-            slave-label: '{pod}'
-            installer: joid
-            auto-trigger-name: 'daily-trigger-disabled'
-            <<: *master
-        - huawei-pod3:
-            slave-label: '{pod}'
-            installer: compass
-            auto-trigger-name: 'yardstick-daily-huawei-pod3-trigger'
-            <<: *master
-        - huawei-pod4:
-            slave-label: '{pod}'
-            installer: compass
-            auto-trigger-name: 'yardstick-daily-huawei-pod4-trigger'
-            <<: *master
-        - baremetal-centos:
-            slave-label: 'intel-pod8'
-            installer: compass
-            auto-trigger-name: 'daily-trigger-disabled'
-            <<: *master
-        - flex-pod1:
-            slave-label: '{pod}'
-            installer: apex
-            auto-trigger-name: 'daily-trigger-disabled'
-            <<: *master
-#--------------------------------
+      # apex CI PODs
+      - virtual:
+          slave-label: apex-virtual-master
+          installer: apex
+          auto-trigger-name: 'daily-trigger-disabled'
+          <<: *master
+      - baremetal:
+          slave-label: apex-baremetal-master
+          installer: apex
+          auto-trigger-name: 'daily-trigger-disabled'
+          <<: *master
+      - virtual:
+          slave-label: apex-virtual-euphrates
+          installer: apex
+          auto-trigger-name: 'daily-trigger-disabled'
+          <<: *euphrates
+      - baremetal:
+          slave-label: apex-baremetal-euphrates
+          installer: apex
+          auto-trigger-name: 'daily-trigger-disabled'
+          <<: *euphrates
+      # fuel CI PODs
+      - baremetal:
+          slave-label: fuel-baremetal
+          installer: fuel
+          auto-trigger-name: 'daily-trigger-disabled'
+          <<: *master
+      - virtual:
+          slave-label: fuel-virtual
+          installer: fuel
+          auto-trigger-name: 'daily-trigger-disabled'
+          <<: *master
+      - baremetal:
+          slave-label: fuel-baremetal
+          installer: fuel
+          auto-trigger-name: 'daily-trigger-disabled'
+          <<: *euphrates
+      - virtual:
+          slave-label: fuel-virtual
+          installer: fuel
+          auto-trigger-name: 'daily-trigger-disabled'
+          <<: *euphrates
+      # armband CI PODs
+      - armband-baremetal:
+          slave-label: armband-baremetal
+          installer: fuel
+          auto-trigger-name: 'daily-trigger-disabled'
+          <<: *master
+      - armband-virtual:
+          slave-label: armband-virtual
+          installer: fuel
+          auto-trigger-name: 'daily-trigger-disabled'
+          <<: *master
+      - armband-baremetal:
+          slave-label: armband-baremetal
+          installer: fuel
+          auto-trigger-name: 'daily-trigger-disabled'
+          <<: *euphrates
+      - armband-virtual:
+          slave-label: armband-virtual
+          installer: fuel
+          auto-trigger-name: 'daily-trigger-disabled'
+          <<: *euphrates
+      # joid CI PODs
+      - baremetal:
+          slave-label: joid-baremetal
+          installer: joid
+          auto-trigger-name: 'daily-trigger-disabled'
+          <<: *master
+      - virtual:
+          slave-label: joid-virtual
+          installer: joid
+          auto-trigger-name: 'daily-trigger-disabled'
+          <<: *master
+      - baremetal:
+          slave-label: joid-baremetal
+          installer: joid
+          auto-trigger-name: 'daily-trigger-disabled'
+          <<: *euphrates
+      - virtual:
+          slave-label: joid-virtual
+          installer: joid
+          auto-trigger-name: 'daily-trigger-disabled'
+          <<: *euphrates
+      # compass CI PODs
+      - baremetal:
+          slave-label: compass-baremetal
+          installer: compass
+          auto-trigger-name: 'daily-trigger-disabled'
+          <<: *master
+      - virtual:
+          slave-label: compass-virtual
+          installer: compass
+          auto-trigger-name: 'daily-trigger-disabled'
+          <<: *master
+      - baremetal:
+          slave-label: compass-baremetal
+          installer: compass
+          auto-trigger-name: 'daily-trigger-disabled'
+          <<: *euphrates
+      - virtual:
+          slave-label: compass-virtual
+          installer: compass
+          auto-trigger-name: 'daily-trigger-disabled'
+          <<: *euphrates
+      # -------------------------------
+      #        None-CI PODs
+      # -------------------------------
+      - orange-pod1:
+          slave-label: '{pod}'
+          installer: joid
+          auto-trigger-name: 'daily-trigger-disabled'
+          <<: *master
+      - zte-pod1:
+          slave-label: '{pod}'
+          installer: fuel
+          auto-trigger-name: 'daily-trigger-disabled'
+          <<: *master
+      - zte-pod1:
+          slave-label: '{pod}'
+          installer: fuel
+          auto-trigger-name: 'daily-trigger-disabled'
+          <<: *euphrates
+      - zte-pod2:
+          slave-label: '{pod}'
+          installer: fuel
+          auto-trigger-name: 'daily-trigger-disabled'
+          <<: *master
+      - zte-pod3:
+          slave-label: '{pod}'
+          installer: fuel
+          auto-trigger-name: 'daily-trigger-disabled'
+          <<: *master
+      - zte-pod3:
+          slave-label: '{pod}'
+          installer: fuel
+          auto-trigger-name: 'daily-trigger-disabled'
+          <<: *euphrates
+      - orange-pod2:
+          slave-label: '{pod}'
+          installer: joid
+          auto-trigger-name: 'daily-trigger-disabled'
+          <<: *master
+      - huawei-pod3:
+          slave-label: '{pod}'
+          installer: compass
+          auto-trigger-name: 'yardstick-daily-huawei-pod3-trigger'
+          <<: *master
+      - huawei-pod4:
+          slave-label: '{pod}'
+          installer: compass
+          auto-trigger-name: 'yardstick-daily-huawei-pod4-trigger'
+          <<: *master
+      - baremetal-centos:
+          slave-label: 'intel-pod8'
+          installer: compass
+          auto-trigger-name: 'daily-trigger-disabled'
+          <<: *master
+      - flex-pod1:
+          slave-label: '{pod}'
+          installer: apex
+          auto-trigger-name: 'daily-trigger-disabled'
+          <<: *master
+    # -------------------------------
     testsuite:
-        - 'daily'
+      - 'daily'
 
     jobs:
-        - 'yardstick-{installer}-{pod}-{testsuite}-{stream}'
+      - 'yardstick-{installer}-{pod}-{testsuite}-{stream}'
 
 ################################
 # job templates
     concurrent: true
 
     properties:
-        - logrotate-default
-        - throttle:
-            enabled: true
-            max-per-node: 1
-            option: 'project'
+      - logrotate-default
+      - throttle:
+          enabled: true
+          max-per-node: 1
+          option: 'project'
 
     wrappers:
-        - build-name:
-            name: '$BUILD_NUMBER - Scenario: $DEPLOY_SCENARIO'
-        - timeout:
-            timeout: 180
-            abort: true
+      - build-name:
+          name: '$BUILD_NUMBER - Scenario: $DEPLOY_SCENARIO'
+      - timeout:
+          timeout: 180
+          abort: true
 
     triggers:
-        - '{auto-trigger-name}'
+      - '{auto-trigger-name}'
 
     parameters:
-        - project-parameter:
-            project: '{project}'
-            branch: '{branch}'
-        - '{installer}-defaults'
-        - '{slave-label}-defaults'
-        - 'yardstick-params-{slave-label}'
-        - string:
-            name: DEPLOY_SCENARIO
-            default: 'os-odl_l2-nofeature-ha'
-        - string:
-            name: DOCKER_TAG
-            default: '{docker-tag}'
-            description: 'Tag to pull docker image'
-        - string:
-            name: YARDSTICK_SCENARIO_SUITE_NAME
-            default: opnfv_${{DEPLOY_SCENARIO}}_{testsuite}.yaml
-            description: 'Path to test scenario suite'
-        - string:
-            name: CI_DEBUG
-            default: 'false'
-            description: "Show debut output information"
+      - project-parameter:
+          project: '{project}'
+          branch: '{branch}'
+      - '{installer}-defaults'
+      - '{slave-label}-defaults'
+      - 'yardstick-params-{slave-label}'
+      - string:
+          name: DEPLOY_SCENARIO
+          default: 'os-odl_l2-nofeature-ha'
+      - string:
+          name: DOCKER_TAG
+          default: '{docker-tag}'
+          description: 'Tag to pull docker image'
+      - string:
+          name: YARDSTICK_SCENARIO_SUITE_NAME
+          default: opnfv_${{DEPLOY_SCENARIO}}_{testsuite}.yaml
+          description: 'Path to test scenario suite'
+      - string:
+          name: CI_DEBUG
+          default: 'false'
+          description: "Show debut output information"
 
     scm:
-        - git-scm
+      - git-scm
 
     builders:
-        - description-setter:
-            description: "POD: $NODE_NAME"
-        - 'yardstick-cleanup'
-        - 'yardstick-fetch-os-creds'
-        - 'yardstick-fetch-k8s-conf'
-        - 'yardstick-{testsuite}'
-        - 'yardstick-store-results'
+      - description-setter:
+          description: "POD: $NODE_NAME"
+      - 'yardstick-cleanup'
+      - 'yardstick-fetch-os-creds'
+      - 'yardstick-fetch-k8s-conf'
+      - 'yardstick-{testsuite}'
+      - 'yardstick-store-results'
 
     publishers:
-        - email:
-            recipients: jean.gaoliang@huawei.com limingjiang@huawei.com ross.b.brattain@intel.com
-        - email-jenkins-admins-on-failure
+      - email:
+          recipients: jean.gaoliang@huawei.com limingjiang@huawei.com ross.b.brattain@intel.com
+      - email-jenkins-admins-on-failure
 
 ########################
 # builder macros
 - builder:
     name: yardstick-daily
     builders:
-        - shell:
-            !include-raw: ./yardstick-daily.sh
+      - shell:
+          !include-raw: ./yardstick-daily.sh
 
 - builder:
     name: yardstick-vtcdaily
     builders:
-        - shell:
-            !include-raw: ./yardstick-vtcdaily.sh
+      - shell:
+          !include-raw: ./yardstick-vtcdaily.sh
 
 - builder:
     name: yardstick-fetch-os-creds
     builders:
-        - shell:
-            !include-raw: ../../utils/fetch_os_creds.sh
+      - shell:
+          !include-raw: ../../utils/fetch_os_creds.sh
 
 - builder:
     name: yardstick-fetch-k8s-conf
     builders:
-        - shell:
-            !include-raw: ./yardstick-get-k8s-conf.sh
+      - shell:
+          !include-raw: ./yardstick-get-k8s-conf.sh
 
 - builder:
     name: yardstick-store-results
     builders:
-        - shell:
-            !include-raw: ../../utils/push-test-logs.sh
+      - shell:
+          !include-raw: ../../utils/push-test-logs.sh
 
 - builder:
     name: yardstick-cleanup
     builders:
-        - shell:
-            !include-raw: ./yardstick-cleanup.sh
+      - shell:
+          !include-raw: ./yardstick-cleanup.sh
 ########################
 # parameter macros
 ########################
 - parameter:
     name: 'yardstick-params-apex-virtual-master'
     parameters:
-        - string:
-            name: YARDSTICK_DB_BACKEND
-            default: '-i 104.197.68.199:8086'
-            description: 'Arguments to use in order to choose the backend DB'
+      - string:
+          name: YARDSTICK_DB_BACKEND
+          default: '-i 104.197.68.199:8086'
+          description: 'Arguments to use in order to choose the backend DB'
+
 - parameter:
     name: 'yardstick-params-apex-baremetal-master'
     parameters:
-        - string:
-            name: YARDSTICK_DB_BACKEND
-            default: '-i 104.197.68.199:8086'
-            description: 'Arguments to use in order to choose the backend DB'
+      - string:
+          name: YARDSTICK_DB_BACKEND
+          default: '-i 104.197.68.199:8086'
+          description: 'Arguments to use in order to choose the backend DB'
+
 - parameter:
     name: 'yardstick-params-apex-virtual-euphrates'
     parameters:
-        - string:
-            name: YARDSTICK_DB_BACKEND
-            default: '-i 104.197.68.199:8086'
-            description: 'Arguments to use in order to choose the backend DB'
+      - string:
+          name: YARDSTICK_DB_BACKEND
+          default: '-i 104.197.68.199:8086'
+          description: 'Arguments to use in order to choose the backend DB'
+
 - parameter:
     name: 'yardstick-params-apex-baremetal-euphrates'
     parameters:
-        - string:
-            name: YARDSTICK_DB_BACKEND
-            default: '-i 104.197.68.199:8086'
-            description: 'Arguments to use in order to choose the backend DB'
+      - string:
+          name: YARDSTICK_DB_BACKEND
+          default: '-i 104.197.68.199:8086'
+          description: 'Arguments to use in order to choose the backend DB'
+
 - parameter:
     name: 'yardstick-params-fuel-baremetal'
     parameters:
-        - string:
-            name: YARDSTICK_DB_BACKEND
-            default: '-i 104.197.68.199:8086'
-            description: 'Arguments to use in order to choose the backend DB'
+      - string:
+          name: YARDSTICK_DB_BACKEND
+          default: '-i 104.197.68.199:8086'
+          description: 'Arguments to use in order to choose the backend DB'
+
 - parameter:
     name: 'yardstick-params-fuel-virtual'
     parameters:
-        - string:
-            name: YARDSTICK_DB_BACKEND
-            default: '-i 104.197.68.199:8086'
-            description: 'Arguments to use in order to choose the backend DB'
+      - string:
+          name: YARDSTICK_DB_BACKEND
+          default: '-i 104.197.68.199:8086'
+          description: 'Arguments to use in order to choose the backend DB'
+
 - parameter:
     name: 'yardstick-params-armband-baremetal'
     parameters:
-        - string:
-            name: YARDSTICK_DB_BACKEND
-            default: '-i 104.197.68.199:8086'
-            description: 'Arguments to use in order to choose the backend DB'
+      - string:
+          name: YARDSTICK_DB_BACKEND
+          default: '-i 104.197.68.199:8086'
+          description: 'Arguments to use in order to choose the backend DB'
+
 - parameter:
     name: 'yardstick-params-armband-virtual'
     parameters:
-        - string:
-            name: YARDSTICK_DB_BACKEND
-            default: '-i 104.197.68.199:8086'
-            description: 'Arguments to use in order to choose the backend DB'
+      - string:
+          name: YARDSTICK_DB_BACKEND
+          default: '-i 104.197.68.199:8086'
+          description: 'Arguments to use in order to choose the backend DB'
+
 - parameter:
     name: 'yardstick-params-joid-baremetal'
     parameters:
-        - string:
-            name: YARDSTICK_DB_BACKEND
-            default: '-i 104.197.68.199:8086'
-            description: 'Arguments to use in order to choose the backend DB'
+      - string:
+          name: YARDSTICK_DB_BACKEND
+          default: '-i 104.197.68.199:8086'
+          description: 'Arguments to use in order to choose the backend DB'
+
 - parameter:
     name: 'yardstick-params-joid-virtual'
     parameters:
-        - string:
-            name: YARDSTICK_DB_BACKEND
-            default: '-i 104.197.68.199:8086'
-            description: 'Arguments to use in order to choose the backend DB'
+      - string:
+          name: YARDSTICK_DB_BACKEND
+          default: '-i 104.197.68.199:8086'
+          description: 'Arguments to use in order to choose the backend DB'
+
 - parameter:
     name: 'yardstick-params-intel-pod8'
     parameters:
-        - string:
-            name: YARDSTICK_DB_BACKEND
-            default: '-i 104.197.68.199:8086'
-            description: 'Arguments to use in order to choose the backend DB'
+      - string:
+          name: YARDSTICK_DB_BACKEND
+          default: '-i 104.197.68.199:8086'
+          description: 'Arguments to use in order to choose the backend DB'
+
 - parameter:
     name: 'yardstick-params-compass-baremetal'
     parameters:
-        - string:
-            name: YARDSTICK_DB_BACKEND
-            default: '-i 104.197.68.199:8086'
-            description: 'Arguments to use in order to choose the backend DB'
+      - string:
+          name: YARDSTICK_DB_BACKEND
+          default: '-i 104.197.68.199:8086'
+          description: 'Arguments to use in order to choose the backend DB'
+
 - parameter:
     name: 'yardstick-params-zte-pod1'
     parameters:
-        - string:
-            name: YARDSTICK_DB_BACKEND
-            default: '-i 104.197.68.199:8086'
-            description: 'Arguments to use in order to choose the backend DB'
+      - string:
+          name: YARDSTICK_DB_BACKEND
+          default: '-i 104.197.68.199:8086'
+          description: 'Arguments to use in order to choose the backend DB'
 
 - parameter:
     name: 'yardstick-params-zte-pod2'
     parameters:
-        - string:
-            name: YARDSTICK_DB_BACKEND
-            default: '-i 104.197.68.199:8086'
-            description: 'Arguments to use in order to choose the backend DB'
+      - string:
+          name: YARDSTICK_DB_BACKEND
+          default: '-i 104.197.68.199:8086'
+          description: 'Arguments to use in order to choose the backend DB'
 
 - parameter:
     name: 'yardstick-params-zte-pod3'
     parameters:
-        - string:
-            name: YARDSTICK_DB_BACKEND
-            default: '-i 104.197.68.199:8086'
-            description: 'Arguments to use in order to choose the backend DB'
+      - string:
+          name: YARDSTICK_DB_BACKEND
+          default: '-i 104.197.68.199:8086'
+          description: 'Arguments to use in order to choose the backend DB'
 
 - parameter:
     name: 'yardstick-params-orange-pod1'
     parameters:
-        - string:
-            name: YARDSTICK_DB_BACKEND
-            default: '-i 104.197.68.199:8086'
-            description: 'Arguments to use in order to choose the backend DB'
+      - string:
+          name: YARDSTICK_DB_BACKEND
+          default: '-i 104.197.68.199:8086'
+          description: 'Arguments to use in order to choose the backend DB'
 
 - parameter:
     name: 'yardstick-params-orange-pod2'
     parameters:
-        - string:
-            name: YARDSTICK_DB_BACKEND
-            default: '-i 104.197.68.199:8086'
-            description: 'Arguments to use in order to choose the backend DB'
+      - string:
+          name: YARDSTICK_DB_BACKEND
+          default: '-i 104.197.68.199:8086'
+          description: 'Arguments to use in order to choose the backend DB'
 
 - parameter:
     name: 'yardstick-params-virtual'
     parameters:
-        - string:
-            name: YARDSTICK_DB_BACKEND
-            default: '-i 104.197.68.199:8086'
-            description: 'Arguments to use in order to choose the backend DB'
+      - string:
+          name: YARDSTICK_DB_BACKEND
+          default: '-i 104.197.68.199:8086'
+          description: 'Arguments to use in order to choose the backend DB'
 
 - parameter:
     name: 'yardstick-params-compass-virtual'
     parameters:
-        - string:
-            name: YARDSTICK_DB_BACKEND
-            default: '-i 104.197.68.199:8086'
-            description: 'Arguments to use in order to choose the backend DB'
+      - string:
+          name: YARDSTICK_DB_BACKEND
+          default: '-i 104.197.68.199:8086'
+          description: 'Arguments to use in order to choose the backend DB'
 
 - parameter:
     name: 'yardstick-params-huawei-pod3'
     parameters:
-        - string:
-            name: YARDSTICK_DB_BACKEND
-            default: '-i 104.197.68.199:8086'
-            description: 'Arguments to use in order to choose the backend DB'
+      - string:
+          name: YARDSTICK_DB_BACKEND
+          default: '-i 104.197.68.199:8086'
+          description: 'Arguments to use in order to choose the backend DB'
 
 - parameter:
     name: 'yardstick-params-huawei-pod4'
     parameters:
-        - string:
-            name: YARDSTICK_DB_BACKEND
-            default: '-i 104.197.68.199:8086'
-            description: 'Arguments to use in order to choose the backend DB'
+      - string:
+          name: YARDSTICK_DB_BACKEND
+          default: '-i 104.197.68.199:8086'
+          description: 'Arguments to use in order to choose the backend DB'
 
 - parameter:
     name: 'yardstick-params-flex-pod1'
     parameters:
-        - string:
-            name: YARDSTICK_DB_BACKEND
-            default: '-i 104.197.68.199:8086'
-            description: 'Arguments to use in order to choose the backend DB'
+      - string:
+          name: YARDSTICK_DB_BACKEND
+          default: '-i 104.197.68.199:8086'
+          description: 'Arguments to use in order to choose the backend DB'
 
 #######################
 ## trigger macros
 - trigger:
     name: 'yardstick-daily-huawei-pod3-trigger'
     triggers:
-        - timed: '0 1 * * *'
+      - timed: '0 1 * * *'
 
 - trigger:
     name: 'yardstick-daily-huawei-pod4-trigger'
     triggers:
-        - timed: ''
+      - timed: ''
index a2d4ec2..4b8c5d2 100755 (executable)
@@ -6,6 +6,8 @@ rc_file_vol=""
 cacert_file_vol=""
 sshkey=""
 
+rc_file_vol="-v ${HOME}/opnfv-openrc.sh:/etc/yardstick/openstack.creds"
+
 if [[ ${INSTALLER_TYPE} == 'apex' ]]; then
     instack_mac=$(sudo virsh domiflist undercloud | grep default | \
                   grep -Eo "[0-9a-f]+:[0-9a-f]+:[0-9a-f]+:[0-9a-f]+:[0-9a-f]+:[0-9a-f]+")
@@ -18,10 +20,6 @@ if [[ ${INSTALLER_TYPE} == 'apex' ]]; then
     fi
 fi
 
-if [[ "${INSTALLER_TYPE}" == 'fuel' ]]; then
-    sshkey="-v ${SSH_KEY}:/root/.ssh/mcp.rsa"
-fi
-
 if [[ ${INSTALLER_TYPE} == 'joid' ]]; then
     if [[ "${DEPLOY_SCENARIO:0:2}" == "k8" ]];then
         rc_file_vol="-v /home/ubuntu/config:/etc/yardstick/admin.conf"
@@ -35,11 +33,10 @@ if [[ ${INSTALLER_TYPE} == 'joid' ]]; then
 elif [[ ${INSTALLER_TYPE} == 'compass' ]]; then
     cacert_file_vol="-v ${HOME}/os_cacert:/etc/yardstick/os_cacert"
     echo "export OS_CACERT=/etc/yardstick/os_cacert" >> ${HOME}/opnfv-openrc.sh
-    rc_file_vol="-v ${HOME}/opnfv-openrc.sh:/etc/yardstick/openstack.creds"
-else
-    rc_file_vol="-v ${HOME}/opnfv-openrc.sh:/etc/yardstick/openstack.creds"
+elif [[ ${INSTALLER_TYPE} == 'fuel' ]]; then
+    cacert_file_vol="-v ${HOME}/os_cacert:/etc/ssl/certs/mcp_os_cacert"
+    sshkey="-v ${SSH_KEY}:/root/.ssh/mcp.rsa"
 fi
-
 # Set iptables rule to allow forwarding return traffic for container
 if ! sudo iptables -C FORWARD -j RETURN 2> ${redirect} || ! sudo iptables -L FORWARD | awk 'NR==3' | grep RETURN 2> ${redirect}; then
     sudo iptables -I FORWARD -j RETURN
index 7738aed..7486d8a 100644 (file)
@@ -1,3 +1,4 @@
+---
 ###################################################
 # All the jobs except verify have been removed!
 # They will only be enabled on request by projects!
@@ -8,18 +9,18 @@
     project: 'yardstick'
 
     jobs:
-        - 'yardstick-verify-{stream}'
-        - 'yardstick-merge-{stream}'
+      - 'yardstick-verify-{stream}'
+      - 'yardstick-merge-{stream}'
 
     stream:
-        - master:
-            branch: '{stream}'
-            gs-pathname: ''
-            disabled: false
-        - euphrates:
-            branch: 'stable/{stream}'
-            gs-pathname: '/{stream}'
-            disabled: false
+      - master:
+          branch: '{stream}'
+          gs-pathname: ''
+          disabled: false
+      - euphrates:
+          branch: 'stable/{stream}'
+          gs-pathname: '/{stream}'
+          disabled: false
 
 ################################
 # job templates
     disabled: '{obj:disabled}'
 
     parameters:
-        - project-parameter:
-            project: '{project}'
-            branch: '{branch}'
-        - 'opnfv-build-ubuntu-defaults'
+      - project-parameter:
+          project: '{project}'
+          branch: '{branch}'
+      - 'opnfv-build-ubuntu-defaults'
 
     scm:
-        - git-scm-gerrit
+      - git-scm-gerrit
 
     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}'
+      - 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}'
 
     wrappers:
-        - ssh-agent-wrapper
-        - timeout:
-            timeout: 30
-            fail: true
+      - ssh-agent-wrapper
+      - timeout:
+          timeout: 30
+          fail: true
 
     builders:
-        - yardstick-unit-tests-and-docs-build
+      - yardstick-unit-tests-and-docs-build
 
 - job-template:
     name: 'yardstick-merge-{stream}'
     disabled: '{obj:disabled}'
 
     parameters:
-        - project-parameter:
-            project: '{project}'
-            branch: '{branch}'
-        - 'opnfv-build-ubuntu-defaults'
-        - string:
-            name: GS_URL
-            default: '$GS_BASE{gs-pathname}'
-            description: "Directory where the build artifact will be located upon the completion     of the build."
+      - project-parameter:
+          project: '{project}'
+          branch: '{branch}'
+      - 'opnfv-build-ubuntu-defaults'
+      - string:
+          name: GS_URL
+          default: '$GS_BASE{gs-pathname}'
+          description: "Directory where the build artifact will be located upon the completion     of the build."
 
     scm:
-        - git-scm
+      - git-scm
 
     triggers:
-        - gerrit:
-            server-name: 'gerrit.opnfv.org'
-            trigger-on:
-                - change-merged-event
-                - comment-added-contains-event:
-                    comment-contains-value: 'remerge'
-            projects:
-              - project-compare-type: 'ANT'
-                project-pattern: '{project}'
-                branches:
-                    - branch-compare-type: 'ANT'
-                      branch-pattern: '**/{branch}'
+      - gerrit:
+          server-name: 'gerrit.opnfv.org'
+          trigger-on:
+            - change-merged-event
+            - comment-added-contains-event:
+                comment-contains-value: 'remerge'
+          projects:
+            - project-compare-type: 'ANT'
+              project-pattern: '{project}'
+              branches:
+                - branch-compare-type: 'ANT'
+                  branch-pattern: '**/{branch}'
 
     wrappers:
-        - ssh-agent-wrapper
-        - timeout:
-            timeout: 30
-            fail: true
+      - ssh-agent-wrapper
+      - timeout:
+          timeout: 30
+          fail: true
 
     builders:
-        - yardstick-unit-tests-and-docs-build
+      - yardstick-unit-tests-and-docs-build
 
 ################################
 # job builders
 - builder:
     name: yardstick-unit-tests-and-docs-build
     builders:
-        - shell: |
-            #!/bin/bash
-            set -o errexit
-            set -o pipefail
+      - shell: |
+          #!/bin/bash
+          set -o errexit
+          set -o pipefail
 
-            sudo apt-get install -y build-essential python-dev python3-dev
+          sudo apt-get install -y build-essential python-dev python3-dev
 
-            echo "Running unit tests..."
-            cd $WORKSPACE
-            tox
+          echo "Running unit tests..."
+          cd $WORKSPACE
+          tox
index 55fb2e2..e14783f 100644 (file)
@@ -11,7 +11,7 @@
 from opnfv.deployment.apex import adapter as apex_adapter
 from opnfv.deployment.compass import adapter as compass_adapter
 from opnfv.deployment.fuel import adapter as fuel_adapter
-from opnfv.deployment.OSA import adapter as osa_adapter
+from opnfv.deployment.osa import adapter as osa_adapter
 from opnfv.utils import opnfv_logger as logger
 
 logger = logger.Logger(__name__).getLogger()
@@ -19,7 +19,7 @@ logger = logger.Logger(__name__).getLogger()
 
 class Factory(object):
 
-    INSTALLERS = ["fuel", "apex", "compass", "joid", "daisy", "OSA"]
+    INSTALLERS = ["fuel", "apex", "compass", "joid", "daisy", "osa"]
 
     def __init__(self):
         pass
index 25d3ef1..2cb438d 100755 (executable)
@@ -59,8 +59,6 @@ if [ -z "$1" ]; then
     report_project $i $i "status"
     sleep 5
   done
-  report_project "QTIP" "qtip" "status"
-
 
   echo "Functest reporting vIMS..."
   report_project "functest" "functest" "vims"
index 267803e..c71e00f 100755 (executable)
@@ -230,12 +230,26 @@ for version in versions:
                 # Evaluate the results for scenario validation
                 # **********************************************
                 # the validation criteria = nb runnable tests x 3
-                # because each test case = 0,1,2 or 3
-                scenario_criteria = nb_test_runnable_for_this_scenario * 3
-                # if 0 runnable tests set criteria at a high value
-                if scenario_criteria < 1:
-                    scenario_criteria = 50  # conf.MAX_SCENARIO_CRITERIA
+                # because each test case can get
+                # 0 point (never PASS)
+                # 1 point at least (PASS once over the time window)
+                # 2 points (PASS more than once but 1 FAIL on the last 4)
+                # 3 points PASS on the last 4 iterations
+                # e.g. 1 scenario = 10 cases
+                # 1 iteration : max score = 10 (10x1)
+                # 2 iterations : max score = 20 (10x2)
+                # 3 iterations : max score = 20
+                # 4 or more iterations : max score = 30 (1x30)
+                if len(s_result) > 3:
+                    k_score = 3
+                elif len(s_result) < 2:
+                    k_score = 1
+                else:
+                    k_score = 2
+
+                scenario_criteria = nb_test_runnable_for_this_scenario*k_score
 
+                # score for reporting
                 s_score = str(scenario_score) + "/" + str(scenario_criteria)
                 s_score_percent = rp_utils.getScenarioPercent(
                     scenario_score,
index 56f9e0a..524338c 100644 (file)
@@ -45,27 +45,22 @@ def prepare_profile_file(version):
 def profile_results(results, installer, profile_fd):
     result_criterias = {}
     for s_p, s_p_result in results.iteritems():
-        ten_criteria = len(s_p_result)
-        ten_score = sum(s_p_result)
+        avg_last_ten = sum([int(s) for s in s_p_result]) / len(s_p_result)
 
         LASTEST_TESTS = rp_utils.get_config(
             'general.nb_iteration_tests_success_criteria')
-        four_result = s_p_result[:LASTEST_TESTS]
-        four_criteria = len(four_result)
-        four_score = sum(four_result)
-
-        s_four_score = str(four_score / four_criteria)
-        s_ten_score = str(ten_score / ten_criteria)
+        last_four = s_p_result[-LASTEST_TESTS:]
+        avg_last_four = sum([int(s) for s in last_four]) / len(last_four)
 
         info = '{},{},{},{},{}\n'.format(reportingDate,
                                          s_p,
                                          installer,
-                                         s_ten_score,
-                                         s_four_score)
+                                         '',
+                                         avg_last_four)
         profile_fd.write(info)
         result_criterias[s_p] = sr.ScenarioResult('OK',
-                                                  s_four_score,
-                                                  s_ten_score,
+                                                  avg_last_four,
+                                                  avg_last_ten,
                                                   '100')
 
         logger.info("--------------------------")
index 92f3395..da8424a 100644 (file)
           <ul class="nav nav-justified">
             <li class="active"><a href="http://testresults.opnfv.org/reporting/index.html">Home</a></li>
             <li><a href="status-apex.html">Apex</a></li>
-            <li><a href="status-compass.html">Compass</a></li>
-            <li><a href="status-daisy.html">Daisy</a></li>
-            <li><a href="status-fuel.html">Fuel</a></li>
-            <li><a href="status-joid.html">Joid</a></li>
+            <!--<li><a href="status-compass.html">Compass</a></li>-->
+            <!--<li><a href="status-daisy.html">Daisy</a></li>-->
+            <!--<li><a href="status-fuel.html">Fuel</a></li>-->
+            <!--<li><a href="status-joid.html">Joid</a></li>-->
           </ul>
         </nav>
       </div>
index dae832a..2a4aa49 100644 (file)
@@ -56,7 +56,7 @@ storperf:
 
 qtip:
     log_level: ERROR
-    period: 1
+    period: 10
 
 bottlenecks:
     test_list: