in internal/cloudsql/resolver.go [64:87]
func (r *DNSInstanceConnectionNameResolver) Resolve(ctx context.Context, icn string) (instanceName instance.ConnName, err error) {
cn, err := instance.ParseConnName(icn)
if err != nil {
// The connection name was not in project:region:instance format.
// Check that connection name is a valid DNS domain name.
if instance.IsValidDomain(icn) {
// Attempt to query a TXT record and see if it works instead.
cn, err = r.queryDNS(ctx, icn)
if err != nil {
return instance.ConnName{}, err
}
} else {
// Connection name is not valid instance connection name or domain name
err := errtype.NewConfigError(
"invalid connection name, expected PROJECT:REGION:INSTANCE "+
"format or valid DNS domain name",
icn,
)
return instance.ConnName{}, err
}
}
return cn, nil
}