Update Crossplane GCP Bucket generation rules to use preferred API version

Modified the generation rules for Crossplane GCP Buckets to omit the version in resource type definitions, allowing the use of the API server's preferred version (currently v1beta2). Updated documentation to reflect this change and clarify version pinning for schema stability.

Changes include:
- Updated YAML generation rules to remove explicit versioning.
- Revised documentation to explain the implications of omitting versioning and the preferred version usage.

This enhances resilience across CRD upgrades and simplifies the configuration for users.
This commit is contained in:
stewartshea
2026-06-30 21:55:36 -04:00
parent eb8160e659
commit 31ac475c97
3 changed files with 20 additions and 7 deletions
+8 -2
View File
@@ -24,12 +24,18 @@ Three things to note:
1. **`buckets`** — this is the *plural resource name*. It is what you
put in the generation rule, not the singular `Bucket`.
2. **`storage.gcp.upbound.io/v1beta1`** — the API group and preferred
version.
2. **`storage.gcp.upbound.io/v1beta2`** — the API group and preferred
version (older `v1beta1` may also be served for compatibility).
3. **`false` in the "NAMESPACED" column** — Crossplane managed resources
are **cluster-scoped**. This is why our generation rule uses
`qualifiers: ["resource", "cluster"]` and not `namespace`.
> **Version pinning:** our rule uses just `buckets.storage.gcp.upbound.io`
> (no `/version`), which tells the indexer to use whatever the API server
> reports as preferred. That's the most resilient choice across CRD
> upgrades. Pin `/v1beta1` or `/v1beta2` only when you deliberately need
> a specific schema.
Screenshot placeholder: `images/03-kubectl-api-resources.png` — output of
the above command.