diff options
Diffstat (limited to 'jjb/yardstick/yardstick-ci-jobs.yml')
-rw-r--r-- | jjb/yardstick/yardstick-ci-jobs.yml | 202 |
1 files changed, 202 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..1cb6d1f08 --- /dev/null +++ b/jjb/yardstick/yardstick-ci-jobs.yml @@ -0,0 +1,202 @@ +################################### +# 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 +#-------------------------------- +# brahmaputra +#-------------------------------- + pod: + - opnfv-jump-2: + installer: fuel + <<: *brahmaputra + - intel-pod5: + installer: joid + <<: *brahmaputra +#-------------------------------- +# master +#-------------------------------- + - ericsson-pod1: + installer: fuel + <<: *master + - ericsson-pod2: + installer: fuel + <<: *master + - intel-pod6: + installer: joid + <<: *master + - huawei-us-deploy-bare-1: + installer: compass + <<: *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 Scenario: $DEPLOY_SCENARIO' + + 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=${EXTERNAL_NETWORK}" \ + -e "YARDSTICK_BRANCH=${GERRIT_BRANCH}" \ + opnfv/yardstick \ + run_tests.sh $YARDSTICK_DB_BACKEND \ + $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-intel-pod5' + parameters: + - string: + name: YARDSTICK_DB_BACKEND + default: '' + description: 'Arguments to use in order to choose the backend DB' + +- parameter: + name: 'yardstick-params-intel-pod6' + parameters: + - string: + name: YARDSTICK_DB_BACKEND + default: '' + description: 'Arguments to use in order to choose the backend DB' + +- parameter: + name: 'yardstick-params-ericsson-pod1' + parameters: + - string: + name: YARDSTICK_DB_BACKEND + default: '' + description: 'Arguments to use in order to choose the backend DB' + +- parameter: + name: 'yardstick-params-ericsson-pod2' + parameters: + - string: + name: YARDSTICK_DB_BACKEND + default: '' + 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: '-r 213.77.62.197' + 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: '' + description: 'Arguments to use in order to choose the backend DB' |