Spaces/indents - I think!

This commit is contained in:
stilez 2018-08-13 14:12:35 +00:00 committed by GitHub
parent aa75a6d028
commit ac9ba6a417
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -41,7 +41,7 @@
# export pleskxml_uri="https://www.plesk_uri.org:8443/enterprise/control/agent.php" # export pleskxml_uri="https://www.plesk_uri.org:8443/enterprise/control/agent.php"
# (or something similar) # (or something similar)
# export pleskxml_user="johndoe" # export pleskxml_user="johndoe"
# export pleskxml_pass="kj8we8dej38e8d#q0q3!!!qa" # export pleskxml_pass="XXXXX"
# OPTIONAL VARIABLES: # OPTIONAL VARIABLES:
@ -163,8 +163,7 @@ _pleskxml_tplt_get_dns_records="<packet><dns><get_rec><filter><site-id>%s</site-
dns_pleskxml_add() { dns_pleskxml_add() {
_DBG 2 "Entered dns_pleskxml_add($*)..."
_DBG 2 "Entered dns_pleskxml_add($*)..."
_pleskxml_FQDN=$1 _pleskxml_FQDN=$1
_pleskxml_TXT_string=$2 _pleskxml_TXT_string=$2
@ -180,7 +179,7 @@ _DBG 2 "Entered dns_pleskxml_add($*)..."
_pleskxml_get_variables _pleskxml_get_variables
_pleskxml_retcode=$? _pleskxml_retcode=$?
_DBG_VARDUMP 2 'Called _pleskxml_get_variables()' _DBG_VARDUMP 2 'Called _pleskxml_get_variables()'
if [ $_pleskxml_retcode -ne 0 ] || [ "$_pleskxml_errors" != '' ]; then if [ $_pleskxml_retcode -ne 0 ] || [ "$_pleskxml_errors" != '' ]; then
_err "$_pleskxml_errors" _err "$_pleskxml_errors"
@ -196,12 +195,12 @@ _DBG_VARDUMP 2 'Called _pleskxml_get_variables()'
_info "Plesk XML: Variables loaded." _info "Plesk XML: Variables loaded."
_info "Trying to connect to Plesk ($_pleskxml_uri), and request Plesk's internal reference ID for domain '${_pleskxml_domain}'" _info "Trying to connect to Plesk ($_pleskxml_uri), and request Plesk's internal reference ID for domain '${_pleskxml_domain}'"
_DBG 2 "Calling API to get domain ID for $_pleskxml_domain" _DBG 2 "Calling API to get domain ID for $_pleskxml_domain"
_pleskxml_domain_id="$( _pleskxml_get_domain_ID "$_pleskxml_domain" )" _pleskxml_domain_id="$( _pleskxml_get_domain_ID "$_pleskxml_domain" )"
_pleskxml_retcode=$? _pleskxml_retcode=$?
_DBG_VARDUMP 2 'Call has returned' _DBG_VARDUMP 2 'Call has returned'
if [ $_pleskxml_retcode -ne 0 ] || [ "$_pleskxml_errors" != '' ] || [ "$_pleskxml_result" = '' ]; then if [ $_pleskxml_retcode -ne 0 ] || [ "$_pleskxml_errors" != '' ] || [ "$_pleskxml_result" = '' ]; then
@ -215,14 +214,14 @@ _DBG_VARDUMP 2 'Call has returned'
# Try to add the TXT record # Try to add the TXT record
_DBG 2 "Calling API to add TXT record to domain ID #$_pleskxml_domain_id ('$_pleskxml_domain')" _DBG 2 "Calling API to add TXT record to domain ID #$_pleskxml_domain_id ('$_pleskxml_domain')"
_info "Plesk XML: Trying to add TXT record to domain ID $_pleskxml_domain_id ('$_pleskxml_domain'), host '$_pleskxml_host'. The TXT string is: '$_pleskxml_TXT_string'." _info "Plesk XML: Trying to add TXT record to domain ID $_pleskxml_domain_id ('$_pleskxml_domain'), host '$_pleskxml_host'. The TXT string is: '$_pleskxml_TXT_string'."
_pleskxml_add_dns_txt_record "$_pleskxml_domain_id" "$_pleskxml_host" "$_pleskxml_TXT_string" _pleskxml_add_dns_txt_record "$_pleskxml_domain_id" "$_pleskxml_host" "$_pleskxml_TXT_string"
_pleskxml_retcode=$? _pleskxml_retcode=$?
_DBG_VARDUMP 2 'Call has returned' _DBG_VARDUMP 2 'Call has returned'
if [ $_pleskxml_retcode -ne 0 ] || [ "$_pleskxml_errors" != '' ] || [ "$_pleskxml_result" = '' ]; then if [ $_pleskxml_retcode -ne 0 ] || [ "$_pleskxml_errors" != '' ] || [ "$_pleskxml_result" = '' ]; then
# Really, just testing return code should be enough, based on above code, but let's go "all-in" and test all variables returned # Really, just testing return code should be enough, based on above code, but let's go "all-in" and test all variables returned
@ -233,7 +232,7 @@ _DBG_VARDUMP 2 'Call has returned'
_info 'An ACME Challenge TXT record for '"$_pleskxml_domain"' was added to Plesk. Plesk returned a successful response.\nThe TXT field was: '"'$_pleskxml_TXT_string'" _info 'An ACME Challenge TXT record for '"$_pleskxml_domain"' was added to Plesk. Plesk returned a successful response.\nThe TXT field was: '"'$_pleskxml_TXT_string'"
_info "(TO CHECK?: Note that all subdomains under this domain uses the same TXT record.) <-- MAY NOT BE NEEDED" _info "(TO CHECK?: Note that all subdomains under this domain uses the same TXT record.) <-- MAY NOT BE NEEDED"
_DBG 2 "SUCCESSFULLY exiting dns_pleskxml_add()..." _DBG 2 "SUCCESSFULLY exiting dns_pleskxml_add()..."
return 0 return 0
} }
@ -245,7 +244,7 @@ _DBG 2 "SUCCESSFULLY exiting dns_pleskxml_add()..."
dns_pleskxml_rm() { dns_pleskxml_rm() {
_DBG 2 "Entered dns_pleskxml_rm($*)..." _DBG 2 "Entered dns_pleskxml_rm($*)..."
_pleskxml_FQDN=$1 _pleskxml_FQDN=$1
_pleskxml_TXT_string=$2 _pleskxml_TXT_string=$2
@ -261,7 +260,7 @@ _DBG 2 "Entered dns_pleskxml_rm($*)..."
_pleskxml_get_variables _pleskxml_get_variables
_pleskxml_retcode=$? _pleskxml_retcode=$?
_DBG_VARDUMP 2 'Called _pleskxml_get_variables()' _DBG_VARDUMP 2 'Called _pleskxml_get_variables()'
if [ $_pleskxml_retcode -ne 0 ] || [ "$_pleskxml_errors" != '' ]; then if [ $_pleskxml_retcode -ne 0 ] || [ "$_pleskxml_errors" != '' ]; then
_err "$_pleskxml_errors" _err "$_pleskxml_errors"
@ -277,12 +276,12 @@ _DBG_VARDUMP 2 'Called _pleskxml_get_variables()'
_info "Plesk XML: Variables loaded." _info "Plesk XML: Variables loaded."
_info "Trying to connect to Plesk ($_pleskxml_uri), and request Plesk's internal reference ID for domain '${_pleskxml_domain}'" _info "Trying to connect to Plesk ($_pleskxml_uri), and request Plesk's internal reference ID for domain '${_pleskxml_domain}'"
_DBG 2 "Calling API to get domain ID for $_pleskxml_domain" _DBG 2 "Calling API to get domain ID for $_pleskxml_domain"
_pleskxml_domain_id="$( _pleskxml_get_domain_ID "$_pleskxml_domain" )" _pleskxml_domain_id="$( _pleskxml_get_domain_ID "$_pleskxml_domain" )"
_pleskxml_retcode=$? _pleskxml_retcode=$?
_DBG_VARDUMP 2 'Call has returned' _DBG_VARDUMP 2 'Call has returned'
if [ $_pleskxml_retcode -ne 0 ] || [ "$_pleskxml_errors" != '' ] || [ "$_pleskxml_result" = '' ]; then if [ $_pleskxml_retcode -ne 0 ] || [ "$_pleskxml_errors" != '' ] || [ "$_pleskxml_result" = '' ]; then
# Really, just testing return code should be enough, based on above code, but let's go "all-in" and test all variables returned # Really, just testing return code should be enough, based on above code, but let's go "all-in" and test all variables returned
@ -297,12 +296,12 @@ _DBG_VARDUMP 2 'Call has returned'
_info "Plesk XML: Trying to remove TXT record from domain ID $_pleskxml_domain_id ('$_pleskxml_domain'), host '$_pleskxml_host'." _info "Plesk XML: Trying to remove TXT record from domain ID $_pleskxml_domain_id ('$_pleskxml_domain'), host '$_pleskxml_host'."
_DBG 2 "Calling API to remove TXT record from domain ID #$_pleskxml_domain_id ('$_pleskxml_domain')" _DBG 2 "Calling API to remove TXT record from domain ID #$_pleskxml_domain_id ('$_pleskxml_domain')"
_pleskxml_rmv_txt_record "$_pleskxml_domain_id" "$_pleskxml_host" "$_pleskxml_TXT_string" _pleskxml_rmv_txt_record "$_pleskxml_domain_id" "$_pleskxml_host" "$_pleskxml_TXT_string"
_pleskxml_retcode=$? _pleskxml_retcode=$?
_DBG_VARDUMP 2 'Call has returned' _DBG_VARDUMP 2 'Call has returned'
if [ $_pleskxml_retcode -ne 0 ] || [ "$_pleskxml_errors" != '' ] || [ "$_pleskxml_result" = '' ]; then if [ $_pleskxml_retcode -ne 0 ] || [ "$_pleskxml_errors" != '' ] || [ "$_pleskxml_result" = '' ]; then
# Really, just testing return code should be enough, based on above code, but let's go "all-in" and test all variables returned # Really, just testing return code should be enough, based on above code, but let's go "all-in" and test all variables returned
@ -312,7 +311,7 @@ _DBG_VARDUMP 2 'Call has returned'
_info 'A TXT record for '"$_pleskxml_domain"' was removed from Plesk. Plesk returned a successful response.\nThe TXT field was: '"'$_pleskxml_TXT_string'" _info 'A TXT record for '"$_pleskxml_domain"' was removed from Plesk. Plesk returned a successful response.\nThe TXT field was: '"'$_pleskxml_TXT_string'"
_DBG 2 "SUCCESSFULLY exiting dns_pleskxml_rm()..." _DBG 2 "SUCCESSFULLY exiting dns_pleskxml_rm()..."
return 0 return 0
} }
@ -324,7 +323,7 @@ _DBG 2 "SUCCESSFULLY exiting dns_pleskxml_rm()..."
_pleskxml_get_variables() { _pleskxml_get_variables() {
_DBG_VARDUMP 2 'Entered _pleskxml_get_variables()' _DBG_VARDUMP 2 'Entered _pleskxml_get_variables()'
_pleskxml_errors='' _pleskxml_errors=''
@ -383,10 +382,10 @@ _DBG_VARDUMP 2 'Entered _pleskxml_get_variables()'
_pleskxml_optional_curl_args="${pleskxml_optional_curl_args:-}" _pleskxml_optional_curl_args="${pleskxml_optional_curl_args:-}"
if [ -n "$_pleskxml_errors" ]; then if [ -n "$_pleskxml_errors" ]; then
_DBG_VARDUMP 2 "UNSUCCESSFULLY exiting _pleskxml_get_variables() (UNSUCCESSFUL CALL!)" _DBG_VARDUMP 2 "UNSUCCESSFULLY exiting _pleskxml_get_variables() (UNSUCCESSFUL CALL!)"
return 1 return 1
else else
_DBG_VARDUMP 2 "SUCCESSFULLY exiting _pleskxml_get_variables()" _DBG_VARDUMP 2 "SUCCESSFULLY exiting _pleskxml_get_variables()"
return 0 return 0
fi fi
} }
@ -400,7 +399,7 @@ _DBG_VARDUMP 2 "SUCCESSFULLY exiting _pleskxml_get_variables()"
_pleskxml_api_request() { _pleskxml_api_request() {
_DBG 2 "Entered _pleskxml_api_request($*), to make an XML request.${_pleskxml_newline} arg1=^$1^${_pleskxml_newline} arg2=^$2^${_pleskxml_newline} arg3=^$3^${_pleskxml_newline} arg4=^$4^" _DBG 2 "Entered _pleskxml_api_request($*), to make an XML request.${_pleskxml_newline} arg1=^$1^${_pleskxml_newline} arg2=^$2^${_pleskxml_newline} arg3=^$3^${_pleskxml_newline} arg4=^$4^"
_pleskxml_errors='' _pleskxml_errors=''
_pleskxml_result='' _pleskxml_result=''
@ -434,13 +433,13 @@ _DBG 2 "Entered _pleskxml_api_request($*), to make an XML request.${_pleskxml_ne
-d '${_pleskxml_APICMD}' \ -d '${_pleskxml_APICMD}' \
${_pleskxml_optional_curl_args}" ${_pleskxml_optional_curl_args}"
_DBG_VARDUMP 2 'About to call Plesk via cURL' _DBG_VARDUMP 2 'About to call Plesk via cURL'
_DBG 2 "$( printf 'cURL command: %s %s %s' "$_pleskxml_curlpath" "$_pleskxml_curlargs" "$_pleskxml_uri" )" _DBG 2 "$( printf 'cURL command: %s %s %s' "$_pleskxml_curlpath" "$_pleskxml_curlargs" "$_pleskxml_uri" )"
_pleskxml_prettyprint_result="$( eval "$_pleskxml_curlpath" "$_pleskxml_curlargs" "$_pleskxml_uri" 2>/dev/null )" _pleskxml_prettyprint_result="$( eval "$_pleskxml_curlpath" "$_pleskxml_curlargs" "$_pleskxml_uri" 2>/dev/null )"
_pleskxml_retcode="$?" _pleskxml_retcode="$?"
_DBG 1 "_pleskxml_prettyprint_result =${_pleskxml_newline}'$_pleskxml_prettyprint_result' " _DBG 1 "_pleskxml_prettyprint_result =${_pleskxml_newline}'$_pleskxml_prettyprint_result' "
_DBG 2 "retcode = $_pleskxml_retcode" _DBG 2 "retcode = $_pleskxml_retcode"
# BUGFIX TO CHECK - WILL RETCODE FROM cURL BE AVAILABLE HERE? # BUGFIX TO CHECK - WILL RETCODE FROM cURL BE AVAILABLE HERE?
@ -448,7 +447,7 @@ _DBG 2 "retcode = $_pleskxml_retcode"
if [ $_pleskxml_retcode -ne 0 ]; then if [ $_pleskxml_retcode -ne 0 ]; then
_pleskxml_errors="Exiting due to cURL error when querying Plesk XML API. The cURL return code was: $_pleskxml_retcode." _pleskxml_errors="Exiting due to cURL error when querying Plesk XML API. The cURL return code was: $_pleskxml_retcode."
_DBG 2 "$_pleskxml_errors" _DBG 2 "$_pleskxml_errors"
return 1 return 1
fi fi
@ -464,19 +463,19 @@ _DBG 2 "$_pleskxml_errors"
tr -d '\n' \ tr -d '\n' \
)" )"
_DBG_VARDUMP 2 'cURL succeeded, valid cURL response obtained' _DBG_VARDUMP 2 'cURL succeeded, valid cURL response obtained'
# Now we need to check item by item if it's OK. # Now we need to check item by item if it's OK.
# As we go, we will strip out "known OK" stuff to leave the core reply. # As we go, we will strip out "known OK" stuff to leave the core reply.
# XML header and packet version? # XML header and packet version?
_DBG 2 'Checking <?xml> and <packet> tags exist...' _DBG 2 'Checking <?xml> and <packet> tags exist...'
if printf '%s' "$_pleskxml_result" | grep -qiEv '^<\?xml version=[^>]+><packet version=[^>]+>.*</packet>$'; then if printf '%s' "$_pleskxml_result" | grep -qiEv '^<\?xml version=[^>]+><packet version=[^>]+>.*</packet>$'; then
# Error - should have <?xml><packet>...</packet>. Abort # Error - should have <?xml><packet>...</packet>. Abort
_pleskxml_errors="Error when querying Plesk XML API. The API did not return a valid XML response. The response was:${_pleskxml_newline}${_pleskxml_prettyprint_result}${_pleskxml_newline}The collapsed version was:${_pleskxml_newline}'${_pleskxml_result}'${_pleskxml_newline}" _pleskxml_errors="Error when querying Plesk XML API. The API did not return a valid XML response. The response was:${_pleskxml_newline}${_pleskxml_prettyprint_result}${_pleskxml_newline}The collapsed version was:${_pleskxml_newline}'${_pleskxml_result}'${_pleskxml_newline}"
_DBG 2 "$_pleskxml_errors" _DBG 2 "$_pleskxml_errors"
return 1 return 1
else else
# So far so good. Strip the <?xml> and <packet>...</packet> tags and continue # So far so good. Strip the <?xml> and <packet>...</packet> tags and continue
@ -485,7 +484,7 @@ _DBG 2 "$_pleskxml_errors"
)" )"
fi fi
_DBG 2 "Checking <system> tags don't exist..." _DBG 2 "Checking <system> tags don't exist..."
# <system> section found anywhere in response? # <system> section found anywhere in response?
# This usually means some kind of basic API error such as login failure, bad XML request, etc # This usually means some kind of basic API error such as login failure, bad XML request, etc
@ -494,12 +493,12 @@ _DBG 2 "Checking <system> tags don't exist..."
if printf '%s' "$_pleskxml_result" | grep -qiE '<system>.*</system>'; then if printf '%s' "$_pleskxml_result" | grep -qiE '<system>.*</system>'; then
# Error - shouldn't contain <system>...</system>. Abort # Error - shouldn't contain <system>...</system>. Abort
_pleskxml_errors='Error when querying Plesk XML API. The result contained a <system> tag.\nThis usually indicates an invalid login, badly formatted API request or other error. The response was:\n'"$_pleskxml_prettyprint_result"'\n' _pleskxml_errors='Error when querying Plesk XML API. The result contained a <system> tag.\nThis usually indicates an invalid login, badly formatted API request or other error. The response was:\n'"$_pleskxml_prettyprint_result"'\n'
_DBG 2 "$_pleskxml_errors" _DBG 2 "$_pleskxml_errors"
return 1 return 1
fi fi
_DBG 2 'Checking 1 or >=1 <result> tag (or tags) found, each containing 'status:ok'...' _DBG 2 'Checking 1 or >=1 <result> tag (or tags) found, each containing 'status:ok'...'
# Check results section. Most commands only have one results section. # Check results section. Most commands only have one results section.
@ -515,11 +514,11 @@ _DBG 2 'Checking 1 or >=1 <result> tag (or tags) found, each containing 'status:
if printf '%s' "$_pleskxml_result" | grep -qiEv '<result>.*</result>'; then if printf '%s' "$_pleskxml_result" | grep -qiEv '<result>.*</result>'; then
# Error - doesn't contain <result>...</result>. Abort # Error - doesn't contain <result>...</result>. Abort
_pleskxml_errors='Error when querying Plesk XML API. The result did not contain a <result> section.\nThis is unexpected: something has gone wrong. Please raise this as a bug/issue in the module. The response was:\n'"$_pleskxml_prettyprint_result"'\n' _pleskxml_errors='Error when querying Plesk XML API. The result did not contain a <result> section.\nThis is unexpected: something has gone wrong. Please raise this as a bug/issue in the module. The response was:\n'"$_pleskxml_prettyprint_result"'\n'
_DBG 2 "$_pleskxml_errors" _DBG 2 "$_pleskxml_errors"
return 1 return 1
fi fi
_DBG 2 'Found at least 1 <result> section. Splitting each result section to a separate line' _DBG 2 'Found at least 1 <result> section. Splitting each result section to a separate line'
_pleskxml_result="$( printf '%s' "$_pleskxml_result" | \ _pleskxml_result="$( printf '%s' "$_pleskxml_result" | \
sed "s/<result>/\\${_pleskxml_newline}<result>/g" | \ sed "s/<result>/\\${_pleskxml_newline}<result>/g" | \
@ -531,18 +530,18 @@ _DBG 2 'Found at least 1 <result> section. Splitting each result section to a se
_pleskxml_linecount=$( printf '%s\n' "$_pleskxml_result" | wc -l ) _pleskxml_linecount=$( printf '%s\n' "$_pleskxml_result" | wc -l )
_DBG 2 "Result is: '$_pleskxml_result' (${_pleskxml_linecount} line(s))" _DBG 2 "Result is: '$_pleskxml_result' (${_pleskxml_linecount} line(s))"
_DBG_VARDUMP 2 'Testing <result> section linecount is OK (1 or >=1 as required)' _DBG_VARDUMP 2 'Testing <result> section linecount is OK (1 or >=1 as required)'
if [ $_pleskxml_multiple_results_allowed -eq 0 ] && [ "$_pleskxml_linecount" -gt 1 ]; then if [ $_pleskxml_multiple_results_allowed -eq 0 ] && [ "$_pleskxml_linecount" -gt 1 ]; then
# Error - contains multiple <result> sections. Abort # Error - contains multiple <result> sections. Abort
_pleskxml_errors='Error when querying Plesk XML API. The result contained more than one <result> section.\nThis is unexpected: something has gone wrong. Please raise this as a bug/issue in the module. The response was:\n'"$_pleskxml_prettyprint_result"'\n' _pleskxml_errors='Error when querying Plesk XML API. The result contained more than one <result> section.\nThis is unexpected: something has gone wrong. Please raise this as a bug/issue in the module. The response was:\n'"$_pleskxml_prettyprint_result"'\n'
_DBG 2 "$_pleskxml_errors" _DBG 2 "$_pleskxml_errors"
return 1 return 1
fi fi
_DBG 2 "Found ${_pleskxml_linecount} <result> section(s), checking each has status:ok..." _DBG 2 "Found ${_pleskxml_linecount} <result> section(s), checking each has status:ok..."
# Loop through each <result> section, checking every line has exactly one result section, # Loop through each <result> section, checking every line has exactly one result section,
# containing exactly one status section, which contains <status>ok</status> # containing exactly one status section, which contains <status>ok</status>
@ -568,17 +567,17 @@ _DBG 2 "Found ${_pleskxml_linecount} <result> section(s), checking each has stat
if printf '%s' "$_pleskxml_line" | grep -qiEv '<status>.*</status>'; then if printf '%s' "$_pleskxml_line" | grep -qiEv '<status>.*</status>'; then
# Error - doesn't contain <status>...</status>. Abort # Error - doesn't contain <status>...</status>. Abort
_pleskxml_errors='Error when querying Plesk XML API. A <result> section did not contain a <status> section.\nThis is unexpected: something has gone wrong. Please raise this as a bug/issue in the module. The response was:\n'"$_pleskxml_prettyprint_result"'\n' _pleskxml_errors='Error when querying Plesk XML API. A <result> section did not contain a <status> section.\nThis is unexpected: something has gone wrong. Please raise this as a bug/issue in the module. The response was:\n'"$_pleskxml_prettyprint_result"'\n'
_DBG 2 "$_pleskxml_errors" _DBG 2 "$_pleskxml_errors"
return 1 return 1
elif printf '%s' "$_pleskxml_line" | grep -qiE '<status>.*</status>.*<status>'; then elif printf '%s' "$_pleskxml_line" | grep -qiE '<status>.*</status>.*<status>'; then
# Error - contains <status>...</status>...<status>. Abort # Error - contains <status>...</status>...<status>. Abort
_pleskxml_errors='Error when querying Plesk XML API. A <result> section contained more than one <status> section.\nThis is unexpected: something has gone wrong. Please raise this as a bug/issue in the module. The response was:\n'"$_pleskxml_prettyprint_result"'\n' _pleskxml_errors='Error when querying Plesk XML API. A <result> section contained more than one <status> section.\nThis is unexpected: something has gone wrong. Please raise this as a bug/issue in the module. The response was:\n'"$_pleskxml_prettyprint_result"'\n'
_DBG 2 "$_pleskxml_errors" _DBG 2 "$_pleskxml_errors"
return 1 return 1
elif printf '%s' "$_pleskxml_line" | grep -qiEv '<status>ok</status>'; then elif printf '%s' "$_pleskxml_line" | grep -qiEv '<status>ok</status>'; then
# Error - doesn't contain <status>ok</status>. Abort # Error - doesn't contain <status>ok</status>. Abort
_pleskxml_errors='Error when querying Plesk XML API. A <status> tag did not contain "<status>ok</status>". The response was:\n'"$_pleskxml_prettyprint_result"'\n' _pleskxml_errors='Error when querying Plesk XML API. A <status> tag did not contain "<status>ok</status>". The response was:\n'"$_pleskxml_prettyprint_result"'\n'
_DBG 2 "$_pleskxml_errors" _DBG 2 "$_pleskxml_errors"
return 1 return 1
fi fi
@ -590,7 +589,7 @@ EOL
# So far so good. Remove all <status>ok</status> sections as they're checked now. # So far so good. Remove all <status>ok</status> sections as they're checked now.
_DBG 2 "All results lines had status:ok. Exiting loop, and removing all <status>ok</status> tags now they've been checked" _DBG 2 "All results lines had status:ok. Exiting loop, and removing all <status>ok</status> tags now they've been checked"
_pleskxml_result="$( printf '%s' "$_pleskxml_result" | \ _pleskxml_result="$( printf '%s' "$_pleskxml_result" | \
sed -E 's/<status>ok<\/status>//g' \ sed -E 's/<status>ok<\/status>//g' \
@ -598,15 +597,15 @@ _DBG 2 "All results lines had status:ok. Exiting loop, and removing all <status
# Result is OK. Remove any redundant self-closing tags, and <data> or </data> tags, and exit # Result is OK. Remove any redundant self-closing tags, and <data> or </data> tags, and exit
_DBG 2 'Now removing any self-closing tags, or <data>...</data> tags' _DBG 2 'Now removing any self-closing tags, or <data>...</data> tags'
_pleskxml_result="$( printf '%s' "$_pleskxml_result" | \ _pleskxml_result="$( printf '%s' "$_pleskxml_result" | \
sed -E 's/(<[a-zA-Z0-9._-]+[[:space:]]*\/>|<\/?data\/?>)//g' \ sed -E 's/(<[a-zA-Z0-9._-]+[[:space:]]*\/>|<\/?data\/?>)//g' \
)" )"
_DBG 2 "About to exit API function. Result = ${_pleskxml_newline}'${_pleskxml_result}' " _DBG 2 "About to exit API function. Result = ${_pleskxml_newline}'${_pleskxml_result}' "
_DBG_VARDUMP 2 'Successfully exiting Plesk XML API function' _DBG_VARDUMP 2 'Successfully exiting Plesk XML API function'
return 0 return 0
@ -617,21 +616,21 @@ _DBG_VARDUMP 2 'Successfully exiting Plesk XML API function'
_pleskxml_get_domain_ID() { _pleskxml_get_domain_ID() {
_DBG 2 "Entered Plesk get_domain_ID($*), to get the domain's Plesk ID." _DBG 2 "Entered Plesk get_domain_ID($*), to get the domain's Plesk ID."
# Call cURL to convert a domain name to a plesk domain ID. # Call cURL to convert a domain name to a plesk domain ID.
_DBG 2 'About to make API request (domain name -> domain ID)' _DBG 2 'About to make API request (domain name -> domain ID)'
_pleskxml_api_request "$_pleskxml_tplt_get_domain_id" "$1" _pleskxml_api_request "$_pleskxml_tplt_get_domain_id" "$1"
_pleskxml_retcode=$? _pleskxml_retcode=$?
# $1 is the domain name we wish to convert to a Plesk domain ID # $1 is the domain name we wish to convert to a Plesk domain ID
_DBG 2 'Returned from API request, now back in get_domain_ID()' _DBG 2 'Returned from API request, now back in get_domain_ID()'
if [ $_pleskxml_retcode -ne 0 ] || [ "$_pleskxml_errors" != '' ] || [ "$_pleskxml_result" = '' ]; then if [ $_pleskxml_retcode -ne 0 ] || [ "$_pleskxml_errors" != '' ] || [ "$_pleskxml_result" = '' ]; then
# Really, just testing return code should be enough, based on above code, but let's go "all-in" and test all variables returned # Really, just testing return code should be enough, based on above code, but let's go "all-in" and test all variables returned
_DBG 2 "$_pleskxml_errors" _DBG 2 "$_pleskxml_errors"
return 1 return 1
fi fi
@ -639,17 +638,17 @@ _DBG 2 "$_pleskxml_errors"
# Result should comprise precisely one <result> section # Result should comprise precisely one <result> section
_DBG 2 'Testing API return data for one <result> and removing if so' _DBG 2 'Testing API return data for one <result> and removing if so'
if printf '%s' "$_pleskxml_result" | grep -qiEv '^<result>.*</result>$'; then if printf '%s' "$_pleskxml_result" | grep -qiEv '^<result>.*</result>$'; then
# Error - doesn't comprise <result>DOMAINNAME</result>. Something's wrong. Abort # Error - doesn't comprise <result>DOMAINNAME</result>. Something's wrong. Abort
_pleskxml_errors='Error when querying Plesk XML API. The API did not comprise a <result> section containing all other data.\nThis is unexpected: something has gone wrong. Please raise this as a bug/issue in the module. The response was:\n'"$_pleskxml_prettyprint_result"'\nand the exact test string was:\n'"$_pleskxml_result"'\n' _pleskxml_errors='Error when querying Plesk XML API. The API did not comprise a <result> section containing all other data.\nThis is unexpected: something has gone wrong. Please raise this as a bug/issue in the module. The response was:\n'"$_pleskxml_prettyprint_result"'\nand the exact test string was:\n'"$_pleskxml_result"'\n'
_DBG 2 "$_pleskxml_errors" _DBG 2 "$_pleskxml_errors"
return 1 return 1
elif printf '%s' "$_pleskxml_result" | grep -qiE '<result>.*<result>'; then elif printf '%s' "$_pleskxml_result" | grep -qiE '<result>.*<result>'; then
# Error - contains <result>...</result>...<result>. Abort # Error - contains <result>...</result>...<result>. Abort
_pleskxml_errors='Error when querying Plesk XML API. The API contained more than one <result> section.\nThis is unexpected: something has gone wrong. Please raise this as a bug/issue in the module. The response was:\n'"$_pleskxml_prettyprint_result"'\nand the exact test string was:\n'"$_pleskxml_result"'\n' _pleskxml_errors='Error when querying Plesk XML API. The API contained more than one <result> section.\nThis is unexpected: something has gone wrong. Please raise this as a bug/issue in the module. The response was:\n'"$_pleskxml_prettyprint_result"'\nand the exact test string was:\n'"$_pleskxml_result"'\n'
_DBG 2 "$_pleskxml_errors" _DBG 2 "$_pleskxml_errors"
return 1 return 1
else else
# So far so good. Remove the <result>...</result> section and continue # So far so good. Remove the <result>...</result> section and continue
@ -660,17 +659,17 @@ _DBG 2 "$_pleskxml_errors"
# Result should contain precisely one <filter-id> section, containing the domain name inquired. # Result should contain precisely one <filter-id> section, containing the domain name inquired.
_DBG 2 'Testing API return data for one <filter-id> and removing if so' _DBG 2 'Testing API return data for one <filter-id> and removing if so'
if printf '%s' "$_pleskxml_result" | grep -qiv "<filter-id>$1</filter-id>"; then if printf '%s' "$_pleskxml_result" | grep -qiv "<filter-id>$1</filter-id>"; then
# Error - doesn't contain <filter-id>DOMAINNAME</filter-id>. Something's wrong. Abort # Error - doesn't contain <filter-id>DOMAINNAME</filter-id>. Something's wrong. Abort
_pleskxml_errors='Error when querying Plesk XML API. The API did not contain the expected <filter-id> section containing the domain name.\nThis is unexpected: something has gone wrong. Please raise this as a bug/issue in the module. The response was:\n'"$_pleskxml_prettyprint_result"'\nand the exact test string was:\n'"$_pleskxml_result"'\n' _pleskxml_errors='Error when querying Plesk XML API. The API did not contain the expected <filter-id> section containing the domain name.\nThis is unexpected: something has gone wrong. Please raise this as a bug/issue in the module. The response was:\n'"$_pleskxml_prettyprint_result"'\nand the exact test string was:\n'"$_pleskxml_result"'\n'
_DBG 2 "$_pleskxml_errors" _DBG 2 "$_pleskxml_errors"
return 1 return 1
elif printf '%s' "$_pleskxml_result" | grep -qiE '<filter-id>.*<filter-id>'; then elif printf '%s' "$_pleskxml_result" | grep -qiE '<filter-id>.*<filter-id>'; then
# Error - contains <filter-id>...</filter-id>...<filter-id>. Abort # Error - contains <filter-id>...</filter-id>...<filter-id>. Abort
_pleskxml_errors='Error when querying Plesk XML API. The API contained more than one <filter-id> section.\nThis is unexpected: something has gone wrong. Please raise this as a bug/issue in the module. The response was:\n'"$_pleskxml_prettyprint_result"'\nand the exact test string was:\n'"$_pleskxml_result"'\n' _pleskxml_errors='Error when querying Plesk XML API. The API contained more than one <filter-id> section.\nThis is unexpected: something has gone wrong. Please raise this as a bug/issue in the module. The response was:\n'"$_pleskxml_prettyprint_result"'\nand the exact test string was:\n'"$_pleskxml_result"'\n'
_DBG 2 "$_pleskxml_errors" _DBG 2 "$_pleskxml_errors"
return 1 return 1
else else
# So far so good. Remove the <filter-id>...</filter-id> section and continue # So far so good. Remove the <filter-id>...</filter-id> section and continue
@ -681,12 +680,12 @@ _DBG 2 "$_pleskxml_errors"
# All that should be left is one section, containing <id>DOMAIN_ID</id> # All that should be left is one section, containing <id>DOMAIN_ID</id>
_DBG 2 "Remaining part of result is now: '$_pleskxml_result' " _DBG 2 "Remaining part of result is now: '$_pleskxml_result' "
if printf '%s' "$_pleskxml_result" | grep -qiEv '^<id>[0-9]+</id>$'; then if printf '%s' "$_pleskxml_result" | grep -qiEv '^<id>[0-9]+</id>$'; then
# Error - doesn't contain just <id>NUMBERS</id>. Something's wrong. Abort # Error - doesn't contain just <id>NUMBERS</id>. Something's wrong. Abort
_pleskxml_errors='Error when querying Plesk XML API. The API did not contain the expected <id>[NUMERIC_ID]</id> section, or contained other unexpected values as well.\nThis is unexpected: something has gone wrong. Please raise this as a bug/issue in the module. The response was:\n'"$_pleskxml_prettyprint_result"'\nand the exact test string was:\n'"$_pleskxml_result"'\n' _pleskxml_errors='Error when querying Plesk XML API. The API did not contain the expected <id>[NUMERIC_ID]</id> section, or contained other unexpected values as well.\nThis is unexpected: something has gone wrong. Please raise this as a bug/issue in the module. The response was:\n'"$_pleskxml_prettyprint_result"'\nand the exact test string was:\n'"$_pleskxml_result"'\n'
_DBG 2 "$_pleskxml_errors" _DBG 2 "$_pleskxml_errors"
return 1 return 1
fi fi
@ -696,7 +695,7 @@ _DBG 2 "$_pleskxml_errors"
sed -E 's/^<id>([0-9]+)<\/id>$/\1/' \ sed -E 's/^<id>([0-9]+)<\/id>$/\1/' \
)" )"
_DBG_VARDUMP 2 'SUCCESSFULLY exiting Plesk get_domain_ID' _DBG_VARDUMP 2 'SUCCESSFULLY exiting Plesk get_domain_ID'
return 0 return 0
@ -709,41 +708,40 @@ _DBG_VARDUMP 2 'SUCCESSFULLY exiting Plesk get_domain_ID'
_pleskxml_get_dns_records() { _pleskxml_get_dns_records() {
_DBG 2 "Entered Plesk _pleskxml_get_dns_records($*)" _DBG 2 "Entered Plesk _pleskxml_get_dns_records($*)"
# First, we need to get all DNS records, and check the list is valid # First, we need to get all DNS records, and check the list is valid
_DBG 2 'About to make API request (get DNS records)' _DBG 2 'About to make API request (get DNS records)'
_pleskxml_api_request "$_pleskxml_tplt_get_dns_records" "$1" _pleskxml_api_request "$_pleskxml_tplt_get_dns_records" "$1"
_pleskxml_retcode=$? _pleskxml_retcode=$?
# $1 is the Plesk internal domain ID for the domain # $1 is the Plesk internal domain ID for the domain
_DBG 2 'Returned from API request, now back in get_txt_records()' _DBG 2 'Returned from API request, now back in get_txt_records()'
if [ $_pleskxml_retcode -ne 0 ] || [ "$_pleskxml_errors" != '' ] || [ "$_pleskxml_result" = '' ]; then if [ $_pleskxml_retcode -ne 0 ] || [ "$_pleskxml_errors" != '' ] || [ "$_pleskxml_result" = '' ]; then
# Really, just testing return code should be enough, based on above code, but let's go "all-in" and test all variables returned # Really, just testing return code should be enough, based on above code, but let's go "all-in" and test all variables returned
_DBG 2 "$_pleskxml_errors" _DBG 2 "$_pleskxml_errors"
return 1 return 1
fi fi
# OK, we should have a <result> section containing a list of DNS records. # OK, we should have a <result> section containing a list of DNS records.
# Now keep only the TXT records # Now keep only the TXT records
_DBG 2 "Full DNS records were:${_pleskxml_newline}${_pleskxml_newline}'${_pleskxml_result}' "
_DBG 2 "Full DNS records were:${_pleskxml_newline}${_pleskxml_newline}'${_pleskxml_result}' "
if [ -n "${2:-}" ]; then if [ -n "${2:-}" ]; then
_pleskxml_result="$( printf '%s' "$_pleskxml_result" | \ _pleskxml_result="$( printf '%s' "$_pleskxml_result" | \
grep "<type>$2</type>" \ grep "<type>$2</type>" \
)" )"
_DBG 2 "Filtered relevant DNS records. Records to be returned are:${_pleskxml_newline}${_pleskxml_newline}'${_pleskxml_result}' " _DBG 2 "Filtered relevant DNS records. Records to be returned are:${_pleskxml_newline}${_pleskxml_newline}'${_pleskxml_result}' "
else else
_DBG 2 'Not filtering DNS records. All records will be returned.' _DBG 2 'Not filtering DNS records. All records will be returned.'
fi fi
_DBG 2 "SUCCESSFULLY exiting _pleskxml_get_dns_records" _DBG 2 "SUCCESSFULLY exiting _pleskxml_get_dns_records"
return 0 return 0
} }
@ -751,9 +749,9 @@ _DBG 2 "SUCCESSFULLY exiting _pleskxml_get_dns_records"
_pleskxml_add_txt_record() { _pleskxml_add_txt_record() {
_DBG 2 "Entered Plesk _pleskxml_add_txt_record($*)" _DBG 2 "Entered Plesk _pleskxml_add_txt_record($*)"
_DBG 2 'About to make API request (add TXT record)' _DBG 2 'About to make API request (add TXT record)'
_pleskxml_api_request "$_pleskxml_tplt_add_txt_record" "$1" "$2" "$3" _pleskxml_api_request "$_pleskxml_tplt_add_txt_record" "$1" "$2" "$3"
_pleskxml_retcode=$? _pleskxml_retcode=$?
@ -762,11 +760,11 @@ _DBG 2 'About to make API request (add TXT record)'
# $2 is the "host" entry within the domain, to add this to (eg '_acme_challenge') # $2 is the "host" entry within the domain, to add this to (eg '_acme_challenge')
# $3 is the TXT record value # $3 is the TXT record value
_DBG 2 'Returned from API request, now back in add_txt_record()' _DBG 2 'Returned from API request, now back in add_txt_record()'
if [ $_pleskxml_retcode -ne 0 ] || [ "$_pleskxml_errors" != '' ] || [ "$_pleskxml_result" = '' ]; then if [ $_pleskxml_retcode -ne 0 ] || [ "$_pleskxml_errors" != '' ] || [ "$_pleskxml_result" = '' ]; then
# Really, just testing return code should be enough, based on above code, but let's go "all-in" and test all variables returned # Really, just testing return code should be enough, based on above code, but let's go "all-in" and test all variables returned
_DBG 2 "$_pleskxml_errors" _DBG 2 "$_pleskxml_errors"
return 1 return 1
fi fi
@ -776,7 +774,7 @@ _DBG 2 "$_pleskxml_errors"
if printf '%s' "$_pleskxml_result" | grep -qivE '^<result><id>[0-9]+</id></result>$'; then if printf '%s' "$_pleskxml_result" | grep -qivE '^<result><id>[0-9]+</id></result>$'; then
# Error - doesn't contain just <id>NUMBERS</id>. Something's wrong. Abort # Error - doesn't contain just <id>NUMBERS</id>. Something's wrong. Abort
_pleskxml_errors='Error when calling Plesk XML API. The API did not contain the expected <id>[PLESK_NEW_DNS_RECORD_ID]</id> section, or contained other unexpected values as well.\nThis is unexpected: something has gone wrong. Please raise this as a bug/issue in the module. The response was:\n'"$_pleskxml_prettyprint_result"'\nand the exact test string was:\n'"$_pleskxml_result"'\n' _pleskxml_errors='Error when calling Plesk XML API. The API did not contain the expected <id>[PLESK_NEW_DNS_RECORD_ID]</id> section, or contained other unexpected values as well.\nThis is unexpected: something has gone wrong. Please raise this as a bug/issue in the module. The response was:\n'"$_pleskxml_prettyprint_result"'\nand the exact test string was:\n'"$_pleskxml_result"'\n'
_DBG 2 "$_pleskxml_errors" _DBG 2 "$_pleskxml_errors"
return 1 return 1
fi fi
@ -787,33 +785,33 @@ _DBG 2 "$_pleskxml_errors"
sed -E "s/^<result><id>([0-9]+)<\/id><\/result>$/\1/" \ sed -E "s/^<result><id>([0-9]+)<\/id><\/result>$/\1/" \
)" )"
_DBG_VARDUMP 2 'SUCCESSFULLY exiting Plesk _pleskxml_add_txt_record' _DBG_VARDUMP 2 'SUCCESSFULLY exiting Plesk _pleskxml_add_txt_record'
return 0 return 0
} }
_pleskxml_rmv_dns_record() { _pleskxml_rmv_dns_record() {
_DBG 2 "Entered Plesk _pleskxml_rmv_dns_record($*)" _DBG 2 "Entered Plesk _pleskxml_rmv_dns_record($*)"
_DBG 2 'About to make API request (rmv TXT record)' _DBG 2 'About to make API request (rmv TXT record)'
_pleskxml_api_request "$_pleskxml_tplt_rmv_dns_record" "$1" _pleskxml_api_request "$_pleskxml_tplt_rmv_dns_record" "$1"
_pleskxml_retcode=$? _pleskxml_retcode=$?
# $1 is the Plesk internal domain ID for the TXT record # $1 is the Plesk internal domain ID for the TXT record
_DBG 2 'Returned from API request, now back in rmv_dns_record()' _DBG 2 'Returned from API request, now back in rmv_dns_record()'
if [ $_pleskxml_retcode -ne 0 ] || [ "$_pleskxml_errors" != '' ] || [ "$_pleskxml_result" = '' ]; then if [ $_pleskxml_retcode -ne 0 ] || [ "$_pleskxml_errors" != '' ] || [ "$_pleskxml_result" = '' ]; then
# Really, just testing return code should be enough, based on above code, but let's go "all-in" and test all variables returned # Really, just testing return code should be enough, based on above code, but let's go "all-in" and test all variables returned
_DBG 2 "$_pleskxml_errors" _DBG 2 "$_pleskxml_errors"
return 1 return 1
fi fi
# OK, we should have removed a TXT record. If it failed, there wouldn't have been a "status:ok" above # OK, we should have removed a TXT record. If it failed, there wouldn't have been a "status:ok" above
_DBG_VARDUMP 2 'SUCCESSFULLY exiting Plesk _pleskxml_rmv_dns_record' _DBG_VARDUMP 2 'SUCCESSFULLY exiting Plesk _pleskxml_rmv_dns_record'
return 0 return 0
} }
@ -825,18 +823,18 @@ _DBG_VARDUMP 2 'SUCCESSFULLY exiting Plesk _pleskxml_rmv_dns_record'
_pleskxml_rmv_txt_record() { _pleskxml_rmv_txt_record() {
_DBG 2 "Entered Plesk _pleskxml_rmv_dns_TXT_record($*). Getting DNS TXT records for the domain ID" _DBG 2 "Entered Plesk _pleskxml_rmv_dns_TXT_record($*). Getting DNS TXT records for the domain ID"
_pleskxml_get_dns_records "$1" 'TXT' _pleskxml_get_dns_records "$1" 'TXT'
_pleskxml_retcode=$? _pleskxml_retcode=$?
# $1 is the Plesk internal domain ID for the domain # $1 is the Plesk internal domain ID for the domain
_DBG 2 'Returned from API request, now back in rmv_txt_record()' _DBG 2 'Returned from API request, now back in rmv_txt_record()'
if [ $_pleskxml_retcode -ne 0 ] || [ "$_pleskxml_errors" != '' ] || [ "$_pleskxml_result" = '' ]; then if [ $_pleskxml_retcode -ne 0 ] || [ "$_pleskxml_errors" != '' ] || [ "$_pleskxml_result" = '' ]; then
# Really, just testing return code should be enough, based on above code, but let's go "all-in" and test all variables returned # Really, just testing return code should be enough, based on above code, but let's go "all-in" and test all variables returned
_DBG 2 "$_pleskxml_errors" _DBG 2 "$_pleskxml_errors"
return 1 return 1
fi fi
@ -844,7 +842,7 @@ _DBG 2 "$_pleskxml_errors"
# Now we need to find our desired record in it (if it exists). # Now we need to find our desired record in it (if it exists).
# and might as well collapse any successful matches to a signle line for line-count purposes at the same time # and might as well collapse any successful matches to a signle line for line-count purposes at the same time
_DBG 2 "Filters to apply (as literal strings):${_pleskxml_newline}'<host>${2:-<NON_MATCHING_GARBAGE>}.'${_pleskxml_newline}'<value>${3:-<NON_MATCHING_GARBAGE>}</value>' " _DBG 2 "Filters to apply (as literal strings):${_pleskxml_newline}'<host>${2:-<NON_MATCHING_GARBAGE>}.'${_pleskxml_newline}'<value>${3:-<NON_MATCHING_GARBAGE>}</value>' "
_pleskxml_result="$( printf '%s' "$_pleskxml_result" | \ _pleskxml_result="$( printf '%s' "$_pleskxml_result" | \
grep -F "<host>${2:-<NON_MATCHING_GARBAGE>}." | \ grep -F "<host>${2:-<NON_MATCHING_GARBAGE>}." | \
@ -856,19 +854,19 @@ _DBG 2 "Filters to apply (as literal strings):${_pleskxml_newline}'<host>${2:-<N
# ands this avoids regex and escaping which is easier # ands this avoids regex and escaping which is easier
# NOTE: the returned "host" field is actually the FQDN, not just the host ID, hence the grep match on that field. # NOTE: the returned "host" field is actually the FQDN, not just the host ID, hence the grep match on that field.
_DBG 2 "Filtered result:${_pleskxml_newline}'$_pleskxml_result' " _DBG 2 "Filtered result:${_pleskxml_newline}'$_pleskxml_result' "
if printf '%s' "$_pleskxml_result" | grep -qiE "<result>.*<result>"; then if printf '%s' "$_pleskxml_result" | grep -qiE "<result>.*<result>"; then
# Error - contains <result>...</result>...<result>. Abort # Error - contains <result>...</result>...<result>. Abort
_pleskxml_errors='Error when querying Plesk XML API. The API contained more than one <result> section.\nThis is unexpected: something has gone wrong. Please raise this as a bug/issue in the module. The response was:\n'"$_pleskxml_prettyprint_result"'\nand the exact test string was:\n'"$_pleskxml_result"'\n' _pleskxml_errors='Error when querying Plesk XML API. The API contained more than one <result> section.\nThis is unexpected: something has gone wrong. Please raise this as a bug/issue in the module. The response was:\n'"$_pleskxml_prettyprint_result"'\nand the exact test string was:\n'"$_pleskxml_result"'\n'
_DBG 2 "$_pleskxml_errors" _DBG 2 "$_pleskxml_errors"
return 1 return 1
fi fi
if printf '%s\n' "$_pleskxml_result" | grep -qiv "<result>"; then if printf '%s\n' "$_pleskxml_result" | grep -qiv "<result>"; then
# No matching TXT records, so we're done. # No matching TXT records, so we're done.
_info "Couldn't find a TXT record matching the requested host/value. Not an error, but a concern..." _info "Couldn't find a TXT record matching the requested host/value. Not an error, but a concern..."
_DBG 2 "Exiting Plesk _pleskxml_rmv_txt_record (without raising an error), as nothing more to do: the record requested for deletion doesn't exist" _DBG 2 "Exiting Plesk _pleskxml_rmv_txt_record (without raising an error), as nothing more to do: the record requested for deletion doesn't exist"
_pleskxml_result='' _pleskxml_result=''
return 0 return 0
fi fi
@ -879,20 +877,20 @@ _DBG 2 "Exiting Plesk _pleskxml_rmv_txt_record (without raising an error), as no
sed -E 's/^.*<id>([0-9]+)<\/id>.*$/\1/' \ sed -E 's/^.*<id>([0-9]+)<\/id>.*$/\1/' \
)" )"
_DBG 2 "A unique matching DNS TXT record was found, with Plesk record ID = '$_pleskxml_result'. Calling API to delete this record." _DBG 2 "A unique matching DNS TXT record was found, with Plesk record ID = '$_pleskxml_result'. Calling API to delete this record."
_pleskxml_rmv_dns_record "$_pleskxml_result" _pleskxml_rmv_dns_record "$_pleskxml_result"
_pleskxml_retcode=$? _pleskxml_retcode=$?
_DBG 2 'Returned from API request, now back in rmv_txt_record()' _DBG 2 'Returned from API request, now back in rmv_txt_record()'
if [ $_pleskxml_retcode -ne 0 ] || [ "$_pleskxml_errors" != '' ] || [ "$_pleskxml_result" = '' ]; then if [ $_pleskxml_retcode -ne 0 ] || [ "$_pleskxml_errors" != '' ] || [ "$_pleskxml_result" = '' ]; then
# Really, just testing return code should be enough, based on above code, but let's go "all-in" and test all variables returned # Really, just testing return code should be enough, based on above code, but let's go "all-in" and test all variables returned
_DBG 2 "$_pleskxml_errors" _DBG 2 "$_pleskxml_errors"
return 1 return 1
fi fi
_DBG_VARDUMP 2 'SUCCESSFULLY exiting Plesk _pleskxml_rmv_txt_record' _DBG_VARDUMP 2 'SUCCESSFULLY exiting Plesk _pleskxml_rmv_txt_record'
return 0 return 0
} }