Commit graph

1059 commits

Author SHA1 Message Date
Fabián Sellés Rosa
9940cbb571
Merge e9664c2566 into de1a4c463c 2025-02-17 09:50:33 -08:00
Eng Zer Jun
68a35a8a12
Go: Replace golang.org/x/exp/slices with slices. (#12779)
Signed-off-by: Eng Zer Jun <engzerjun@gmail.com>
2025-02-03 05:26:57 -08:00
James Strong
698c3c0df1
Annotations: Deny newlines. (#12640) 2025-01-10 15:24:31 -08:00
Jurgen Goelen
29d1e2014b
Annotations: Reload on custom header changes. (#11709) 2025-01-09 12:36:31 -08:00
Boris Kreitchman
d1dc3e827f
Config/Annotations: Add proxy-busy-buffers-size. (#12433) 2024-12-05 18:10:00 +00:00
Fabián Sellés Rosa
e9664c2566 Add disable path overlap validation flag
## What this PR does / why we need it:

In https://github.com/kubernetes/ingress-nginx/issues/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 https://github.com/kubernetes/ingress-nginx/issues/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) https://github.com/kubernetes/ingress-nginx/issues/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 #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
2024-11-26 15:58:34 +01:00
Elizabeth Martin Campos
0a927b65af
Allow CORS Access-Control-Allow-Origin: null (#12402) 2024-11-24 17:32:55 +00:00
Johannes Rudolph
a5cd15d74a Controller: Fail annotation parsing fast and report errors. (#11740) 2024-11-21 00:54:39 +01:00
chriss-de
698960e9b7
Config/Annotations: Add relative-redirects. (#12161) 2024-11-13 21:02:48 +00:00
Marco Ebert
7f0350b4b3
Auth TLS: Add _ to redirect RegEx. (#12325) 2024-11-07 20:32:44 +00:00
James Strong
ca81d5bcdd
Auth TLS: Improve redirect RegEx. (#12249) 2024-11-07 00:19:29 +00:00
Aleksa Cukovic
ac23d4069b
Config: Fix panic on invalid lua-shared-dict. (#12281) 2024-11-02 21:21:26 +00:00
Ricardo Katz
7356c4f40f
Lua: Extract external auth into file. (#12250)
Co-authored-by: Marco Ebert <marco_ebert@icloud.com>
2024-10-29 13:22:54 +00:00
Stepan Paksashvili
dc3acbd786
[fix] fix nginx temp configs cleanup (#11569)
Signed-off-by: Stepan Paksashvili <stepan.paksashvili@flant.com>
2024-10-22 16:38:53 +01:00
alexey-gavrilov-flant
9e6c40664f
Metrics: Fix namespace in nginx_ingress_controller_ssl_expire_time_seconds. (#10274) 2024-09-17 20:12:43 +01:00
Ricardo Katz
6510535ae0
NGINX: Remove inline Lua from template. (#11806) 2024-09-08 18:48:12 -03:00
Nathan Baulch
4f23049374
Fix minor typos (#11935) 2024-09-06 15:59:43 +01:00
Adam Sunderland
2cec24143d
Allow any protocol for cors origins (#11153)
Co-authored-by: Ricardo Katz <rikatz@users.noreply.github.com>
2024-08-31 16:26:45 +01:00
James Strong
d4c49112a4
Annotations: Allow commas in URLs. (#11882)
Signed-off-by: James Strong <strong.james.e@gmail.com>
2024-08-26 23:39:30 +02:00
Marco Ebert
e9f6c8e8f2
Security: Follow-up on recent changes. (#11874) 2024-08-26 21:09:16 +01:00
Jon Carl
034c3ccad4
Metrics: Add --metrics-per-undefined-host argument. (#11818)
Signed-off-by: Jon Carl <grounded042@joncarl.com>
2024-08-26 20:09:11 +01:00
Ricardo Katz
21cd966d1c
Remove global-rate-limit feature (#11851) 2024-08-25 21:03:29 +01:00
lou-lan
24450ea509
Add custom code handling for temporal redirect (#10651)
Co-authored-by: Ricardo Katz <rikatz@users.noreply.github.com>
2024-08-23 21:10:20 +01:00
Sebastian Rabenhorst
ffee96c58c
Add native histogram support for histogram metrics (#9971)
Co-authored-by: Ricardo Katz <rikatz@users.noreply.github.com>
2024-08-23 17:32:48 +01:00
Ricardo Katz
7b4e4e2fa1
Enable security features by default (#11819) 2024-08-23 04:45:51 +01:00
Ricardo Katz
3bec99ecfc
Remove 3rd party lua plugin support (#11821) 2024-08-21 14:54:29 +01:00
Ricardo Katz
cf8e374290
Auto-generate annotation docs (#11820) 2024-08-18 16:13:18 -07:00
chengjoey
eee2760907
Metrics: Remove ingress_upstream_latency_seconds. (#11795)
Signed-off-by: joey <zchengjoey@gmail.com>
2024-08-16 01:53:12 -07:00
chengjoey
e5c29d1ce4
Controller: Fix panic in alternative backend merging. (#11789) 2024-08-13 01:37:37 -07:00
Jintao Zhang
c102e0b930
Perform some cleaning operations on line breaks. (#11720)
Co-authored-by: André Storfjord Kristiansen <33384479+dev-bio@users.noreply.github.com>
2024-08-02 06:37:45 -07:00
Jintao Zhang
1a13bf5c0d
Missing anchors in regular expression. (#11717)
Co-authored-by: André Storfjord Kristiansen <33384479+dev-bio@users.noreply.github.com>
2024-08-01 15:56:56 -07:00
Chakrit Wichian
e1d81b7818
Docs: Clarify from-to-www redirect direction. (#11682)
* docs: Clarify from-to-www redirect direction.

This was not clear to me when reading the docs whether the ingress will
redirect from non-www to with-www or the reverse. It's also not very
clear from just grepping around the codebase. I found the answer by
reading from this reddit link:

https://www.reddit.com/r/kubernetes/comments/pbl033/k8s_ingress_redirecting_www_to_nonwww_domains/

So, to save time for other people doing the same, which I assumes is a
lot of people since it's a common scenario, this little revision in the
docs is warranted.

* Docs: Implement suggestion.

---------

Co-authored-by: Marco Ebert <marco_ebert@icloud.com>
2024-07-29 01:28:45 -07:00
dependabot[bot]
ee5d40a6d2
Bump the all group with 2 updates (#11672)
* Bump the all group with 2 updates

Bumps the all group with 2 updates: [github.com/ncabatoff/process-exporter](https://github.com/ncabatoff/process-exporter) and [k8s.io/component-base](https://github.com/kubernetes/component-base).


Updates `github.com/ncabatoff/process-exporter` from 0.8.2 to 0.8.3
- [Release notes](https://github.com/ncabatoff/process-exporter/releases)
- [Changelog](https://github.com/ncabatoff/process-exporter/blob/master/cloudbuild.release.yaml)
- [Commits](https://github.com/ncabatoff/process-exporter/compare/v0.8.2...v0.8.3)

Updates `k8s.io/component-base` from 0.30.2 to 0.30.3
- [Commits](https://github.com/kubernetes/component-base/compare/v0.30.2...v0.30.3)

---
updated-dependencies:
- dependency-name: github.com/ncabatoff/process-exporter
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: all
- dependency-name: k8s.io/component-base
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: all
...

Signed-off-by: dependabot[bot] <support@github.com>

* Metrics/Process: Adapt to API change in `ncabatoff/process-exporter`.

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Marco Ebert <marco_ebert@icloud.com>
2024-07-22 05:12:42 -07:00
dependabot[bot]
4212af3143
Bump github.com/prometheus/common from 0.54.0 to 0.55.0 (#11522)
* Bump github.com/prometheus/common from 0.54.0 to 0.55.0

Bumps [github.com/prometheus/common](https://github.com/prometheus/common) from 0.54.0 to 0.55.0.
- [Release notes](https://github.com/prometheus/common/releases)
- [Changelog](https://github.com/prometheus/common/blob/main/RELEASE.md)
- [Commits](https://github.com/prometheus/common/compare/v0.54.0...v0.55.0)

---
updated-dependencies:
- dependency-name: github.com/prometheus/common
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* Go: Fix build.

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Marco Ebert <marco_ebert@icloud.com>
2024-07-16 06:07:00 -07:00
wdullaer
bcb98c0c8d
fix: Ensure changes in MatchCN annotation are detected (#11173) 2024-07-01 13:48:24 -07:00
Andrea Scarpino
57d96128b1
Rename variable to fix typo (#11395) 2024-05-30 02:39:08 -07:00
Long Wu Yuan
5639979cb5
removed tlsv1 & tlsv1.1 (#11343) 2024-05-28 11:37:30 -07:00
Rafael da Fonseca
4e11074323
Allow configuring nginx worker reload behaviour, to prevent multiple concurrent worker reloads which can lead to high resource usage and OOMKill (#10884)
* feat: allow configuring nginx worker reload behaviour, to prevent multiple concurrent worker reloads

Signed-off-by: Rafael da Fonseca <rafael.fonseca@wildlifestudios.com>

* appease linter, remove unnecessary log line

Signed-off-by: Rafael da Fonseca <rafael.fonseca@wildlifestudios.com>

* Flip to using a positive behaviour flag instead of negative

Signed-off-by: Rafael da Fonseca <rafael.fonseca@wildlifestudios.com>

* Update helm-docs

Signed-off-by: Rafael da Fonseca <rafael.fonseca@wildlifestudios.com>

* Avoid calling GetBackendConfiguration() twice, use clearer name for helm chart option

Signed-off-by: Rafael da Fonseca <rafael.fonseca@wildlifestudios.com>

* Fix helm-docs ordering

Signed-off-by: Rafael da Fonseca <rafael.fonseca@wildlifestudios.com>

---------

Signed-off-by: Rafael da Fonseca <rafael.fonseca@wildlifestudios.com>
2024-05-14 14:45:25 -07:00
cuiyourong
7379b80459
Fix function name in comment (#11296)
Signed-off-by: cuiyourong <cuiyourong@gmail.com>
2024-04-23 04:27:06 -07:00
Tom Hayward
48fbdfe3ba
fix path in file changed detected message (#11271)
* fix path in file changed detected message

Signed-off-by: Tom Hayward <thayward@infoblox.com>

* fix typo in log message

* explain code per review comments

---------

Signed-off-by: Tom Hayward <thayward@infoblox.com>
2024-04-19 08:41:08 -07:00
racequite
e5b6636903
chore: fix function names in comment (#11280)
Signed-off-by: racequite <quiterace@gmail.com>
2024-04-19 02:25:09 -07:00
Christian Groschupp
1f4ee0e235
feat: add annotation to allow to add custom response headers (#9742)
* add custom headers

Signed-off-by: Christian Groschupp <christian@groschupp.org>

* add tests

Signed-off-by: Christian Groschupp <christian@groschupp.org>

* add docs

* update copyright

* change comments

* add e2e test customheaders

* add custom headers validation

* remove escapeLiteralDollar filter

* validate value in custom headers

* add regex for header value

* fix annotation test

* Revert "remove escapeLiteralDollar filter"

This reverts commit ab48392b60dee4ce146a4c17e046849f9633c7fb.

* add annotationConfig

* fix test

* fix golangci-lint findings

* fix: add missung exp module

---------

Signed-off-by: Christian Groschupp <christian@groschupp.org>
2024-04-09 03:25:22 -07:00
Tony Li
b4cae70b52
remove _ssl_expire_time_seconds metric by identifier (#9706)
Signed-off-by: xiayu.lyt <xiayu.lyt@alibaba-inc.com>
2024-04-08 12:32:21 -07:00
Matheus Fidelis
7c8af4928b
Controller: Make Leader Election TTL configurable. (#11142)
* feature(leader_ttl): feature to customize ttl to leader be re-elected

* fix(review): docs
2024-03-28 06:36:23 -07:00
Ramon Borges
c0b3294bf4
Add GRPC Buffer Size to the Configmap (#11155)
* feat: add grpc buffer size in the nginx template

* feat: add grpc buffer size in the configmap struct

* feat: add test for GRCP buffer size configuration in the configmap

* chore: add documentation for the grcp buffer size configuration

* fix: fix the copyright year of the test

* fix: fix import order

* fix: fix ignore for the linter - reason was missing

* chore: seems like we don't need to ignore the error handling
2024-03-24 15:07:28 -07:00
Matheus Fidelis
3c4e78e6b7
feature(geoip2_autoreload): Enable GeoIP2 auto_reload config (#11079)
* feature(geoip2_autoreload): GeoIP Autoreload

feature(geoip2_autoreload): fix lint

feature(geoip2_autoreload): changing flag interval

feature(geoip2_autoreload): tests - up and running

feature(geoip2_autoreload): tests - up and running

feature(geoip2): testing

feature(geoip2): remove typo

feature(geoip2_autoreload): fixing tests

* feature(geoip2_autoreload): working

* feature(geoip2_autoreload): including tests on geoip2 test file
2024-03-19 07:32:15 -07:00
Luca Berneking
a2f67e2ba6
Fix admission controller logging of admissionTime and testedConfigurationSize (#11089) 2024-03-12 06:51:08 -07:00
Carlos Tadeu Panato Junior
12fbe9b163
golangci-lint update, ci cleanup, group dependabot updates (#11071)
* bump golangci-lint to v1.56.x

Signed-off-by: cpanato <ctadeu@gmail.com>

* cleanup empty lines

Signed-off-by: cpanato <ctadeu@gmail.com>

* group dependabot updates

Signed-off-by: cpanato <ctadeu@gmail.com>

* run on job changes as well

Signed-off-by: cpanato <ctadeu@gmail.com>

* remove deprecated checks

Signed-off-by: cpanato <ctadeu@gmail.com>

* fix lints and format

Signed-off-by: cpanato <ctadeu@gmail.com>

---------

Signed-off-by: cpanato <ctadeu@gmail.com>
2024-03-07 02:39:53 -08:00
Matheus Fidelis
9b63559cbb
feature(leader_election): flag to disable leader election feature on controller (#11064) 2024-03-06 05:59:22 -08:00
Ricardo Katz
fa0bf81984
Bump go libraries (#11023)
* Bump go libraries

* Fix update codegen execution

* Fix errors on klog

* Fix gzip test

* Bump libraries on webhook certgen

* Fix webhook-certgen compilation
2024-02-27 09:52:42 -08:00