kubernetes/kops · error

invalid google cloud URL (no name): %q

Error message

invalid google cloud URL (no name): %q

What it means

Final guard of ParseGoogleCloudURL: after identifying the resource type token, a resource name must follow. This fires when a Google Cloud self-link ends with the resource type and no name (e.g. .../zones/us-west1-a/instances/), so the parsed URL would be nameless and unusable.

Source

Thrown at upup/pkg/fi/cloudup/gce/gce_url.go:108

		case t == "zones":
			pos++
			if pos >= len(tokens) {
				return nil, fmt.Errorf("invalid google cloud URL (unexpected zones): %q", u)
			}
			parsed.Zone = tokens[pos]
		case t == "regions" && ((pos + 2) < len(tokens)):
			pos++
			if pos >= len(tokens) {
				return nil, fmt.Errorf("invalid google cloud URL (unexpected regions): %q", u)
			}
			parsed.Region = tokens[pos]
		case t == "global":
			parsed.Global = true
		default:
			parsed.Type = tokens[pos]
			pos++
			if pos >= len(tokens) {
				return nil, fmt.Errorf("invalid google cloud URL (no name): %q", u)
			}
			parsed.Name = tokens[pos]
			pos++
			if pos != len(tokens) {
				return nil, fmt.Errorf("invalid google cloud URL (content after name): %q", u)
			} else {
				return parsed, nil
			}
		}
		pos++
	}
}

View on GitHub (pinned to 4c8573c808)

Solutions

  1. Complete the URL with the resource name after the type segment
  2. Fix truncated or malformed self-links
Defensive patterns

Strategy: validation

When it happens

Trigger: Thrown at upup/pkg/fi/cloudup/gce/gce_url.go:108 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of kubernetes/kops@4c8573c808 (2026-09-05). Data as JSON: /api/errors/0a1c31e9b6aa379a. Report an issue: GitHub.