Browse Source
Merge pull request #2210 from chasefox/dev
Fix gcloud most-specific zone match
dnsconf
neil
6 years ago
committed by
GitHub
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with
3 additions and
3 deletions
-
dnsapi/dns_gcloud.sh
|
@ -134,14 +134,14 @@ _dns_gcloud_find_zone() { |
|
|
filter="$filter)" |
|
|
filter="$filter)" |
|
|
_debug filter "$filter" |
|
|
_debug filter "$filter" |
|
|
|
|
|
|
|
|
# List domains and find the longest match (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" "${#dnsName}" "$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 |
|
|