@ -46,12 +46,12 @@ dns_lua_add() {
return 1
fi
count = $( printf "%s\n" " $response " | _egrep_o " \"name\":\" $fulldomain \" " | wc -l)
count = $( printf "%s\n" " $response " | _egrep_o " \"name\":\" $fulldomain .\",\"type\":\"TXT \"" | wc -l | tr -d " " )
_debug count " $count "
if [ " $count " = "0" ] ; then
_info "Adding record"
if _LUA_rest POST " zones/ $_domain_id /records " " {\"type\":\"TXT\",\"name\":\" $fulldomain .\",\"content\":\" $txtvalue \",\"ttl\":120} " ; then
if printf -- "%s" " $response " | grep "$fulldomain " >/dev/null ; then
if _contains " $response " "$fulldomain " ; then
_info "Added"
#todo: check if the record takes effect
return 0
@ -63,11 +63,11 @@ dns_lua_add() {
_err "Add txt record error."
else
_info "Updating record"
record_id = $( printf "%s\n" " $response " | _egrep_o " \"id\":[^,]*,\"name\":\" $fulldomain .\",\"type\":\"TXT\" " | cut -d: -f2 | cut -d, -f1)
record_id = $( printf "%s\n" " $response " | _egrep_o " \"id\":[^,]*,\"name\":\" $fulldomain .\",\"type\":\"TXT\" " | _head_n 1 | cut -d: -f2 | cut -d, -f1)
_debug "record_id" " $record_id "
_LUA_rest PUT " zones/ $_domain_id /records/ $record_id " " {\"id\":\" $record_id \" ,\"type\":\"TXT\",\"name\":\"$fulldomain .\",\"content\":\" $txtvalue \",\"zone_id\":\" $_domain_id \" ,\"ttl\":120}"
if [ " $? " = "0" ] ; then
_LUA_rest PUT " zones/ $_domain_id /records/ $record_id " " {\"id\": $record_id ,\"type\":\"TXT\",\"name\":\" $fulldomain .\",\"content\":\" $txtvalue \",\"zone_id\": $_domain_id ,\"ttl\":120} "
if [ " $? " = "0" ] && _contains " $response " "updated_at" ; then
_info "Updated!"
#todo: check if the record takes effect
return 0
@ -99,6 +99,7 @@ _get_root() {
fi
while true; do
h = $( printf "%s" " $domain " | cut -d . -f $i -100)
_debug h " $h "
if [ -z " $h " ] ; then
#not valid
return 1
@ -106,6 +107,7 @@ _get_root() {
if _contains " $response " " \"name\":\" $h \" " ; then
_domain_id = $( printf "%s\n" " $response " | _egrep_o " \"id\":[^,]*,\"name\":\" $h \" " | cut -d : -f 2 | cut -d , -f 1)
_debug _domain_id " $_domain_id "
if [ " $_domain_id " ] ; then
_sub_domain = $( printf "%s" " $domain " | cut -d . -f 1-$p )
_domain = " $h "