diff options
author | kaihlavi <l.kaihlavirt@partner.samsung.com> | 2019-08-16 16:02:38 +0300 |
---|---|---|
committer | kaihlavi <l.kaihlavirt@partner.samsung.com> | 2019-08-19 15:28:10 +0300 |
commit | 203e43a357feca6fb93419e049b84656c946c9bc (patch) | |
tree | 925f3a8560fce1ad17b6b81f078de9c7b071de5f | |
parent | dd4052610fab6da25d3c47c4ea3265daa2139df4 (diff) |
Take CSIT preparations to separate script
- Move all installation steps to prepare-csit.sh
- Clone ci-management if necessary (instead of expecting it to exist)
- Other minor adjustments
Issue-ID: TEST-197
Signed-off-by: kaihlavi <l.kaihlavirt@partner.samsung.com>
Change-Id: I41437eaf53b7b33cb3cf2bed7e372d0843fce64d
-rwxr-xr-x | prepare-csit.sh | 60 | ||||
-rwxr-xr-x | run-csit.sh | 54 |
2 files changed, 69 insertions, 45 deletions
diff --git a/prepare-csit.sh b/prepare-csit.sh new file mode 100755 index 00000000..03a53947 --- /dev/null +++ b/prepare-csit.sh @@ -0,0 +1,60 @@ +#!/bin/bash -x +# +# Copyright 2019 © Samsung Electronics Co., Ltd. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +# This script installs common libraries required by CSIT tests +# + +if [ -z "$WORKSPACE" ]; then + export WORKSPACE=`git rev-parse --show-toplevel` +fi + +TESTPLANDIR=${WORKSPACE}/${TESTPLAN} + +# Assume that if ROBOT_VENV is set and virtualenv with system site packages can be activated, +# ci-management/jjb/integration/include-raw-integration-install-robotframework.sh has already +# been executed + +if [ -f ${WORKSPACE}/env.properties ]; then + source ${WORKSPACE}/env.properties +fi +if [ -f ${ROBOT_VENV}/bin/activate ]; then + source ${ROBOT_VENV}/bin/activate +else + rm -rf /tmp/ci-management + rm -f ${WORKSPACE}/env.properties + cd /tmp + git clone "https://gerrit.onap.org/r/ci-management" + source /tmp/ci-management/jjb/integration/include-raw-integration-install-robotframework.sh +fi + +# install required Robot libraries +pip install robotframework-selenium2library==1.8.0 robotframework-extendedselenium2library==0.9.1 + +# install eteutils +mkdir -p ${ROBOT_VENV}/src/onap +rm -rf ${ROBOT_VENV}/src/onap/testsuite +pip install --upgrade --extra-index-url="https://nexus3.onap.org/repository/PyPi.staging/simple" 'robotframework-onap==0.5' + +pip freeze + +# install chrome driver +if [ ! -x ${ROBOT_VENV}/bin/chromedriver ]; then + pushd ${ROBOT_VENV}/bin + wget -N http://chromedriver.storage.googleapis.com/2.35/chromedriver_linux64.zip + unzip chromedriver_linux64.zip + chmod +x chromedriver + popd +fi diff --git a/run-csit.sh b/run-csit.sh index 0aa48632..043292ca 100755 --- a/run-csit.sh +++ b/run-csit.sh @@ -1,6 +1,7 @@ #!/bin/bash -x # # Copyright 2016-2017 Huawei Technologies Co., Ltd. +# Modification Copyright 2019 © Samsung Electronics Co., Ltd. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -16,8 +17,6 @@ # # $1 project/functionality # $2 robot options -# $3 ci-management repo location - function docker_stats(){ #General memory details @@ -41,22 +40,19 @@ function docker_stats(){ if [ $# -eq 0 ] then - echo - echo "Usage: $0 plans/<project>/<functionality> [<robot-options>] [<ci-management-dir>]" + echo + echo "Usage: $0 plans/<project>/<functionality> [<robot-options>]" echo echo " <project>, <functionality>, <robot-options>: " echo " The same values as for the '{project}-csit-{functionality}' JJB job template." echo - echo " <ci-management-dir>: " - echo " Path to the ci-management repo checked out locally. It not specified, " - echo " assumed to be adjacent to the integration repo directory." - echo exit 1 fi if [ -z "$WORKSPACE" ]; then export WORKSPACE=`git rev-parse --show-toplevel` fi + rm -rf $WORKSPACE/archives mkdir -p $WORKSPACE/archives @@ -67,59 +63,27 @@ else exit 2 fi - export TESTOPTIONS="${2}" -if [ -z "$3" ]; then - CI=${WORKSPACE}/../../ci-management -else - CI=${3} -fi - - - - TESTPLANDIR=${WORKSPACE}/${TESTPLAN} -# Assume that if ROBOT_VENV is set, we don't need to reinstall robot +# Assume that if env.properties is set, installation prerequirements are fulfilled +# env.properties needs to be sourced for ROBOT_VENV if [ -f ${WORKSPACE}/env.properties ]; then source ${WORKSPACE}/env.properties -fi -if [ -f ${ROBOT_VENV}/bin/activate ]; then - source ${ROBOT_VENV}/bin/activate else - source $CI/jjb/integration/include-raw-integration-install-robotframework.sh -fi - -# install required Robot libraries -pip install robotframework-selenium2library==1.8.0 robotframework-extendedselenium2library==0.9.1 - -# install eteutils -mkdir -p ${ROBOT_VENV}/src/onap -rm -rf ${ROBOT_VENV}/src/onap/testsuite -pip install --upgrade --extra-index-url="https://nexus3.onap.org/repository/PyPi.staging/simple" 'robotframework-onap==0.5' - -pip freeze - -# install chrome driver -google-chrome --version -if [ ! -x ${ROBOT_VENV}/bin/chromedriver ]; then - pushd ${ROBOT_VENV}/bin - wget -N http://chromedriver.storage.googleapis.com/2.35/chromedriver_linux64.zip - unzip chromedriver_linux64.zip - chmod +x chromedriver - popd + source ${WORKSPACE}/prepare-csit.sh fi +# Activate the virtualenv containing all the required libraries installed by prepare-csit.sh +source "${ROBOT_VENV}/bin/activate" WORKDIR=`mktemp -d --suffix=-robot-workdir` cd ${WORKDIR} - set +u set -x - # Add csit scripts to PATH export PATH=${PATH}:${WORKSPACE}/docker/scripts:${WORKSPACE}/scripts:${ROBOT_VENV}/bin export SCRIPTS=${WORKSPACE}/scripts |