#!/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;