diff options
author | Fatih Degirmenci <fatih.degirmenci@ericsson.com> | 2015-12-21 10:50:43 +0100 |
---|---|---|
committer | Fatih Degirmenci <fatih.degirmenci@ericsson.com> | 2015-12-21 22:06:29 +0000 |
commit | 3218544e4b387cfcf8b6cfe09b2bfca067cec02f (patch) | |
tree | 9fbf20fef0dda27edc0afc60f5b51395aa8f169e /jjb/yardstick/yardstick-ci-jobs.yml | |
parent | 23583a68f520cb3a8f68c091cf33c752ac302ee2 (diff) |
Refactor yardstick JJB to prepare for Milestone E
Replace default stream definitions with stream anchors in order
to be able to specify which job on which POD runs against which
branch.
Move project specific verify and merge jobs to own file to ease
the stream handling.
Change-Id: I504978402d2d9e305357846806a9f81d3f17a27b
Signed-off-by: Fatih Degirmenci <fatih.degirmenci@ericsson.com>
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' |