stream: master
branch: '{stream}'
gs-pathname: ''
+ docker-tag: 'latest'
brahmaputra: &brahmaputra
stream: brahmaputra
branch: 'stable/{stream}'
gs-pathname: '{stream}'
+ docker-tag: 'brahmaputra.1.0'
#--------------------------------
# POD, INSTALLER, AND BRANCH MAPPING
#--------------------------------
-# Current Mapping
-#--------------------------------
-# everything runs against master branch
+# Installers using labels
+# CI PODs
+# This section should only contain the installers
+# that have been switched using labels for slaves
#--------------------------------
pod:
- - opnfv-jump-2:
+# fuel CI PODs
+ - baremetal:
+ slave-label: fuel-baremetal
installer: fuel
+ auto-trigger-name: 'daily-trigger-disabled'
<<: *master
- - ericsson-pod1:
+ - virtual:
+ slave-label: fuel-virtual
installer: fuel
+ auto-trigger-name: 'daily-trigger-disabled'
<<: *master
- - ericsson-pod2:
+ - baremetal:
+ slave-label: fuel-baremetal
+ installer: fuel
+ auto-trigger-name: 'daily-trigger-disabled'
+ <<: *brahmaputra
+ - virtual:
+ slave-label: fuel-virtual
+ installer: fuel
+ auto-trigger-name: 'daily-trigger-disabled'
+ <<: *brahmaputra
+
+# just in case if things go wrong
+ - lf-pod2:
+ slave-label: '{pod}'
installer: fuel
+ auto-trigger-name: 'daily-trigger-disabled'
+ <<: *master
+
+# joid CI PODs
+ - baremetal:
+ slave-label: joid-baremetal
+ installer: joid
+ auto-trigger-name: 'daily-trigger-disabled'
+ <<: *master
+ - virtual:
+ slave-label: joid-virtual
+ installer: joid
+ auto-trigger-name: 'daily-trigger-disabled'
<<: *master
- - huawei-us-deploy-bare-1:
+ - baremetal:
+ slave-label: joid-baremetal
+ installer: joid
+ auto-trigger-name: 'daily-trigger-disabled'
+ <<: *brahmaputra
+ - virtual:
+ slave-label: joid-virtual
+ installer: joid
+ auto-trigger-name: 'daily-trigger-disabled'
+ <<: *brahmaputra
+
+# compass CI PODs
+ - baremetal:
+ slave-label: compass-baremetal
installer: compass
+ auto-trigger-name: 'daily-trigger-disabled'
<<: *master
+ - virtual:
+ slave-label: compass-virtual
+ installer: compass
+ auto-trigger-name: 'daily-trigger-disabled'
+ <<: *master
+ - baremetal:
+ slave-label: compass-baremetal
+ installer: compass
+ auto-trigger-name: 'daily-trigger-disabled'
+ <<: *brahmaputra
+ - virtual:
+ slave-label: compass-virtual
+ installer: compass
+ auto-trigger-name: 'daily-trigger-disabled'
+ <<: *brahmaputra
#--------------------------------
-# Milestone E Mapping
-# !!!DO NOT ENABLE!!!
-#--------------------------------
-# brahmaputra
+# Installers not using labels
+# CI PODs
+# This section should only contain the installers
+# that have not been switched using labels for slaves
#--------------------------------
-# - huawei-us-deploy-bare-1:
-# installer: compass
-# <<: *brahmaputra
-# - intel-pod5:
-# installer: joid
-# <<: *brahmaputra
-# - opnfv-jump-1:
-# installer: apex
-# <<: *brahmaputra
-# - opnfv-jump-2:
-# installer: fuel
-# <<: *brahmaputra
+ - lf-pod1:
+ slave-label: '{pod}'
+ installer: apex
+ auto-trigger-name: 'daily-trigger-disabled'
+ <<: *master
+ - lf-pod1:
+ slave-label: '{pod}'
+ installer: apex
+ auto-trigger-name: 'daily-trigger-disabled'
+ <<: *brahmaputra
#--------------------------------
-# master
+# None-CI PODs
#--------------------------------
-# - ericsson-pod1:
-# installer: fuel
-# <<: *master
-# - ericsson-pod2:
-# installer: fuel
-# <<: *master
+ - orange-pod2:
+ slave-label: '{pod}'
+ installer: joid
+ auto-trigger-name: 'daily-trigger-disabled'
+ <<: *brahmaputra
+ - zte-pod1:
+ slave-label: '{pod}'
+ installer: fuel
+ auto-trigger-name: 'daily-trigger-disabled'
+ <<: *master
+ - orange-pod2:
+ slave-label: '{pod}'
+ installer: joid
+ auto-trigger-name: 'daily-trigger-disabled'
+ <<: *master
+ - huawei-pod2:
+ slave-label: '{pod}'
+ installer: compass
+ auto-trigger-name: 'daily-trigger-disabled'
+ <<: *master
+ - huawei-pod3:
+ slave-label: '{pod}'
+ installer: compass
+ auto-trigger-name: 'yardstick-daily-huawei-pod3-trigger'
+ <<: *master
+ - huawei-pod4:
+ slave-label: '{pod}'
+ installer: compass
+ auto-trigger-name: 'yardstick-daily-huawei-pod4-trigger'
+ <<: *master
#--------------------------------
- loop:
- - daily
+ testsuite:
+ - 'daily'
jobs:
- - 'yardstick-{installer}-{pod}-{loop}-{stream}'
+ - 'yardstick-{installer}-{pod}-{testsuite}-{stream}'
################################
# job templates
################################
- job-template:
- name: 'yardstick-{installer}-{pod}-{loop}-{stream}'
+ name: 'yardstick-{installer}-{pod}-{testsuite}-{stream}'
disabled: false
+ concurrent: true
+
+ properties:
+ - throttle:
+ enabled: true
+ max-per-node: 1
+ option: 'project'
+
wrappers:
- build-name:
- name: '$BUILD_NUMBER - SDN: $SDN_CONTROLLER Feature: $OPNFV_FEATURE'
+ name: '$BUILD_NUMBER - Scenario: $DEPLOY_SCENARIO'
+ - timeout:
+ timeout: 180
+ abort: true
+
+ triggers:
+ - '{auto-trigger-name}'
parameters:
- project-parameter:
project: '{project}'
- - '{pod}-defaults'
+ - '{slave-label}-defaults'
- '{installer}-defaults'
- - 'yardstick-params-{pod}'
+ - 'yardstick-params-{slave-label}'
+ - string:
+ name: DEPLOY_SCENARIO
+ default: 'os-odl_l2-nofeature-ha'
+ - string:
+ name: DOCKER_TAG
+ default: '{docker-tag}'
+ description: 'Tag to pull docker image'
- string:
name: YARDSTICK_SUITE_NAME
- default: opnfv_${{NODE_NAME}}_{loop}.yaml
+ default: opnfv_${{NODE_NAME}}_{testsuite}.yaml
description: 'Path to test suite'
+ - string:
+ name: CI_DEBUG
+ default: 'false'
+ description: "Show debut output information"
scm:
- git-scm:
builders:
- 'yardstick-cleanup'
- - 'yardstick-fetch-os-creds'
- - 'yardstick-daily'
+ #- 'yardstick-fetch-os-creds'
+ - 'yardstick-{testsuite}'
publishers:
- email:
- recipients: ana.cunha@ericsson.com jorgen.w.karlsson@ericsson.com
+ recipients: jean.gaoliang@huawei.com matthew.lijun@huawei.com
########################
# builder macros
- builder:
name: yardstick-daily
builders:
- - shell: |
- #!/bin/bash
- set -o errexit
-
- echo "Yardstick: Run benchmark test suites ..."
-
- # Pull the latest image
- docker pull opnfv/yardstick
-
- docker run \
- --privileged=true \
- --rm \
- -t \
- -e "INSTALLER_TYPE=${INSTALLER_TYPE}" \
- -e "INSTALLER_IP=${INSTALLER_IP}" \
- -e "POD_NAME=${NODE_NAME}" \
- -e "EXTERNAL_NETWORK=net04_ext" \
- opnfv/yardstick \
- run_tests.sh \
- $YARDSTICK_SUITE_NAME
+ - shell:
+ !include-raw: ./yardstick-daily.sh
- echo "Yardstick: done!"
+- builder:
+ name: yardstick-vtcdaily
+ builders:
+ - shell:
+ !include-raw: ./yardstick-vtcdaily.sh
- builder:
name: yardstick-fetch-os-creds
builders:
- shell:
- !include-raw ../../utils/fetch_os_creds.sh
+ !include-raw: ../../utils/fetch_os_creds.sh
- builder:
name: yardstick-cleanup
builders:
- - shell: |
- #!/bin/bash
-
- echo "Cleaning up docker containers/images..."
-
- # Remove previous running containers if exist
- if [[ ! -z $(docker ps -a | grep opnfv/yardstick) ]]; then
- echo "Removing existing opnfv/yardstick containers..."
- docker ps | grep opnfv/yardstick | awk '{print $1}' | xargs docker stop
- docker ps -a | grep opnfv/yardstick | awk '{print $1}' | xargs docker rm
- fi
-
- # Remove existing images if exist
- if [[ ! -z $(docker images | grep opnfv/yardstick) ]]; then
- echo "Docker images to remove:"
- docker images | head -1 && docker images | grep opnfv/yardstick
- image_tags=($(docker images | grep opnfv/yardstick | awk '{print $2}'))
- for tag in "${image_tags[@]}"; do
- echo "Removing docker image opnfv/yardstick:$tag..."
- docker rmi opnfv/yardstick:$tag
- done
- fi
+ - shell:
+ !include-raw: ./yardstick-cleanup.sh
########################
# parameter macros
########################
- parameter:
- name: 'yardstick-params-ericsson-pod1'
+ name: 'yardstick-params-fuel-baremetal'
+ parameters:
+ - string:
+ name: YARDSTICK_DB_BACKEND
+ default: '-i 104.197.68.199:8086'
+ description: 'Arguments to use in order to choose the backend DB'
+- parameter:
+ name: 'yardstick-params-fuel-virtual'
+ parameters:
+ - string:
+ name: YARDSTICK_DB_BACKEND
+ default: ''
+ description: 'Arguments to use in order to choose the backend DB'
+- parameter:
+ name: 'yardstick-params-joid-baremetal'
+ parameters:
+ - string:
+ name: YARDSTICK_DB_BACKEND
+ default: '-i 104.197.68.199:8086'
+ description: 'Arguments to use in order to choose the backend DB'
+- parameter:
+ name: 'yardstick-params-joid-virtual'
+ parameters:
+ - string:
+ name: YARDSTICK_DB_BACKEND
+ default: ''
+ description: 'Arguments to use in order to choose the backend DB'
+- parameter:
+ name: 'yardstick-params-intel-pod8'
+ parameters:
+ - string:
+ name: YARDSTICK_DB_BACKEND
+ default: ''
+ description: 'Arguments to use in order to choose the backend DB'
+- parameter:
+ name: 'yardstick-params-lf-pod1'
+ parameters:
+ - string:
+ name: YARDSTICK_DB_BACKEND
+ default: '-i 104.197.68.199:8086'
+ description: 'Arguments to use in order to choose the backend DB'
+
+- parameter:
+ name: 'yardstick-params-lf-pod2'
+ parameters:
+ - string:
+ name: YARDSTICK_DB_BACKEND
+ default: '-i 104.197.68.199:8086'
+ description: 'Arguments to use in order to choose the backend DB'
+
+- parameter:
+ name: 'yardstick-params-compass-baremetal'
+ parameters:
+ - string:
+ name: YARDSTICK_DB_BACKEND
+ default: '-i 104.197.68.199:8086'
+ description: 'Arguments to use in order to choose the backend DB'
+
+- parameter:
+ name: 'yardstick-params-huawei-pod2'
parameters:
- string:
name: YARDSTICK_DB_BACKEND
- default: 'none'
+ default: '-i 104.197.68.199:8086'
description: 'Arguments to use in order to choose the backend DB'
- parameter:
- name: 'yardstick-params-ericsson-pod2'
+ name: 'yardstick-params-zte-pod1'
parameters:
- string:
name: YARDSTICK_DB_BACKEND
- default: 'none'
+ default: '-i 104.197.68.199:8086'
description: 'Arguments to use in order to choose the backend DB'
- parameter:
- name: 'yardstick-params-opnfv-jump-2'
+ name: 'yardstick-params-orange-pod2'
parameters:
- string:
name: YARDSTICK_DB_BACKEND
- default: 'db_args'
+ default: '-i 104.197.68.199:8086'
description: 'Arguments to use in order to choose the backend DB'
- parameter:
- name: 'yardstick-params-huawei-us-deploy-bare-1'
+ name: 'yardstick-params-virtual'
parameters:
- string:
name: YARDSTICK_DB_BACKEND
- default: 'none'
+ default: ''
description: 'Arguments to use in order to choose the backend DB'
+
+- parameter:
+ name: 'yardstick-params-compass-virtual'
+ parameters:
+ - string:
+ name: YARDSTICK_DB_BACKEND
+ default: ''
+ description: 'Arguments to use in order to choose the backend DB'
+
+- parameter:
+ name: 'yardstick-params-huawei-pod3'
+ parameters:
+ - string:
+ name: YARDSTICK_DB_BACKEND
+ default: ''
+ description: 'Arguments to use in order to choose the backend DB'
+
+- parameter:
+ name: 'yardstick-params-huawei-pod4'
+ parameters:
+ - string:
+ name: YARDSTICK_DB_BACKEND
+ default: ''
+ description: 'Arguments to use in order to choose the backend DB'
+
+#######################
+## trigger macros
+#######################
+# trigger for PODs to only run yardstick test suites
+- trigger:
+ name: 'yardstick-daily-huawei-pod3-trigger'
+ triggers:
+ - timed: '0 1 * * *'
+
+- trigger:
+ name: 'yardstick-daily-huawei-pod4-trigger'
+ triggers:
+ - timed: '0 1 * * *'