fix(argo-cd): make gateway API backend protocol selection work for server #3585
+41
−15
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
When using gateway API (https://gateway-api.sigs.k8s.io/) to configure a Gateway and an HTTPRoute to access Argo CD server, backend protocol selection (https://gateway-api.sigs.k8s.io/guides/backend-protocol/) relies on the appProtocol field of the backend service port (https://gateway-api.sigs.k8s.io/reference/spec/#backendref). Valid values for this field are described in KEP-3726
(https://github.com/kubernetes/enhancements/tree/master/keps/sig-network/3726-standard-application-protocols).
Since Argo CD server serves web UI using HTTP 1 and GRPC using HTTP 2, both on the same port, two ports redirecting to the same pod port are needed on the service.
Checklist: