diff options
-rw-r--r-- | test/csit/plans/vnfsdk-refrepo/sanity-check/enterprise2DC.csar | bin | 0 -> 32098 bytes | |||
-rw-r--r-- | test/csit/plans/vnfsdk-refrepo/sanity-check/setup.sh | 30 | ||||
-rw-r--r-- | test/csit/plans/vnfsdk-refrepo/sanity-check/teardown.sh | 21 | ||||
-rw-r--r-- | test/csit/plans/vnfsdk-refrepo/sanity-check/testplan.txt | 3 | ||||
-rw-r--r-- | test/csit/plans/vnfsdk-refrepo/sanity-check/uploadCSAR.sh | 138 | ||||
-rw-r--r-- | test/csit/tests/vnfsdk-marketplace/provision/enterprise2DC.csar | bin | 0 -> 32098 bytes | |||
-rw-r--r-- | test/csit/tests/vnfsdk-marketplace/provision/sanity_test_vnfsdktestfunction.robot | 9 | ||||
-rw-r--r-- | test/csit/tests/vnfsdk-marketplace/provision/uploadCSAR.sh | 132 |
8 files changed, 327 insertions, 6 deletions
diff --git a/test/csit/plans/vnfsdk-refrepo/sanity-check/enterprise2DC.csar b/test/csit/plans/vnfsdk-refrepo/sanity-check/enterprise2DC.csar Binary files differnew file mode 100644 index 000000000..29e08c162 --- /dev/null +++ b/test/csit/plans/vnfsdk-refrepo/sanity-check/enterprise2DC.csar diff --git a/test/csit/plans/vnfsdk-refrepo/sanity-check/setup.sh b/test/csit/plans/vnfsdk-refrepo/sanity-check/setup.sh new file mode 100644 index 000000000..85c6bc275 --- /dev/null +++ b/test/csit/plans/vnfsdk-refrepo/sanity-check/setup.sh @@ -0,0 +1,30 @@ +#!/bin/bash +# +# Copyright 2016-2017 Huawei Technologies 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. +# +# These scripts are sourced by run-csit.sh. + + + +#Start market place +docker run -d -i -t --name=vnfmarket -p 8702:8702 onap/vnfmarket + +REPO_IP=`docker inspect --format '{{ .NetworkSettings.IPAddress }}' vnfmarket` + + +# Pass any variables required by Robot test suites in ROBOT_VARIABLES +ROBOT_VARIABLES="-v REPO_IP:${REPO_IP}" + + diff --git a/test/csit/plans/vnfsdk-refrepo/sanity-check/teardown.sh b/test/csit/plans/vnfsdk-refrepo/sanity-check/teardown.sh new file mode 100644 index 000000000..42d7b7fd4 --- /dev/null +++ b/test/csit/plans/vnfsdk-refrepo/sanity-check/teardown.sh @@ -0,0 +1,21 @@ +#!/bin/bash +# +# Copyright 2016-2017 Huawei Technologies 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 is sourced by run-csit.sh after Robot test completion. + + +kill-instance.sh vnfmarket + diff --git a/test/csit/plans/vnfsdk-refrepo/sanity-check/testplan.txt b/test/csit/plans/vnfsdk-refrepo/sanity-check/testplan.txt new file mode 100644 index 000000000..730df014f --- /dev/null +++ b/test/csit/plans/vnfsdk-refrepo/sanity-check/testplan.txt @@ -0,0 +1,3 @@ +## Test suites are relative paths under [integration.git]/test/csit/tests/. +## Place the suites in run order. +vnfsdk-marketplace/provision/sanity_test_vnfsdktestfunction.robot diff --git a/test/csit/plans/vnfsdk-refrepo/sanity-check/uploadCSAR.sh b/test/csit/plans/vnfsdk-refrepo/sanity-check/uploadCSAR.sh new file mode 100644 index 000000000..279912c35 --- /dev/null +++ b/test/csit/plans/vnfsdk-refrepo/sanity-check/uploadCSAR.sh @@ -0,0 +1,138 @@ +#!/usr/bin/env bash +############################################################################### +# Copyright 2017 Huawei Technologies 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. +############################################################################### +SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" +echo $SCRIPT_DIR + +#CHECK IF MSB_ADDR IS GIVEN IN COMMAND +if [ -z "$1" ] +then + echo "There is no MSB_ADDR" + exit 1 +fi +MSB_ADDR=$1 +CSAR_NAME=$2 +echo $MSB_ADDR +echo $CSAR_NAME + +# Wait for MSB initialization +echo Wait for MSB initialization +for i in {1..20}; do + curl -sS -m 1 $MSB_ADDR > /dev/null && break + sleep $i +done +#MSB initialized +########################################### +########################################### +########################################### +########################################### +########################################### +########################################### +############UOLOAD PACKAGE to MARKET PLACE###################### +echo +echo "############## UOLOAD PACKAGE to MARKET PLACE STARTED ##############"; +UploadPackageResponse=$(curl -sS -X POST -H "Content-Type: multipart/form-data;" -F "file=@$CSAR_NAME" http://$MSB_ADDR/openoapi/vnfsdk-marketplace/v1/PackageResource/csars) +if echo "$UploadPackageResponse" | grep -q "\"csarId\""; then + echo "UOLOAD PACKAGE TO MARKET PLACE SUCSSS !!!"; +else + echo "UploadPackageResponse :$UploadPackageResponse" + echo "UOLOAD PACKAGE TO MARKET PLACE FAILED !!!"; + exit 1; +fi +UploadCsarId=$(echo ${UploadPackageResponse:11:36}) +echo "PACKAGE ID:$UploadCsarId" +echo "############## UOLOAD PACKAGE to MARKET PLACE END ##################"; +#######UOLOAD PACKAGE to MARKET PLACE END############# +########################################### +########################################### +########################################### +########################################### +########################################### +########################################### +########################################### +################GET ON BOARD STATUS######## +echo +echo "####################### GETTING ON-BOARDING STATUS ##################"; +#sleeping for 10 sec so thate ON Boarding operation should be happened at backend +for pc in $(seq 1 10); do + status=$((${pc}*10)); + echo -ne "ON_BOARDING Status (%): $status\033[0K\r" + sleep 1 +done +echo + +#Three Retries for getting On Boarding Result +#count=0 +#while [ $count -lt 3 ] +#do +# OnBoardStatusResponse=$(curl -sS -X GET "http://$MSB_ADDR/openoapi/vnfsdk-marketplace/v1/PackageResource/csars/$UploadCsarId/onboardstatus?operTypeId=functiontest&operId=functestexec" -H "Accept: application/json" -H "Content-Type: application/json") +# echo $OnBoardStatusResponse +# if echo "$OnBoardStatusResponse" | grep -q "\"status\":0"; then +# break; +# else +# if [ $count -eq 3 ] +# then +# echo "ON-BOARDING OPERATION FAILED !!!"; +# fi +# count=`expr $count + 1`; +# sleep 3; +# fi +#done +echo "GET ON-BOARDING RESULT OPERATION SUCESS "; +echo "##################### GETTING ON-BOARDING STATUS END #################"; +####################GET ON BOARD STATUS END############ +########################################## +########################################## +########################################## +########################################## +########################################## +#################DOWNLOAD PACKAGE######### +echo +echo "############## DOWNLOADED PACKAGE FROM MARKET STARTED #################"; +PACKAGE_NAME=market_temp.csar +curl -sS -X GET "http://$MSB_ADDR/openoapi/vnfsdk-marketplace/v1/PackageResource/csars/$UploadCsarId/files" > $PACKAGE_NAME +fileSize=$(du -b $PACKAGE_NAME | cut -f 1) +if [ $fileSize -eq 0 ] +then + echo "DOWNLOADED PACKAGE FROM MARKET NOT PROPER, ON-BOARDING OPERATION FAILED !!!"; + exit 1; +fi +echo "DOWNLOADED PACKAGE FROM MARKET OPERATION SUCESS !!!"; +echo "MARKET PACKAGE NAME:$PACKAGE_NAME" +echo "##################### DOWNLOADED PACKAGE FROM MARKET ##################"; +###################DOWNLOAD PACKAGE END##################### +########################################## +########################################## +########################################## +########################################## +##########CATALOUGE START################# +echo +PACKAGE_NAME=$CSAR_NAME +#Check if common-tosca-catalog is registered with MSB or not +#curl -sS -X GET http://$MSB_ADDR/api/microservices/v1/services/catalog/version/v1 -H "Accept: application/json" -H "Content-Type: application/json" +#check if common-tosca-aria is registered with MSB or not +#curl -sS -X GET http://$MSB_ADDR/api/microservices/v1/services/tosca/version/v1 -H "Accept: application/json" -H "Content-Type: application/json" +#echo Sending POST request to Catalog +CsarIdString=$(curl -sS -X POST -H "Content-Type: multipart/form-data; boundary=-WebKitFormBoundary7MA4YWxkTrZu0gW" -H "Cache-Control: no-cache" -H "Postman-Token: abcb6497-b225-c592-01be-e9ff460ca188" -F "file=@$PACKAGE_NAME" http://$MSB_ADDR/openoapi/catalog/v1/csars) +#getting csarId from the output of curl request +CsarId=$(echo ${CsarIdString:11:36}) +echo $CsarId +echo $CsarIdString +#csarid is sucessfully stored in CsarId variable +echo "====finished======" +##########CATALOUGE END############ +echo "DELETING PACAKE LOCAL COPY:$PACKAGE_NAME"; +#rm $PACKAGE_NAME; diff --git a/test/csit/tests/vnfsdk-marketplace/provision/enterprise2DC.csar b/test/csit/tests/vnfsdk-marketplace/provision/enterprise2DC.csar Binary files differnew file mode 100644 index 000000000..29e08c162 --- /dev/null +++ b/test/csit/tests/vnfsdk-marketplace/provision/enterprise2DC.csar diff --git a/test/csit/tests/vnfsdk-marketplace/provision/sanity_test_vnfsdktestfunction.robot b/test/csit/tests/vnfsdk-marketplace/provision/sanity_test_vnfsdktestfunction.robot index 5a314b519..cff6b58da 100644 --- a/test/csit/tests/vnfsdk-marketplace/provision/sanity_test_vnfsdktestfunction.robot +++ b/test/csit/tests/vnfsdk-marketplace/provision/sanity_test_vnfsdktestfunction.robot @@ -4,16 +4,13 @@ Library Process *** Variables *** -${csarpath} ${SCRIPTS}/../plans/vnfsdk-marketplace/sanity-check/enterprise2DC.csar -${upload} ${SCRIPTS}/../plans/vnfsdk-marketplace/sanity-check/uploadCSAR.sh +${csarpath} enterprise2DC.csar +${upload} uploadCSAR.sh *** Test Cases *** -Upload CSAR to marketplace repository - [Documentation] Upload the VNF Package - ${status}= Run curl -i -X POST -H "Content-Type: multipart/form-data" -F "data=@RobotScript.zip" http://${MSB_IP}/openoapi/vnfsdk/v1/functest/ E2E Test case for VNF SDK [Documentation] Upload the VNF Package - ${status}= Run Process bash ${upload} ${MSB_IP} ${csarpath} > log.txt shell=yes + ${status}= Run Process bash ${upload} ${REPO_IP} ${csarpath} > log.txt shell=yes diff --git a/test/csit/tests/vnfsdk-marketplace/provision/uploadCSAR.sh b/test/csit/tests/vnfsdk-marketplace/provision/uploadCSAR.sh new file mode 100644 index 000000000..800f833dd --- /dev/null +++ b/test/csit/tests/vnfsdk-marketplace/provision/uploadCSAR.sh @@ -0,0 +1,132 @@ +#!/usr/bin/env bash +############################################################################### +# Copyright 2017 Huawei Technologies 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. +############################################################################### +SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" +echo $SCRIPT_DIR + +#CHECK IF MSB_ADDR IS GIVEN IN COMMAND +if [ -z "$1" ] +then + echo "There is no MSB_ADDR" + exit 1 +fi +MSB_ADDR=$1 +CSAR_NAME=$2 +echo $MSB_ADDR +echo $CSAR_NAME + + +########################################### +########################################### +########################################### +########################################### +########################################### +########################################### +############UOLOAD PACKAGE to MARKET PLACE###################### +echo +echo "############## UOLOAD PACKAGE to MARKET PLACE STARTED ##############"; +UploadPackageResponse=$(curl -sS -X POST -H "Content-Type: multipart/form-data;" -F "file=@$CSAR_NAME" http://$MSB_ADDR/openoapi/vnfsdk-marketplace/v1/PackageResource/csars) +if echo "$UploadPackageResponse" | grep -q "\"csarId\""; then + echo "UOLOAD PACKAGE TO MARKET PLACE SUCSSS !!!"; +else + echo "UploadPackageResponse :$UploadPackageResponse" + echo "UOLOAD PACKAGE TO MARKET PLACE FAILED !!!"; + exit 1; +fi +UploadCsarId=$(echo ${UploadPackageResponse:11:36}) +echo "PACKAGE ID:$UploadCsarId" +echo "############## UOLOAD PACKAGE to MARKET PLACE END ##################"; +#######UOLOAD PACKAGE to MARKET PLACE END############# +########################################### +########################################### +########################################### +########################################### +########################################### +########################################### +########################################### +################GET ON BOARD STATUS######## +echo +echo "####################### GETTING ON-BOARDING STATUS ##################"; +#sleeping for 10 sec so thate ON Boarding operation should be happened at backend +for pc in $(seq 1 10); do + status=$((${pc}*10)); + echo -ne "ON_BOARDING Status (%): $status\033[0K\r" + sleep 1 +done +echo + +#Three Retries for getting On Boarding Result +#count=0 +#while [ $count -lt 3 ] +#do +# OnBoardStatusResponse=$(curl -sS -X GET "http://$MSB_ADDR/openoapi/vnfsdk-marketplace/v1/PackageResource/csars/$UploadCsarId/onboardstatus?operTypeId=functiontest&operId=functestexec" -H "Accept: application/json" -H "Content-Type: application/json") +# echo $OnBoardStatusResponse +# if echo "$OnBoardStatusResponse" | grep -q "\"status\":0"; then +# break; +# else +# if [ $count -eq 3 ] +# then +# echo "ON-BOARDING OPERATION FAILED !!!"; +# fi +# count=`expr $count + 1`; +# sleep 3; +# fi +#done +echo "GET ON-BOARDING RESULT OPERATION SUCESS "; +echo "##################### GETTING ON-BOARDING STATUS END #################"; +####################GET ON BOARD STATUS END############ +########################################## +########################################## +########################################## +########################################## +########################################## +#################DOWNLOAD PACKAGE######### +echo +echo "############## DOWNLOADED PACKAGE FROM MARKET STARTED #################"; +PACKAGE_NAME=market_temp.csar +curl -sS -X GET "http://$MSB_ADDR/openoapi/vnfsdk-marketplace/v1/PackageResource/csars/$UploadCsarId/files" > $PACKAGE_NAME +fileSize=$(du -b $PACKAGE_NAME | cut -f 1) +if [ $fileSize -eq 0 ] +then + echo "DOWNLOADED PACKAGE FROM MARKET NOT PROPER, ON-BOARDING OPERATION FAILED !!!"; + exit 1; +fi +echo "DOWNLOADED PACKAGE FROM MARKET OPERATION SUCESS !!!"; +echo "MARKET PACKAGE NAME:$PACKAGE_NAME" +echo "##################### DOWNLOADED PACKAGE FROM MARKET ##################"; +###################DOWNLOAD PACKAGE END##################### +########################################## +########################################## +########################################## +########################################## +##########CATALOUGE START################# +echo +PACKAGE_NAME=$CSAR_NAME +#Check if common-tosca-catalog is registered with MSB or not +#curl -sS -X GET http://$MSB_ADDR/api/microservices/v1/services/catalog/version/v1 -H "Accept: application/json" -H "Content-Type: application/json" +#check if common-tosca-aria is registered with MSB or not +#curl -sS -X GET http://$MSB_ADDR/api/microservices/v1/services/tosca/version/v1 -H "Accept: application/json" -H "Content-Type: application/json" +#echo Sending POST request to Catalog +CsarIdString=$(curl -sS -X POST -H "Content-Type: multipart/form-data; boundary=-WebKitFormBoundary7MA4YWxkTrZu0gW" -H "Cache-Control: no-cache" -H "Postman-Token: abcb6497-b225-c592-01be-e9ff460ca188" -F "file=@$PACKAGE_NAME" http://$MSB_ADDR/openoapi/catalog/v1/csars) +#getting csarId from the output of curl request +CsarId=$(echo ${CsarIdString:11:36}) +echo $CsarId +echo $CsarIdString +#csarid is sucessfully stored in CsarId variable +echo "====finished======" +##########CATALOUGE END############ +echo "DELETING PACAKE LOCAL COPY:$PACKAGE_NAME"; +#rm $PACKAGE_NAME; |