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

Expose CEL/OpenAPI validation rules as documentation to users #3209

Open
howardjohn opened this issue Jul 22, 2024 · 8 comments
Open

Expose CEL/OpenAPI validation rules as documentation to users #3209

howardjohn opened this issue Jul 22, 2024 · 8 comments
Assignees
Labels
kind/documentation Categorizes issue or PR as related to documentation.
Milestone

Comments

@howardjohn
Copy link
Contributor

What would you like to be added:

Expose validation rules to reference documentation on the website (and/or so it shows up in kubectl explain

Why this is needed:

Users have asked for this: istio/istio#52225

@howardjohn howardjohn added the kind/documentation Categorizes issue or PR as related to documentation. label Jul 22, 2024
@kovaxur
Copy link

kovaxur commented Jul 23, 2024

Is there a reason why we have this limit in the API? Shouldn't the limits be enforced by the implementation of the gateway controller?

@youngnick
Copy link
Contributor

The main reasons to have this in the API rather than the implementations are:

  • Users get feedback earlier, at apply time, rather than having the apply succeed and then their configuration (or even worse, only some of their configuration), fail to work.
  • Allowing implementations to control this themselves would allow implementations to choose their own numbers here, which would break portability - since a Gateway that was valid in one implementation might not be in another, based on the number of Listeners.

That's why this is done at the API level.

As to why there are limits - the main reasons are the etcd size limit (records stored in etcd can't be over a certain size, which is 1MB by default, and records that exceed this size simply won't be accepted by Kubernetes), and the complexity which would ensue if you could have n Listeners x m Attached Routes x l Route rules x o Matches inside Rules. The complexity goes up very quickly with that sort of multiplicative relationship.

@shaneutt
Copy link
Member

/triage needs-information

@k8s-ci-robot k8s-ci-robot added the triage/needs-information Indicates an issue needs more information in order to work on it. label Sep 20, 2024
@shaneutt shaneutt moved this to Triage in Gateway API Pipeline Sep 20, 2024
@k8s-triage-robot
Copy link

The Kubernetes project currently lacks enough contributors to adequately respond to all issues.

This bot triages un-triaged issues according to the following rules:

  • After 90d of inactivity, lifecycle/stale is applied
  • After 30d of inactivity since lifecycle/stale was applied, lifecycle/rotten is applied
  • After 30d of inactivity since lifecycle/rotten was applied, the issue is closed

You can:

  • Mark this issue as fresh with /remove-lifecycle stale
  • Close this issue with /close
  • Offer to help out with Issue Triage

Please 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 Dec 19, 2024
@njegosrailic
Copy link

/remove-lifecycle stale

@k8s-ci-robot k8s-ci-robot removed the lifecycle/stale Denotes an issue or PR has remained open with no activity and has become stale. label Dec 24, 2024
@shaneutt
Copy link
Member

shaneutt commented Jan 6, 2025

Hi @njegosrailic 👋

We see you've removed stale from this one, and were curious: were you interested in taking this one on?

@njegosrailic
Copy link

Hey @shaneutt, I'd be happy to take it. It's only about updating the docs, right?

@shaneutt
Copy link
Member

As I understand it that's the case @njegosrailic, thanks for being willing to take this one on!

/assign @njegosrailic

If you get stuck or need help while working on this please reach out to us here or on #sig-network-gateway-api on Kubernetes Slack and we'll support you!

@shaneutt shaneutt moved this from Triage to In Progress in Gateway API Pipeline Jan 15, 2025
@shaneutt shaneutt added this to the v1.3.0 milestone Jan 15, 2025
@shaneutt shaneutt removed the triage/needs-information Indicates an issue needs more information in order to work on it. label Jan 15, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
kind/documentation Categorizes issue or PR as related to documentation.
Projects
Status: In Progress
Development

No branches or pull requests

7 participants