|
|
|
@ -6,6 +6,8 @@
|
|
|
|
|
#AWS_SECRET_ACCESS_KEY="xxxxxxx"
|
|
|
|
|
|
|
|
|
|
#This is the Amazon Route53 api wrapper for acme.sh
|
|
|
|
|
#All `sleep` commands are included to avoid Route53 throttling, see
|
|
|
|
|
#https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/DNSLimitations.html#limits-api-requests
|
|
|
|
|
|
|
|
|
|
AWS_HOST="route53.amazonaws.com"
|
|
|
|
|
AWS_URL="https://$AWS_HOST"
|
|
|
|
@ -43,6 +45,7 @@ dns_aws_add() {
|
|
|
|
|
_debug "First detect the root zone"
|
|
|
|
|
if ! _get_root "$fulldomain"; then
|
|
|
|
|
_err "invalid domain"
|
|
|
|
|
sleep 1
|
|
|
|
|
return 1
|
|
|
|
|
fi
|
|
|
|
|
_debug _domain_id "$_domain_id"
|
|
|
|
@ -51,6 +54,7 @@ dns_aws_add() {
|
|
|
|
|
|
|
|
|
|
_info "Getting existing records for $fulldomain"
|
|
|
|
|
if ! aws_rest GET "2013-04-01$_domain_id/rrset" "name=$fulldomain&type=TXT"; then
|
|
|
|
|
sleep 1
|
|
|
|
|
return 1
|
|
|
|
|
fi
|
|
|
|
|
|
|
|
|
@ -63,6 +67,7 @@ dns_aws_add() {
|
|
|
|
|
|
|
|
|
|
if [ "$_resource_record" ] && _contains "$response" "$txtvalue"; then
|
|
|
|
|
_info "The TXT record already exists. Skipping."
|
|
|
|
|
sleep 1
|
|
|
|
|
return 0
|
|
|
|
|
fi
|
|
|
|
|
|
|
|
|
@ -72,9 +77,10 @@ dns_aws_add() {
|
|
|
|
|
|
|
|
|
|
if aws_rest POST "2013-04-01$_domain_id/rrset/" "" "$_aws_tmpl_xml" && _contains "$response" "ChangeResourceRecordSetsResponse"; then
|
|
|
|
|
_info "TXT record updated successfully."
|
|
|
|
|
sleep 1
|
|
|
|
|
return 0
|
|
|
|
|
fi
|
|
|
|
|
|
|
|
|
|
sleep 1
|
|
|
|
|
return 1
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
@ -93,6 +99,7 @@ dns_aws_rm() {
|
|
|
|
|
_debug "First detect the root zone"
|
|
|
|
|
if ! _get_root "$fulldomain"; then
|
|
|
|
|
_err "invalid domain"
|
|
|
|
|
sleep 1
|
|
|
|
|
return 1
|
|
|
|
|
fi
|
|
|
|
|
_debug _domain_id "$_domain_id"
|
|
|
|
@ -101,6 +108,7 @@ dns_aws_rm() {
|
|
|
|
|
|
|
|
|
|
_info "Getting existing records for $fulldomain"
|
|
|
|
|
if ! aws_rest GET "2013-04-01$_domain_id/rrset" "name=$fulldomain&type=TXT"; then
|
|
|
|
|
sleep 1
|
|
|
|
|
return 1
|
|
|
|
|
fi
|
|
|
|
|
|
|
|
|
@ -109,6 +117,7 @@ dns_aws_rm() {
|
|
|
|
|
_debug "_resource_record" "$_resource_record"
|
|
|
|
|
else
|
|
|
|
|
_debug "no records exist, skip"
|
|
|
|
|
sleep 1
|
|
|
|
|
return 0
|
|
|
|
|
fi
|
|
|
|
|
|
|
|
|
@ -116,9 +125,10 @@ dns_aws_rm() {
|
|
|
|
|
|
|
|
|
|
if aws_rest POST "2013-04-01$_domain_id/rrset/" "" "$_aws_tmpl_xml" && _contains "$response" "ChangeResourceRecordSetsResponse"; then
|
|
|
|
|
_info "TXT record deleted successfully."
|
|
|
|
|
sleep 1
|
|
|
|
|
return 0
|
|
|
|
|
fi
|
|
|
|
|
|
|
|
|
|
sleep 1
|
|
|
|
|
return 1
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|