You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
feat(CLI): add a check requiring the gateway API (#15409)
When Linkerd is installed with the CLI, we first check to ensure the Gateway API CRDs are installed, and abort if the Gateway API is not present. However, if Helm is used to the install Linkerd, no such check is performed. This can lead to an invalid installation because HTTPRoute is a required CRD for Linkerd.
We add a check to `linkerd check` that validates that the Gateway API is installed.
But note the prior art in: #12917
In that PR we _removed_ a check for the Gateway API. This is because the Gateway API consists of many different CRDs, most of which are optional for Linkerd; only HTTPRoute is required. Therefore, we don't want to require that all Gateway API CRDs are installed. For this new check, the HTTPRoute CRD alone is sufficient to make it pass. This matches the behavior of the condition checked by the `linkerd install` command.
Signed-off-by: Alex Leong <alex@buoyant.io>
// if they are installed but are external, we cannot be installing as well
436
386
returnerrors.New("Linkerd cannot install the Gateway API CRDs because they are already installed by an external source. Please set `installGatewayAPI` to `false`.")
@@ -476,7 +426,7 @@ func renderCRDs(ctx context.Context, k *k8s.KubernetesAPI, w io.Writer, options
476
426
// If any of the Gateway API CRDs are installed, we default to rendering the
0 commit comments