janiussyafiq opened a new pull request, #1010: URL: https://github.com/apache/apisix-helm-chart/pull/1010
Fixes #958. Alternative to #919. ### Why The chart ships the Gateway API CRDs in `crds/`, which Helm installs once and never updates, cannot toggle, and cannot reconcile with CRDs that already exist in the cluster. On GKE 1.35 the Gateway API CRDs are pre-installed and guarded by a `ValidatingAdmissionPolicy`, so users have to work around the chart with `--skip-crds` and manual `kubectl apply`, which also skips the APISIX CRDs. ### What - Move the vendored Gateway API v1.6.0 standard bundle (unchanged content) from `crds/gwapi-crds.yaml` to `gateway-api/standard-install.yaml`, rendered by a template behind `crds.gatewayAPI.enabled` (default `true`). - A CRD is rendered only when it does not exist yet or already belongs to this release, so CRDs installed by GKE, Istio, Cilium or an older chart version are left untouched and never adopted. - Chart-managed CRDs carry `helm.sh/resource-policy: keep`, so `helm uninstall` and `crds.gatewayAPI.enabled=false` never delete them. - APISIX CRDs stay in `crds/` and keep following `--skip-crds`. - Chart 1.3.1 -> 1.4.0. ### Verified kind, Helm 3.19 and 4.1: fresh install, pre-existing unowned CRDs (GKE-like), upgrade from chart 1.3.0, `helm upgrade` updating chart-owned CRDs, `enabled=false` and `helm uninstall` keeping CRDs, `helm template` without cluster access. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
