fix shfmt
This commit is contained in:
parent
d5d38b3331
commit
19c4345162
@ -69,8 +69,8 @@ exim4_deploy() {
|
|||||||
cp "$_exim4_conf" "$_backup_conf"
|
cp "$_exim4_conf" "$_backup_conf"
|
||||||
|
|
||||||
_info "Modify exim4 conf: $_exim4_conf"
|
_info "Modify exim4 conf: $_exim4_conf"
|
||||||
if _setopt "$_exim4_conf" "tls_certificate" "=" "$_real_fullchain" \
|
if _setopt "$_exim4_conf" "tls_certificate" "=" "$_real_fullchain" &&
|
||||||
&& _setopt "$_exim4_conf" "tls_privatekey" "=" "$_real_key"; then
|
_setopt "$_exim4_conf" "tls_privatekey" "=" "$_real_key"; then
|
||||||
_info "Set config success!"
|
_info "Set config success!"
|
||||||
else
|
else
|
||||||
_err "Config exim4 server error, please report bug to us."
|
_err "Config exim4 server error, please report bug to us."
|
||||||
|
@ -195,8 +195,8 @@ then rm -rf \"\$fn\"; echo \"Backup \$fn deleted as older than 180 days\"; fi; d
|
|||||||
fi
|
fi
|
||||||
if [ -n "$Le_Deploy_ssh_cafile" ]; then
|
if [ -n "$Le_Deploy_ssh_cafile" ]; then
|
||||||
_pipe=">"
|
_pipe=">"
|
||||||
if [ "$Le_Deploy_ssh_cafile" = "$Le_Deploy_ssh_keyfile" ] \
|
if [ "$Le_Deploy_ssh_cafile" = "$Le_Deploy_ssh_keyfile" ] ||
|
||||||
|| [ "$Le_Deploy_ssh_cafile" = "$Le_Deploy_ssh_certfile" ]; then
|
[ "$Le_Deploy_ssh_cafile" = "$Le_Deploy_ssh_certfile" ]; then
|
||||||
# if filename is same as previous file then append.
|
# if filename is same as previous file then append.
|
||||||
_pipe=">>"
|
_pipe=">>"
|
||||||
elif [ "$Le_Deploy_ssh_backup" = "yes" ]; then
|
elif [ "$Le_Deploy_ssh_backup" = "yes" ]; then
|
||||||
@ -222,9 +222,9 @@ then rm -rf \"\$fn\"; echo \"Backup \$fn deleted as older than 180 days\"; fi; d
|
|||||||
fi
|
fi
|
||||||
if [ -n "$Le_Deploy_ssh_fullchain" ]; then
|
if [ -n "$Le_Deploy_ssh_fullchain" ]; then
|
||||||
_pipe=">"
|
_pipe=">"
|
||||||
if [ "$Le_Deploy_ssh_fullchain" = "$Le_Deploy_ssh_keyfile" ] \
|
if [ "$Le_Deploy_ssh_fullchain" = "$Le_Deploy_ssh_keyfile" ] ||
|
||||||
|| [ "$Le_Deploy_ssh_fullchain" = "$Le_Deploy_ssh_certfile" ] \
|
[ "$Le_Deploy_ssh_fullchain" = "$Le_Deploy_ssh_certfile" ] ||
|
||||||
|| [ "$Le_Deploy_ssh_fullchain" = "$Le_Deploy_ssh_cafile" ]; then
|
[ "$Le_Deploy_ssh_fullchain" = "$Le_Deploy_ssh_cafile" ]; then
|
||||||
# if filename is same as previous file then append.
|
# if filename is same as previous file then append.
|
||||||
_pipe=">>"
|
_pipe=">>"
|
||||||
elif [ "$Le_Deploy_ssh_backup" = "yes" ]; then
|
elif [ "$Le_Deploy_ssh_backup" = "yes" ]; then
|
||||||
|
@ -65,9 +65,9 @@ vsftpd_deploy() {
|
|||||||
cp "$_vsftpd_conf" "$_backup_conf"
|
cp "$_vsftpd_conf" "$_backup_conf"
|
||||||
|
|
||||||
_info "Modify vsftpd conf: $_vsftpd_conf"
|
_info "Modify vsftpd conf: $_vsftpd_conf"
|
||||||
if _setopt "$_vsftpd_conf" "rsa_cert_file" "=" "$_real_fullchain" \
|
if _setopt "$_vsftpd_conf" "rsa_cert_file" "=" "$_real_fullchain" &&
|
||||||
&& _setopt "$_vsftpd_conf" "rsa_private_key_file" "=" "$_real_key" \
|
_setopt "$_vsftpd_conf" "rsa_private_key_file" "=" "$_real_key" &&
|
||||||
&& _setopt "$_vsftpd_conf" "ssl_enable" "=" "YES"; then
|
_setopt "$_vsftpd_conf" "ssl_enable" "=" "YES"; then
|
||||||
_info "Set config success!"
|
_info "Set config success!"
|
||||||
else
|
else
|
||||||
_err "Config vsftpd server error, please report bug to us."
|
_err "Config vsftpd server error, please report bug to us."
|
||||||
|
@ -222,21 +222,21 @@ _use_instance_role() {
|
|||||||
|
|
||||||
_use_metadata() {
|
_use_metadata() {
|
||||||
_aws_creds="$(
|
_aws_creds="$(
|
||||||
_get "$1" "" 1 \
|
_get "$1" "" 1 |
|
||||||
| _normalizeJson \
|
_normalizeJson |
|
||||||
| tr '{,}' '\n' \
|
tr '{,}' '\n' |
|
||||||
| while read -r _line; do
|
while read -r _line; do
|
||||||
_key="$(echo "${_line%%:*}" | tr -d '"')"
|
_key="$(echo "${_line%%:*}" | tr -d '"')"
|
||||||
_value="${_line#*:}"
|
_value="${_line#*:}"
|
||||||
_debug3 "_key" "$_key"
|
_debug3 "_key" "$_key"
|
||||||
_secure_debug3 "_value" "$_value"
|
_secure_debug3 "_value" "$_value"
|
||||||
case "$_key" in
|
case "$_key" in
|
||||||
AccessKeyId) echo "AWS_ACCESS_KEY_ID=$_value" ;;
|
AccessKeyId) echo "AWS_ACCESS_KEY_ID=$_value" ;;
|
||||||
SecretAccessKey) echo "AWS_SECRET_ACCESS_KEY=$_value" ;;
|
SecretAccessKey) echo "AWS_SECRET_ACCESS_KEY=$_value" ;;
|
||||||
Token) echo "AWS_SESSION_TOKEN=$_value" ;;
|
Token) echo "AWS_SESSION_TOKEN=$_value" ;;
|
||||||
esac
|
esac
|
||||||
done \
|
done |
|
||||||
| paste -sd' ' -
|
paste -sd' ' -
|
||||||
)"
|
)"
|
||||||
_secure_debug "_aws_creds" "$_aws_creds"
|
_secure_debug "_aws_creds" "$_aws_creds"
|
||||||
|
|
||||||
|
@ -220,7 +220,7 @@ _azure_rest() {
|
|||||||
export _H2="accept: application/json"
|
export _H2="accept: application/json"
|
||||||
export _H3="Content-Type: application/json"
|
export _H3="Content-Type: application/json"
|
||||||
# clear headers from previous request to avoid getting wrong http code on timeouts
|
# clear headers from previous request to avoid getting wrong http code on timeouts
|
||||||
:>"$HTTP_HEADER"
|
: >"$HTTP_HEADER"
|
||||||
_debug "$ep"
|
_debug "$ep"
|
||||||
if [ "$m" != "GET" ]; then
|
if [ "$m" != "GET" ]; then
|
||||||
_secure_debug2 "data $data"
|
_secure_debug2 "data $data"
|
||||||
|
@ -115,9 +115,9 @@ dns_conoha_rm() {
|
|||||||
return 1
|
return 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
record_id=$(printf "%s" "$response" | _egrep_o '{[^}]*}' \
|
record_id=$(printf "%s" "$response" | _egrep_o '{[^}]*}' |
|
||||||
| grep '"type":"TXT"' | grep "\"data\":\"$txtvalue\"" | _egrep_o "\"id\":\"[^\"]*\"" \
|
grep '"type":"TXT"' | grep "\"data\":\"$txtvalue\"" | _egrep_o "\"id\":\"[^\"]*\"" |
|
||||||
| _head_n 1 | cut -d : -f 2 | tr -d \")
|
_head_n 1 | cut -d : -f 2 | tr -d \")
|
||||||
if [ -z "$record_id" ]; then
|
if [ -z "$record_id" ]; then
|
||||||
_err "Can not get record id to remove."
|
_err "Can not get record id to remove."
|
||||||
return 1
|
return 1
|
||||||
|
@ -18,23 +18,23 @@
|
|||||||
########
|
########
|
||||||
|
|
||||||
dns_cyon_add() {
|
dns_cyon_add() {
|
||||||
_cyon_load_credentials \
|
_cyon_load_credentials &&
|
||||||
&& _cyon_load_parameters "$@" \
|
_cyon_load_parameters "$@" &&
|
||||||
&& _cyon_print_header "add" \
|
_cyon_print_header "add" &&
|
||||||
&& _cyon_login \
|
_cyon_login &&
|
||||||
&& _cyon_change_domain_env \
|
_cyon_change_domain_env &&
|
||||||
&& _cyon_add_txt \
|
_cyon_add_txt &&
|
||||||
&& _cyon_logout
|
_cyon_logout
|
||||||
}
|
}
|
||||||
|
|
||||||
dns_cyon_rm() {
|
dns_cyon_rm() {
|
||||||
_cyon_load_credentials \
|
_cyon_load_credentials &&
|
||||||
&& _cyon_load_parameters "$@" \
|
_cyon_load_parameters "$@" &&
|
||||||
&& _cyon_print_header "delete" \
|
_cyon_print_header "delete" &&
|
||||||
&& _cyon_login \
|
_cyon_login &&
|
||||||
&& _cyon_change_domain_env \
|
_cyon_change_domain_env &&
|
||||||
&& _cyon_delete_txt \
|
_cyon_delete_txt &&
|
||||||
&& _cyon_logout
|
_cyon_logout
|
||||||
}
|
}
|
||||||
|
|
||||||
#########################
|
#########################
|
||||||
|
@ -115,23 +115,23 @@ _da_api() {
|
|||||||
_debug response "$response"
|
_debug response "$response"
|
||||||
|
|
||||||
case "${cmd}" in
|
case "${cmd}" in
|
||||||
CMD_API_DNS_CONTROL)
|
CMD_API_DNS_CONTROL)
|
||||||
# Parse the result in general
|
# Parse the result in general
|
||||||
# error=0&text=Records Deleted&details=
|
# error=0&text=Records Deleted&details=
|
||||||
# error=1&text=Cannot View Dns Record&details=No domain provided
|
# error=1&text=Cannot View Dns Record&details=No domain provided
|
||||||
err_field="$(_getfield "$response" 1 '&')"
|
err_field="$(_getfield "$response" 1 '&')"
|
||||||
txt_field="$(_getfield "$response" 2 '&')"
|
txt_field="$(_getfield "$response" 2 '&')"
|
||||||
details_field="$(_getfield "$response" 3 '&')"
|
details_field="$(_getfield "$response" 3 '&')"
|
||||||
error="$(_getfield "$err_field" 2 '=')"
|
error="$(_getfield "$err_field" 2 '=')"
|
||||||
text="$(_getfield "$txt_field" 2 '=')"
|
text="$(_getfield "$txt_field" 2 '=')"
|
||||||
details="$(_getfield "$details_field" 2 '=')"
|
details="$(_getfield "$details_field" 2 '=')"
|
||||||
_debug "error: ${error}, text: ${text}, details: ${details}"
|
_debug "error: ${error}, text: ${text}, details: ${details}"
|
||||||
if [ "$error" != "0" ]; then
|
if [ "$error" != "0" ]; then
|
||||||
_err "error $response"
|
_err "error $response"
|
||||||
return 1
|
return 1
|
||||||
fi
|
fi
|
||||||
;;
|
;;
|
||||||
CMD_API_SHOW_DOMAINS) ;;
|
CMD_API_SHOW_DOMAINS) ;;
|
||||||
esac
|
esac
|
||||||
return 0
|
return 0
|
||||||
}
|
}
|
||||||
|
@ -67,14 +67,14 @@ _dns_do_list_rrs() {
|
|||||||
_err "getRRList origin ${_domain} failed"
|
_err "getRRList origin ${_domain} failed"
|
||||||
return 1
|
return 1
|
||||||
fi
|
fi
|
||||||
_rr_list="$(echo "${response}" \
|
_rr_list="$(echo "${response}" |
|
||||||
| tr -d "\n\r\t" \
|
tr -d "\n\r\t" |
|
||||||
| sed -e 's/<item xsi:type="ns2:Map">/\n/g' \
|
sed -e 's/<item xsi:type="ns2:Map">/\n/g' |
|
||||||
| grep ">$(_regexcape "$fulldomain")</value>" \
|
grep ">$(_regexcape "$fulldomain")</value>" |
|
||||||
| sed -e 's/<\/item>/\n/g' \
|
sed -e 's/<\/item>/\n/g' |
|
||||||
| grep '>id</key><value' \
|
grep '>id</key><value' |
|
||||||
| _egrep_o '>[0-9]{1,16}<' \
|
_egrep_o '>[0-9]{1,16}<' |
|
||||||
| tr -d '><')"
|
tr -d '><')"
|
||||||
[ "${_rr_list}" ]
|
[ "${_rr_list}" ]
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -120,10 +120,10 @@ _get_root() {
|
|||||||
i=1
|
i=1
|
||||||
|
|
||||||
_dns_do_soap getDomainList
|
_dns_do_soap getDomainList
|
||||||
_all_domains="$(echo "${response}" \
|
_all_domains="$(echo "${response}" |
|
||||||
| tr -d "\n\r\t " \
|
tr -d "\n\r\t " |
|
||||||
| _egrep_o 'domain</key><value[^>]+>[^<]+' \
|
_egrep_o 'domain</key><value[^>]+>[^<]+' |
|
||||||
| sed -e 's/^domain<\/key><value[^>]*>//g')"
|
sed -e 's/^domain<\/key><value[^>]*>//g')"
|
||||||
|
|
||||||
while true; do
|
while true; do
|
||||||
h=$(printf "%s" "$domain" | cut -d . -f $i-100)
|
h=$(printf "%s" "$domain" | cut -d . -f $i-100)
|
||||||
|
@ -303,10 +303,10 @@ _freedns_domain_id() {
|
|||||||
return 1
|
return 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
domain_id="$(echo "$htmlpage" | tr -d " \t\r\n\v\f" | sed 's/<tr>/@<tr>/g' | tr '@' '\n' \
|
domain_id="$(echo "$htmlpage" | tr -d " \t\r\n\v\f" | sed 's/<tr>/@<tr>/g' | tr '@' '\n' |
|
||||||
| grep "<td>$search_domain</td>\|<td>$search_domain(.*)</td>" \
|
grep "<td>$search_domain</td>\|<td>$search_domain(.*)</td>" |
|
||||||
| sed -n 's/.*\(edit\.php?edit_domain_id=[0-9a-zA-Z]*\).*/\1/p' \
|
sed -n 's/.*\(edit\.php?edit_domain_id=[0-9a-zA-Z]*\).*/\1/p' |
|
||||||
| cut -d = -f 2)"
|
cut -d = -f 2)"
|
||||||
# The above beauty extracts domain ID from the html page...
|
# The above beauty extracts domain ID from the html page...
|
||||||
# strip out all blank space and new lines. Then insert newlines
|
# strip out all blank space and new lines. Then insert newlines
|
||||||
# before each table row <tr>
|
# before each table row <tr>
|
||||||
@ -349,11 +349,11 @@ _freedns_data_id() {
|
|||||||
return 1
|
return 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
data_id="$(echo "$htmlpage" | tr -d " \t\r\n\v\f" | sed 's/<tr>/@<tr>/g' | tr '@' '\n' \
|
data_id="$(echo "$htmlpage" | tr -d " \t\r\n\v\f" | sed 's/<tr>/@<tr>/g' | tr '@' '\n' |
|
||||||
| grep "<td[a-zA-Z=#]*>$record_type</td>" \
|
grep "<td[a-zA-Z=#]*>$record_type</td>" |
|
||||||
| grep "<ahref.*>$search_domain</a>" \
|
grep "<ahref.*>$search_domain</a>" |
|
||||||
| sed -n 's/.*\(edit\.php?data_id=[0-9a-zA-Z]*\).*/\1/p' \
|
sed -n 's/.*\(edit\.php?data_id=[0-9a-zA-Z]*\).*/\1/p' |
|
||||||
| cut -d = -f 2)"
|
cut -d = -f 2)"
|
||||||
# The above beauty extracts data ID from the html page...
|
# The above beauty extracts data ID from the html page...
|
||||||
# strip out all blank space and new lines. Then insert newlines
|
# strip out all blank space and new lines. Then insert newlines
|
||||||
# before each table row <tr>
|
# before each table row <tr>
|
||||||
|
@ -69,9 +69,9 @@ dns_gandi_livedns_rm() {
|
|||||||
|
|
||||||
_gandi_livedns_rest PUT \
|
_gandi_livedns_rest PUT \
|
||||||
"domains/$_domain/records/$_sub_domain/TXT" \
|
"domains/$_domain/records/$_sub_domain/TXT" \
|
||||||
"{\"rrset_ttl\": 300, \"rrset_values\": $_new_rrset_values}" \
|
"{\"rrset_ttl\": 300, \"rrset_values\": $_new_rrset_values}" &&
|
||||||
&& _contains "$response" '{"message": "DNS Record Created"}' \
|
_contains "$response" '{"message": "DNS Record Created"}' &&
|
||||||
&& _info "Removing record $(__green "success")"
|
_info "Removing record $(__green "success")"
|
||||||
}
|
}
|
||||||
|
|
||||||
#################### Private functions below ##################################
|
#################### Private functions below ##################################
|
||||||
@ -125,9 +125,9 @@ _dns_gandi_append_record() {
|
|||||||
fi
|
fi
|
||||||
_debug new_rrset_values "$_rrset_values"
|
_debug new_rrset_values "$_rrset_values"
|
||||||
_gandi_livedns_rest PUT "domains/$_domain/records/$sub_domain/TXT" \
|
_gandi_livedns_rest PUT "domains/$_domain/records/$sub_domain/TXT" \
|
||||||
"{\"rrset_ttl\": 300, \"rrset_values\": $_rrset_values}" \
|
"{\"rrset_ttl\": 300, \"rrset_values\": $_rrset_values}" &&
|
||||||
&& _contains "$response" '{"message": "DNS Record Created"}' \
|
_contains "$response" '{"message": "DNS Record Created"}' &&
|
||||||
&& _info "Adding record $(__green "success")"
|
_info "Adding record $(__green "success")"
|
||||||
}
|
}
|
||||||
|
|
||||||
_dns_gandi_existing_rrset_values() {
|
_dns_gandi_existing_rrset_values() {
|
||||||
@ -145,8 +145,8 @@ _dns_gandi_existing_rrset_values() {
|
|||||||
return 1
|
return 1
|
||||||
fi
|
fi
|
||||||
_debug "Already has TXT record."
|
_debug "Already has TXT record."
|
||||||
_rrset_values=$(echo "$response" | _egrep_o 'rrset_values.*\[.*\]' \
|
_rrset_values=$(echo "$response" | _egrep_o 'rrset_values.*\[.*\]' |
|
||||||
| _egrep_o '\[".*\"]')
|
_egrep_o '\[".*\"]')
|
||||||
return 0
|
return 0
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -78,8 +78,8 @@ _dns_gcloud_execute_tr() {
|
|||||||
for i in $(seq 1 120); do
|
for i in $(seq 1 120); do
|
||||||
if gcloud dns record-sets changes list \
|
if gcloud dns record-sets changes list \
|
||||||
--zone="$managedZone" \
|
--zone="$managedZone" \
|
||||||
--filter='status != done' \
|
--filter='status != done' |
|
||||||
| grep -q '^.*'; then
|
grep -q '^.*'; then
|
||||||
_info "_dns_gcloud_execute_tr: waiting for transaction to be comitted ($i/120)..."
|
_info "_dns_gcloud_execute_tr: waiting for transaction to be comitted ($i/120)..."
|
||||||
sleep 5
|
sleep 5
|
||||||
else
|
else
|
||||||
@ -137,11 +137,11 @@ _dns_gcloud_find_zone() {
|
|||||||
# List domains and find the zone with the deepest sub-domain (in case of some levels of delegation)
|
# List domains and find the zone with the deepest sub-domain (in case of some levels of delegation)
|
||||||
if ! match=$(gcloud dns managed-zones list \
|
if ! match=$(gcloud dns managed-zones list \
|
||||||
--format="value(name, dnsName)" \
|
--format="value(name, dnsName)" \
|
||||||
--filter="$filter" \
|
--filter="$filter" |
|
||||||
| while read -r dnsName name; do
|
while read -r dnsName name; do
|
||||||
printf "%s\t%s\t%s\n" "$(echo "$name" | awk -F"." '{print NF-1}')" "$dnsName" "$name"
|
printf "%s\t%s\t%s\n" "$(echo "$name" | awk -F"." '{print NF-1}')" "$dnsName" "$name"
|
||||||
done \
|
done |
|
||||||
| sort -n -r | _head_n 1 | cut -f2,3 | grep '^.*'); then
|
sort -n -r | _head_n 1 | cut -f2,3 | grep '^.*'); then
|
||||||
_err "_dns_gcloud_find_zone: Can't find a matching managed zone! Perhaps wrong project or gcloud credentials?"
|
_err "_dns_gcloud_find_zone: Can't find a matching managed zone! Perhaps wrong project or gcloud credentials?"
|
||||||
return 1
|
return 1
|
||||||
fi
|
fi
|
||||||
|
@ -101,8 +101,8 @@ dns_he_rm() {
|
|||||||
body="$body&hosted_dns_editzone=1"
|
body="$body&hosted_dns_editzone=1"
|
||||||
body="$body&hosted_dns_delrecord=1"
|
body="$body&hosted_dns_delrecord=1"
|
||||||
body="$body&hosted_dns_delconfirm=delete"
|
body="$body&hosted_dns_delconfirm=delete"
|
||||||
_post "$body" "https://dns.he.net/" \
|
_post "$body" "https://dns.he.net/" |
|
||||||
| grep '<div id="dns_status" onClick="hideThis(this);">Successfully removed record.</div>' \
|
grep '<div id="dns_status" onClick="hideThis(this);">Successfully removed record.</div>' \
|
||||||
>/dev/null
|
>/dev/null
|
||||||
exit_code="$?"
|
exit_code="$?"
|
||||||
if [ "$exit_code" -eq 0 ]; then
|
if [ "$exit_code" -eq 0 ]; then
|
||||||
|
@ -123,10 +123,10 @@ _find_record() {
|
|||||||
return 1
|
return 1
|
||||||
else
|
else
|
||||||
_record_id=$(
|
_record_id=$(
|
||||||
echo "$response" \
|
echo "$response" |
|
||||||
| grep -o "{[^\{\}]*\"name\":\"$_record_name\"[^\}]*}" \
|
grep -o "{[^\{\}]*\"name\":\"$_record_name\"[^\}]*}" |
|
||||||
| grep "\"value\":\"$_record_value\"" \
|
grep "\"value\":\"$_record_value\"" |
|
||||||
| while read -r record; do
|
while read -r record; do
|
||||||
# test for type and
|
# test for type and
|
||||||
if [ -n "$(echo "$record" | _egrep_o '"type":"TXT"')" ]; then
|
if [ -n "$(echo "$record" | _egrep_o '"type":"TXT"')" ]; then
|
||||||
echo "$record" | _egrep_o '"id":"[^"]*"' | cut -d : -f 2 | tr -d \"
|
echo "$record" | _egrep_o '"id":"[^"]*"' | cut -d : -f 2 | tr -d \"
|
||||||
|
@ -95,29 +95,29 @@ _ISPC_getZoneInfo() {
|
|||||||
server_id=$(echo "${curResult}" | _egrep_o "server_id.*" | cut -d ':' -f 2 | cut -d '"' -f 2)
|
server_id=$(echo "${curResult}" | _egrep_o "server_id.*" | cut -d ':' -f 2 | cut -d '"' -f 2)
|
||||||
_debug "Server ID: '${server_id}'"
|
_debug "Server ID: '${server_id}'"
|
||||||
case "${server_id}" in
|
case "${server_id}" in
|
||||||
'' | *[!0-9]*)
|
'' | *[!0-9]*)
|
||||||
_err "Server ID is not numeric."
|
_err "Server ID is not numeric."
|
||||||
return 1
|
return 1
|
||||||
;;
|
;;
|
||||||
*) _info "Retrieved Server ID" ;;
|
*) _info "Retrieved Server ID" ;;
|
||||||
esac
|
esac
|
||||||
zone=$(echo "${curResult}" | _egrep_o "\"id.*" | cut -d ':' -f 2 | cut -d '"' -f 2)
|
zone=$(echo "${curResult}" | _egrep_o "\"id.*" | cut -d ':' -f 2 | cut -d '"' -f 2)
|
||||||
_debug "Zone: '${zone}'"
|
_debug "Zone: '${zone}'"
|
||||||
case "${zone}" in
|
case "${zone}" in
|
||||||
'' | *[!0-9]*)
|
'' | *[!0-9]*)
|
||||||
_err "Zone ID is not numeric."
|
_err "Zone ID is not numeric."
|
||||||
return 1
|
return 1
|
||||||
;;
|
;;
|
||||||
*) _info "Retrieved Zone ID" ;;
|
*) _info "Retrieved Zone ID" ;;
|
||||||
esac
|
esac
|
||||||
client_id=$(echo "${curResult}" | _egrep_o "sys_userid.*" | cut -d ':' -f 2 | cut -d '"' -f 2)
|
client_id=$(echo "${curResult}" | _egrep_o "sys_userid.*" | cut -d ':' -f 2 | cut -d '"' -f 2)
|
||||||
_debug "Client ID: '${client_id}'"
|
_debug "Client ID: '${client_id}'"
|
||||||
case "${client_id}" in
|
case "${client_id}" in
|
||||||
'' | *[!0-9]*)
|
'' | *[!0-9]*)
|
||||||
_err "Client ID is not numeric."
|
_err "Client ID is not numeric."
|
||||||
return 1
|
return 1
|
||||||
;;
|
;;
|
||||||
*) _info "Retrieved Client ID." ;;
|
*) _info "Retrieved Client ID." ;;
|
||||||
esac
|
esac
|
||||||
zoneFound=""
|
zoneFound=""
|
||||||
zoneEnd=""
|
zoneEnd=""
|
||||||
@ -135,11 +135,11 @@ _ISPC_addTxt() {
|
|||||||
record_id=$(echo "${curResult}" | _egrep_o "\"response.*" | cut -d ':' -f 2 | cut -d '"' -f 2)
|
record_id=$(echo "${curResult}" | _egrep_o "\"response.*" | cut -d ':' -f 2 | cut -d '"' -f 2)
|
||||||
_debug "Record ID: '${record_id}'"
|
_debug "Record ID: '${record_id}'"
|
||||||
case "${record_id}" in
|
case "${record_id}" in
|
||||||
'' | *[!0-9]*)
|
'' | *[!0-9]*)
|
||||||
_err "Couldn't add ACME Challenge TXT record to zone."
|
_err "Couldn't add ACME Challenge TXT record to zone."
|
||||||
return 1
|
return 1
|
||||||
;;
|
;;
|
||||||
*) _info "Added ACME Challenge TXT record to zone." ;;
|
*) _info "Added ACME Challenge TXT record to zone." ;;
|
||||||
esac
|
esac
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -153,24 +153,24 @@ _ISPC_rmTxt() {
|
|||||||
record_id=$(echo "${curResult}" | _egrep_o "\"id.*" | cut -d ':' -f 2 | cut -d '"' -f 2)
|
record_id=$(echo "${curResult}" | _egrep_o "\"id.*" | cut -d ':' -f 2 | cut -d '"' -f 2)
|
||||||
_debug "Record ID: '${record_id}'"
|
_debug "Record ID: '${record_id}'"
|
||||||
case "${record_id}" in
|
case "${record_id}" in
|
||||||
'' | *[!0-9]*)
|
'' | *[!0-9]*)
|
||||||
_err "Record ID is not numeric."
|
_err "Record ID is not numeric."
|
||||||
|
return 1
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
unset IFS
|
||||||
|
_info "Retrieved Record ID."
|
||||||
|
curData="{\"session_id\":\"${sessionID}\",\"primary_id\":\"${record_id}\",\"update_serial\":true}"
|
||||||
|
curResult="$(_post "${curData}" "${ISPC_Api}?dns_txt_delete")"
|
||||||
|
_debug "Calling _ISPC_rmTxt: '${curData}' '${ISPC_Api}?dns_txt_delete'"
|
||||||
|
_debug "Result of _ISPC_rmTxt: '$curResult'"
|
||||||
|
if _contains "${curResult}" '"code":"ok"'; then
|
||||||
|
_info "Removed ACME Challenge TXT record from zone."
|
||||||
|
else
|
||||||
|
_err "Couldn't remove ACME Challenge TXT record from zone."
|
||||||
return 1
|
return 1
|
||||||
;;
|
fi
|
||||||
*)
|
;;
|
||||||
unset IFS
|
|
||||||
_info "Retrieved Record ID."
|
|
||||||
curData="{\"session_id\":\"${sessionID}\",\"primary_id\":\"${record_id}\",\"update_serial\":true}"
|
|
||||||
curResult="$(_post "${curData}" "${ISPC_Api}?dns_txt_delete")"
|
|
||||||
_debug "Calling _ISPC_rmTxt: '${curData}' '${ISPC_Api}?dns_txt_delete'"
|
|
||||||
_debug "Result of _ISPC_rmTxt: '$curResult'"
|
|
||||||
if _contains "${curResult}" '"code":"ok"'; then
|
|
||||||
_info "Removed ACME Challenge TXT record from zone."
|
|
||||||
else
|
|
||||||
_err "Couldn't remove ACME Challenge TXT record from zone."
|
|
||||||
return 1
|
|
||||||
fi
|
|
||||||
;;
|
|
||||||
esac
|
esac
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
@ -144,7 +144,7 @@ _netlify_rest() {
|
|||||||
export _H1="Content-Type: application/json"
|
export _H1="Content-Type: application/json"
|
||||||
export _H2="Authorization: Bearer $token_trimmed"
|
export _H2="Authorization: Bearer $token_trimmed"
|
||||||
|
|
||||||
:>"$HTTP_HEADER"
|
: >"$HTTP_HEADER"
|
||||||
|
|
||||||
if [ "$m" != "GET" ]; then
|
if [ "$m" != "GET" ]; then
|
||||||
_debug data "$data"
|
_debug data "$data"
|
||||||
|
@ -41,40 +41,40 @@ _ovh_get_api() {
|
|||||||
|
|
||||||
case "${_ogaep}" in
|
case "${_ogaep}" in
|
||||||
|
|
||||||
ovh-eu | ovheu)
|
ovh-eu | ovheu)
|
||||||
printf "%s" $OVH_EU
|
printf "%s" $OVH_EU
|
||||||
return
|
return
|
||||||
;;
|
;;
|
||||||
ovh-ca | ovhca)
|
ovh-ca | ovhca)
|
||||||
printf "%s" $OVH_CA
|
printf "%s" $OVH_CA
|
||||||
return
|
return
|
||||||
;;
|
;;
|
||||||
kimsufi-eu | kimsufieu)
|
kimsufi-eu | kimsufieu)
|
||||||
printf "%s" $KSF_EU
|
printf "%s" $KSF_EU
|
||||||
return
|
return
|
||||||
;;
|
;;
|
||||||
kimsufi-ca | kimsufica)
|
kimsufi-ca | kimsufica)
|
||||||
printf "%s" $KSF_CA
|
printf "%s" $KSF_CA
|
||||||
return
|
return
|
||||||
;;
|
;;
|
||||||
soyoustart-eu | soyoustarteu)
|
soyoustart-eu | soyoustarteu)
|
||||||
printf "%s" $SYS_EU
|
printf "%s" $SYS_EU
|
||||||
return
|
return
|
||||||
;;
|
;;
|
||||||
soyoustart-ca | soyoustartca)
|
soyoustart-ca | soyoustartca)
|
||||||
printf "%s" $SYS_CA
|
printf "%s" $SYS_CA
|
||||||
return
|
return
|
||||||
;;
|
;;
|
||||||
runabove-ca | runaboveca)
|
runabove-ca | runaboveca)
|
||||||
printf "%s" $RAV_CA
|
printf "%s" $RAV_CA
|
||||||
return
|
return
|
||||||
;;
|
;;
|
||||||
|
|
||||||
*)
|
*)
|
||||||
|
|
||||||
_err "Unknown parameter : $1"
|
_err "Unknown parameter : $1"
|
||||||
return 1
|
return 1
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -136,11 +136,12 @@ dns_pleskxml_rm() {
|
|||||||
|
|
||||||
# Reduce output to one line per DNS record, filtered for TXT records with a record ID only (which they should all have)
|
# Reduce output to one line per DNS record, filtered for TXT records with a record ID only (which they should all have)
|
||||||
# Also strip out spaces between tags, redundant <data> and </data> group tags and any <self-closing/> tags
|
# Also strip out spaces between tags, redundant <data> and </data> group tags and any <self-closing/> tags
|
||||||
reclist="$(_api_response_split "$pleskxml_prettyprint_result" 'result' '<status>ok</status>' \
|
reclist="$(
|
||||||
| sed 's# \{1,\}<\([a-zA-Z]\)#<\1#g;s#</\{0,1\}data>##g;s#<[a-z][^/<>]*/>##g' \
|
_api_response_split "$pleskxml_prettyprint_result" 'result' '<status>ok</status>' |
|
||||||
| grep "<site-id>${root_domain_id}</site-id>" \
|
sed 's# \{1,\}<\([a-zA-Z]\)#<\1#g;s#</\{0,1\}data>##g;s#<[a-z][^/<>]*/>##g' |
|
||||||
| grep '<id>[0-9]\{1,\}</id>' \
|
grep "<site-id>${root_domain_id}</site-id>" |
|
||||||
| grep '<type>TXT</type>'
|
grep '<id>[0-9]\{1,\}</id>' |
|
||||||
|
grep '<type>TXT</type>'
|
||||||
)"
|
)"
|
||||||
|
|
||||||
if [ -z "$reclist" ]; then
|
if [ -z "$reclist" ]; then
|
||||||
@ -151,10 +152,11 @@ dns_pleskxml_rm() {
|
|||||||
_debug "Got list of DNS TXT records for root domain '$root_domain_name':"
|
_debug "Got list of DNS TXT records for root domain '$root_domain_name':"
|
||||||
_debug "$reclist"
|
_debug "$reclist"
|
||||||
|
|
||||||
recid="$(_value "$reclist" \
|
recid="$(
|
||||||
| grep "<host>${fulldomain}.</host>" \
|
_value "$reclist" |
|
||||||
| grep "<value>${txtvalue}</value>" \
|
grep "<host>${fulldomain}.</host>" |
|
||||||
| sed 's/^.*<id>\([0-9]\{1,\}\)<\/id>.*$/\1/'
|
grep "<value>${txtvalue}</value>" |
|
||||||
|
sed 's/^.*<id>\([0-9]\{1,\}\)<\/id>.*$/\1/'
|
||||||
)"
|
)"
|
||||||
|
|
||||||
if ! _value "$recid" | grep '^[0-9]\{1,\}$' >/dev/null; then
|
if ! _value "$recid" | grep '^[0-9]\{1,\}$' >/dev/null; then
|
||||||
@ -220,11 +222,11 @@ _countdots() {
|
|||||||
# Last line could change to <sed -n '/.../p'> instead, with suitable escaping of ['"/$],
|
# Last line could change to <sed -n '/.../p'> instead, with suitable escaping of ['"/$],
|
||||||
# if future Plesk XML API changes ever require extended regex
|
# if future Plesk XML API changes ever require extended regex
|
||||||
_api_response_split() {
|
_api_response_split() {
|
||||||
printf '%s' "$1" \
|
printf '%s' "$1" |
|
||||||
| sed 's/^ +//;s/ +$//' \
|
sed 's/^ +//;s/ +$//' |
|
||||||
| tr -d '\n\r' \
|
tr -d '\n\r' |
|
||||||
| sed "s/<\/\{0,1\}$2>/${NEWLINE}/g" \
|
sed "s/<\/\{0,1\}$2>/${NEWLINE}/g" |
|
||||||
| grep "$3"
|
grep "$3"
|
||||||
}
|
}
|
||||||
|
|
||||||
#################### Private functions below (DNS functions) ##################################
|
#################### Private functions below (DNS functions) ##################################
|
||||||
@ -265,10 +267,11 @@ _call_api() {
|
|||||||
# - filter output to keep only lines like this: "SPACES<TAG>text</TAG>SPACES" (shouldn't be necessary with prettyprint but guarantees subsequent code is ok)
|
# - filter output to keep only lines like this: "SPACES<TAG>text</TAG>SPACES" (shouldn't be necessary with prettyprint but guarantees subsequent code is ok)
|
||||||
# - then edit the 3 "useful" error tokens individually and remove closing tags on all lines
|
# - then edit the 3 "useful" error tokens individually and remove closing tags on all lines
|
||||||
# - then filter again to remove all lines not edited (which will be the lines not starting A-Z)
|
# - then filter again to remove all lines not edited (which will be the lines not starting A-Z)
|
||||||
errtext="$(_value "$pleskxml_prettyprint_result" \
|
errtext="$(
|
||||||
| grep '^ *<[a-z]\{1,\}>[^<]*<\/[a-z]\{1,\}> *$' \
|
_value "$pleskxml_prettyprint_result" |
|
||||||
| sed 's/^ *<status>/Status: /;s/^ *<errcode>/Error code: /;s/^ *<errtext>/Error text: /;s/<\/.*$//' \
|
grep '^ *<[a-z]\{1,\}>[^<]*<\/[a-z]\{1,\}> *$' |
|
||||||
| grep '^[A-Z]'
|
sed 's/^ *<status>/Status: /;s/^ *<errcode>/Error code: /;s/^ *<errtext>/Error text: /;s/<\/.*$//' |
|
||||||
|
grep '^[A-Z]'
|
||||||
)"
|
)"
|
||||||
|
|
||||||
fi
|
fi
|
||||||
|
@ -87,11 +87,11 @@ _get_root() {
|
|||||||
|
|
||||||
for ITEM in ${domains_list}; do
|
for ITEM in ${domains_list}; do
|
||||||
case "${domain}" in
|
case "${domain}" in
|
||||||
*${ITEM}*)
|
*${ITEM}*)
|
||||||
_domain=${ITEM}
|
_domain=${ITEM}
|
||||||
_debug _domain "${_domain}"
|
_debug _domain "${_domain}"
|
||||||
return 0
|
return 0
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
done
|
done
|
||||||
|
|
||||||
|
@ -98,24 +98,24 @@ _mail_cmnd() {
|
|||||||
_MAIL_ARGS=""
|
_MAIL_ARGS=""
|
||||||
|
|
||||||
case $(basename "$_MAIL_BIN") in
|
case $(basename "$_MAIL_BIN") in
|
||||||
sendmail)
|
sendmail)
|
||||||
if [ -n "$MAIL_FROM" ]; then
|
if [ -n "$MAIL_FROM" ]; then
|
||||||
_MAIL_ARGS="-f '$MAIL_FROM'"
|
_MAIL_ARGS="-f '$MAIL_FROM'"
|
||||||
fi
|
fi
|
||||||
;;
|
;;
|
||||||
mutt | mail)
|
mutt | mail)
|
||||||
_MAIL_ARGS="-s '$_subject'"
|
_MAIL_ARGS="-s '$_subject'"
|
||||||
;;
|
;;
|
||||||
msmtp)
|
msmtp)
|
||||||
if [ -n "$MAIL_FROM" ]; then
|
if [ -n "$MAIL_FROM" ]; then
|
||||||
_MAIL_ARGS="-f '$MAIL_FROM'"
|
_MAIL_ARGS="-f '$MAIL_FROM'"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [ -n "$MAIL_MSMTP_ACCOUNT" ]; then
|
if [ -n "$MAIL_MSMTP_ACCOUNT" ]; then
|
||||||
_MAIL_ARGS="$_MAIL_ARGS -a '$MAIL_MSMTP_ACCOUNT'"
|
_MAIL_ARGS="$_MAIL_ARGS -a '$MAIL_MSMTP_ACCOUNT'"
|
||||||
fi
|
fi
|
||||||
;;
|
;;
|
||||||
*) ;;
|
*) ;;
|
||||||
esac
|
esac
|
||||||
|
|
||||||
echo "'$_MAIL_BIN' $_MAIL_ARGS '$MAIL_TO'"
|
echo "'$_MAIL_BIN' $_MAIL_ARGS '$MAIL_TO'"
|
||||||
@ -123,16 +123,16 @@ _mail_cmnd() {
|
|||||||
|
|
||||||
_mail_body() {
|
_mail_body() {
|
||||||
case $(basename "$_MAIL_BIN") in
|
case $(basename "$_MAIL_BIN") in
|
||||||
sendmail | ssmtp | msmtp)
|
sendmail | ssmtp | msmtp)
|
||||||
if [ -n "$MAIL_FROM" ]; then
|
if [ -n "$MAIL_FROM" ]; then
|
||||||
echo "From: $MAIL_FROM"
|
echo "From: $MAIL_FROM"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
echo "To: $MAIL_TO"
|
echo "To: $MAIL_TO"
|
||||||
echo "Subject: $subject"
|
echo "Subject: $subject"
|
||||||
echo "Content-Type: $contenttype"
|
echo "Content-Type: $contenttype"
|
||||||
echo
|
echo
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
|
|
||||||
echo "$_content"
|
echo "$_content"
|
||||||
|
@ -52,15 +52,15 @@ teams_send() {
|
|||||||
_content=$(echo "$_content" | _json_encode)
|
_content=$(echo "$_content" | _json_encode)
|
||||||
|
|
||||||
case "$_statusCode" in
|
case "$_statusCode" in
|
||||||
0)
|
0)
|
||||||
_color="${TEAMS_SUCCESS_COLOR:-$_color_success}"
|
_color="${TEAMS_SUCCESS_COLOR:-$_color_success}"
|
||||||
;;
|
;;
|
||||||
1)
|
1)
|
||||||
_color="${TEAMS_ERROR_COLOR:-$_color_danger}"
|
_color="${TEAMS_ERROR_COLOR:-$_color_danger}"
|
||||||
;;
|
;;
|
||||||
2)
|
2)
|
||||||
_color="${TEAMS_SKIP_COLOR:-$_color_muted}"
|
_color="${TEAMS_SKIP_COLOR:-$_color_muted}"
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
|
|
||||||
_color=$(echo "$_color" | tr -cd 'a-fA-F0-9')
|
_color=$(echo "$_color" | tr -cd 'a-fA-F0-9')
|
||||||
|
@ -71,13 +71,13 @@ _xmpp_bin() {
|
|||||||
|
|
||||||
_xmpp_cmnd() {
|
_xmpp_cmnd() {
|
||||||
case $(basename "$_XMPP_BIN") in
|
case $(basename "$_XMPP_BIN") in
|
||||||
sendxmpp)
|
sendxmpp)
|
||||||
echo "'$_XMPP_BIN' '$XMPP_TO' $XMPP_BIN_ARGS"
|
echo "'$_XMPP_BIN' '$XMPP_TO' $XMPP_BIN_ARGS"
|
||||||
;;
|
;;
|
||||||
*)
|
*)
|
||||||
_err "Command $XMPP_BIN is not supported, use sendxmpp."
|
_err "Command $XMPP_BIN is not supported, use sendxmpp."
|
||||||
return 1
|
return 1
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user