Skip to content

gke-deploy: get deployed objects from manifests#1106

Open
Haihan-Jiang wants to merge 1 commit into
GoogleCloudPlatform:masterfrom
Haihan-Jiang:codex/gke-deploy-get-from-manifest
Open

gke-deploy: get deployed objects from manifests#1106
Haihan-Jiang wants to merge 1 commit into
GoogleCloudPlatform:masterfrom
Haihan-Jiang:codex/gke-deploy-get-from-manifest

Conversation

@Haihan-Jiang
Copy link
Copy Markdown

What changed

Change gke-deploy's readiness polling to fetch deployed objects with kubectl get -f - using the original manifest, instead of fetching by only kind and name.

Why

When a cluster has multiple CRDs with the same Kind in different API groups, kubectl get <kind> <name> can resolve the wrong resource. This caused gke-deploy to wait on ingressroutes.traefik.containo.us even when the applied manifest declared apiVersion: traefik.io/v1alpha1.

Using the manifest for the get operation preserves the resource's declared apiVersion and kind, matching the object that was applied.

Fixes #962.

Validation

  • cd gke-deploy && go test ./core/cluster ./deployer ./services ./testservices
  • cd gke-deploy && go test ./...
  • Added a regression test with an IngressRoute manifest using apiVersion: traefik.io/v1alpha1 and a test kubectl response that must be consumed through the manifest-based get path.

@Haihan-Jiang Haihan-Jiang marked this pull request as ready for review May 24, 2026 16:28
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[BUG] gke-deploy does not respect the declared ApiVersion

1 participant