diff options
Diffstat (limited to 'jjb/yardstick/yardstick-ci-jobs.yml')
-rw-r--r-- | jjb/yardstick/yardstick-ci-jobs.yml | 205 |
1 files changed, 205 insertions, 0 deletions
diff --git a/jjb/yardstick/yardstick-ci-jobs.yml b/jjb/yardstick/yardstick-ci-jobs.yml new file mode 100644 index 000000000..470bf68b9 --- /dev/null +++ b/jjb/yardstick/yardstick-ci-jobs.yml @@ -0,0 +1,205 @@ +################################### +# job configuration for functest +################################### +- project: + name: yardstick + + project: '{name}' + +#-------------------------------- +# BRANCH ANCHORS +#-------------------------------- + master: &master + stream: master + branch: '{stream}' + gs-pathname: '' + brahmaputra: &brahmaputra + stream: brahmaputra + branch: 'stable/{stream}' + gs-pathname: '{stream}' +#-------------------------------- +# POD, INSTALLER, AND BRANCH MAPPING +#-------------------------------- +# Current Mapping +#-------------------------------- +# everything runs against master branch +#-------------------------------- + pod: + - opnfv-jump-2: + installer: fuel + <<: *master + - ericsson-pod1: + installer: fuel + <<: *master + - ericsson-pod2: + installer: fuel + <<: *master + - huawei-us-deploy-bare-1: + installer: compass + <<: *master +#-------------------------------- +# Milestone E Mapping +# !!!DO NOT ENABLE!!! +#-------------------------------- +# brahmaputra +#-------------------------------- +# - 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 +#-------------------------------- +# master +#-------------------------------- +# - ericsson-pod1: +# installer: fuel +# <<: *master +# - ericsson-pod2: +# installer: fuel +# <<: *master +#-------------------------------- + loop: + - daily + + jobs: + - 'yardstick-{installer}-{pod}-{loop}-{stream}' + +################################ +# job templates +################################ +- job-template: + name: 'yardstick-{installer}-{pod}-{loop}-{stream}' + + disabled: false + + wrappers: + - build-name: + name: '$BUILD_NUMBER - SDN: $SDN_CONTROLLER Feature: $OPNFV_FEATURE' + + parameters: + - project-parameter: + project: '{project}' + - '{pod}-defaults' + - '{installer}-defaults' + - 'yardstick-params-{pod}' + - string: + name: YARDSTICK_SUITE_NAME + default: opnfv_${{NODE_NAME}}_{loop}.yaml + description: 'Path to test suite' + + scm: + - git-scm: + credentials-id: '{ssh-credentials}' + refspec: '' + branch: '{branch}' + + builders: + - 'yardstick-cleanup' + - 'yardstick-fetch-os-creds' + - 'yardstick-daily' + + publishers: + - email: + recipients: ana.cunha@ericsson.com jorgen.w.karlsson@ericsson.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 + + echo "Yardstick: done!" + +- builder: + name: yardstick-fetch-os-creds + builders: + - shell: + !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 +######################## +# parameter macros +######################## +- parameter: + name: 'yardstick-params-ericsson-pod1' + parameters: + - string: + name: YARDSTICK_DB_BACKEND + default: 'none' + description: 'Arguments to use in order to choose the backend DB' + +- parameter: + name: 'yardstick-params-ericsson-pod2' + parameters: + - string: + name: YARDSTICK_DB_BACKEND + default: 'none' + description: 'Arguments to use in order to choose the backend DB' + +- parameter: + name: 'yardstick-params-opnfv-jump-2' + parameters: + - string: + name: YARDSTICK_DB_BACKEND + default: 'db_args' + description: 'Arguments to use in order to choose the backend DB' + +- parameter: + name: 'yardstick-params-huawei-us-deploy-bare-1' + parameters: + - string: + name: YARDSTICK_DB_BACKEND + default: 'none' + description: 'Arguments to use in order to choose the backend DB' |