diff options
Diffstat (limited to 'aai-traversal/src/main/scripts/putTool.sh')
-rw-r--r-- | aai-traversal/src/main/scripts/putTool.sh | 61 |
1 files changed, 61 insertions, 0 deletions
diff --git a/aai-traversal/src/main/scripts/putTool.sh b/aai-traversal/src/main/scripts/putTool.sh index ea529f1..be273a2 100644 --- a/aai-traversal/src/main/scripts/putTool.sh +++ b/aai-traversal/src/main/scripts/putTool.sh @@ -22,8 +22,14 @@ # # +<<<<<<< HEAD # The script is called with a resource, filepath and an optional argument to # ignore HTTP failure codes which would otherwise indicate a failure. +======= +# The script is called with a resource, filepath, an optional argument to +# ignore HTTP failure codes which would otherwise indicate a failure, +# and an optional argument to display more data. +>>>>>>> codecloud/release/1802 # It invokes a PUT on the resource with the file using curl # Uses aaiconfig.properties for authorization type and url. The HTTP response # code is checked. Responses between 200 and 299 are considered success. @@ -45,6 +51,26 @@ contains() { fi } +<<<<<<< HEAD +======= +display_usage() { + cat <<EOF + Usage: $0 [options] + + 1. Usage: putTool.sh <resource-path> <json payload file> <optional HTTP Response code> <optional -display> + 2. This script requires two arguments, a resource path and a file path to a json file containing the payload. + 3. Example: query?format=xxxx customquery.json (possible formats are simple, raw, console, count, graphson, id, pathed, resource and resource_and_url) + 4. Adding the optional HTTP Response code will allow the script to ignore HTTP failure codes that match the input parameter. + 5. Adding the optional "-display" argument will display all data returned from the request, instead of just a response code. + +EOF +} +if [ $# -eq 0 ]; then + display_usage + exit 1 +fi + +>>>>>>> codecloud/release/1802 # remove leading slash when present RESOURCE=`echo $1 | sed "s,^/,,"` if [ -z $RESOURCE ]; then @@ -76,6 +102,21 @@ prop_file=$PROJECT_HOME/bundleconfig/etc/appprops/aaiconfig.properties log_dir=$PROJECT_HOME/logs/misc today=$(date +\%Y-\%m-\%d) +<<<<<<< HEAD +======= +RETURNRESPONSE=false +if [ ${#} -ne 2 ]; then + if [ "$3" = "-display" ]; then + RETURNRESPONSE=true + fi +fi +if [ ${#} -ne 3 ]; then + if [ "$4" = "-display" ]; then + RETURNRESPONSE=true + fi +fi + +>>>>>>> codecloud/release/1802 MISSING_PROP=false RESTURL=`grep ^aai.server.url= $prop_file |cut -d'=' -f2 |tr -d "\015"` if [ -z $RESTURL ]; then @@ -106,10 +147,22 @@ if [ $MISSING_PROP = false ]; then else AUTHSTRING="-u $CURLUSER:$CURLPASSWORD" fi +<<<<<<< HEAD result=`curl --request PUT -sL -w "%{http_code}" -o /dev/null -k $AUTHSTRING -H "X-FromAppId: $XFROMAPPID" -H "X-TransactionId: $XTRANSID" -H "Accept: application/json" -T $JSONFILE $RESTURL$RESOURCE` #echo "result is $result." RC=0; if [ $? -eq 0 ]; then +======= + + if [ $RETURNRESPONSE = true ]; then + curl --request PUT -sL -k $AUTHSTRING -H "X-FromAppId: $XFROMAPPID" -H "X-TransactionId: $XTRANSID" -H "Accept: application/json" -T $JSONFILE $RESTURL$RESOURCE | python -mjson.tool + RC=$? + else + result=`curl --request PUT -sL -w "%{http_code}" -o /dev/null -k $AUTHSTRING -H "X-FromAppId: $XFROMAPPID" -H "X-TransactionId: $XTRANSID" -H "Accept: application/json" -T $JSONFILE $RESTURL$RESOURCE` + #echo "result is $result." + RC=0; + if [ $? -eq 0 ]; then +>>>>>>> codecloud/release/1802 case $result in +([0-9])?) #if [[ "$result" -eq 412 || "$result" -ge 200 && $result -lt 300 ]] @@ -138,10 +191,18 @@ if [ $MISSING_PROP = false ]; then ;; esac +<<<<<<< HEAD else echo "FAILED to send request to $RESTURL" RC=-1 fi +======= + else + echo "FAILED to send request to $RESTURL" + RC=-1 + fi + fi +>>>>>>> codecloud/release/1802 else echo "usage: $0 resource file [expected-failure-codes]" RC=-1 |