X-Git-Url: https://gerrit.opnfv.org/gerrit/gitweb?a=blobdiff_plain;f=jjb%2Fyardstick%2Fyardstick-ci-jobs.yml;h=041eabd03d77ce3ab58f23814d199f9cefaf5ea5;hb=a606f48f5b7450b1ee53d5de77192b9d375466ac;hp=ec5c547ee052142451277f492ed1b01a9b254937;hpb=b4444d64dcfd8250a23242266c07d6dbb17ec61a;p=releng.git diff --git a/jjb/yardstick/yardstick-ci-jobs.yml b/jjb/yardstick/yardstick-ci-jobs.yml index ec5c547ee..041eabd03 100644 --- a/jjb/yardstick/yardstick-ci-jobs.yml +++ b/jjb/yardstick/yardstick-ci-jobs.yml @@ -13,129 +13,146 @@ 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 #-------------------------------- -# brahmaputra +# Installers using labels +# CI PODs +# This section should only contain the installers +# that have been switched using labels for slaves #-------------------------------- pod: - - opnfv-jump-1: - installer: apex - suite: daily - auto-trigger-name: 'brahmaputra-trigger-daily-disabled' - <<: *brahmaputra - - opnfv-jump-2: +# fuel CI PODs + - baremetal: + slave-label: fuel-baremetal installer: fuel - suite: daily - auto-trigger-name: 'brahmaputra-trigger-daily-disabled' - <<: *brahmaputra - - intel-pod5: - installer: joid - suite: daily - auto-trigger-name: 'brahmaputra-trigger-daily-disabled' - <<: *brahmaputra - - huawei-us-deploy-bare-1: - installer: compass - suite: daily - auto-trigger-name: 'brahmaputra-trigger-daily-disabled' - <<: *brahmaputra - - ericsson-pod1: + auto-trigger-name: 'daily-trigger-disabled' + <<: *master + - virtual: + slave-label: fuel-virtual installer: fuel - suite: daily - auto-trigger-name: 'brahmaputra-trigger-daily-disabled' - <<: *brahmaputra - - ericsson-pod2: + auto-trigger-name: 'daily-trigger-disabled' + <<: *master + - baremetal: + slave-label: fuel-baremetal installer: fuel - suite: daily - auto-trigger-name: 'brahmaputra-trigger-daily-disabled' + auto-trigger-name: 'daily-trigger-disabled' <<: *brahmaputra - virtual: + slave-label: fuel-virtual installer: fuel - suite: daily - auto-trigger-name: 'brahmaputra-trigger-daily-disabled' + auto-trigger-name: 'daily-trigger-disabled' <<: *brahmaputra - - huawei-virtual: - installer: compass - suite: daily - auto-trigger-name: 'brahmaputra-trigger-daily-disabled' +# 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 + - baremetal: + slave-label: joid-baremetal + installer: joid + auto-trigger-name: 'daily-trigger-disabled' <<: *brahmaputra - virtual: + slave-label: joid-virtual installer: joid - suite: daily - auto-trigger-name: 'brahmaputra-trigger-daily-disabled' + auto-trigger-name: 'daily-trigger-disabled' <<: *brahmaputra -#-------------------------------- -# master -#-------------------------------- - - ericsson-pod1: - installer: fuel - suite: daily - auto-trigger-name: 'brahmaputra-trigger-daily-disabled' - <<: *master - - ericsson-pod1: - installer: fuel - suite: vtcdaily - auto-trigger-name: 'yardstick-vtcdaily-ericsson-pod1-trigger' - <<: *master - - ericsson-pod2: - installer: fuel - suite: daily - auto-trigger-name: 'brahmaputra-trigger-daily-disabled' + +# compass CI PODs + - baremetal: + slave-label: compass-baremetal + installer: compass + auto-trigger-name: 'daily-trigger-disabled' <<: *master - - intel-pod6: - installer: joid - suite: daily - auto-trigger-name: 'brahmaputra-trigger-daily-disabled' + - virtual: + slave-label: compass-virtual + installer: compass + auto-trigger-name: 'daily-trigger-disabled' <<: *master - - intel-pod8: + - baremetal: + slave-label: compass-baremetal installer: compass - suite: daily - auto-trigger-name: 'brahmaputra-trigger-daily-disabled' + auto-trigger-name: 'daily-trigger-disabled' + <<: *brahmaputra + - virtual: + slave-label: compass-virtual + installer: compass + auto-trigger-name: 'daily-trigger-disabled' + <<: *brahmaputra +#-------------------------------- +# Installers not using labels +# CI PODs +# This section should only contain the installers +# that have not been switched using labels for slaves +#-------------------------------- + - lf-pod1: + slave-label: '{pod}' + installer: apex + auto-trigger-name: 'daily-trigger-disabled' <<: *master - - zte-build-1: + - lf-pod1: + slave-label: '{pod}' + installer: apex + auto-trigger-name: 'daily-trigger-disabled' + <<: *brahmaputra +#-------------------------------- +# None-CI PODs +#-------------------------------- + - orange-pod2: + slave-label: '{pod}' + installer: joid + auto-trigger-name: 'daily-trigger-disabled' + <<: *brahmaputra + - zte-pod1: + slave-label: '{pod}' installer: fuel - suite: daily - auto-trigger-name: 'yardstick-daily-zte-build-1-trigger' + auto-trigger-name: 'daily-trigger-disabled' <<: *master - orange-pod2: + slave-label: '{pod}' installer: joid - suite: daily - auto-trigger-name: 'brahmaputra-trigger-daily-disabled' - <<: *master - - opnfv-jump-1: - installer: apex - suite: daily - auto-trigger-name: 'brahmaputra-trigger-daily-disabled' + auto-trigger-name: 'daily-trigger-disabled' <<: *master - - virtual: - installer: fuel - suite: daily - auto-trigger-name: 'brahmaputra-trigger-daily-disabled' + - huawei-pod2: + slave-label: '{pod}' + installer: compass + auto-trigger-name: 'daily-trigger-disabled' <<: *master - - huawei-virtual: + - huawei-pod3: + slave-label: '{pod}' installer: compass - suite: daily - auto-trigger-name: 'brahmaputra-trigger-daily-disabled' + auto-trigger-name: 'yardstick-daily-huawei-pod3-trigger' <<: *master - - virtual: - installer: joid - suite: daily - auto-trigger-name: 'brahmaputra-trigger-daily-disabled' + - huawei-pod4: + slave-label: '{pod}' + installer: compass + auto-trigger-name: 'yardstick-daily-huawei-pod4-trigger' <<: *master #-------------------------------- + testsuite: + - 'daily' jobs: - - 'yardstick-{installer}-{pod}-{suite}-{stream}' + - 'yardstick-{installer}-{pod}-{testsuite}-{stream}' ################################ # job templates ################################ - job-template: - name: 'yardstick-{installer}-{pod}-{suite}-{stream}' + name: 'yardstick-{installer}-{pod}-{testsuite}-{stream}' disabled: false @@ -145,6 +162,7 @@ - throttle: enabled: true max-per-node: 1 + option: 'project' wrappers: - build-name: @@ -159,16 +177,20 @@ 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: YARDSTICK_SUITE_NAME - default: opnfv_${{NODE_NAME}}_{suite}.yaml - description: 'Path to test suite' + name: DOCKER_TAG + default: '{docker-tag}' + description: 'Tag to pull docker image' + - string: + name: YARDSTICK_SCENARIO_SUITE_NAME + default: opnfv_${{DEPLOY_SCENARIO}}_{testsuite}.yaml + description: 'Path to test scenario suite' - string: name: CI_DEBUG default: 'false' @@ -181,13 +203,15 @@ branch: '{branch}' builders: + - description-setter: + description: "POD: $NODE_NAME" - 'yardstick-cleanup' #- 'yardstick-fetch-os-creds' - - 'yardstick-{suite}' + - '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 @@ -195,58 +219,14 @@ - builder: name: yardstick-daily builders: - - shell: | - #!/bin/bash - set -e - [[ $CI_DEBUG == true ]] && redirect="/dev/stdout" || redirect="/dev/null" - - # labconfig is used only for joid - labconfig="" - sshkey="" - if [[ ${INSTALLER_TYPE} == 'apex' ]]; then - instack_mac=$(sudo virsh domiflist instack | grep default | \ - grep -Eo "[0-9a-f]+:[0-9a-f]+:[0-9a-f]+:[0-9a-f]+:[0-9a-f]+:[0-9a-f]+") - INSTALLER_IP=$(/usr/sbin/arp -e | grep ${instack_mac} | awk {'print $1'}) - sshkey="-v /root/.ssh/id_rsa:/root/.ssh/id_rsa" - if [[ -n $(sudo iptables -L FORWARD |grep "REJECT"|grep "reject-with icmp-port-unreachable") ]]; then - #note: this happens only in opnfv-lf-pod1 - sudo iptables -D FORWARD -o virbr0 -j REJECT --reject-with icmp-port-unreachable - sudo iptables -D FORWARD -i virbr0 -j REJECT --reject-with icmp-port-unreachable - fi - elif [[ ${INSTALLER_TYPE} == 'joid' ]]; then - # If production lab then creds may be retrieved dynamically - # creds are on the jumphost, always in the same folder - labconfig="-v $LAB_CONFIG/admin-openrc:/home/opnfv/openrc" - # If dev lab, credentials may not be the default ones, just provide a path to put them into docker - # replace the default one by the customized one provided by jenkins config - fi - - opts="--privileged=true --rm" - envs="-e INSTALLER_TYPE=${INSTALLER_TYPE} -e INSTALLER_IP=${INSTALLER_IP} \ - -e NODE_NAME=${NODE_NAME} -e EXTERNAL_NETWORK=${EXTERNAL_NETWORK} \ - -e YARDSTICK_BRANCH=${GIT_BRANCH##origin/} -e DEPLOY_SCENARIO=${DEPLOY_SCENARIO}" - - # Pull the latest image - docker pull opnfv/yardstick >$redirect - - # Run docker - cmd="sudo docker run ${opts} ${envs} ${labconfig} ${sshkey} opnfv/yardstick \ - run_tests.sh ${YARDSTICK_DB_BACKEND} ${YARDSTICK_SUITE_NAME}" - echo "Yardstick: Running docker cmd: ${cmd}" - ${cmd} - - echo "Yardstick: done!" + - shell: + !include-raw: ./yardstick-daily.sh - builder: name: yardstick-vtcdaily builders: - - shell: | - #!/bin/bash - set -e - [[ $CI_DEBUG == true ]] && redirect="/dev/stdout" || redirect="/dev/null" - - cd $WORKSPACE - ./ci/apexlake-verify + - shell: + !include-raw: ./yardstick-vtcdaily.sh - builder: name: yardstick-fetch-os-creds @@ -257,48 +237,39 @@ - builder: name: yardstick-cleanup builders: - - shell: | - #!/bin/bash - [[ $CI_DEBUG == true ]] && redirect="/dev/stdout" || redirect="/dev/null" - - 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 -a | grep opnfv/yardstick | awk '{print $1}' | xargs docker rm -f >$redirect - - 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 >$redirect - - done - fi + - shell: + !include-raw: ./yardstick-cleanup.sh ######################## # parameter macros ######################## - parameter: - name: 'yardstick-params-intel-pod5' + 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-intel-pod6' + 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: @@ -306,49 +277,64 @@ 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-ericsson-pod1' + name: 'yardstick-params-lf-pod2' parameters: - string: name: YARDSTICK_DB_BACKEND - default: '-i 10.118.36.90:8086' + 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-compass-baremetal' parameters: - string: name: YARDSTICK_DB_BACKEND - default: '-i 10.118.36.90:8086' + default: '-i 104.197.68.199:8086' description: 'Arguments to use in order to choose the backend DB' - parameter: - name: 'yardstick-params-opnfv-jump-1' + name: 'yardstick-params-huawei-pod2' parameters: - string: name: YARDSTICK_DB_BACKEND - default: '-r 213.77.62.197/results' + 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-zte-pod1' parameters: - string: name: YARDSTICK_DB_BACKEND - default: '-r 213.77.62.197/results' + 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-zte-pod3' parameters: - string: name: YARDSTICK_DB_BACKEND - default: '' + default: '-i 104.197.68.199:8086' description: 'Arguments to use in order to choose the backend DB' - parameter: - name: 'yardstick-params-zte-build-1' + name: 'yardstick-params-orange-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-virtual' parameters: - string: name: YARDSTICK_DB_BACKEND @@ -356,7 +342,7 @@ description: 'Arguments to use in order to choose the backend DB' - parameter: - name: 'yardstick-params-orange-pod2' + name: 'yardstick-params-compass-virtual' parameters: - string: name: YARDSTICK_DB_BACKEND @@ -364,7 +350,7 @@ description: 'Arguments to use in order to choose the backend DB' - parameter: - name: 'yardstick-params-virtual' + name: 'yardstick-params-huawei-pod3' parameters: - string: name: YARDSTICK_DB_BACKEND @@ -372,7 +358,7 @@ description: 'Arguments to use in order to choose the backend DB' - parameter: - name: 'yardstick-params-huawei-virtual' + name: 'yardstick-params-huawei-pod4' parameters: - string: name: YARDSTICK_DB_BACKEND @@ -384,11 +370,11 @@ ####################### # trigger for PODs to only run yardstick test suites - trigger: - name: 'yardstick-daily-zte-build-1-trigger' + name: 'yardstick-daily-huawei-pod3-trigger' triggers: - - timed: '0 2 * * *' + - timed: '0 1 * * *' - trigger: - name: 'yardstick-vtcdaily-ericsson-pod1-trigger' + name: 'yardstick-daily-huawei-pod4-trigger' triggers: - timed: '0 1 * * *'