|
|
|
@ -14,24 +14,35 @@ if [[ -z "$LINODE_KEY" ]]; then |
|
|
|
exit 1 |
|
|
|
fi |
|
|
|
|
|
|
|
domain_root=${fulldomain#*.} |
|
|
|
domain=${fulldomain%.$domain_root} |
|
|
|
txtname="_acme-challenge.$domain" |
|
|
|
|
|
|
|
# Get Domain ID |
|
|
|
# Get Domain List |
|
|
|
response=$(curl --silent ${api_url}/domains \ |
|
|
|
-H "User-Agent: getssl/0.1" -H "Authorization: Bearer ${api_key}") |
|
|
|
domain_id=$(echo "$response" | jq ".data[] | select (.domain==\"$domain_root\") | .id") |
|
|
|
if [[ $domain_id == "" ]]; then |
|
|
|
|
|
|
|
# Get Domain ID for longest match |
|
|
|
domain_root="$fulldomain" |
|
|
|
domain="" |
|
|
|
|
|
|
|
while [[ "$domain_root" == *.* ]] ; do |
|
|
|
domain_id=$(echo "$response" | jq ".data[]? | select (.domain==\"$domain_root\") | .id") |
|
|
|
if [[ "$domain_id" != "" ]] ; then |
|
|
|
break |
|
|
|
fi |
|
|
|
domain_root=${domain_root#*.} |
|
|
|
domain=${fulldomain%.$domain_root} |
|
|
|
done |
|
|
|
|
|
|
|
if [[ "$domain_id" == "" ]]; then |
|
|
|
echo "Failed to fetch DomainID" |
|
|
|
exit 1 |
|
|
|
fi |
|
|
|
|
|
|
|
txtname="_acme-challenge${domain:+.$domain}" |
|
|
|
|
|
|
|
# Get Resource ID |
|
|
|
response=$(curl --silent ${api_url}/domains/${domain_id}/records \ |
|
|
|
-H "User-Agent: getssl/0.1" -H "Authorization: Bearer ${api_key}") |
|
|
|
resource_id=$(echo "$response" | jq ".data[] | select (.name==\"$txtname\") | .id") |
|
|
|
if [[ $resource_id == "" ]]; then |
|
|
|
if [[ "$resource_id" == "" ]]; then |
|
|
|
echo "Failed to fetch ResourceID" |
|
|
|
exit 1 |
|
|
|
fi |
|
|
|
@ -40,7 +51,7 @@ fi |
|
|
|
response=$(curl --silent -X DELETE ${api_url}/domains/${domain_id}/records/${resource_id} \ |
|
|
|
-H "User-Agent: getssl/0.1" -H "Authorization: Bearer ${api_key}") |
|
|
|
errors=$(echo "$response" | jq ".errors[]?.reason") |
|
|
|
if [[ $errors != "" ]]; then |
|
|
|
if [[ "$errors" != "" ]]; then |
|
|
|
echo "Something went wrong: $errors" |
|
|
|
exit 1 |
|
|
|
fi |