-
Notifications
You must be signed in to change notification settings - Fork 19
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat: configurable HTTP route version #56
Conversation
Signed-off-by: Tommy Chen <[email protected]>
@tommy351 did you find examples when v1 doesnt work correctly with versions that are less than v1 ? |
The problem with this Pr is that it instantly doubles the testing and maintenance effort as we will need to see what happens this both 1.0 and pre 1.0 releases Also if this flag stays as a permanent feature we will need to create a compatibility table with versions of plugin vs versions of gateway api which in the long run might be too much What I suggest is to have two releases of the plugin and let people downgrade if their provider doesn't support 1.0 After all this is supposed to be a temporary case. What do you think @tommy351 ? |
GKE doesn't support v1 currently, and users can't install newer CRDs. I think having two releases is also fine for me. |
@tommy351 it doesn't mean that you can't use gateway api with v1, did you find traffic provider where you had a problem ? You can use versions less than v1 but use gateway api with v1, I tested and locally for me it worked, if you had problem, please share it with us |
The plugin prints this error without this fix. It's not because I didn't create a corresponding HTTPRoute resource. The plugin can't use v1 API because the corresponding version doesn't exist on the cluster at all.
|
I will be near the computer on the evening, but did you try to install CRD of gateway api of v1 and create HTTPRoute with beta version ? I remember I installed CRD of v1 and created beta HTTPRoute, but not sure I had in cluster CRD of beta version. (I can't now check it but I think I only had v1 gateway CRD, traffic provider that supports beta version and routes with beta versions and all was good) |
I just tried installing v1 CRDs on a GKE cluster. It's impossible to override the CRDs installed by GKE. When I executed the following command, it didn't fail but the CRDs didn't changed either. kubectl apply -f https://github.com/kubernetes-sigs/gateway-api/releases/download/v1.0.0/standard-install.yaml |
I think the gateway api is actually lead by Google. So it is really strange that they don't support it. Do you have an account manager that you can contact and ask them about it? I mean if they intend to support 1.0 real soon maybe we just need to wait? |
I just found that Google will update their CRDs on 1.29.3. It should be released a few months later. https://cloud.google.com/kubernetes-engine/docs/how-to/gatewayclass-capabilities#architecture |
@tommy351 Do I understand correctly that Google now supports Gateway API 1.0 and this PR is no longer needed? |
Some Gateway API implementations do not support Gateway API v1 yet. (e.g. GKE) I added a new flag
http-route-api-version
for users to configure HTTP route version during plugin initialization. This feature requires argoproj/argo-rollouts#2992 which is introduced in Argo Rollouts v1.7.0-rc1.