diff options
Diffstat (limited to 'jjb/yardstick')
-rw-r--r-- | jjb/yardstick/yardstick-ci-jobs.yml | 79 | ||||
-rwxr-xr-x | jjb/yardstick/yardstick-cleanup.sh | 22 | ||||
-rwxr-xr-x | jjb/yardstick/yardstick-daily.sh | 40 | ||||
-rw-r--r-- | jjb/yardstick/yardstick-project-jobs.yml | 2 | ||||
-rwxr-xr-x | jjb/yardstick/yardstick-vtcdaily.sh | 6 |
5 files changed, 76 insertions, 73 deletions
diff --git a/jjb/yardstick/yardstick-ci-jobs.yml b/jjb/yardstick/yardstick-ci-jobs.yml index a907d3492..b7c1c0a82 100644 --- a/jjb/yardstick/yardstick-ci-jobs.yml +++ b/jjb/yardstick/yardstick-ci-jobs.yml @@ -218,7 +218,7 @@ publishers: - email: - recipients: ana.cunha@ericsson.com + recipients: jean.gaoliang@huawei.com matthew.lijun@huawei.com ######################## # builder macros @@ -226,58 +226,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:$DOCKER_TAG >$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 @@ -288,29 +244,8 @@ - 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 ######################## diff --git a/jjb/yardstick/yardstick-cleanup.sh b/jjb/yardstick/yardstick-cleanup.sh new file mode 100755 index 000000000..4e6f7d680 --- /dev/null +++ b/jjb/yardstick/yardstick-cleanup.sh @@ -0,0 +1,22 @@ +#!/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 diff --git a/jjb/yardstick/yardstick-daily.sh b/jjb/yardstick/yardstick-daily.sh new file mode 100755 index 000000000..3ad6b7c7c --- /dev/null +++ b/jjb/yardstick/yardstick-daily.sh @@ -0,0 +1,40 @@ +#!/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:$DOCKER_TAG >$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!" diff --git a/jjb/yardstick/yardstick-project-jobs.yml b/jjb/yardstick/yardstick-project-jobs.yml index f06bf7077..c6f317386 100644 --- a/jjb/yardstick/yardstick-project-jobs.yml +++ b/jjb/yardstick/yardstick-project-jobs.yml @@ -121,7 +121,7 @@ # install python packages easy_install -U setuptools easy_install -U pip - pip install -r ci/requirements.txt + pip install -r tests/ci/requirements.txt pip install -e . # unit tests diff --git a/jjb/yardstick/yardstick-vtcdaily.sh b/jjb/yardstick/yardstick-vtcdaily.sh new file mode 100755 index 000000000..737d6806e --- /dev/null +++ b/jjb/yardstick/yardstick-vtcdaily.sh @@ -0,0 +1,6 @@ +#!/bin/bash +set -e +[[ $CI_DEBUG == true ]] && redirect="/dev/stdout" || redirect="/dev/null" + +cd $WORKSPACE +./tests/ci/apexlake-verify |