Merge pull request #3 from dojo90/all-inkl-kasserver-dns-script

support to delete multiple entries
This commit is contained in:
Phlegx Systems OG 2019-11-10 17:15:01 +01:00 committed by GitHub
commit 16bfb1727f
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -69,27 +69,33 @@ dns_kas_rm() {
_get_record_name "$_fulldomain" _get_record_name "$_fulldomain"
_get_record_id _get_record_id
# If there is a record_id, delete the entry # If there is a record_id, delete the entry
if [ -n "$_record_id" ]; then if [ -n "$_record_id" ]; then
params="?kas_login=$KAS_Login" params="?kas_login=$KAS_Login"
params="$params&kas_auth_type=$KAS_Authtype" params="$params&kas_auth_type=$KAS_Authtype"
params="$params&kas_auth_data=$KAS_Authdata" params="$params&kas_auth_data=$KAS_Authdata"
params="$params&kas_action=delete_dns_settings" params="$params&kas_action=delete_dns_settings"
params="$params&var1=record_id"
params="$params&wert1=$_record_id" # split it into a seperated list, if there where multiples entries made
_debug2 "Wait for 10 seconds by default before calling KAS API." records=($_record_id)
sleep 10 for i in "${records[@]}"
response="$(_get "$KAS_Api$params")" do
_debug2 "response" "$response" params2="$params&var1=record_id"
if ! _contains "$response" "TRUE"; then params2="$params2&wert1=$i"
_err "Either the txt record is not found or another error occurred, please check manually." _debug2 "Wait for 10 seconds by default before calling KAS API."
return 1 sleep 10
fi response="$(_get "$KAS_Api$params2")"
_debug2 "response" "$response"
if ! _contains "$response" "TRUE"; then
_err "Either the txt record is not found or another error occurred, please check manually."
return 1
fi
done
else # Cannot delete or unkown error else # Cannot delete or unkown error
_err "No record_id found that can be deleted. Please check manually." _err "No record_id found that can be deleted. Please check manually."
return 1 return 1
fi fi
return 0 return 0
} }
########################## PRIVATE FUNCTIONS ########################### ########################## PRIVATE FUNCTIONS ###########################
@ -147,4 +153,4 @@ _get_record_id() {
_record_id="$(echo "$response" | grep -A 4 "$_record_name" | grep "record_id" | cut -f2 -d">" | xargs)" _record_id="$(echo "$response" | grep -A 4 "$_record_name" | grep "record_id" | cut -f2 -d">" | xargs)"
_debug2 _record_id "$_record_id" _debug2 _record_id "$_record_id"
return 0 return 0
} }