63 lines
1.1 KiB
63 lines
1.1 KiB
#!/bin/bash
|
|
CURL="/usr/bin/curl"
|
|
SYSCREDS="/etc/default/ngcp-api"
|
|
USERCREDS="${HOME}/.ngcp-api"
|
|
TOOLS="/usr/share/ngcp-panel-tools/ngcp-api.inc"
|
|
|
|
usage () {
|
|
cat << EOF
|
|
Usage: $0 [OPTIONS] <url>
|
|
|
|
sends a delete request to NGCP REST API
|
|
|
|
OPTIONS:
|
|
-h this help
|
|
-v verbose mode
|
|
EOF
|
|
exit 1
|
|
}
|
|
|
|
if [ -z "${APIUSER}" ]; then
|
|
if [ -f "${TOOLS}" ]; then
|
|
source "${TOOLS}"
|
|
|
|
importcreds "${USERCREDS}" 0600
|
|
if [ -z "${APIUSER}" ]; then
|
|
importcreds "${SYSCREDS}" 0440
|
|
APIUSER="${AUTH_SYSTEM_LOGIN}:${AUTH_SYSTEM_PASSWORD}"
|
|
APIREALM=(-H 'NGCP-UserAgent: NGCP::API::Client')
|
|
fi
|
|
fi
|
|
if [ -z "${APIUSER}" ]; then
|
|
echo "Error: no authentication credentials found" >&2
|
|
exit 1
|
|
fi
|
|
fi
|
|
|
|
while getopts "hv" OPTION
|
|
do
|
|
case ${OPTION} in
|
|
h)
|
|
usage
|
|
;;
|
|
v)
|
|
VERBOSE="--verbose"
|
|
;;
|
|
?)
|
|
usage
|
|
;;
|
|
esac
|
|
done
|
|
shift $((OPTIND - 1))
|
|
|
|
URL="$1"
|
|
if [ -z "${URL}" ] ; then
|
|
usage
|
|
fi
|
|
validateurl "$URL"
|
|
|
|
${CURL} -i ${VERBOSE} -X DELETE \
|
|
"${APIREALM[@]}" \
|
|
-H 'Connection: close' \
|
|
"${HEADERS}" --user "${APIUSER}" --insecure "${URL}"
|