Skip to content
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

Method based routing #624

Closed
zoglesby opened this issue Apr 22, 2021 · 9 comments · Fixed by #733
Closed

Method based routing #624

zoglesby opened this issue Apr 22, 2021 · 9 comments · Fixed by #733
Labels
kind/feature Categorizes issue or PR as related to a new feature. lifecycle/frozen Indicates that an issue or PR should not be auto-closed due to staleness.
Milestone

Comments

@zoglesby
Copy link

I did a quick search and did not see a ticket for this, if I missed it I am sorry.

What would you like to be added:
Method based routing would be a nice addition. This is something that we are currently looking to implement in another part of our stack, but having it in a gateway-api would make things easier for us.

An example of this can be found in Ambassador

---
apiVersion: getambassador.io/v2
kind: Mapping
metadata:
  name: get
spec:
  prefix: /backend/get_only/
  method: GET
  service: quote

https://www.getambassador.io/docs/edge-stack/latest/topics/using/method/#method-based-routing

Why is this needed:
There are many use cases for this, but the my primary need for this is to split read (GET) and write (PUT) traffic to different endpoints.

@zoglesby zoglesby added the kind/feature Categorizes issue or PR as related to a new feature. label Apr 22, 2021
@robscott
Copy link
Member

Thanks for filing this issue! I think we've discussed this in some community meetings and simply failed to create a tracking issue for this feature.

@hbagdi
Copy link
Contributor

hbagdi commented Apr 23, 2021

What should be the conformance for this?
I'm thinking extended.
Most reverse proxies support it but most cloud LBs don't.

Once we settle on this, it should be possible to add this to the API fairly easily.

@robscott
Copy link
Member

I think this is an extended feature since not every implementation will be able to support it, but agree it should be pretty straightforward to add. I'm actually a little tempted to try to get this into v0.3.0 but that's coming up pretty quickly.

@hbagdi
Copy link
Contributor

hbagdi commented Apr 23, 2021

@zoglesby If you can send a PR for this feature in the next couple days, we might be able to include this feature in our upcoming release. Even if we can't get it in the release, a PR would be warmly welcome!

@bowei
Copy link
Contributor

bowei commented Apr 23, 2021

+1 to extended, agree with all comments above.

@fejta-bot
Copy link

Issues go stale after 90d of inactivity.
Mark the issue as fresh with /remove-lifecycle stale.
Stale issues rot after an additional 30d of inactivity and eventually close.

If this issue is safe to close now please do so with /close.

Send feedback to sig-contributor-experience at kubernetes/community.
/lifecycle stale

@k8s-ci-robot k8s-ci-robot added the lifecycle/stale Denotes an issue or PR has remained open with no activity and has become stale. label Jul 22, 2021
@jpeach
Copy link
Contributor

jpeach commented Jul 22, 2021

/remove-lifecycle stale
/lifecycle frozen

@k8s-ci-robot k8s-ci-robot added lifecycle/frozen Indicates that an issue or PR should not be auto-closed due to staleness. and removed lifecycle/stale Denotes an issue or PR has remained open with no activity and has become stale. labels Jul 22, 2021
@hbagdi hbagdi added this to the v1alpha2 milestone Jul 26, 2021
@hbagdi
Copy link
Contributor

hbagdi commented Jul 26, 2021

/assign @secustor

@k8s-ci-robot
Copy link
Contributor

@hbagdi: GitHub didn't allow me to assign the following users: secustor.

Note that only kubernetes-sigs members, repo collaborators and people who have commented on this issue/PR can be assigned. Additionally, issues/PRs can only have 10 assignees at the same time.
For more information please see the contributor guide

In response to this:

/assign @secustor

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
kind/feature Categorizes issue or PR as related to a new feature. lifecycle/frozen Indicates that an issue or PR should not be auto-closed due to staleness.
Projects
None yet
Development

Successfully merging a pull request may close this issue.

7 participants