git checkout ${PACKAGES})
}
+download_tst010(){
+ # Fetch conformance tests
+ git clone --single-branch --branch ${NFV_TESTS_BRANCH} https://forge.etsi.org/rep/nfv/api-tests.git /robot-systest/conformance-tests/repo
+ python3 -m pip install -r /robot-systest/conformance-tests/repo/requirements.txt
+}
+
create_vim(){
- echo -e "\nCreating VIM ${VIM_TARGET}"
- osm vim-create --name ${VIM_TARGET} --user ${OS_USERNAME} --password ${OS_PASSWORD} --tenant ${OS_PROJECT_NAME} \
- --auth_url ${OS_AUTH_URL} --account_type openstack --description vim \
- --config "{management_network_name: ${VIM_MGMT_NET}, dataplane_physical_net: ${DATAPLANE:-physnet2}}" || true
- STATUS="PROCESSING"
- i=0
- while [[ ${STATUS} != "ENABLED" ]]
- do
- ((i++))
- if [[ $i -eq 5 ]]; then
- echo "VIM stuck in PROCESSING after 100 seconds"
- exit 1
+
+ attempts=3
+ while [ $attempts -ge 0 ] ; do
+ echo -e "\n$( date '+%F_%H:%M:%S' ) Creating VIM ${VIM_TARGET}"
+ osm vim-create --name ${VIM_TARGET} --user ${OS_USERNAME} --password ${OS_PASSWORD} --tenant ${OS_PROJECT_NAME} \
+ --auth_url ${OS_AUTH_URL} --account_type openstack --description vim \
+ --config "{management_network_name: ${VIM_MGMT_NET}, dataplane_physical_net: ${DATAPLANE:-physnet2}}" || true
+ STATUS="PROCESSING"
+ i=0
+ while [[ ${STATUS} != "ENABLED" ]]
+ do
+ ((i++))
+ if [[ $i -eq 5 ]]; then
+ echo "VIM stuck in PROCESSING after 50 seconds"
+ osm vim-delete --force ${VIM_TARGET}
+ sleep 5
+ break
+ fi
+ sleep 10
+ STATUS=`osm vim-list --long | grep ${VIM_TARGET} | awk '{print $9}'`
+ done
+ if [[ ${STATUS} = "ENABLED" ]] ; then
+ break
fi
- sleep 20
- STATUS=`osm vim-list --long | grep ${VIM_TARGET} | awk '{print $9}'`
+ ((attempts--))
done
+
+ if [ $attempts -lt 0 ] ; then
+ echo "VIM failed to enter ENABLED state"
+ exit 1
+ fi
}
+
PARAMS=""
+RUN_CONFORMANCE_TESTS=false
while (( "$#" )); do
case "$1" in
create_vim
shift 1
;;
+ -T)
+ NFV_TESTS_BRANCH=$2 && download_tst010
+ RUN_CONFORMANCE_TESTS=true
+ shift 1
+ ;;
-h|--help)
echo "OSM TESTS TOOL
-o <osmclient_version> [OPTIONAL]: It is used to specify a particular osmclient version. Default: latest
-p <package_branch> [OPTIONAL]: OSM packages repository branch. Default: master
-t <testing_tags> [OPTIONAL]: Robot tests tags. [sanity, regression, particular_test]. Default: sanity
+ -T <testing_branch> [OPTIONAL]: Run SOL005 Robot conformance tests
-c To create a VIM for the tests
Volumes:
OSMCLIENT=$BRANCH_NAME && install_osmclient
fi
+
+if [ "$RUN_CONFORMANCE_TESTS" = true ] ; then
+ python3 ${ROBOT_DEVOPS_FOLDER}/conformance-tests/run_conformance_tests.py
+fi
+
if [[ -z "${TEST}" ]]; then
printf "Test not provided. \nRunning default test: sanity\n"
TEST="sanity"