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]

Reply via email to