使用gcloud添加DNS记录非常好
gcloud dns record-sets transaction start -z my-zone
gcloud dns record-sets transaction add -z my-zone --name "some_domain.com" --ttl 0 --type TXT "test"
gcloud dns record-sets transaction execute -z my-zone
但是当我尝试删除该条目时
gcloud dns record-sets transaction start -z my-zone
gcloud dns record-sets transaction remove -z my-zone --name "some_domain.com" --ttl 300 --type TXT "test"
gcloud dns record-sets transaction execute -z my-zone
我总是收到此错误
错误:(gcloud.dns.record-sets.transaction.remove)无效的值 'parameters.name':'some_domain.com'(代码:400)
答案 0 :(得分:5)
DNS zone file standard要求完整的域名以尾随'结尾。字符。由于这是一个常见的错误,因此其他gcloud dns ...
命令会自动附加一个尾随的'。如果用户忘记添加域名,则为域名。但是,这个特定的命令似乎并没有这样做。这将很快修复。
同时,为了解决这个问题,你需要添加一个尾随的''在域名中。所以:
gcloud dns record-sets transaction remove -z my-zone --name "some_domain.com." --ttl 300 --type TXT "test"
或者,您可以按如下方式使用导入/导出:
gcloud dns record-sets export -z my-zone RECORDS-FILE
修改RECORDS-FILE
以删除不需要的记录。然后:
gcloud dns record-sets import -z my-zone --delete-all-existing RECORDS-FILE
如果要清除所有已创建的记录,保留NS
和SOA
条记录,则可以/dev/null
作为导入文件:
gcloud dns record-sets import -z my-zone --delete-all-existing /dev/null