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

disable path overlap validation flag #10943

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Commits on Nov 26, 2024

  1. Add disable path overlap validation flag

      ## What this PR does / why we need it:
    
    In kubernetes#5651 there was a
    request to throw an error when there are two ingresses defining the same
    host and path, which was implemented as part of the validation webhook.
    
      Despite of this there are clear rules on the ingress controller that
    describes what the controller would do in [such situation (the oldest
    rule wins)](https://github.com/kubernetes/ingress-nginx/blob/main/docs/how-it-works.md?plain=1#L27)
    
      Some users are relying on this validation behaviour to prevent
    misconfigurations, but there are use cases where allowing it, maybe
    temporarily, is helpful. Those use cases includes:
    
      - Splitting large ingresses objects in smaller ones kubernetes#10820
      - Moving ingress objects between namespaces without downtime (like when you transfer an ingress from team A that owns namespace A to team B that owns namespace B) kubernetes#10090
    
    <!--- What types of changes does your code introduce? Put an `x` in all the boxes that apply: -->
    
      ## Types of changes
    
    - [ ] Bug fix (non-breaking change which fixes an issue)
    - [X] New feature (non-breaking change which adds functionality)
    - [ ] CVE Report (Scanner found CVE and adding report)
    - [ ] Breaking change (fix or feature that would cause existing functionality to change)
    - [ ] Documentation only
    
      ## Which issue/s this PR fixes
    
    It might help with kubernetes#10820
    
    <!--- Please describe in detail how you tested your changes. -->
    <!--- Include details of your testing environment, and the tests you ran to -->
    <!--- see how your change affects other areas of the code, etc. -->
    
      ## How Has This Been Tested?
    
    building an image and testing it in a local cluster, will update later
    with some real life scenarios
    
    <!--- Go over all the following points, and put an `x` in all the boxes that apply. -->
    <!--- If you're unsure about any of these, don't hesitate to ask. We're here to help! -->
      ## Checklist:
    
    - [X] My change requires a change to the documentation.
    - [ ] I have updated the documentation accordingly.
    - [X] I've read the [CONTRIBUTION](https://github.com/kubernetes/ingress-nginx/blob/main/CONTRIBUTING.md) guide
    - [X] I have added unit and/or e2e tests to cover my changes.
    - [X] All new and existing tests passed.
    
    Change-Id: I9d4124d1c36876b06d63100cd10988eaf2f41db9
    Fsero committed Nov 26, 2024
    Configuration menu
    Copy the full SHA
    e9664c2 View commit details
    Browse the repository at this point in the history