X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=test%2Fcommon%2Fapi_curl.sh;h=615ccabca7c98ed080e2d361c36941890e83c45d;hb=84ffd4a403baee1b7aa86f9986f0c1659a5a0881;hp=2aff131f9c48f9eb462c33d23783c8ed5caf2bbd;hpb=b5cb68ea0e77d0a1421b4f17cc58b981628c29f7;p=nonrtric.git diff --git a/test/common/api_curl.sh b/test/common/api_curl.sh index 2aff131f..615ccabc 100644 --- a/test/common/api_curl.sh +++ b/test/common/api_curl.sh @@ -19,30 +19,60 @@ # Generic function to query the agent/ECS via the REST or DMAAP interface. # Used by all other agent/ECS api test functions -# If operation prefix is '_BATCH' the the send and get response is split in two sequences, +# If operation sufffix is '_BATCH' the the send and get response is split in two sequences, # one for sending the requests and one for receiving the response # but only when using the DMAAP interface -# REST or DMAAP is controlled of the base url of $ADAPTER -# arg: (PA|ECS GET|PUT|POST|DELETE|GET_BATCH|PUT_BATCH|POST_BATCH|DELETE_BATCH []) | (PA|ECS RESPONSE ) +# REST or DMAAP is controlled of the base url of $XX_ADAPTER +# arg: (PA|ECS|CR|RC GET|PUT|POST|DELETE|GET_BATCH|PUT_BATCH|POST_BATCH|DELETE_BATCH | []) | (PA|ECS RESPONSE ) # (Not for test scripts) __do_curl_to_api() { - echo "(${BASH_LINENO[0]}): ${FUNCNAME[0]}" $@ >> $HTTPLOG + TIMESTAMP=$(date "+%Y-%m-%d %H:%M:%S") + echo " (${BASH_LINENO[0]}) - ${TIMESTAMP}: ${FUNCNAME[0]}" $@ >> $HTTPLOG + proxyflag="" + if [ $RUNMODE == "KUBE" ]; then + if [ ! -z "$KUBE_PROXY_PATH" ]; then + if [ $KUBE_PROXY_HTTPX == "http" ]; then + proxyflag=" --proxy $KUBE_PROXY_PATH" + else + proxyflag=" --proxy-insecure --proxy $KUBE_PROXY_PATH" + fi + fi + fi paramError=0 - + input_url=$3 if [ $# -gt 0 ]; then if [ $1 == "PA" ]; then - __ADAPTER=$ADAPTER - __RESTBASE=$RESTBASE - __RESTBASE_SECURE=$RESTBASE_SECURE + __ADAPTER=$PA_ADAPTER + __ADAPTER_TYPE=$PA_ADAPTER_TYPE __RETRY_CODES=$AGENT_RETRY_CODES + if [ $PMS_VERSION != "V1" ]; then + input_url=$PMS_API_PREFIX$3 + fi elif [ $1 == "ECS" ]; then - __ADAPTER=$ECS_ADAPTER - __RESTBASE=$ECS_RESTBASE - __RESTBASE_SECURE=$ECS_RESTBASE_SECURE + __ADAPTER=$ECS_ADAPTER + __ADAPTER_TYPE=$ECS_ADAPTER_TYPE __RETRY_CODES=$ECS_RETRY_CODES + elif [ $1 == "CR" ]; then + __ADAPTER=$CR_ADAPTER + __ADAPTER_TYPE=$CR_ADAPTER_TYPE + __RETRY_CODES="" + elif [ $1 == "RC" ]; then + __ADAPTER=$RC_ADAPTER + __ADAPTER_TYPE=$RC_ADAPTER_TYPE + __RETRY_CODES="" + elif [ $1 == "NGW" ]; then + __ADAPTER=$NGW_ADAPTER + __ADAPTER_TYPE=$NGW_ADAPTER_TYPE + __RETRY_CODES="" else paramError=1 fi + if [ $__ADAPTER_TYPE == "MR-HTTP" ]; then + __ADAPTER=$MR_ADAPTER_HTTP + fi + if [ $__ADAPTER_TYPE == "MR-HTTPS" ]; then + __ADAPTER=$MR_ADAPTER_HTTPS + fi fi if [ $# -lt 3 ] || [ $# -gt 4 ]; then paramError=1 @@ -87,7 +117,8 @@ __do_curl_to_api() { if [ $# -ne 3 ]; then paramError=1 fi - if [ $__ADAPTER == $__RESTBASE ] || [ $__ADAPTER == $__RESTBASE_SECURE ]; then + #if [ $__ADAPTER == $__RESTBASE ] || [ $__ADAPTER == $__RESTBASE_SECURE ]; then + if [ $__ADAPTER_TYPE == "REST" ]; then paramError=1 fi else @@ -97,17 +128,18 @@ __do_curl_to_api() { if [ $paramError -eq 1 ]; then ((RES_CONF_FAIL++)) - echo "-Incorrect number of parameters to __do_curl_agent " $@ >> $HTTPLOG + echo "-Incorrect number of parameters to __do_curl_to_api " $@ >> $HTTPLOG echo "-Expected: (PA|ECS GET|PUT|POST|DELETE|GET_BATCH|PUT_BATCH|POST_BATCH|DELETE_BATCH []) | (PA|ECS RESPONSE )" >> $HTTPLOG echo "-Returning response 000" >> $HTTPLOG echo "-000" return 1 fi - if [ $__ADAPTER == $__RESTBASE ] || [ $__ADAPTER == $__RESTBASE_SECURE ]; then - url=" "${__ADAPTER}${3} + #if [ $__ADAPTER == $__RESTBASE ] || [ $__ADAPTER == $__RESTBASE_SECURE ]; then + if [ $__ADAPTER_TYPE == "REST" ]; then + url=" "${__ADAPTER}${input_url} oper=" -X "$oper - curlString="curl -k "${oper}${timeout}${httpcode}${accept}${content}${url}${file} + curlString="curl -k $proxyflag "${oper}${timeout}${httpcode}${accept}${content}${url}${file} echo " CMD: "$curlString >> $HTTPLOG if [ $# -eq 4 ]; then echo " FILE: $(<$4)" >> $HTTPLOG @@ -145,16 +177,18 @@ __do_curl_to_api() { return 0 else if [ $oper != "RESPONSE" ]; then - requestUrl=$3 + requestUrl=$input_url if [ $2 == "PUT" ] && [ $# -eq 4 ]; then payload="$(cat $4 | tr -d '\n' | tr -d ' ' )" echo "payload: "$payload >> $HTTPLOG file=" --data-binary "$payload + elif [ $# -eq 4 ]; then + echo " FILE: $(cat $4)" >> $HTTPLOG fi #urlencode the request url since it will be carried by send-request url - requestUrl=$(python3 -c "from __future__ import print_function; import urllib.parse, sys; print(urllib.parse.quote(sys.argv[1]))" "$3") + requestUrl=$(python3 -c "from __future__ import print_function; import urllib.parse, sys; print(urllib.parse.quote(sys.argv[1]))" "$input_url") url=" "${__ADAPTER}"/send-request?url="${requestUrl}"&operation="${oper} - curlString="curl -k -X POST${timeout}${httpcode}${content}${url}${file}" + curlString="curl -k $proxyflag -X POST${timeout}${httpcode}${content}${url}${file}" echo " CMD: "$curlString >> $HTTPLOG res=$($curlString) retcode=$? @@ -180,7 +214,7 @@ __do_curl_to_api() { cid=$3 fi url=" "${__ADAPTER}"/receive-response?correlationid="${cid} - curlString="curl -k -X GET"${timeout}${httpcode}${url} + curlString="curl -k $proxyflag -X GET"${timeout}${httpcode}${url} echo " CMD: "$curlString >> $HTTPLOG res=$($curlString) retcode=$?