Skip to content

chore: manage Gateway API resources with stable Helm chart - #2940

Open
joelmccoy wants to merge 4 commits into
mainfrom
joel/cli-223-gateway-api-chart
Open

chore: manage Gateway API resources with stable Helm chart#2940
joelmccoy wants to merge 4 commits into
mainfrom
joel/cli-223-gateway-api-chart

Conversation

@joelmccoy

@joelmccoy joelmccoy commented Sep 3, 2026

Copy link
Copy Markdown
Member

Description

When using manifests in zarf packages the helm chart name is generated based on the content causing the helm chart name to change. We should avoid using manifests directly as it can cause some ownership issues when using different resource managers. This swaps the gateway api resources to a local stable helm chart. This is needed for a clean migration to using cli next to deploy on top of cli legacy packages.

Instead of reference the manifests via a remote link, I updated our CI/tasks to pull down and sync them in the repo.

Type of change

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Other (security config, docs update, etc)

Steps to Validate

  • uds run test-uds-core-upgrade --set FLAVOR=upstream --no-progress

Checklist before merging

Copilot AI lite review requested due to automatic review settings September 3, 2026 18:40
@joelmccoy
joelmccoy requested a review from a team as a code owner September 3, 2026 18:40
@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Sep 3, 2026

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review Completed 2026-09-04T16:19:31.268626Z 8f28e00 Manual request
ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

@greptile-apps

greptile-apps Bot commented Sep 3, 2026

Copy link
Copy Markdown
Contributor

Greptile Summary

This PR replaces the content-derived Gateway API manifest release with a stable local Helm chart and adds guarded migration of resources owned by the known legacy release.

  • Vendors the Gateway API experimental resources and adds an update task plus generated-file validation.
  • Migrates matching legacy Helm ownership metadata before installing the stable release, then removes the migrated legacy release’s storage records.
  • Adds upgrade validation for stable ownership and legacy-release cleanup.

Confidence Score: 5/5

The PR appears safe to merge.

No blocking failure remains; the ownership checks address the previously reported takeover paths by migrating only resources annotated for the detected legacy release.

Important Files Changed

Filename Overview
src/istio/common/zarf.yaml Replaces the generated manifest release with a stable chart and limits migration to resources whose annotations identify the selected legacy release.
src/istio/gateway-api-crds/chart/Chart.yaml Defines the new stable local Helm chart used to manage Gateway API resources.
src/istio/gateway-api-crds/chart/templates/gateway-api-crds.yaml Vendors the Gateway API v1.6.1 experimental installation manifest as chart templates.
src/istio/tasks.yaml Centralizes the Gateway API version and adds a task to refresh the vendored manifest.
.github/actions/autogenerated-check/action.yaml Regenerates and checks the vendored Gateway API manifest for drift.
test/vitest/gateway-api-crds.spec.ts Verifies stable Helm ownership of all installed resources and cleanup of the legacy release.

Flowchart

%%{init: {'theme': 'neutral'}}%%
flowchart TD
    A[Deploy gateway-api-crds component] --> B{Matching legacy release exists?}
    B -->|No| E[Install stable Helm chart]
    B -->|Yes| C[Retag resources owned by legacy release]
    C --> D{Any resources migrated?}
    D -->|Yes| F[Delete legacy Helm storage records]
    D -->|No| E
    F --> E
    E --> G[Validate stable ownership and absence of legacy release]
Loading

Reviews (5): Last reviewed commit: "chore: cleanup legacy release" | Re-trigger Greptile

Comment thread src/istio/common/zarf.yaml Outdated

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🔵 Needs a closer look

It changes upgrade/migration behavior for cluster-scoped Gateway API resources and Helm ownership metadata, which warrants a final human validation of the migration path in a real upgrade scenario.

Pull request overview

This PR migrates Gateway API resource management from Zarf manifests (which produced unstable/generated Helm release names) to a stable, vendored local Helm chart, and wires CI/tasks to keep the vendored install manifest in sync.

Changes:

  • Add a pinned GATEWAY_API_VERSION and a new task to vendor/sync the Gateway API experimental install manifest into the repo.
  • Switch the Istio package’s Gateway API install from manifests to a stable local Helm chart release, including a one-time ownership metadata migration step.
  • Update the autogenerated-file CI check and codespell configuration to account for the newly vendored YAML.
File summaries
File Description
src/istio/tasks.yaml Adds GATEWAY_API_VERSION and a task to download/sync the Gateway API install YAML; updates CRD type generation to use the pinned version.
src/istio/gateway-api-crds/chart/Chart.yaml Introduces a local Helm chart wrapper for vendored Gateway API install resources.
src/istio/common/zarf.yaml Switches Gateway API install to a stable local chart release and adds an ownership migration step for existing clusters.
.github/actions/autogenerated-check/action.yaml Ensures CI regenerates and validates the vendored Gateway API YAML alongside other generated artifacts.
.codespellrc Excludes the vendored Gateway API YAML directory from codespell checks.
Review details
  • Files reviewed: 5/6 changed files
  • Comments generated: 1
  • Review effort level: Lite

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

Comment thread src/istio/gateway-api-crds/chart/Chart.yaml Outdated
@joelmccoy

Copy link
Copy Markdown
Member Author

@greptileai @codex review

Comment thread src/istio/common/zarf.yaml Outdated
@chatgpt-codex-connector

Copy link
Copy Markdown

Codex Review: Didn't find any major issues. Nice work!

Reviewed commit: 49767c16cb

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

@joelmccoy

Copy link
Copy Markdown
Member Author

@greptileai review

@joelmccoy

Copy link
Copy Markdown
Member Author

@greptileai @codex review

@chatgpt-codex-connector

Copy link
Copy Markdown

💡 Codex Review

https://github.com/defenseunicorns/uds-core/blob/217ce021375b958363ce3eb95612924ee0ae7161/src/istio/gateway-api-crds/chart/templates/gateway-api-crds.yaml#L1
P1 Badge Preserve a 2026 copyright header when vendoring

The newly vendored manifest has a copyright header without the current year, so it does not comply with the repository requirement that every modified file with such a header include 2026. Because update-gateway-api-crds replaces this file directly with the downloaded artifact, the generation step must also preserve or add the compliant header rather than relying on a one-time manual edit.

AGENTS.md reference: AGENTS.md:L3-L3

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread src/istio/gateway-api-crds/chart/Chart.yaml
@joelmccoy

Copy link
Copy Markdown
Member Author

@codex @greptileai review

@chatgpt-codex-connector

Copy link
Copy Markdown

Codex Review: Didn't find any major issues. 👍

Reviewed commit: 8f28e0074f

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

@joelmccoy
joelmccoy force-pushed the joel/cli-223-gateway-api-chart branch from 8f28e00 to 53d3902 Compare September 4, 2026 16:49
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.

3 participants