Adding k8s cluster for the CD
[icn.git] / env / lib / common.sh
index f4198d0..5705402 100755 (executable)
@@ -4,7 +4,7 @@
 UBUNTU_BIONIC=${UBUNTU_BIONIC:-Ubuntu 18.04.2 LTS}
 
 #offline mode variable
-DOWNLOAD_PATH=${DOWNLOAD_PATH:-/opt/icn/}
+DOWNLOAD_PATH=${DOWNLOAD_PATH:-/opt/icn}
 LOCAL_APT_REPO=${LOCAL_APT_REPO:-$DOWNLOAD_PATH/apt}
 PIP_CACHE_DIR=${PIP_CACHE_DIR:-$DOWNLOAD_PATH/pip-cache-dir}
 BUILD_DIR=${BUILD_DIR:-$DOWNLOAD_PATH/build-dir}
@@ -43,3 +43,34 @@ COMPUTE_IPMI_PASSWORD=${COMPUTE_IPMI_PASSWORD:-"changeme1"}
 COMPUTE_NODE_FQDN=${COMPUTE_NODE_FQDN:-"node01.akraino.org"}
 #COMPUTE_NODE_HOSTNAME=${COMPUTE_NODE_HOSTNAME:-"node01"}
 COMPUTE_NODE_PASSWORD=${COMPUTE_NODE_PASSWORD:-"mypasswd"}
+
+#refered from onap
+function call_api {
+    #Runs curl with passed flags and provides
+    #additional error handling and debug information
+
+    #Function outputs server response body
+    #and performs validation of http_code
+
+    local status
+    local curl_response_file="$(mktemp -p /tmp)"
+    local curl_common_flags=(-s -w "%{http_code}" -o "${curl_response_file}")
+    local command=(curl "${curl_common_flags[@]}" "$@")
+
+    echo "[INFO] Running '${command[@]}'" >&2
+    if ! status="$("${command[@]}")"; then
+        echo "[ERROR] Internal curl error! '$status'" >&2
+        cat "${curl_response_file}"
+        rm "${curl_response_file}"
+        return 2
+    else
+        echo "[INFO] Server replied with status: ${status}" >&2
+        cat "${curl_response_file}"
+        rm "${curl_response_file}"
+        if [[ "${status:0:1}" =~ [45] ]]; then
+            return 1
+        else
+            return 0
+        fi
+    fi
+}