Merge "Added the validation for name field in create pod function"
authorSerena Feng <feng.xiaowei@zte.com.cn>
Fri, 1 Sep 2017 01:17:40 +0000 (01:17 +0000)
committerGerrit Code Review <gerrit@opnfv.org>
Fri, 1 Sep 2017 01:17:40 +0000 (01:17 +0000)
20 files changed:
.yamllint [new file with mode: 0644]
jjb/apex/apex.yml
jjb/apex/apex.yml.j2
jjb/ci_gate_security/anteater-report-to-gerrit.sh
jjb/dovetail/dovetail-ci-jobs.yml
jjb/dovetail/dovetail-cleanup.sh
jjb/fuel/fuel-daily-jobs.yml
jjb/functest/set-functest-env.sh
jjb/global/installer-params.yml
jjb/global/releng-defaults.yml
jjb/global/releng-macros.yml
jjb/global/slave-params.yml
jjb/releng/opnfv-repo-archiver.sh [new file with mode: 0644]
jjb/releng/opnfv-utils.yml
jjb/sfc/sfc-project-jobs.yml [new file with mode: 0644]
jjb/yardstick/yardstick-daily.sh
jjb/yardstick/yardstick-get-k8s-conf.sh
utils/fetch_os_creds.sh
utils/test/reporting/reporting/qtip/reporting-status.py
utils/test/reporting/reporting/qtip/template/index-status-tmpl.html

diff --git a/.yamllint b/.yamllint
new file mode 100644 (file)
index 0000000..4402f17
--- /dev/null
+++ b/.yamllint
@@ -0,0 +1,8 @@
+---
+extends: default
+
+rules:
+  # 120 chars should be enough and don't fail if a line is longer
+  line-length:
+    max: 120
+    level: warning
index a3cd7b3..b33c78e 100644 (file)
                     pattern: 'lib/**'
                   - compare-type: ANT
                     pattern: 'config/**'
+                  - compare-type: ANT
+                    pattern: 'apex/**'
 
     properties:
         - logrotate-default
                   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
               - name: 'functest-apex-virtual-suite-{stream}'
                 current-parameters: false
                 predefined-parameters: |
-                  DEPLOY_SCENARIO={verify-scenario}
+                  DEPLOY_SCENARIO=$DEPLOY_SCENARIO
                   FUNCTEST_SUITE_NAME=healthcheck
                   GERRIT_BRANCH=$GERRIT_BRANCH
                   GERRIT_REFSPEC=$GERRIT_REFSPEC
index 3f69ff6..499e426 100644 (file)
                     pattern: 'lib/**'
                   - compare-type: ANT
                     pattern: 'config/**'
+                  - compare-type: ANT
+                    pattern: 'apex/**'
 
     properties:
         - logrotate-default
                   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
               - name: 'functest-apex-virtual-suite-{stream}'
                 current-parameters: false
                 predefined-parameters: |
-                  DEPLOY_SCENARIO={verify-scenario}
+                  DEPLOY_SCENARIO=$DEPLOY_SCENARIO
                   FUNCTEST_SUITE_NAME=healthcheck
                   GERRIT_BRANCH=$GERRIT_BRANCH
                   GERRIT_REFSPEC=$GERRIT_REFSPEC
index 00a78ce..a749d1d 100644 (file)
@@ -13,7 +13,7 @@ if [[ -e securityaudit.log ]] ; then
         EXITSTATUS=1
     fi
 
-    cat securityaudit.log  | awk -F"ERROR - " '{print $2}' | sed -e "s/\"/\\\\\"/g;s/\'/\\\\\'/g"> shortlog
+    awk -F"ERROR - " '{print $2}' securityaudit.log | sed -e "s/\"/\\\\\"/g;s/\'/\\\\/g"> shortlog
 
     ssh -p 29418 gerrit.opnfv.org \
         "gerrit review -p $GERRIT_PROJECT \
index 92b1db3..f6dda5f 100644 (file)
         - build-name:
             name: '$BUILD_NUMBER - Scenario: $DEPLOY_SCENARIO'
         - timeout:
-            timeout: 180
+            timeout: 240
             abort: true
         - fix-workspace-permissions
 
index 3ae0cbc..2d66fe0 100755 (executable)
 # clean up dependent project docker images, which has no containers and image tag None
 clean_images=(opnfv/functest opnfv/yardstick opnfv/testapi mongo)
 for clean_image in "${clean_images[@]}"; do
-    echo "Removing image $image_id, which has no containers and image tag is None"
     dangling_images=($(docker images -f "dangling=true" | grep ${clean_image} | awk '{print $3}'))
     if [[ -n ${dangling_images} ]]; then
         for image_id in "${dangling_images[@]}"; do
+            echo "Removing image $image_id, which has no containers and image tag is None"
             docker rmi $image_id >${redirect}
         done
     fi
 done
 
-echo "Remove containers with image opnfv/dovetail:<None>..."
+echo "Remove dovetail images with tag None and containers with these images ..."
 dangling_images=($(docker images -f "dangling=true" | grep opnfv/dovetail | awk '{print $3}'))
 if [[ -n ${dangling_images} ]]; then
     for image_id in "${dangling_images[@]}"; do
@@ -37,13 +37,13 @@ if [[ ! -z $(docker ps -a | grep opnfv/dovetail) ]]; then
     docker ps -a | grep opnfv/dovetail | awk '{print $1}' | xargs docker rm -f >${redirect}
 fi
 
-echo "Remove dovetail existing images if exist..."
-if [[ ! -z $(docker images | grep opnfv/dovetail) ]]; then
-    echo "Docker images to remove:"
-    docker images | head -1 && docker images | grep opnfv/dovetail >${redirect}
-    image_tags=($(docker images | grep opnfv/dovetail | awk '{print $2}'))
-    for tag in "${image_tags[@]}"; do
-        echo "Removing docker image opnfv/dovetail:$tag..."
-        docker rmi opnfv/dovetail:$tag >${redirect}
-    done
-fi
+#echo "Remove dovetail existing images if exist..."
+#if [[ ! -z $(docker images | grep opnfv/dovetail) ]]; then
+#    echo "Docker images to remove:"
+#    docker images | head -1 && docker images | grep opnfv/dovetail >${redirect}
+#    image_tags=($(docker images | grep opnfv/dovetail | awk '{print $2}'))
+#    for tag in "${image_tags[@]}"; do
+#        echo "Removing docker image opnfv/dovetail:$tag..."
+#        docker rmi opnfv/dovetail:$tag >${redirect}
+#    done
+#fi
index cbdd3dd..e5bb409 100644 (file)
         branch: 'stable/{stream}'
         disabled: true
         gs-pathname: '/{stream}'
+    danube: &danube
+        stream: danube
+        branch: 'stable/{stream}'
+        disabled: false
+        gs-pathname: '/{stream}'
 #--------------------------------
 # POD, INSTALLER, AND BRANCH MAPPING
 #--------------------------------
@@ -53,6 +58,9 @@
         - zte-pod3:
             slave-label: zte-pod3
             <<: *euphrates
+        - zte-pod1:
+            slave-label: zte-pod1
+            <<: *danube
 #--------------------------------
 #       scenarios
 #--------------------------------
         # 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
-        # 5,only run against scenario os-odl_l2-bgpvpn-ha(regex used here, can extend to more scenarios future)
+        #   only to debug the dovetail tool bugs with bgpvpn and nosdn-nofeature
+        # 5.only run against scenario os-odl_l2-bgpvpn-ha(regex used here, can extend to more scenarios future)
+        # 6.ZTE pod1, os-nosdn-nofeature-ha and os-odl_l2-bgpvpn-ha, run against danube
         - conditional-step:
             condition-kind: regex-match
-            regex: os-odl_l2-bgpvpn-ha
+            regex: os-(nosdn-nofeature|odl_l2-bgpvpn)-ha
             label: '{scenario}'
             steps:
                 - trigger-builds:
                         build-step-failure-threshold: 'never'
                         failure-threshold: 'never'
                         unstable-threshold: 'FAILURE'
-        # ZTE pod1 weekly(Sunday), os-odl_l2-nofeature-ha, run against master and euphrates
-        - conditional-step:
-            condition-kind: and
-            condition-operands:
-                - condition-kind: regex-match
-                  regex: os-odl_l2-nofeature-ha
-                  label: '{scenario}'
-                - condition-kind: regex-match
-                  regex: zte-pod1
-                  label: '{pod}'
-                - condition-kind: day-of-week
-                  day-selector: select-days
-                  days:
-                      SAT: true
-                  use-build-time: true
-            steps:
-                - trigger-builds:
-                    - project: 'dovetail-fuel-zte-pod1-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'
 
     publishers:
         - email:
     name: 'fuel-os-nosdn-kvm_ovs_dpdk_bar-noha-zte-pod3-daily-euphrates-trigger'
     triggers:
         - timed: ''
+#------------------------------------------------
+# ZTE POD1 Triggers running against danube branch
+#------------------------------------------------
+- trigger:
+    name: 'fuel-os-nosdn-nofeature-ha-zte-pod1-daily-danube-trigger'
+    triggers:
+        - timed: '0 2 * * 6'
+- trigger:
+    name: 'fuel-os-odl_l2-nofeature-ha-zte-pod1-daily-danube-trigger'
+    triggers:
+        - timed: ''
+- trigger:
+    name: 'fuel-os-odl_l3-nofeature-ha-zte-pod1-daily-danube-trigger'
+    triggers:
+        - timed: ''
+- trigger:
+    name: 'fuel-os-onos-sfc-ha-zte-pod1-daily-danube-trigger'
+    triggers:
+        - timed: ''
+- trigger:
+    name: 'fuel-os-onos-nofeature-ha-zte-pod1-daily-danube-trigger'
+    triggers:
+        - timed: ''
+- trigger:
+    name: 'fuel-os-odl_l2-bgpvpn-ha-zte-pod1-daily-danube-trigger'
+    triggers:
+        - timed: '0 2 * * 1,3,5'
+- trigger:
+    name: 'fuel-os-odl_l2-sfc-ha-zte-pod1-daily-danube-trigger'
+    triggers:
+        - timed: ''
+- trigger:
+    name: 'fuel-os-nosdn-kvm-ha-zte-pod1-daily-danube-trigger'
+    triggers:
+        - timed: ''
+- trigger:
+    name: 'fuel-os-nosdn-ovs-ha-zte-pod1-daily-danube-trigger'
+    triggers:
+        - timed: ''
+- trigger:
+    name: 'fuel-os-nosdn-kvm_ovs_dpdk-ha-zte-pod1-daily-danube-trigger'
+    triggers:
+        - timed: ''
+- trigger:
+    name: 'fuel-os-nosdn-kvm_ovs_dpdk_bar-ha-zte-pod1-daily-danube-trigger'
+    triggers:
+        - timed: ''
+# NOHA Scenarios
+- trigger:
+    name: 'fuel-os-nosdn-nofeature-noha-zte-pod1-daily-danube-trigger'
+    triggers:
+        - timed: ''
+- trigger:
+    name: 'fuel-os-odl_l2-nofeature-noha-zte-pod1-daily-danube-trigger'
+    triggers:
+        - timed: ''
+- trigger:
+    name: 'fuel-os-odl_l3-nofeature-noha-zte-pod1-daily-danube-trigger'
+    triggers:
+        - timed: ''
+- trigger:
+    name: 'fuel-os-onos-sfc-noha-zte-pod1-daily-danube-trigger'
+    triggers:
+        - timed: ''
+- trigger:
+    name: 'fuel-os-onos-nofeature-noha-zte-pod1-daily-danube-trigger'
+    triggers:
+        - timed: ''
+- trigger:
+    name: 'fuel-os-odl_l2-sfc-noha-zte-pod1-daily-danube-trigger'
+    triggers:
+        - timed: ''
+- trigger:
+    name: 'fuel-os-odl_l2-bgpvpn-noha-zte-pod1-daily-danube-trigger'
+    triggers:
+        - timed: ''
+- trigger:
+    name: 'fuel-os-nosdn-kvm-noha-zte-pod1-daily-danube-trigger'
+    triggers:
+        - timed: ''
+- trigger:
+    name: 'fuel-os-nosdn-ovs-noha-zte-pod1-daily-danube-trigger'
+    triggers:
+        - timed: ''
+- trigger:
+    name: 'fuel-os-nosdn-kvm_ovs_dpdk-noha-zte-pod1-daily-danube-trigger'
+    triggers:
+        - timed: ''
+- trigger:
+    name: 'fuel-os-nosdn-kvm_ovs_dpdk_bar-noha-zte-pod1-daily-danube-trigger'
+    triggers:
+        - timed: ''
index e54c3bf..f18f054 100755 (executable)
@@ -6,15 +6,20 @@ set +o pipefail
 
 [[ $CI_DEBUG == true ]] && redirect="/dev/stdout" || redirect="/dev/null"
 
+DEPLOY_TYPE=baremetal
+[[ $BUILD_TAG =~ "virtual" ]] && DEPLOY_TYPE=virt
+HOST_ARCH=$(uname -m)
+
 # Prepare OpenStack credentials volume
+rc_file_vol="-v ${HOME}/opnfv-openrc.sh:/home/opnfv/functest/conf/openstack.creds"
+
 if [[ ${INSTALLER_TYPE} == 'joid' ]]; then
     rc_file_vol="-v $LAB_CONFIG/admin-openrc:/home/opnfv/functest/conf/openstack.creds"
 elif [[ ${INSTALLER_TYPE} == 'compass' && ${BRANCH} == 'master' ]]; then
     cacert_file_vol="-v ${HOME}/os_cacert:/home/opnfv/functest/conf/os_cacert"
     echo "export OS_CACERT=/home/opnfv/functest/conf/os_cacert" >> ${HOME}/opnfv-openrc.sh
-    rc_file_vol="-v ${HOME}/opnfv-openrc.sh:/home/opnfv/functest/conf/openstack.creds"
-else
-    rc_file_vol="-v ${HOME}/opnfv-openrc.sh:/home/opnfv/functest/conf/openstack.creds"
+elif [[ ${INSTALLER_TYPE} == 'fuel' && ${DEPLOY_TYPE} == 'baremetal' ]]; then
+    cacert_file_vol="-v ${HOME}/os_cacert:/etc/ssl/certs/mcp_os_cacert"
 fi
 
 
@@ -23,17 +28,13 @@ if ! sudo iptables -C FORWARD -j RETURN 2> ${redirect} || ! sudo iptables -L FOR
     sudo iptables -I FORWARD -j RETURN
 fi
 
-DEPLOY_TYPE=baremetal
-[[ $BUILD_TAG =~ "virtual" ]] && DEPLOY_TYPE=virt
-HOST_ARCH=$(uname -m)
-
 echo "Functest: Start Docker and prepare environment"
 
 if [ "$BRANCH" != 'stable/danube' ]; then
   echo "Functest: Download images that will be used by test cases"
   images_dir="${HOME}/opnfv/functest/images"
   chmod +x ${WORKSPACE}/functest/ci/download_images.sh
-  ${WORKSPACE}/functest/ci/download_images.sh ${images_dir} > ${redirect} 2>&1
+  ${WORKSPACE}/functest/ci/download_images.sh ${images_dir} > ${redirect}
   images_vol="-v ${images_dir}:/home/opnfv/functest/images"
   echo "Functest: Images successfully downloaded"
 fi
index a81dce3..10afd6f 100644 (file)
+---
 - parameter:
     name: 'apex-defaults'
     parameters:
-        - string:
-            name: INSTALLER_IP
-            default: '192.168.X.X'
-            description: 'IP of the installer'
-        - string:
-            name: INSTALLER_TYPE
-            default: apex
-            description: 'Installer used for deploying OPNFV on this POD'
-        - string:
-            name: EXTERNAL_NETWORK
-            default: 'external'
-            description: 'external network for test'
+      - string:
+          name: INSTALLER_IP
+          default: '192.168.X.X'
+          description: 'IP of the installer'
+      - string:
+          name: INSTALLER_TYPE
+          default: apex
+          description: 'Installer used for deploying OPNFV on this POD'
+      - string:
+          name: EXTERNAL_NETWORK
+          default: 'external'
+          description: 'external network for test'
 
 - parameter:
     name: 'compass-defaults'
     parameters:
-        - string:
-            name: INSTALLER_IP
-            default: '192.168.200.2'
-            description: 'IP of the installer'
-        - string:
-            name: INSTALLER_TYPE
-            default: compass
-            description: 'Installer used for deploying OPNFV on this POD'
-        - string:
-            name: EXTERNAL_NETWORK
-            default: 'ext-net'
-            description: 'external network for test'
+      - string:
+          name: INSTALLER_IP
+          default: '192.168.200.2'
+          description: 'IP of the installer'
+      - string:
+          name: INSTALLER_TYPE
+          default: compass
+          description: 'Installer used for deploying OPNFV on this POD'
+      - string:
+          name: EXTERNAL_NETWORK
+          default: 'ext-net'
+          description: 'external network for test'
 
 - parameter:
     name: 'fuel-defaults'
     parameters:
-        - string:
-            name: INSTALLER_IP
-            default: '10.20.0.2'
-            description: 'IP of the installer'
-        - string:
-            name: SALT_MASTER_IP
-            default: '192.168.10.100'
-            description: 'IP of the salt master (for mcp deployments)'
-        - string:
-            name: SSH_KEY
-            default: '/tmp/mcp.rsa'
-            description: 'Path to private SSH key to access environment nodes'
-        - string:
-            name: INSTALLER_TYPE
-            default: fuel
-            description: 'Installer used for deploying OPNFV on this POD'
-        - string:
-            name: EXTERNAL_NETWORK
-            default: 'admin_floating_net'
-            description: 'external network for test'
-        - string:
-            name: BRIDGE
-            default: 'pxebr'
-            description: 'Bridge(s) to be used by salt master'
+      - string:
+          name: INSTALLER_IP
+          default: '10.20.0.2'
+          description: 'IP of the installer'
+      - string:
+          name: SALT_MASTER_IP
+          default: '192.168.10.100'
+          description: 'IP of the salt master (for mcp deployments)'
+      - string:
+          name: SSH_KEY
+          default: '/tmp/mcp.rsa'
+          description: 'Path to private SSH key to access environment nodes'
+      - string:
+          name: INSTALLER_TYPE
+          default: fuel
+          description: 'Installer used for deploying OPNFV on this POD'
+      - string:
+          name: EXTERNAL_NETWORK
+          default: 'admin_floating_net'
+          description: 'external network for test'
+      - string:
+          name: BRIDGE
+          default: 'pxebr'
+          description: 'Bridge(s) to be used by salt master'
 
 - parameter:
     name: 'joid-defaults'
     parameters:
-        - string:
-            name: INSTALLER_IP
-            default: '192.168.122.5'
-            description: 'IP of the installer'
-        - string:
-            name: INSTALLER_TYPE
-            default: joid
-            description: 'Installer used for deploying OPNFV on this POD'
-        - string:
-            name: MODEL
-            default: 'os'
-            description: 'Model to deploy (os|k8)'
-        - string:
-            name: OS_RELEASE
-            default: 'ocata'
-            description: 'OpenStack release (mitaka|newton|ocata)'
-        - string:
-            name: EXTERNAL_NETWORK
-            default: ext-net
-            description: "External network used for Floating ips."
-        - string:
-            name: LAB_CONFIG
-            default: "$HOME/joid_config"
-            description: "Local lab config and Openstack openrc location"
-        - string:
-            name: MAAS_REINSTALL
-            default: 'false'
-            description: "Reinstall MAAS and Bootstrap before deploy [true/false]"
-        - string:
-            name: UBUNTU_DISTRO
-            default: 'xenial'
-            description: "Ubuntu distribution to use for Openstack (xenial)"
-        - string:
-            name: CPU_ARCHITECTURE
-            default: 'amd64'
-            description: "CPU Architecture to use for Ubuntu distro "
+      - string:
+          name: INSTALLER_IP
+          default: '192.168.122.5'
+          description: 'IP of the installer'
+      - string:
+          name: INSTALLER_TYPE
+          default: joid
+          description: 'Installer used for deploying OPNFV on this POD'
+      - string:
+          name: MODEL
+          default: 'os'
+          description: 'Model to deploy (os|k8)'
+      - string:
+          name: OS_RELEASE
+          default: 'ocata'
+          description: 'OpenStack release (mitaka|newton|ocata)'
+      - string:
+          name: EXTERNAL_NETWORK
+          default: ext-net
+          description: "External network used for Floating ips."
+      - string:
+          name: LAB_CONFIG
+          default: "$HOME/joid_config"
+          description: "Local lab config and Openstack openrc location"
+      - string:
+          name: MAAS_REINSTALL
+          default: 'false'
+          description: "Reinstall MAAS and Bootstrap before deploy [true/false]"
+      - string:
+          name: UBUNTU_DISTRO
+          default: 'xenial'
+          description: "Ubuntu distribution to use for Openstack (xenial)"
+      - string:
+          name: CPU_ARCHITECTURE
+          default: 'amd64'
+          description: "CPU Architecture to use for Ubuntu distro "
 
 - parameter:
     name: 'daisy-defaults'
     parameters:
-        - string:
-            name: INSTALLER_IP
-            default: '10.20.7.3'
-            description: 'IP of the installer'
-        - string:
-            name: INSTALLER_TYPE
-            default: daisy
-            description: 'Installer used for deploying OPNFV on this POD'
-        - string:
-            name: BRIDGE
-            default: 'br7'
-            description: 'pxe bridge for booting of Daisy master'
+      - string:
+          name: INSTALLER_IP
+          default: '10.20.7.3'
+          description: 'IP of the installer'
+      - string:
+          name: INSTALLER_TYPE
+          default: daisy
+          description: 'Installer used for deploying OPNFV on this POD'
+      - string:
+          name: BRIDGE
+          default: 'br7'
+          description: 'pxe bridge for booting of Daisy master'
 
 - parameter:
     name: 'infra-defaults'
     parameters:
-        - string:
-            name: INSTALLER_IP
-            default: '192.168.122.2'
-            description: 'IP of the installer'
-        - string:
-            name: INSTALLER_TYPE
-            default: infra
-            description: 'Installer used for deploying OPNFV on this POD'
+      - string:
+          name: INSTALLER_IP
+          default: '192.168.122.2'
+          description: 'IP of the installer'
+      - string:
+          name: INSTALLER_TYPE
+          default: infra
+          description: 'Installer used for deploying OPNFV on this POD'
+
 - parameter:
     name: 'netvirt-defaults'
     parameters:
-        - string:
-            name: INSTALLER_IP
-            default: '192.168.X.X'
-            description: 'IP of the installer'
-        - string:
-            name: INSTALLER_TYPE
-            default: apex
-            description: 'Installer used for deploying OPNFV on this POD'
-        - string:
-            name: EXTERNAL_NETWORK
-            default: 'external'
-            description: 'external network for test'
+      - string:
+          name: INSTALLER_IP
+          default: '192.168.X.X'
+          description: 'IP of the installer'
+      - string:
+          name: INSTALLER_TYPE
+          default: apex
+          description: 'Installer used for deploying OPNFV on this POD'
+      - string:
+          name: EXTERNAL_NETWORK
+          default: 'external'
+          description: 'external network for test'
index 75e00f9..2e94767 100644 (file)
@@ -1,17 +1,18 @@
+---
 # jjb defaults
 
 - defaults:
     name: global
 
     wrappers:
-        - ssh-agent-wrapper
+      - ssh-agent-wrapper
 
     project-type: freestyle
 
     node: master
 
     properties:
-        - logrotate-default
+      - logrotate-default
 
     publishers:
       # Any project that has a publisher will not have this macro
index 75fe8b3..20b13b8 100644 (file)
@@ -1,3 +1,4 @@
+---
 # Releng macros
 #
 # NOTE: make sure macros are listed in execution ordered.
 - parameter:
     name: project-parameter
     parameters:
-        - string:
-            name: PROJECT
-            default: '{project}'
-            description: "JJB configured PROJECT parameter to identify an opnfv Gerrit project"
-        - string:
-            name: GS_BASE
-            default: artifacts.opnfv.org/$PROJECT
-            description: "URL to Google Storage."
-        - string:
-            name: GS_BASE_PROXY
-            default: build.opnfv.org/artifacts.opnfv.org/$PROJECT
-            description: "URL to Google Storage proxy"
-        - string:
-            name: BRANCH
-            default: '{branch}'
-            description: "JJB configured BRANCH parameter (e.g. master, stable/danube)"
-        - string:
-            name: GERRIT_BRANCH
-            default: '{branch}'
-            description: "JJB configured GERRIT_BRANCH parameter (deprecated)"
+      - string:
+          name: PROJECT
+          default: '{project}'
+          description: "JJB configured PROJECT parameter to identify an opnfv Gerrit project"
+      - string:
+          name: GS_BASE
+          default: artifacts.opnfv.org/$PROJECT
+          description: "URL to Google Storage."
+      - string:
+          name: GS_BASE_PROXY
+          default: build.opnfv.org/artifacts.opnfv.org/$PROJECT
+          description: "URL to Google Storage proxy"
+      - string:
+          name: BRANCH
+          default: '{branch}'
+          description: "JJB configured BRANCH parameter (e.g. master, stable/danube)"
+      - string:
+          name: GERRIT_BRANCH
+          default: '{branch}'
+          description: "JJB configured GERRIT_BRANCH parameter (deprecated)"
 
 - property:
     name: logrotate-default
     properties:
-        - build-discarder:
-            days-to-keep: 60
-            num-to-keep: 200
-            artifact-days-to-keep: 60
-            artifact-num-to-keep: 200
+      - build-discarder:
+          days-to-keep: 60
+          num-to-keep: 200
+          artifact-days-to-keep: 60
+          artifact-num-to-keep: 200
 
 - scm:
     name: git-scm
     scm:
-        - git: &git-scm-defaults
-            credentials-id: '$SSH_CREDENTIAL_ID'
-            url: '$GIT_BASE'
-            branches:
-                - 'origin/$BRANCH'
-            timeout: 15
+      - git: &git-scm-defaults
+          credentials-id: '$SSH_CREDENTIAL_ID'
+          url: '$GIT_BASE'
+          branches:
+            - 'origin/$BRANCH'
+          timeout: 15
 
 - scm:
     name: git-scm-gerrit
     scm:
-        - git:
-            choosing-strategy: 'gerrit'
-            refspec: '$GERRIT_REFSPEC'
-            <<: *git-scm-defaults
+      - git:
+          choosing-strategy: 'gerrit'
+          refspec: '$GERRIT_REFSPEC'
+          <<: *git-scm-defaults
 - scm:
     name: git-scm-with-submodules
     scm:
-        - git:
-            credentials-id: '$SSH_CREDENTIAL_ID'
-            url: '$GIT_BASE'
-            refspec: ''
-            branches:
-                - 'refs/heads/{branch}'
-            skip-tag: true
-            wipe-workspace: true
-            submodule:
-                recursive: true
-                timeout: 20
+      - git:
+          credentials-id: '$SSH_CREDENTIAL_ID'
+          url: '$GIT_BASE'
+          refspec: ''
+          branches:
+            - 'refs/heads/{branch}'
+          skip-tag: true
+          wipe-workspace: true
+          submodule:
+            recursive: true
+            timeout: 20
 - trigger:
     name: 'daily-trigger-disabled'
     triggers:
-        - timed: ''
+      - timed: ''
 
 - trigger:
     name: 'weekly-trigger-disabled'
     triggers:
-        - timed: ''
+      - timed: ''
 
 - trigger:
     name: gerrit-trigger-patchset-created
     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: false
-                failed: false
-                unstable: false
-                notbuilt: false
+      - 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: false
+            failed: false
+            unstable: false
+            notbuilt: false
 
 - trigger:
     name: gerrit-trigger-change-merged
     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: '{files}'
+      - 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: '{files}'
 
 - trigger:
     name: 'experimental'
     triggers:
-        - gerrit:
-            server-name: 'gerrit.opnfv.org'
-            trigger-on:
-                - comment-added-contains-event:
-                    comment-contains-value: 'check-experimental'
-            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:
+            - comment-added-contains-event:
+                comment-contains-value: 'check-experimental'
+          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
 
 - wrapper:
     name: ssh-agent-wrapper
     wrappers:
-        - ssh-agent-credentials:
-            users:
-                - 'd42411ac011ad6f3dd2e1fa34eaa5d87f910eb2e'
+      - ssh-agent-credentials:
+          users:
+            - 'd42411ac011ad6f3dd2e1fa34eaa5d87f910eb2e'
 
 - wrapper:
     name: build-timeout
 - wrapper:
     name: fix-workspace-permissions
     wrappers:
-        - pre-scm-buildstep:
+      - pre-scm-buildstep:
           - shell: |
-                #!/bin/bash
-                sudo chown -R $USER:$USER $WORKSPACE || exit 1
+             #!/bin/bash
+             sudo chown -R $USER:$USER $WORKSPACE || exit 1
 
 - builder:
     name: build-html-and-pdf-docs-output
     builders:
-        - shell: |
-            #!/bin/bash
-            set -o errexit
-            set -o xtrace
-            export PATH=$PATH:/usr/local/bin/
-            git clone ssh://gerrit.opnfv.org:29418/opnfvdocs docs_build/_opnfvdocs
-            GERRIT_COMMENT=gerrit_comment.txt ./docs_build/_opnfvdocs/scripts/docs-build.sh
+      - shell: |
+          #!/bin/bash
+          set -o errexit
+          set -o xtrace
+          export PATH=$PATH:/usr/local/bin/
+          git clone ssh://gerrit.opnfv.org:29418/opnfvdocs docs_build/_opnfvdocs
+          GERRIT_COMMENT=gerrit_comment.txt ./docs_build/_opnfvdocs/scripts/docs-build.sh
 
 - builder:
     name: upload-under-review-docs-to-opnfv-artifacts
     builders:
-        - shell: |
-            #!/bin/bash
-            set -o errexit
-            set -o pipefail
-            set -o xtrace
-            export PATH=$PATH:/usr/local/bin/
-
-            [[ $GERRIT_CHANGE_NUMBER =~ .+ ]]
-            [[ -d docs_output ]] || exit 0
-
-            echo
-            echo "###########################"
-            echo "UPLOADING DOCS UNDER REVIEW"
-            echo "###########################"
-            echo
-
-            gs_base="artifacts.opnfv.org/$PROJECT/review"
-            gs_path="$gs_base/$GERRIT_CHANGE_NUMBER"
-            local_path="upload/$GERRIT_CHANGE_NUMBER"
-
-            mkdir -p upload
-            mv docs_output "$local_path"
-            gsutil -m cp -r "$local_path" "gs://$gs_base"
-
-            gsutil -m setmeta \
-                -h "Content-Type:text/html" \
-                -h "Cache-Control:private, max-age=0, no-transform" \
-                "gs://$gs_path"/**.html > /dev/null 2>&1
-
-            echo "Document link(s):" >> gerrit_comment.txt
-            find "$local_path" | grep -e 'index.html$' -e 'pdf$' | \
-                sed -e "s|^$local_path|    http://$gs_path|" >> gerrit_comment.txt
+      - shell: |
+          #!/bin/bash
+          set -o errexit
+          set -o pipefail
+          set -o xtrace
+          export PATH=$PATH:/usr/local/bin/
+
+          [[ $GERRIT_CHANGE_NUMBER =~ .+ ]]
+          [[ -d docs_output ]] || exit 0
+
+          echo
+          echo "###########################"
+          echo "UPLOADING DOCS UNDER REVIEW"
+          echo "###########################"
+          echo
+
+          gs_base="artifacts.opnfv.org/$PROJECT/review"
+          gs_path="$gs_base/$GERRIT_CHANGE_NUMBER"
+          local_path="upload/$GERRIT_CHANGE_NUMBER"
+
+          mkdir -p upload
+          mv docs_output "$local_path"
+          gsutil -m cp -r "$local_path" "gs://$gs_base"
+
+          gsutil -m setmeta \
+              -h "Content-Type:text/html" \
+              -h "Cache-Control:private, max-age=0, no-transform" \
+              "gs://$gs_path"/**.html > /dev/null 2>&1
+
+          echo "Document link(s):" >> gerrit_comment.txt
+          find "$local_path" | grep -e 'index.html$' -e 'pdf$' | \
+              sed -e "s|^$local_path|    http://$gs_path|" >> gerrit_comment.txt
 
 - builder:
     name: upload-generated-docs-to-opnfv-artifacts
     builders:
-        - shell: |
-            #!/bin/bash
-            set -o errexit
-            set -o pipefail
-            set -o xtrace
-            export PATH=$PATH:/usr/local/bin/
+      - shell: |
+          #!/bin/bash
+          set -o errexit
+          set -o pipefail
+          set -o xtrace
+          export PATH=$PATH:/usr/local/bin/
 
-            [[ -d docs_output ]] || exit 0
+          [[ -d docs_output ]] || exit 0
 
-            echo
-            echo "########################"
-            echo "UPLOADING GENERATED DOCS"
-            echo "########################"
-            echo
+          echo
+          echo "########################"
+          echo "UPLOADING GENERATED DOCS"
+          echo "########################"
+          echo
 
-            echo "gs_path="$GS_URL/docs""
-            echo "local_path="upload/docs""
+          echo "gs_path="$GS_URL/docs""
+          echo "local_path="upload/docs""
 
-            gs_path="$GS_URL/docs"
-            local_path="upload/docs"
+          gs_path="$GS_URL/docs"
+          local_path="upload/docs"
 
-            mkdir -p upload
-            mv docs_output "$local_path"
-            ls "$local_path"
+          mkdir -p upload
+          mv docs_output "$local_path"
+          ls "$local_path"
 
-            echo "gsutil -m cp -r "$local_path"/* "gs://$gs_path""
-            gsutil -m cp -r "$local_path"/* "gs://$gs_path"
+          echo "gsutil -m cp -r "$local_path"/* "gs://$gs_path""
+          gsutil -m cp -r "$local_path"/* "gs://$gs_path"
 
-            gsutil -m setmeta \
-                -h "Content-Type:text/html" \
-                -h "Cache-Control:private, max-age=0, no-transform" \
-                "gs://$gs_path"/**.html > /dev/null 2>&1
+          gsutil -m setmeta \
+              -h "Content-Type:text/html" \
+              -h "Cache-Control:private, max-age=0, no-transform" \
+              "gs://$gs_path"/**.html > /dev/null 2>&1
 
-            echo "Document link(s):" >> gerrit_comment.txt
-            find "$local_path" | grep -e 'index.html$' -e 'pdf$' | \
-                sed -e "s|^$local_path|    http://$gs_path|" >> gerrit_comment.txt
+          echo "Document link(s):" >> gerrit_comment.txt
+          find "$local_path" | grep -e 'index.html$' -e 'pdf$' | \
+              sed -e "s|^$local_path|    http://$gs_path|" >> gerrit_comment.txt
 
 # To take advantage of this macro, have your build write
 # out the file 'gerrit_comment.txt' with information to post
 - builder:
     name: report-build-result-to-gerrit
     builders:
-        - shell: |
-            #!/bin/bash
-            set -o errexit
-            set -o pipefail
-            set -o xtrace
-            export PATH=$PATH:/usr/local/bin/
-            if [[ -e gerrit_comment.txt ]] ; then
-                echo
-                echo "posting review comment to gerrit..."
-                echo
-                cat gerrit_comment.txt
-                echo
-                ssh -p 29418 gerrit.opnfv.org \
-                    "gerrit review -p $GERRIT_PROJECT \
-                     -m '$(cat gerrit_comment.txt)' \
-                     $GERRIT_PATCHSET_REVISION \
-                     --notify NONE"
-            fi
+      - shell: |
+          #!/bin/bash
+          set -o errexit
+          set -o pipefail
+          set -o xtrace
+          export PATH=$PATH:/usr/local/bin/
+          if [[ -e gerrit_comment.txt ]] ; then
+              echo
+              echo "posting review comment to gerrit..."
+              echo
+              cat gerrit_comment.txt
+              echo
+              ssh -p 29418 gerrit.opnfv.org \
+                  "gerrit review -p $GERRIT_PROJECT \
+                   -m '$(cat gerrit_comment.txt)' \
+                   $GERRIT_PATCHSET_REVISION \
+                   --notify NONE"
+          fi
 
 - builder:
     name: remove-old-docs-from-opnfv-artifacts
     builders:
-        - shell: |
-            #!/bin/bash
-            set -o errexit
-            set -o pipefail
-            set -o xtrace
-            export PATH=$PATH:/usr/local/bin/
-
-            [[ $GERRIT_CHANGE_NUMBER =~ .+ ]]
-
-            gs_path="artifacts.opnfv.org/$PROJECT/review/$GERRIT_CHANGE_NUMBER"
-
-            if gsutil ls "gs://$gs_path" > /dev/null 2>&1 ; then
-                echo
-                echo "Deleting Out-of-dated Documents..."
-                gsutil -m rm -r "gs://$gs_path"
-            fi
-            gs_path="artifacts.opnfv.org/review/$GERRIT_CHANGE_NUMBER"
-
-            if gsutil ls "gs://$gs_path" > /dev/null 2>&1 ; then
-                echo
-                echo "Deleting Out-of-dated Documents..."
-                gsutil -m rm -r "gs://$gs_path"
-            fi
+      - shell: |
+          #!/bin/bash
+          set -o errexit
+          set -o pipefail
+          set -o xtrace
+          export PATH=$PATH:/usr/local/bin/
+
+          [[ $GERRIT_CHANGE_NUMBER =~ .+ ]]
+
+          gs_path="artifacts.opnfv.org/$PROJECT/review/$GERRIT_CHANGE_NUMBER"
+
+          if gsutil ls "gs://$gs_path" > /dev/null 2>&1 ; then
+              echo
+              echo "Deleting Out-of-dated Documents..."
+              gsutil -m rm -r "gs://$gs_path"
+          fi
+          gs_path="artifacts.opnfv.org/review/$GERRIT_CHANGE_NUMBER"
+
+          if gsutil ls "gs://$gs_path" > /dev/null 2>&1 ; then
+              echo
+              echo "Deleting Out-of-dated Documents..."
+              gsutil -m rm -r "gs://$gs_path"
+          fi
 
 - builder:
     name: build-and-upload-artifacts-json-api
     builders:
-        - shell: |
-            #!/bin/bash
-            set -o errexit
-            set -o pipefail
-            export PATH=$PATH:/usr/local/bin/
+      - shell: |
+          #!/bin/bash
+          set -o errexit
+          set -o pipefail
+          export PATH=$PATH:/usr/local/bin/
 
-            virtualenv -p python2.7 $WORKSPACE/releng_artifacts
-            source $WORKSPACE/releng_artifacts/bin/activate
+          virtualenv -p python2.7 $WORKSPACE/releng_artifacts
+          source $WORKSPACE/releng_artifacts/bin/activate
 
-            # install python packages
-            pip install google-api-python-client
+          # install python packages
+          pip install google-api-python-client
 
-            # generate and upload index file
-            echo "Generating Artifacts API ..."
-            python $WORKSPACE/utils/opnfv-artifacts.py > index.json
-            gsutil cp index.json gs://artifacts.opnfv.org/index.json
+          # generate and upload index file
+          echo "Generating Artifacts API ..."
+          python $WORKSPACE/utils/opnfv-artifacts.py > index.json
+          gsutil cp index.json gs://artifacts.opnfv.org/index.json
 
-            deactivate
+          deactivate
 
 - builder:
     name: lint-python-code
     builders:
-        - shell: |
-            #!/bin/bash
-            set -o errexit
-            set -o pipefail
-            set -o xtrace
-            export PATH=$PATH:/usr/local/bin/
-
-            virtualenv -p python2.7 $WORKSPACE/releng_flake8
-            source $WORKSPACE/releng_flake8/bin/activate
-
-            # install python packages
-            pip install "flake8==2.6.2"
-
-            # generate and upload lint log
-            echo "Running flake8 code on $PROJECT ..."
-
-            # Get number of flake8 violations. If none, this will be an
-            # empty string: ""
-            FLAKE_COUNT="$(find . \
+      - shell: |
+          #!/bin/bash
+          set -o errexit
+          set -o pipefail
+          set -o xtrace
+          export PATH=$PATH:/usr/local/bin/
+
+          virtualenv -p python2.7 $WORKSPACE/releng_flake8
+          source $WORKSPACE/releng_flake8/bin/activate
+
+          # install python packages
+          pip install "flake8==2.6.2"
+
+          # generate and upload lint log
+          echo "Running flake8 code on $PROJECT ..."
+
+          # Get number of flake8 violations. If none, this will be an
+          # empty string: ""
+          FLAKE_COUNT="$(find . \
+              -path './releng_flake8' -prune -o \
+              -path './.tox' -prune -o \
+              -type f -name "*.py" -print | \
+              xargs flake8 --exit-zero -qq --count 2>&1)"
+
+          # Ensure we start with a clean environment
+          rm -f lint.log
+
+          if [ ! -z $FLAKE_COUNT ]; then
+            echo "Flake8 Violations: $FLAKE_COUNT" > lint.log
+            find . \
                 -path './releng_flake8' -prune -o \
                 -path './.tox' -prune -o \
                 -type f -name "*.py" -print | \
-                xargs flake8 --exit-zero -qq --count 2>&1)"
-
-            # Ensure we start with a clean environment
-            rm -f lint.log
-
-            if [ ! -z $FLAKE_COUNT ]; then
-              echo "Flake8 Violations: $FLAKE_COUNT" > lint.log
-              find . \
-                  -path './releng_flake8' -prune -o \
-                  -path './.tox' -prune -o \
-                  -type f -name "*.py" -print | \
-                  xargs flake8 --exit-zero --first >> violation.log
-              SHOWN=$(wc -l violation.log | cut -d' ' -f1)
-              echo -e "First $SHOWN shown\n---" >> lint.log
-              cat violation.log >> lint.log
-              sed -r -i '4,$s/^/ /g' lint.log
-              rm violation.log
-            fi
-
-            deactivate
+                xargs flake8 --exit-zero --first >> violation.log
+            SHOWN=$(wc -l violation.log | cut -d' ' -f1)
+            echo -e "First $SHOWN shown\n---" >> lint.log
+            cat violation.log >> lint.log
+            sed -r -i '4,$s/^/ /g' lint.log
+            rm violation.log
+          fi
+
+          deactivate
 
 - builder:
     name: report-lint-result-to-gerrit
     builders:
-        - shell: |
-            #!/bin/bash
-            set -o errexit
-            set -o pipefail
-            set -o xtrace
-            export PATH=$PATH:/usr/local/bin/
+      - shell: |
+          #!/bin/bash
+          set -o errexit
+          set -o pipefail
+          set -o xtrace
+          export PATH=$PATH:/usr/local/bin/
 
-            # If no violations were found, no lint log will exist.
-            if [[ -e lint.log ]] ; then
-                echo -e "\nposting linting report to gerrit...\n"
+          # If no violations were found, no lint log will exist.
+          if [[ -e lint.log ]] ; then
+              echo -e "\nposting linting report to gerrit...\n"
 
-                cat lint.log
-                echo
+              cat lint.log
+              echo
 
-                ssh -p 29418 gerrit.opnfv.org \
-                    "gerrit review -p $GERRIT_PROJECT \
-                     -m \"$(cat lint.log)\" \
-                     $GERRIT_PATCHSET_REVISION \
-                     --notify NONE"
+              ssh -p 29418 gerrit.opnfv.org \
+                  "gerrit review -p $GERRIT_PROJECT \
+                   -m \"$(cat lint.log)\" \
+                   $GERRIT_PATCHSET_REVISION \
+                   --notify NONE"
 
-                exit 1
-            fi
+              exit 1
+          fi
 
 - builder:
     name: upload-review-docs
     builders:
-        - build-html-and-pdf-docs-output
-        - upload-under-review-docs-to-opnfv-artifacts
-        - report-build-result-to-gerrit
+      - build-html-and-pdf-docs-output
+      - upload-under-review-docs-to-opnfv-artifacts
+      - report-build-result-to-gerrit
 
 - builder:
     name: upload-merged-docs
     builders:
-        - build-html-and-pdf-docs-output
-        - upload-generated-docs-to-opnfv-artifacts
-        - report-build-result-to-gerrit
-        - remove-old-docs-from-opnfv-artifacts
+      - build-html-and-pdf-docs-output
+      - upload-generated-docs-to-opnfv-artifacts
+      - report-build-result-to-gerrit
+      - remove-old-docs-from-opnfv-artifacts
 
 - builder:
     name: check-bash-syntax
     builders:
-        - shell: "find . -name '*.sh' | xargs bash -n"
+      - shell: "find . -name '*.sh' | xargs bash -n"
 
 - builder:
     name: lint-yaml-code
     builders:
-        - shell: |
-            #!/bin/bash
-            set -o errexit
-            set -o pipefail
-            set -o xtrace
-            export PATH=$PATH:/usr/local/bin/
-
-            # install python packages
-            pip install "yamllint==1.6.0"
-
-            # generate and upload lint log
-            echo "Running yaml code on $PROJECT ..."
-
-            # Ensure we start with a clean environment
-            rm -f yaml-violation.log lint.log
-
-            # Get number of yaml violations. If none, this will be an
-            # empty string: ""
-            find . \
-                -type f -name "*.yml" -print \
-                -o -name "*.yaml" -print | \
-                xargs yamllint > yaml-violation.log || true
-
-            if [ -s "yaml-violation.log" ]; then
-              SHOWN=$(cat yaml-violation.log| grep -v "^$" |wc -l)
-              echo -e "First $SHOWN shown\n---" > lint.log
-              cat yaml-violation.log >> lint.log
-              sed -r -i '4,$s/^/ /g' lint.log
-            fi
+      - shell: |
+          #!/bin/bash
+          set -o errexit
+          set -o pipefail
+          set -o xtrace
+          export PATH=$PATH:/usr/local/bin/
+
+          # install python packages
+          pip install "yamllint==1.6.0"
+
+          # generate and upload lint log
+          echo "Running yaml code on $PROJECT ..."
+
+          # Ensure we start with a clean environment
+          rm -f yaml-violation.log lint.log
+
+          # Get number of yaml violations. If none, this will be an
+          # empty string: ""
+          find . \
+              -type f -name "*.yml" -print \
+              -o -name "*.yaml" -print | \
+              xargs yamllint > yaml-violation.log || true
+
+          if [ -s "yaml-violation.log" ]; then
+            SHOWN=$(cat yaml-violation.log| grep -v "^$" |wc -l)
+            echo -e "First $SHOWN shown\n---" > lint.log
+            cat yaml-violation.log >> lint.log
+            sed -r -i '4,$s/^/ /g' lint.log
+          fi
 
 - builder:
     name: clean-workspace-log
     builders:
-        - shell: |
-            find $WORKSPACE -type f -name '*.log' | xargs rm -f
+      - shell: |
+          find $WORKSPACE -type f -name '*.log' | xargs rm -f
 
 - publisher:
     name: archive-artifacts
     publishers:
-        - archive:
-            artifacts: '{artifacts}'
-            allow-empty: true
-            fingerprint: true
-            latest-only: true
+      - archive:
+          artifacts: '{artifacts}'
+          allow-empty: true
+          fingerprint: true
+          latest-only: true
 
 - publisher:
     name: publish-coverage
index 9234206..2c3505a 100644 (file)
@@ -1,3 +1,4 @@
+---
 #####################################################
 # Parameters for slaves using old labels
 # This will be cleaned up once the new job structure and
 - parameter:
     name: 'apex-baremetal-master-defaults'
     parameters:
-        - label:
-            name: SLAVE_LABEL
-            default: 'apex-baremetal-master'
-        - 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'
-        - node:
-            name: SLAVE_NAME
-            description: 'Slave name on Jenkins'
-            allowed-slaves:
-                - lf-pod1
-            default-slaves:
-                - lf-pod1
+      - label:
+          name: SLAVE_LABEL
+          default: 'apex-baremetal-master'
+      - 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'
+      - node:
+          name: SLAVE_NAME
+          description: 'Slave name on Jenkins'
+          allowed-slaves:
+            - lf-pod1
+          default-slaves:
+            - lf-pod1
+
 - parameter:
     name: 'apex-baremetal-danube-defaults'
     parameters:
-        - label:
-            name: SLAVE_LABEL
-            default: 'apex-baremetal-danube'
-        - 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'
-        - node:
-            name: SLAVE_NAME
-            description: 'Slave name on Jenkins'
-            allowed-slaves:
-                - lf-pod1
-            default-slaves:
-                - lf-pod1
+      - label:
+          name: SLAVE_LABEL
+          default: 'apex-baremetal-danube'
+      - 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'
+      - node:
+          name: SLAVE_NAME
+          description: 'Slave name on Jenkins'
+          allowed-slaves:
+            - lf-pod1
+          default-slaves:
+            - lf-pod1
+
 - parameter:
     name: 'apex-virtual-master-defaults'
     parameters:
-        - label:
-            name: SLAVE_LABEL
-            default: 'apex-virtual-master'
-        - 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'
-        - node:
-            name: SLAVE_NAME
-            description: 'Slave name on Jenkins'
-            allowed-slaves:
-                - lf-virtual2
-                - lf-virtual3
-            default-slaves:
-                - lf-virtual2
-                - lf-virtual3
+      - label:
+          name: SLAVE_LABEL
+          default: 'apex-virtual-master'
+      - 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'
+      - node:
+          name: SLAVE_NAME
+          description: 'Slave name on Jenkins'
+          allowed-slaves:
+            - lf-virtual2
+            - lf-virtual3
+          default-slaves:
+            - lf-virtual2
+            - lf-virtual3
 
 - parameter:
     name: 'apex-virtual-danube-defaults'
     parameters:
-        - label:
-            name: SLAVE_LABEL
-            default: 'apex-virtual-danube'
-        - 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'
-        - node:
-            name: SLAVE_NAME
-            description: 'Slave name on Jenkins'
-            allowed-slaves:
-                - lf-pod3
-            default-slaves:
-                - lf-pod3
+      - label:
+          name: SLAVE_LABEL
+          default: 'apex-virtual-danube'
+      - 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'
+      - node:
+          name: SLAVE_NAME
+          description: 'Slave name on Jenkins'
+          allowed-slaves:
+            - lf-pod3
+          default-slaves:
+            - lf-pod3
+
 - parameter:
     name: 'lf-pod1-defaults'
     parameters:
-        - node:
-            name: SLAVE_NAME
-            description: 'Slave name on Jenkins'
-            allowed-slaves:
-                - lf-pod1
-            default-slaves:
-                - lf-pod1
-        - 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'
+      - node:
+          name: SLAVE_NAME
+          description: 'Slave name on Jenkins'
+          allowed-slaves:
+            - lf-pod1
+          default-slaves:
+            - lf-pod1
+      - 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'
+
 - parameter:
     name: 'lf-pod3-defaults'
     parameters:
-        - node:
-            name: SLAVE_NAME
-            description: 'Slave name on Jenkins'
-            allowed-slaves:
-                - lf-pod3
-            default-slaves:
-                - lf-pod3
-        - 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'
+      - node:
+          name: SLAVE_NAME
+          description: 'Slave name on Jenkins'
+          allowed-slaves:
+            - lf-pod3
+          default-slaves:
+            - lf-pod3
+      - 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'
+
 #####################################################
 # Parameters for CI baremetal PODs
 #####################################################
 - parameter:
     name: 'apex-baremetal-defaults'
     parameters:
-        - label:
-            name: SLAVE_LABEL
-            default: 'apex-baremetal'
-        - 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'
+      - label:
+          name: SLAVE_LABEL
+          default: 'apex-baremetal'
+      - 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'
 - parameter:
     name: 'compass-baremetal-defaults'
     parameters:
-        - label:
-            name: SLAVE_LABEL
-            default: 'compass-baremetal'
-        - string:
-            name: GIT_BASE
-            default: https://gerrit.opnfv.org/gerrit/$PROJECT
-            description: 'Git URL to use on this Jenkins Slave'
+      - label:
+          name: SLAVE_LABEL
+          default: 'compass-baremetal'
+      - string:
+          name: GIT_BASE
+          default: https://gerrit.opnfv.org/gerrit/$PROJECT
+          description: 'Git URL to use on this Jenkins Slave'
+
 - parameter:
     name: 'compass-baremetal-master-defaults'
     parameters:
-        - label:
-            name: SLAVE_LABEL
-            default: 'compass-baremetal-master'
-        - string:
-            name: GIT_BASE
-            default: https://gerrit.opnfv.org/gerrit/$PROJECT
-            description: 'Git URL to use on this Jenkins Slave'
+      - label:
+          name: SLAVE_LABEL
+          default: 'compass-baremetal-master'
+      - string:
+          name: GIT_BASE
+          default: https://gerrit.opnfv.org/gerrit/$PROJECT
+          description: 'Git URL to use on this Jenkins Slave'
+
 - parameter:
     name: 'compass-baremetal-branch-defaults'
     parameters:
-        - label:
-            name: SLAVE_LABEL
-            default: 'compass-baremetal-branch'
-        - string:
-            name: GIT_BASE
-            default: https://gerrit.opnfv.org/gerrit/$PROJECT
-            description: 'Git URL to use on this Jenkins Slave'
+      - label:
+          name: SLAVE_LABEL
+          default: 'compass-baremetal-branch'
+      - string:
+          name: GIT_BASE
+          default: https://gerrit.opnfv.org/gerrit/$PROJECT
+          description: 'Git URL to use on this Jenkins Slave'
+
 - parameter:
     name: 'fuel-baremetal-defaults'
     parameters:
-        - label:
-            name: SLAVE_LABEL
-            default: 'fuel-baremetal'
-        - string:
-            name: GIT_BASE
-            default: https://gerrit.opnfv.org/gerrit/$PROJECT
-            description: 'Git URL to use on this Jenkins Slave'
+      - label:
+          name: SLAVE_LABEL
+          default: 'fuel-baremetal'
+      - string:
+          name: GIT_BASE
+          default: https://gerrit.opnfv.org/gerrit/$PROJECT
+          description: 'Git URL to use on this Jenkins Slave'
+
 - parameter:
     name: 'armband-baremetal-defaults'
     parameters:
-        - label:
-            name: SLAVE_LABEL
-            default: 'armband-baremetal'
-        - string:
-            name: GIT_BASE
-            default: https://gerrit.opnfv.org/gerrit/$PROJECT
-            description: 'Git URL to use on this Jenkins Slave'
-        - string:
-            name: LAB_CONFIG_URL
-            default: ssh://jenkins-enea@gerrit.opnfv.org:29418/securedlab
-            description: 'Base URI to the configuration directory'
+      - label:
+          name: SLAVE_LABEL
+          default: 'armband-baremetal'
+      - string:
+          name: GIT_BASE
+          default: https://gerrit.opnfv.org/gerrit/$PROJECT
+          description: 'Git URL to use on this Jenkins Slave'
+      - string:
+          name: LAB_CONFIG_URL
+          default: ssh://jenkins-enea@gerrit.opnfv.org:29418/securedlab
+          description: 'Base URI to the configuration directory'
+
 - parameter:
     name: 'joid-baremetal-defaults'
     parameters:
-        - label:
-            name: SLAVE_LABEL
-            default: 'joid-baremetal'
-        - string:
-            name: GIT_BASE
-            default: https://gerrit.opnfv.org/gerrit/$PROJECT
-            description: 'Git URL to use on this Jenkins Slave'
-        - string:
-            name: EXTERNAL_NETWORK
-            default: ext-net
-            description: "External network floating ips"
+      - label:
+          name: SLAVE_LABEL
+          default: 'joid-baremetal'
+      - string:
+          name: GIT_BASE
+          default: https://gerrit.opnfv.org/gerrit/$PROJECT
+          description: 'Git URL to use on this Jenkins Slave'
+      - string:
+          name: EXTERNAL_NETWORK
+          default: ext-net
+          description: "External network floating ips"
+
 - parameter:
     name: 'daisy-baremetal-defaults'
     parameters:
-        - node:
-            name: SLAVE_NAME
-            description: 'Slave name on Jenkins'
-            allowed-slaves:
-                - zte-pod2
-            default-slaves:
-                - zte-pod2
-        - label:
-            name: SLAVE_LABEL
-            default: 'daisy-baremetal'
-        - string:
-            name: INSTALLER_IP
-            default: '10.20.7.3'
-            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'
+      - node:
+          name: SLAVE_NAME
+          description: 'Slave name on Jenkins'
+          allowed-slaves:
+            - zte-pod2
+          default-slaves:
+            - zte-pod2
+      - label:
+          name: SLAVE_LABEL
+          default: 'daisy-baremetal'
+      - string:
+          name: INSTALLER_IP
+          default: '10.20.7.3'
+          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'
+
 #####################################################
 # Parameters for CI virtual PODs
 #####################################################
 - parameter:
     name: 'apex-virtual-defaults'
     parameters:
-        - label:
-            name: SLAVE_LABEL
-            default: 'apex-virtual'
-        - 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'
+      - label:
+          name: SLAVE_LABEL
+          default: 'apex-virtual'
+      - 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'
+
 - parameter:
     name: 'compass-virtual-defaults'
     parameters:
-        - label:
-            name: SLAVE_LABEL
-            default: 'compass-virtual'
-        - string:
-            name: GIT_BASE
-            default: https://gerrit.opnfv.org/gerrit/$PROJECT
-            description: 'Git URL to use on this Jenkins Slave'
+      - label:
+          name: SLAVE_LABEL
+          default: 'compass-virtual'
+      - string:
+          name: GIT_BASE
+          default: https://gerrit.opnfv.org/gerrit/$PROJECT
+          description: 'Git URL to use on this Jenkins Slave'
+
 - parameter:
     name: 'compass-virtual-master-defaults'
     parameters:
-        - label:
-            name: SLAVE_LABEL
-            default: 'compass-virtual-master'
-        - string:
-            name: GIT_BASE
-            default: https://gerrit.opnfv.org/gerrit/$PROJECT
-            description: 'Git URL to use on this Jenkins Slave'
+      - label:
+          name: SLAVE_LABEL
+          default: 'compass-virtual-master'
+      - string:
+          name: GIT_BASE
+          default: https://gerrit.opnfv.org/gerrit/$PROJECT
+          description: 'Git URL to use on this Jenkins Slave'
+
 - parameter:
     name: 'compass-virtual-branch-defaults'
     parameters:
-        - label:
-            name: SLAVE_LABEL
-            default: 'compass-virtual-branch'
-        - string:
-            name: GIT_BASE
-            default: https://gerrit.opnfv.org/gerrit/$PROJECT
-            description: 'Git URL to use on this Jenkins Slave'
+      - label:
+          name: SLAVE_LABEL
+          default: 'compass-virtual-branch'
+      - string:
+          name: GIT_BASE
+          default: https://gerrit.opnfv.org/gerrit/$PROJECT
+          description: 'Git URL to use on this Jenkins Slave'
+
 - parameter:
     name: 'fuel-virtual-defaults'
     parameters:
-        - label:
-            name: SLAVE_LABEL
-            default: 'fuel-virtual'
-        - string:
-            name: GIT_BASE
-            default: https://gerrit.opnfv.org/gerrit/$PROJECT
-            description: 'Git URL to use on this Jenkins Slave'
+      - label:
+          name: SLAVE_LABEL
+          default: 'fuel-virtual'
+      - string:
+          name: GIT_BASE
+          default: https://gerrit.opnfv.org/gerrit/$PROJECT
+          description: 'Git URL to use on this Jenkins Slave'
+
 - parameter:
     name: 'armband-virtual-defaults'
     parameters:
-        - label:
-            name: SLAVE_LABEL
-            default: 'armband-virtual'
-        - string:
-            name: GIT_BASE
-            default: https://gerrit.opnfv.org/gerrit/$PROJECT
-            description: 'Git URL to use on this Jenkins Slave'
-        - string:
-            name: LAB_CONFIG_URL
-            default: ssh://jenkins-enea@gerrit.opnfv.org:29418/securedlab
-            description: 'Base URI to the configuration directory'
+      - label:
+          name: SLAVE_LABEL
+          default: 'armband-virtual'
+      - string:
+          name: GIT_BASE
+          default: https://gerrit.opnfv.org/gerrit/$PROJECT
+          description: 'Git URL to use on this Jenkins Slave'
+      - string:
+          name: LAB_CONFIG_URL
+          default: ssh://jenkins-enea@gerrit.opnfv.org:29418/securedlab
+          description: 'Base URI to the configuration directory'
+
 - parameter:
     name: 'joid-virtual-defaults'
     parameters:
-        - label:
-            name: SLAVE_LABEL
-            default: 'joid-virtual'
-        - string:
-            name: GIT_BASE
-            default: https://gerrit.opnfv.org/gerrit/$PROJECT
-            description: 'Git URL to use on this Jenkins Slave'
+      - label:
+          name: SLAVE_LABEL
+          default: 'joid-virtual'
+      - string:
+          name: GIT_BASE
+          default: https://gerrit.opnfv.org/gerrit/$PROJECT
+          description: 'Git URL to use on this Jenkins Slave'
+
 - parameter:
     name: 'daisy-virtual-defaults'
     parameters:
-        - node:
-            name: SLAVE_NAME
-            description: 'Slave name on Jenkins'
-            allowed-slaves:
-                - zte-virtual1
-                - zte-virtual2
-            default-slaves:
-                - zte-virtual1
-        - label:
-            name: SLAVE_LABEL
-            default: 'daisy-virtual'
-        - string:
-            name: INSTALLER_IP
-            default: '10.20.11.2'
-            description: 'IP of the installer'
-        - string:
-            name: BRIDGE
-            default: 'daisy1'
-            description: 'pxe bridge for booting of Daisy master'
-        - string:
-            name: GIT_BASE
-            default: https://gerrit.opnfv.org/gerrit/$PROJECT
-            description: 'Git URL to use on this Jenkins Slave'
+      - node:
+          name: SLAVE_NAME
+          description: 'Slave name on Jenkins'
+          allowed-slaves:
+            - zte-virtual1
+            - zte-virtual2
+          default-slaves:
+            - zte-virtual1
+      - label:
+          name: SLAVE_LABEL
+          default: 'daisy-virtual'
+      - string:
+          name: INSTALLER_IP
+          default: '10.20.11.2'
+          description: 'IP of the installer'
+      - string:
+          name: BRIDGE
+          default: 'daisy1'
+          description: 'pxe bridge for booting of Daisy master'
+      - string:
+          name: GIT_BASE
+          default: https://gerrit.opnfv.org/gerrit/$PROJECT
+          description: 'Git URL to use on this Jenkins Slave'
+
 #####################################################
 # Parameters for build slaves
 #####################################################
 - parameter:
     name: 'opnfv-build-enea-defaults'
     parameters:
-        - label:
-            name: SLAVE_LABEL
-            default: 'opnfv-build-enea'
-        - string:
-            name: GIT_BASE
-            default: https://gerrit.opnfv.org/gerrit/$PROJECT
-            description: 'Git URL to use on this Jenkins Slave'
-        - string:
-            name: BUILD_DIRECTORY
-            default: $WORKSPACE/build_output
-            description: "Directory where the build artifact will be located upon the completion of the build."
+      - label:
+          name: SLAVE_LABEL
+          default: 'opnfv-build-enea'
+      - string:
+          name: GIT_BASE
+          default: https://gerrit.opnfv.org/gerrit/$PROJECT
+          description: 'Git URL to use on this Jenkins Slave'
+      - string:
+          name: BUILD_DIRECTORY
+          default: $WORKSPACE/build_output
+          description: "Directory where the build artifact will be located upon the completion of the build."
+
 - parameter:
     name: 'opnfv-build-centos-defaults'
     parameters:
-        - label:
-            name: SLAVE_LABEL
-            default: 'opnfv-build-centos'
-        - string:
-            name: GIT_BASE
-            default: https://gerrit.opnfv.org/gerrit/$PROJECT
-            description: 'Git URL to use on this Jenkins Slave'
-        - string:
-            name: BUILD_DIRECTORY
-            default: $WORKSPACE/build_output
-            description: "Directory where the build artifact will be located upon the completion of the build."
+      - label:
+          name: SLAVE_LABEL
+          default: 'opnfv-build-centos'
+      - string:
+          name: GIT_BASE
+          default: https://gerrit.opnfv.org/gerrit/$PROJECT
+          description: 'Git URL to use on this Jenkins Slave'
+      - string:
+          name: BUILD_DIRECTORY
+          default: $WORKSPACE/build_output
+          description: "Directory where the build artifact will be located upon the completion of the build."
+
 - parameter:
     name: 'opnfv-build-ubuntu-defaults'
     parameters:
-        - label:
-            name: SLAVE_LABEL
-            default: 'opnfv-build-ubuntu'
-            description: 'Slave label on Jenkins'
-        - string:
-            name: GIT_BASE
-            default: https://gerrit.opnfv.org/gerrit/$PROJECT
-            description: 'Git URL to use on this Jenkins Slave'
-        - string:
-            name: BUILD_DIRECTORY
-            default: $WORKSPACE/build_output
-            description: "Directory where the build artifact will be located upon the completion of the build."
+      - label:
+          name: SLAVE_LABEL
+          default: 'opnfv-build-ubuntu'
+          description: 'Slave label on Jenkins'
+      - string:
+          name: GIT_BASE
+          default: https://gerrit.opnfv.org/gerrit/$PROJECT
+          description: 'Git URL to use on this Jenkins Slave'
+      - string:
+          name: BUILD_DIRECTORY
+          default: $WORKSPACE/build_output
+          description: "Directory where the build artifact will be located upon the completion of the build."
+
 - parameter:
     name: 'opnfv-build-defaults'
     parameters:
-        - label:
-            name: SLAVE_LABEL
-            default: 'opnfv-build'
-            description: 'Slave label on Jenkins'
-        - string:
-            name: GIT_BASE
-            default: https://gerrit.opnfv.org/gerrit/$PROJECT
-            description: 'Git URL to use on this Jenkins Slave'
-        - string:
-            name: BUILD_DIRECTORY
-            default: $WORKSPACE/build_output
-            description: "Directory where the build artifact will be located upon the completion of the build."
+      - label:
+          name: SLAVE_LABEL
+          default: 'opnfv-build'
+          description: 'Slave label on Jenkins'
+      - string:
+          name: GIT_BASE
+          default: https://gerrit.opnfv.org/gerrit/$PROJECT
+          description: 'Git URL to use on this Jenkins Slave'
+      - string:
+          name: BUILD_DIRECTORY
+          default: $WORKSPACE/build_output
+          description: "Directory where the build artifact will be located upon the completion of the build."
+
 - parameter:
     name: 'huawei-build-defaults'
     parameters:
-        - node:
-            name: SLAVE_NAME
-            description: 'Slave name on Jenkins'
-            allowed-slaves:
-                - huawei-build
-            default-slaves:
-                - huawei-build
-        - string:
-            name: GIT_BASE
-            default: https://gerrit.opnfv.org/gerrit/$PROJECT
-            description: 'Git URL to use on this Jenkins Slave'
+      - node:
+          name: SLAVE_NAME
+          description: 'Slave name on Jenkins'
+          allowed-slaves:
+            - huawei-build
+          default-slaves:
+            - huawei-build
+      - string:
+          name: GIT_BASE
+          default: https://gerrit.opnfv.org/gerrit/$PROJECT
+          description: 'Git URL to use on this Jenkins Slave'
+
 - parameter:
     name: 'opnfv-build-ubuntu-arm-defaults'
     parameters:
-        - label:
-            name: SLAVE_LABEL
-            default: 'opnfv-build-ubuntu-arm'
-            description: 'Slave label on Jenkins'
-        - string:
-            name: GIT_BASE
-            default: https://gerrit.opnfv.org/gerrit/$PROJECT
-            description: 'Git URL to use on this Jenkins Slave'
-        - string:
-            name: BUILD_DIRECTORY
-            default: $WORKSPACE/build_output
-            description: "Directory where the build artifact will be located upon the completion of the build."
+      - label:
+          name: SLAVE_LABEL
+          default: 'opnfv-build-ubuntu-arm'
+          description: 'Slave label on Jenkins'
+      - string:
+          name: GIT_BASE
+          default: https://gerrit.opnfv.org/gerrit/$PROJECT
+          description: 'Git URL to use on this Jenkins Slave'
+      - string:
+          name: BUILD_DIRECTORY
+          default: $WORKSPACE/build_output
+          description: "Directory where the build artifact will be located upon the completion of the build."
+
 #####################################################
 # 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: GIT_BASE
-            default: https://gerrit.opnfv.org/gerrit/$PROJECT
-            description: 'Git URL to use on this Jenkins Slave'
+      - node:
+          name: SLAVE_NAME
+          description: 'Slave name on Jenkins'
+          allowed-slaves:
+            - ericsson-pod1
+          default-slaves:
+            - ericsson-pod1
+      - 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:
-        - node:
-            name: SLAVE_NAME
-            description: 'Slave name on Jenkins'
-            allowed-slaves:
-                - cengn-pod1
-            default-slaves:
-                - cengn-pod1
-        - string:
-            name: GIT_BASE
-            default: https://gerrit.opnfv.org/gerrit/$PROJECT
-            description: 'Git URL to use on this Jenkins Slave'
+      - node:
+          name: SLAVE_NAME
+          description: 'Slave name on Jenkins'
+          allowed-slaves:
+            - cengn-pod1
+          default-slaves:
+            - cengn-pod1
+      - string:
+          name: GIT_BASE
+          default: https://gerrit.opnfv.org/gerrit/$PROJECT
+          description: 'Git URL to use on this Jenkins Slave'
+
 - parameter:
     name: 'intel-pod1-defaults'
     parameters:
-        - node:
-            name: SLAVE_NAME
-            description: 'Slave name on Jenkins'
-            allowed-slaves:
-                - intel-pod1
-            default-slaves:
-                - intel-pod1
-        - string:
-            name: GIT_BASE
-            default: https://gerrit.opnfv.org/gerrit/$PROJECT
-            description: 'Git URL to use on this Jenkins Slave'
+      - node:
+          name: SLAVE_NAME
+          description: 'Slave name on Jenkins'
+          allowed-slaves:
+            - intel-pod1
+          default-slaves:
+            - intel-pod1
+      - string:
+          name: GIT_BASE
+          default: https://gerrit.opnfv.org/gerrit/$PROJECT
+          description: 'Git URL to use on this Jenkins Slave'
+
 - parameter:
     name: 'intel-pod2-defaults'
     parameters:
-        - node:
-            name: SLAVE_NAME
-            description: 'Slave name on Jenkins'
-            allowed-slaves:
-                - intel-pod2
-            default-slaves:
-                - intel-pod2
-        - 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'
+      - node:
+          name: SLAVE_NAME
+          description: 'Slave name on Jenkins'
+          allowed-slaves:
+            - intel-pod2
+          default-slaves:
+            - intel-pod2
+      - 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'
+
 - parameter:
     name: 'intel-pod9-defaults'
     parameters:
-        - node:
-            name: SLAVE_NAME
-            description: 'Slave name on Jenkins'
-            allowed-slaves:
-                - intel-pod9
-            default-slaves:
-                - intel-pod9
-        - string:
-            name: GIT_BASE
-            default: https://gerrit.opnfv.org/gerrit/$PROJECT
-            description: 'Git URL to use on this Jenkins Slave'
+      - node:
+          name: SLAVE_NAME
+          description: 'Slave name on Jenkins'
+          allowed-slaves:
+            - intel-pod9
+          default-slaves:
+            - intel-pod9
+      - string:
+          name: GIT_BASE
+          default: https://gerrit.opnfv.org/gerrit/$PROJECT
+          description: 'Git URL to use on this Jenkins Slave'
+
 - parameter:
     name: 'intel-pod10-defaults'
     parameters:
-        - node:
-            name: SLAVE_NAME
-            description: 'Slave name on Jenkins'
-            allowed-slaves:
-                - intel-pod10
-            default-slaves:
-                - intel-pod10
-        - string:
-            name: GIT_BASE
-            default: https://gerrit.opnfv.org/gerrit/$PROJECT
-            description: 'Git URL to use on this Jenkins Slave'
+      - node:
+          name: SLAVE_NAME
+          description: 'Slave name on Jenkins'
+          allowed-slaves:
+            - intel-pod10
+          default-slaves:
+            - intel-pod10
+      - string:
+          name: GIT_BASE
+          default: https://gerrit.opnfv.org/gerrit/$PROJECT
+          description: 'Git URL to use on this Jenkins Slave'
+
 - parameter:
     name: 'intel-pod12-defaults'
     parameters:
-        - node:
-            name: SLAVE_NAME
-            description: 'Slave name on Jenkins'
-            allowed-slaves:
-                - intel-pod12
-            default-slaves:
-                - intel-pod12
-        - string:
-            name: GIT_BASE
-            default: https://gerrit.opnfv.org/gerrit/$PROJECT
-            description: 'Git URL to use on this Jenkins Slave'
+      - node:
+          name: SLAVE_NAME
+          description: 'Slave name on Jenkins'
+          allowed-slaves:
+            - intel-pod12
+          default-slaves:
+            - intel-pod12
+      - string:
+          name: GIT_BASE
+          default: https://gerrit.opnfv.org/gerrit/$PROJECT
+          description: 'Git URL to use on this Jenkins Slave'
+
 - parameter:
     name: 'huawei-pod3-defaults'
     parameters:
-        - node:
-            name: SLAVE_NAME
-            description: 'Slave name on Jenkins'
-            allowed-slaves:
-                - huawei-pod3
-            default-slaves:
-                - huawei-pod3
-        - label:
-            name: SLAVE_LABEL
-            default: 'huawei-test'
-        - string:
-            name: GIT_BASE
-            default: https://gerrit.opnfv.org/gerrit/$PROJECT
-            description: 'Git URL to use on this Jenkins Slave'
+      - node:
+          name: SLAVE_NAME
+          description: 'Slave name on Jenkins'
+          allowed-slaves:
+            - huawei-pod3
+          default-slaves:
+            - huawei-pod3
+      - label:
+          name: SLAVE_LABEL
+          default: 'huawei-test'
+      - string:
+          name: GIT_BASE
+          default: https://gerrit.opnfv.org/gerrit/$PROJECT
+          description: 'Git URL to use on this Jenkins Slave'
+
 - parameter:
     name: 'huawei-pod4-defaults'
     parameters:
-        - node:
-            name: SLAVE_NAME
-            description: 'Slave name on Jenkins'
-            allowed-slaves:
-                - huawei-pod4
-            default-slaves:
-                - huawei-pod4
-        - label:
-            name: SLAVE_LABEL
-            default: 'huawei-test'
-        - string:
-            name: GIT_BASE
-            default: https://gerrit.opnfv.org/gerrit/$PROJECT
-            description: 'Git URL to use on this Jenkins Slave'
+      - node:
+          name: SLAVE_NAME
+          description: 'Slave name on Jenkins'
+          allowed-slaves:
+            - huawei-pod4
+          default-slaves:
+            - huawei-pod4
+      - label:
+          name: SLAVE_LABEL
+          default: 'huawei-test'
+      - string:
+          name: GIT_BASE
+          default: https://gerrit.opnfv.org/gerrit/$PROJECT
+          description: 'Git URL to use on this Jenkins Slave'
+
 - parameter:
     name: 'intel-pod8-defaults'
     parameters:
-        - node:
-            name: SLAVE_NAME
-            description: 'Slave name on Jenkins'
-            allowed-slaves:
-                - intel-pod8
-            default-slaves:
-                - intel-pod8
-        - string:
-            name: GIT_BASE
-            default: https://gerrit.opnfv.org/gerrit/$PROJECT
+      - node:
+          name: SLAVE_NAME
+          description: 'Slave name on Jenkins'
+          allowed-slaves:
+            - intel-pod8
+          default-slaves:
+            - intel-pod8
+      - string:
+          name: GIT_BASE
+          default: https://gerrit.opnfv.org/gerrit/$PROJECT
+
 - parameter:
     name: 'huawei-virtual5-defaults'
     parameters:
-        - label:
-            name: SLAVE_LABEL
-            default: 'huawei-virtual5'
-        - string:
-            name: GIT_BASE
-            default: https://gerrit.opnfv.org/gerrit/$PROJECT
+      - label:
+          name: SLAVE_LABEL
+          default: 'huawei-virtual5'
+      - string:
+          name: GIT_BASE
+          default: https://gerrit.opnfv.org/gerrit/$PROJECT
+
 - parameter:
     name: 'huawei-virtual7-defaults'
     parameters:
-        - node:
-            name: SLAVE_NAME
-            description: 'Slave name on Jenkins'
-            allowed-slaves:
-                - huawei-virtual7
-            default-slaves:
-                - huawei-virtual7
-        - string:
-            name: GIT_BASE
-            default: https://gerrit.opnfv.org/gerrit/$PROJECT
+      - node:
+          name: SLAVE_NAME
+          description: 'Slave name on Jenkins'
+          allowed-slaves:
+            - huawei-virtual7
+          default-slaves:
+            - huawei-virtual7
+      - string:
+          name: GIT_BASE
+          default: https://gerrit.opnfv.org/gerrit/$PROJECT
+
 - parameter:
     name: 'huawei-pod7-defaults'
     parameters:
-        - node:
-            name: SLAVE_NAME
-            description: 'Slave name on Jenkins'
-            allowed-slaves:
-                - huawei-pod7
-            default-slaves:
-                - huawei-pod7
-        - string:
-            name: GIT_BASE
-            default: https://gerrit.opnfv.org/gerrit/$PROJECT
+      - node:
+          name: SLAVE_NAME
+          description: 'Slave name on Jenkins'
+          allowed-slaves:
+            - huawei-pod7
+          default-slaves:
+            - huawei-pod7
+      - string:
+          name: GIT_BASE
+          default: https://gerrit.opnfv.org/gerrit/$PROJECT
+
 - parameter:
     name: 'zte-pod1-defaults'
     parameters:
-        - node:
-            name: SLAVE_NAME
-            description: 'Slave name on Jenkins'
-            allowed-slaves:
-                - zte-pod1
-            default-slaves:
-                - zte-pod1
-        - string:
-            name: GIT_BASE
-            default: https://gerrit.opnfv.org/gerrit/$PROJECT
-            description: 'Git URL to use on this Jenkins Slave'
-        - string:
-            name: INSTALLER_IP
-            default: '10.20.6.2'
-            description: 'IP of the installer'
-        - string:
-            name: BRIDGE
-            default: 'br6'
-            description: 'pxe bridge for booting of Fuel master'
+      - node:
+          name: SLAVE_NAME
+          description: 'Slave name on Jenkins'
+          allowed-slaves:
+            - zte-pod1
+          default-slaves:
+            - zte-pod1
+      - string:
+          name: GIT_BASE
+          default: https://gerrit.opnfv.org/gerrit/$PROJECT
+          description: 'Git URL to use on this Jenkins Slave'
+      - string:
+          name: INSTALLER_IP
+          default: '10.20.6.2'
+          description: 'IP of the installer'
+      - string:
+          name: BRIDGE
+          default: 'br6'
+          description: 'pxe bridge for booting of Fuel master'
+
 - parameter:
     name: 'zte-pod2-defaults'
     parameters:
-        - node:
-            name: SLAVE_NAME
-            description: 'Slave name on Jenkins'
-            allowed-slaves:
-                - zte-pod2
-            default-slaves:
-                - zte-pod2
-        - string:
-            name: GIT_BASE
-            default: https://gerrit.opnfv.org/gerrit/$PROJECT
-            description: 'Git URL to use on this Jenkins Slave'
-        - string:
-            name: INSTALLER_IP
-            default: '10.20.7.3'
-            description: 'IP of the installer'
-        - string:
-            name: BRIDGE
-            default: 'br7'
-            description: 'pxe bridge for booting of Fuel master'
+      - node:
+          name: SLAVE_NAME
+          description: 'Slave name on Jenkins'
+          allowed-slaves:
+            - zte-pod2
+          default-slaves:
+            - zte-pod2
+      - string:
+          name: GIT_BASE
+          default: https://gerrit.opnfv.org/gerrit/$PROJECT
+          description: 'Git URL to use on this Jenkins Slave'
+      - string:
+          name: INSTALLER_IP
+          default: '10.20.7.3'
+          description: 'IP of the installer'
+      - string:
+          name: BRIDGE
+          default: 'br7'
+          description: 'pxe bridge for booting of Fuel master'
+
 - parameter:
     name: 'zte-pod3-defaults'
     parameters:
-        - node:
-            name: SLAVE_NAME
-            description: 'Slave name on Jenkins'
-            allowed-slaves:
-                - zte-pod3
-            default-slaves:
-                - zte-pod3
-        - string:
-            name: GIT_BASE
-            default: https://gerrit.opnfv.org/gerrit/$PROJECT
-            description: 'Git URL to use on this Jenkins Slave'
-        - string:
-            name: BRIDGE
-            default: 'br0'
-            description: 'pxe bridge for booting of Fuel master'
+      - node:
+          name: SLAVE_NAME
+          description: 'Slave name on Jenkins'
+          allowed-slaves:
+            - zte-pod3
+          default-slaves:
+            - zte-pod3
+      - string:
+          name: GIT_BASE
+          default: https://gerrit.opnfv.org/gerrit/$PROJECT
+          description: 'Git URL to use on this Jenkins Slave'
+      - string:
+          name: BRIDGE
+          default: 'br0'
+          description: 'pxe bridge for booting of Fuel master'
+
 - parameter:
     name: zte-pod4-defaults
     parameters:
-        - node:
-            name: SLAVE_NAME
-            description: 'Slave name on Jenkins'
-            allowed-slaves:
-                - zte-pod4
-            default-slaves:
-                - zte-pod4
-        - string:
-            name: GIT_BASE
-            default: https://gerrit.opnfv.org/gerrit/$PROJECT
-            description: 'Git URL to use on this Jenkins Slave'
+      - node:
+          name: SLAVE_NAME
+          description: 'Slave name on Jenkins'
+          allowed-slaves:
+            - zte-pod4
+          default-slaves:
+            - zte-pod4
+      - string:
+          name: GIT_BASE
+          default: https://gerrit.opnfv.org/gerrit/$PROJECT
+          description: 'Git URL to use on this Jenkins Slave'
+
 - parameter:
     name: 'juniper-pod1-defaults'
     parameters:
-        - node:
-            name: SLAVE_NAME
-            description: 'Slave name on Jenkins'
-            allowed-slaves:
-                - juniper-pod1
-            default-slaves:
-                - juniper-pod1
-        - string:
-            name: GIT_BASE
-            default: https://gerrit.opnfv.org/gerrit/$PROJECT
-            description: 'Git URL to use on this Jenkins Slave'
-        - string:
-            name: CEPH_DISKS
-            default: /srv
-            description: "Disks to use by ceph (comma separated list)"
+      - node:
+          name: SLAVE_NAME
+          description: 'Slave name on Jenkins'
+          allowed-slaves:
+            - juniper-pod1
+          default-slaves:
+            - juniper-pod1
+      - string:
+          name: GIT_BASE
+          default: https://gerrit.opnfv.org/gerrit/$PROJECT
+          description: 'Git URL to use on this Jenkins Slave'
+      - string:
+          name: CEPH_DISKS
+          default: /srv
+          description: "Disks to use by ceph (comma separated list)"
+
 - parameter:
     name: 'orange-pod1-defaults'
     parameters:
-        - node:
-            name: SLAVE_NAME
-            description: 'Slave name on Jenkins'
-            allowed-slaves:
-                - orange-pod1
-            default-slaves:
-                - orange-pod1
-        - string:
-            name: GIT_BASE
-            default: https://gerrit.opnfv.org/gerrit/$PROJECT
-            description: 'Git URL to use on this Jenkins Slave'
+      - node:
+          name: SLAVE_NAME
+          description: 'Slave name on Jenkins'
+          allowed-slaves:
+            - orange-pod1
+          default-slaves:
+            - orange-pod1
+      - string:
+          name: GIT_BASE
+          default: https://gerrit.opnfv.org/gerrit/$PROJECT
+          description: 'Git URL to use on this Jenkins Slave'
+
 - parameter:
     name: 'orange-pod2-defaults'
     parameters:
-        - node:
-            name: SLAVE_NAME
-            description: 'Slave name on Jenkins'
-            allowed-slaves:
-                - orange-pod2
-            default-slaves:
-                - orange-pod2
-        - string:
-            name: GIT_BASE
-            default: https://gerrit.opnfv.org/gerrit/$PROJECT
-            description: 'Git URL to use on this Jenkins Slave'
+      - node:
+          name: SLAVE_NAME
+          description: 'Slave name on Jenkins'
+          allowed-slaves:
+            - orange-pod2
+          default-slaves:
+            - orange-pod2
+      - string:
+          name: GIT_BASE
+          default: https://gerrit.opnfv.org/gerrit/$PROJECT
+          description: 'Git URL to use on this Jenkins Slave'
+
 - parameter:
     name: 'orange-pod5-defaults'
     parameters:
-        - node:
-            name: SLAVE_NAME
-            description: 'Slave name on Jenkins'
-            allowed-slaves:
-                - orange-pod5
-            default-slaves:
-                - orange-pod5
-        - string:
-            name: GIT_BASE
-            default: https://gerrit.opnfv.org/gerrit/$PROJECT
-            description: 'Git URL to use on this Jenkins Slave'
+      - node:
+          name: SLAVE_NAME
+          description: 'Slave name on Jenkins'
+          allowed-slaves:
+            - orange-pod5
+          default-slaves:
+            - orange-pod5
+      - string:
+          name: GIT_BASE
+          default: https://gerrit.opnfv.org/gerrit/$PROJECT
+          description: 'Git URL to use on this Jenkins Slave'
+
 - parameter:
     name: 'dell-pod1-defaults'
     parameters:
-        - node:
-            name: SLAVE_NAME
-            description: 'Slave name on Jenkins'
-            allowed-slaves:
-                - dell-pod1
-            default-slaves:
-                - dell-pod1
-        - string:
-            name: GIT_BASE
-            default: https://gerrit.opnfv.org/gerrit/$PROJECT
-            description: 'Git URL to use on this Jenkins Slave'
+      - node:
+          name: SLAVE_NAME
+          description: 'Slave name on Jenkins'
+          allowed-slaves:
+            - dell-pod1
+          default-slaves:
+            - dell-pod1
+      - string:
+          name: GIT_BASE
+          default: https://gerrit.opnfv.org/gerrit/$PROJECT
+          description: 'Git URL to use on this Jenkins Slave'
+
 - parameter:
     name: 'dell-pod2-defaults'
     parameters:
-        - node:
-            name: SLAVE_NAME
-            description: 'Slave name on Jenkins'
-            allowed-slaves:
-                - dell-pod2
-            default-slaves:
-                - dell-pod2
-        - string:
-            name: GIT_BASE
-            default: https://gerrit.opnfv.org/gerrit/$PROJECT
-            description: 'Git URL to use on this Jenkins Slave'
+      - node:
+          name: SLAVE_NAME
+          description: 'Slave name on Jenkins'
+          allowed-slaves:
+            - dell-pod2
+          default-slaves:
+            - dell-pod2
+      - string:
+          name: GIT_BASE
+          default: https://gerrit.opnfv.org/gerrit/$PROJECT
+          description: 'Git URL to use on this Jenkins Slave'
+
 - parameter:
     name: 'nokia-pod1-defaults'
     parameters:
-        - node:
-            name: SLAVE_NAME
-            description: 'Slave name on Jenkins'
-            allowed-slaves:
-                - nokia-pod1
-            default-slaves:
-                - nokia-pod1
-        - 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'
+      - node:
+          name: SLAVE_NAME
+          description: 'Slave name on Jenkins'
+          allowed-slaves:
+            - nokia-pod1
+          default-slaves:
+            - nokia-pod1
+      - 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'
+
 - parameter:
     name: 'arm-pod2-defaults'
     parameters:
-        - node:
-            name: SLAVE_NAME
-            description: 'Slave name on Jenkins'
-            allowed-slaves:
-                - arm-pod2
-            default-slaves:
-                - arm-pod2
-        - string:
-            name: GIT_BASE
-            default: https://gerrit.opnfv.org/gerrit/$PROJECT
-            description: 'Git URL to use on this Jenkins Slave'
-        - string:
-            name: LAB_CONFIG_URL
-            default: ssh://jenkins-enea@gerrit.opnfv.org:29418/securedlab
-            description: 'Base URI to the configuration directory'
+      - node:
+          name: SLAVE_NAME
+          description: 'Slave name on Jenkins'
+          allowed-slaves:
+            - arm-pod2
+          default-slaves:
+            - arm-pod2
+      - string:
+          name: GIT_BASE
+          default: https://gerrit.opnfv.org/gerrit/$PROJECT
+          description: 'Git URL to use on this Jenkins Slave'
+      - string:
+          name: LAB_CONFIG_URL
+          default: ssh://jenkins-enea@gerrit.opnfv.org:29418/securedlab
+          description: 'Base URI to the configuration directory'
+
 - 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: GIT_BASE
-            default: https://gerrit.opnfv.org/gerrit/$PROJECT
-            description: 'Git URL to use on this Jenkins Slave'
-        - string:
-            name: LAB_CONFIG_URL
-            default: ssh://jenkins-enea@gerrit.opnfv.org:29418/securedlab
-            description: 'Base URI to the configuration directory'
+      - node:
+          name: SLAVE_NAME
+          description: 'Slave name on Jenkins'
+          allowed-slaves:
+            - arm-pod5
+          default-slaves:
+            - arm-pod5
+      - string:
+          name: GIT_BASE
+          default: https://gerrit.opnfv.org/gerrit/$PROJECT
+          description: 'Git URL to use on this Jenkins Slave'
+      - string:
+          name: LAB_CONFIG_URL
+          default: ssh://jenkins-enea@gerrit.opnfv.org:29418/securedlab
+          description: 'Base URI to the configuration directory'
+
 - parameter:
     name: 'arm-pod4-defaults'
     parameters:
-        - node:
-            name: SLAVE_NAME
-            description: 'Slave name on Jenkins'
-            allowed-slaves:
-                - arm-pod4
-            default-slaves:
-                - arm-pod4
-        - string:
-            name: GIT_BASE
-            default: https://gerrit.opnfv.org/gerrit/$PROJECT
-            description: 'Git URL to use on this Jenkins Slave'
-        - string:
-            name: LAB_CONFIG_URL
-            default: ssh://jenkins-enea@gerrit.opnfv.org:29418/securedlab
-            description: 'Base URI to the configuration directory'
+      - node:
+          name: SLAVE_NAME
+          description: 'Slave name on Jenkins'
+          allowed-slaves:
+            - arm-pod4
+          default-slaves:
+            - arm-pod4
+      - string:
+          name: GIT_BASE
+          default: https://gerrit.opnfv.org/gerrit/$PROJECT
+          description: 'Git URL to use on this Jenkins Slave'
+      - string:
+          name: LAB_CONFIG_URL
+          default: ssh://jenkins-enea@gerrit.opnfv.org:29418/securedlab
+          description: 'Base URI to the configuration directory'
+
 - 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: GIT_BASE
-            default: https://gerrit.opnfv.org/gerrit/$PROJECT
-            description: 'Git URL to use on this Jenkins Slave'
-        - string:
-            name: LAB_CONFIG_URL
-            default: ssh://jenkins-enea@gerrit.opnfv.org:29418/securedlab
-            description: 'Base URI to the configuration directory'
+      - node:
+          name: SLAVE_NAME
+          description: 'Slave name on Jenkins'
+          allowed-slaves:
+            - arm-virtual2
+          default-slaves:
+            - arm-virtual2
+      - string:
+          name: GIT_BASE
+          default: https://gerrit.opnfv.org/gerrit/$PROJECT
+          description: 'Git URL to use on this Jenkins Slave'
+      - string:
+          name: LAB_CONFIG_URL
+          default: ssh://jenkins-enea@gerrit.opnfv.org:29418/securedlab
+          description: 'Base URI to the configuration directory'
+
 - parameter:
     name: 'intel-virtual6-defaults'
     parameters:
-        - node:
-            name: SLAVE_NAME
-            description: 'Slave name on Jenkins'
-            allowed-slaves:
-                - intel-virtual6
-            default-slaves:
-                - intel-virtual6
-        - string:
-            name: GIT_BASE
-            default: https://gerrit.opnfv.org/gerrit/$PROJECT
-            description: 'Git URL to use on this Jenkins Slave'
+      - node:
+          name: SLAVE_NAME
+          description: 'Slave name on Jenkins'
+          allowed-slaves:
+            - intel-virtual6
+          default-slaves:
+            - intel-virtual6
+      - string:
+          name: GIT_BASE
+          default: https://gerrit.opnfv.org/gerrit/$PROJECT
+          description: 'Git URL to use on this Jenkins Slave'
+
 - parameter:
     name: 'intel-virtual10-defaults'
     parameters:
-        - node:
-            name: SLAVE_NAME
-            description: 'Slave name on Jenkins'
-            allowed-slaves:
-                - intel-virtual10
-            default-slaves:
-                - intel-virtual10
-        - string:
-            name: GIT_BASE
-            default: https://gerrit.opnfv.org/gerrit/$PROJECT
-            description: 'Git URL to use on this Jenkins Slave'
+      - node:
+          name: SLAVE_NAME
+          description: 'Slave name on Jenkins'
+          allowed-slaves:
+            - intel-virtual10
+          default-slaves:
+            - intel-virtual10
+      - string:
+          name: GIT_BASE
+          default: https://gerrit.opnfv.org/gerrit/$PROJECT
+          description: 'Git URL to use on this Jenkins Slave'
+
 - parameter:
     name: 'doctor-defaults'
     parameters:
-        - node:
-            name: SLAVE_NAME
-            description: 'Slave name on Jenkins'
-            allowed-slaves:
-                - '{default-slave}'
-            default-slaves:
-                - '{default-slave}'
-        - 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 be used'
+      - node:
+          name: SLAVE_NAME
+          description: 'Slave name on Jenkins'
+          allowed-slaves:
+            - '{default-slave}'
+          default-slaves:
+            - '{default-slave}'
+      - 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 be used'
+
 - parameter:
     name: 'doctor-apex-verify-defaults'
     parameters:
-        - 'doctor-defaults':
-            default-slave: 'doctor-apex-verify'
+      - 'doctor-defaults':
+          default-slave: 'doctor-apex-verify'
+
 - parameter:
     name: 'doctor-fuel-verify-defaults'
     parameters:
-        - 'doctor-defaults':
-            default-slave: 'doctor-fuel-verify'
+      - 'doctor-defaults':
+          default-slave: 'doctor-fuel-verify'
+
 - parameter:
     name: 'doctor-joid-verify-defaults'
     parameters:
-        - 'doctor-defaults':
-            default-slave: 'doctor-joid-verify'
+      - 'doctor-defaults':
+          default-slave: 'doctor-joid-verify'
+
 - parameter:
     name: 'multisite-virtual-defaults'
     parameters:
-        - label:
-            name: SLAVE_LABEL
-            default: 'multisite-virtual'
-        - string:
-            name: GIT_BASE
-            default: https://gerrit.opnfv.org/gerrit/$PROJECT
-            description: 'Git URL to use on this Jenkins Slave'
+      - label:
+          name: SLAVE_LABEL
+          default: 'multisite-virtual'
+      - string:
+          name: GIT_BASE
+          default: https://gerrit.opnfv.org/gerrit/$PROJECT
+          description: 'Git URL to use on this Jenkins Slave'
+
 - parameter:
     name: 'ericsson-virtual5-defaults'
     parameters:
-        - label:
-            name: SLAVE_LABEL
-            default: 'ericsson-virtual5'
-        - string:
-            name: GIT_BASE
-            default: https://git.opendaylight.org/gerrit/p/$PROJECT.git
-            description: 'Git URL to use on this Jenkins Slave'
+      - label:
+          name: SLAVE_LABEL
+          default: 'ericsson-virtual5'
+      - string:
+          name: GIT_BASE
+          default: https://git.opendaylight.org/gerrit/p/$PROJECT.git
+          description: 'Git URL to use on this Jenkins Slave'
+
 - parameter:
     name: 'ericsson-virtual12-defaults'
     parameters:
-        - label:
-            name: SLAVE_LABEL
-            default: 'ericsson-virtual12'
-        - string:
-            name: GIT_BASE
-            default: https://gerrit.opnfv.org/gerrit/$PROJECT
-            description: 'Git URL to use on this Jenkins Slave'
+      - label:
+          name: SLAVE_LABEL
+          default: 'ericsson-virtual12'
+      - string:
+          name: GIT_BASE
+          default: https://gerrit.opnfv.org/gerrit/$PROJECT
+          description: 'Git URL to use on this Jenkins Slave'
+
 - parameter:
     name: 'ericsson-virtual13-defaults'
     parameters:
-        - label:
-            name: SLAVE_LABEL
-            default: 'ericsson-virtual13'
-        - string:
-            name: GIT_BASE
-            default: https://gerrit.opnfv.org/gerrit/$PROJECT
-            description: 'Git URL to use on this Jenkins Slave'
+      - label:
+          name: SLAVE_LABEL
+          default: 'ericsson-virtual13'
+      - string:
+          name: GIT_BASE
+          default: https://gerrit.opnfv.org/gerrit/$PROJECT
+          description: 'Git URL to use on this Jenkins Slave'
+
 - parameter:
     name: 'ericsson-virtual-pod1bl01-defaults'
     parameters:
-        - label:
-            name: SLAVE_LABEL
-            default: 'ericsson-virtual-pod1bl01'
-        - string:
-            name: GIT_BASE
-            default: https://gerrit.opnfv.org/gerrit/$PROJECT
-            description: 'Git URL to use on this Jenkins Slave'
+      - label:
+          name: SLAVE_LABEL
+          default: 'ericsson-virtual-pod1bl01'
+      - string:
+          name: GIT_BASE
+          default: https://gerrit.opnfv.org/gerrit/$PROJECT
+          description: 'Git URL to use on this Jenkins Slave'
+
 - parameter:
     name: 'odl-netvirt-virtual-defaults'
     parameters:
-        - label:
-            name: SLAVE_LABEL
-            default: 'odl-netvirt-virtual'
-        - string:
-            name: GIT_BASE
-            default: https://gerrit.opnfv.org/gerrit/$PROJECT
-            description: 'Git URL to use on this Jenkins Slave'
+      - label:
+          name: SLAVE_LABEL
+          default: 'odl-netvirt-virtual'
+      - string:
+          name: GIT_BASE
+          default: https://gerrit.opnfv.org/gerrit/$PROJECT
+          description: 'Git URL to use on this Jenkins Slave'
+
 - parameter:
     name: 'odl-netvirt-virtual-intel-defaults'
     parameters:
-        - label:
-            name: SLAVE_LABEL
-            default: 'odl-netvirt-virtual-intel'
-        - string:
-            name: GIT_BASE
-            default: https://gerrit.opnfv.org/gerrit/$PROJECT
-            description: 'Git URL to use on this Jenkins Slave'
+      - label:
+          name: SLAVE_LABEL
+          default: 'odl-netvirt-virtual-intel'
+      - string:
+          name: GIT_BASE
+          default: https://gerrit.opnfv.org/gerrit/$PROJECT
+          description: 'Git URL to use on this Jenkins Slave'
+
 #####################################################
 # These slaves are just dummy slaves for sandbox jobs
 #####################################################
 - parameter:
     name: 'sandbox-baremetal-defaults'
     parameters:
-        - label:
-            name: SLAVE_LABEL
-            default: 'sandbox-baremetal'
-            description: 'Slave label on Jenkins'
-        - string:
-            name: GIT_BASE
-            default: https://gerrit.opnfv.org/gerrit/$PROJECT
-            description: 'Git URL to use on this Jenkins Slave'
-        - string:
-            name: BUILD_DIRECTORY
-            default: $WORKSPACE/build_output
-            description: "Directory where the build artifact will be located upon the completion of the build."
+      - label:
+          name: SLAVE_LABEL
+          default: 'sandbox-baremetal'
+          description: 'Slave label on Jenkins'
+      - string:
+          name: GIT_BASE
+          default: https://gerrit.opnfv.org/gerrit/$PROJECT
+          description: 'Git URL to use on this Jenkins Slave'
+      - string:
+          name: BUILD_DIRECTORY
+          default: $WORKSPACE/build_output
+          description: "Directory where the build artifact will be located upon the completion of the build."
+
 - parameter:
     name: 'sandbox-virtual-defaults'
     parameters:
-        - label:
-            name: SLAVE_LABEL
-            default: 'sandbox-virtual'
-            description: 'Slave label on Jenkins'
-        - string:
-            name: GIT_BASE
-            default: https://gerrit.opnfv.org/gerrit/$PROJECT
-            description: 'Git URL to use on this Jenkins Slave'
-        - string:
-            name: BUILD_DIRECTORY
-            default: $WORKSPACE/build_output
-            description: "Directory where the build artifact will be located upon the completion of the build."
+      - label:
+          name: SLAVE_LABEL
+          default: 'sandbox-virtual'
+          description: 'Slave label on Jenkins'
+      - string:
+          name: GIT_BASE
+          default: https://gerrit.opnfv.org/gerrit/$PROJECT
+          description: 'Git URL to use on this Jenkins Slave'
+      - string:
+          name: BUILD_DIRECTORY
+          default: $WORKSPACE/build_output
+          description: "Directory where the build artifact will be located upon the completion of the build."
+
 - parameter:
     name: 'dummy-pod1-defaults'
     parameters:
-        - label:
-            name: SLAVE_LABEL
-            default: 'dummy-pod1'
-            description: 'Slave label on Jenkins'
-        - string:
-            name: GIT_BASE
-            default: https://gerrit.opnfv.org/gerrit/$PROJECT
-            description: 'Git URL to use on this Jenkins Slave'
-        - string:
-            name: BUILD_DIRECTORY
-            default: $WORKSPACE/build_output
-            description: "Directory where the build artifact will be located upon the completion of the build."
+      - label:
+          name: SLAVE_LABEL
+          default: 'dummy-pod1'
+          description: 'Slave label on Jenkins'
+      - string:
+          name: GIT_BASE
+          default: https://gerrit.opnfv.org/gerrit/$PROJECT
+          description: 'Git URL to use on this Jenkins Slave'
+      - string:
+          name: BUILD_DIRECTORY
+          default: $WORKSPACE/build_output
+          description: "Directory where the build artifact will be located upon the completion of the build."
diff --git a/jjb/releng/opnfv-repo-archiver.sh b/jjb/releng/opnfv-repo-archiver.sh
new file mode 100644 (file)
index 0000000..c9fdba3
--- /dev/null
@@ -0,0 +1,66 @@
+#!/bin/bash
+# SPDX-license-identifier: Apache-2.0
+##############################################################################
+# Copyright (c) 2016 Linux Foundation 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 errexit
+set -o pipefail
+export PATH=$PATH:/usr/local/bin/
+
+DATE="$(date +%Y%m%d)"
+
+declare -a PROJECT_LIST
+EXCLUDE_PROJECTS="All-Projects|All-Users|securedlab"
+CLONE_PATH="$WORKSPACE/opnfv-repos"
+
+# Generate project list from gerrit
+PROJECT_LIST=($(ssh -p 29418 jenkins-ci@gerrit.opnfv.org gerrit ls-projects | egrep -v $EXCLUDE_PROJECTS))
+
+echo "Cloning all OPNFV repositories"
+echo "------------------------------"
+
+for PROJECT in "${PROJECT_LIST[@]}"; do
+  echo "> Cloning $PROJECT"
+  if [ ! -d "$CLONE_PATH/$PROJECT" ]; then
+    git clone "https://gerrit.opnfv.org/gerrit/$PROJECT.git" $CLONE_PATH/$PROJECT
+  else
+    pushd "$CLONE_PATH/$PROJECT" &>/dev/null
+    git pull -f
+    popd &> /dev/null
+  fi
+
+  # Don't license scan kernel or qemu in kvmfornfv
+  if [ "$PROJECT" == "kvmfornfv" ]; then
+    rm -rf "$CLONE_PATH/$PROJECT/{kernel,qemu}"
+  fi
+done
+
+echo "Finished cloning OPNFV repositories"
+echo "-----------------------------------"
+
+# Copy repos and clear git data
+echo "Copying repos to $WORKSPACE/opnfv-archive and removing .git files"
+cp -R $CLONE_PATH $WORKSPACE/opnfv-archive
+find $WORKSPACE/opnfv-archive -type d -iname '.git' -exec rm -rf {} +
+find $WORKSPACE/opnfv-archive -type f -iname '.git*' -exec rm -rf {} +
+
+# Create archive
+echo "Creating archive: opnfv-archive-$DATE.tar.gz"
+echo "--------------------------------------"
+cd $WORKSPACE
+tar -czf "opnfv-archive-$DATE.tar.gz" opnfv-archive && rm -rf opnfv-archive
+echo "Archiving Complete."
+
+echo "Uploading artifacts"
+echo "--------------------------------------"
+
+gsutil cp "$WORKSPACE/opnfv-archive-$DATE.tar.gz" \
+    "gs://opnfv-archive/opnfv-archive-$DATE.tar.gz" 2>&1
+
+rm -f opnfv-archive-$DATE.tar.gz
+
+echo "Finished"
index 717bb3c..ac1ec07 100644 (file)
@@ -4,6 +4,8 @@
 
     jobs:
         - 'prune-docker-images'
+        - 'archive-repositories'
+
 ########################
 # job templates
 ########################
 
     triggers:
         - timed: '@midnight'
+
+- job-template:
+    name: 'archive-repositories'
+
+    disabled: false
+
+    concurrent: true
+
+    parameters:
+        - node:
+            name: SLAVE_NAME
+            description: Where to create the archive
+            default-slaves:
+                - master
+            allowed-multiselect: false
+            ignore-offline-nodes: true
+
+    triggers:
+        - timed: '@monthly'
+
+    builders:
+        - shell:
+            !include-raw-escape: opnfv-repo-archiver.sh
diff --git a/jjb/sfc/sfc-project-jobs.yml b/jjb/sfc/sfc-project-jobs.yml
new file mode 100644 (file)
index 0000000..379fe79
--- /dev/null
@@ -0,0 +1,70 @@
+###################################################
+# All the jobs except verify have been removed!
+# They will only be enabled on request by projects!
+###################################################
+- project:
+    name: sfc-project-jobs
+
+    project: 'sfc'
+
+    jobs:
+        - 'sfc-verify-{stream}'
+    stream:
+        - master:
+            branch: '{stream}'
+            gs-pathname: ''
+            disabled: false
+        - danube:
+            branch: 'stable/{stream}'
+            gs-pathname: '/{stream}'
+            disabled: true
+
+- job-template:
+    name: 'sfc-verify-{stream}'
+
+    disabled: '{obj:disabled}'
+
+    parameters:
+        - project-parameter:
+            project: '{project}'
+            branch: '{branch}'
+        - 'opnfv-build-ubuntu-defaults'
+    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: '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
+
+################################
+# job builders
+################################
+
+- builder:
+    name: sfc-unit-tests
+    builders:
+        - shell: |
+            cd $WORKSPACE && yamllint $(git ls-tree -r HEAD --name-only  | egrep 'yml$|yaml$')
index ccee971..c91ea47 100755 (executable)
@@ -20,7 +20,7 @@ fi
 
 if [[ ${INSTALLER_TYPE} == 'joid' ]]; then
     if [[ "${DEPLOY_SCENARIO:0:2}" == "k8" ]];then
-        rc_file_vol="-v $LAB_CONFIG/admin.conf:/etc/yardstick/admin.conf"
+        rc_file_vol="-v /home/ubuntu/config:/etc/yardstick/admin.conf"
     else
         # If production lab then creds may be retrieved dynamically
         # creds are on the jumphost, always in the same folder
@@ -59,8 +59,14 @@ sudo rm -rf ${dir_result}/*
 map_log_dir="-v ${dir_result}:/tmp/yardstick"
 
 # Run docker
-cmd="sudo docker run ${opts} ${envs} ${rc_file_vol} ${cacert_file_vol} ${map_log_dir} ${sshkey} opnfv/yardstick:${DOCKER_TAG} \
+if [[ ${INSTALLER_TYPE} == "joid" && "${DEPLOY_SCENARIO:0:2}" == "k8" ]];then
+    juju ssh kubernetes-master/0 sudo apt-get install docker.io
+    cmd="juju ssh kubernetes-master/0 sudo docker run ${opts} ${envs} ${rc_file_vol} ${cacert_file_vol} ${map_log_dir} ${sshkey} opnfv/yardstick:${DOCKER_TAG} exec_tests.sh ${YARDSTICK_DB_BACKEND} ${YARDSTICK_SCENARIO_SUITE_NAME}"
+else
+    cmd="sudo docker run ${opts} ${envs} ${rc_file_vol} ${cacert_file_vol} ${map_log_dir} ${sshkey} opnfv/yardstick:${DOCKER_TAG} \
     exec_tests.sh ${YARDSTICK_DB_BACKEND} ${YARDSTICK_SCENARIO_SUITE_NAME}"
+fi
+
 echo "Yardstick: Running docker cmd: ${cmd}"
 ${cmd}
 
index ce1e94d..e93367f 100755 (executable)
@@ -1,3 +1,4 @@
+#!/bin/bash
 set -e
 
 dest_path="$HOME/admin.conf"
index 312e1ac..377930d 100755 (executable)
@@ -112,6 +112,10 @@ if [ "$installer_type" == "fuel" ]; then
 
         info "Fetching rc file from controller $controller_ip..."
         ssh ${ssh_options} ubuntu@${controller_ip} "sudo cat /root/keystonercv3" > $dest_path
+
+        if [[ $BUILD_TAG =~ "baremetal" ]]; then
+            ssh ${ssh_options} ubuntu@${installer_ip} "cat /etc/ssl/certs/os_cacert" > $os_cacert
+        fi
     else
         #ip_fuel="10.20.0.2"
         env=$(sshpass -p r00tme ssh 2>/dev/null ${ssh_options} root@${installer_ip} \
index f0127b5..56f9e0a 100644 (file)
@@ -33,8 +33,7 @@ def prepare_profile_file(version):
     if not os.path.exists(profile_dir):
         os.makedirs(profile_dir)
 
-    profile_file = "{}/{}/scenario_history.txt".format(profile_dir,
-                                                       version)
+    profile_file = "{}/scenario_history.txt".format(profile_dir)
     if not os.path.exists(profile_file):
         with open(profile_file, 'w') as f:
             info = 'date,scenario,installer,details,score\n'
index 26da36c..92f3395 100644 (file)
         <nav>
           <ul class="nav nav-justified">
             <li class="active"><a href="http://testresults.opnfv.org/reporting/index.html">Home</a></li>
-            <li><a href="index-status-apex.html">Apex</a></li>
-            <li><a href="index-status-compass.html">Compass</a></li>
-            <li><a href="index-status-fuel.html">Fuel</a></li>
-            <li><a href="index-status-joid.html">Joid</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>
           </ul>
         </nav>
       </div>