Commit graph

657 commits

Author SHA1 Message Date
Saumya
6ffaef32ab
Bump github.com/onsi/ginkgo/v2 from 2.6.0 to 2.6.1 (#9432) 2022-12-21 00:43:25 -08:00
Saumya
a0dbbd2fb1
Bump github.com/onsi/ginkgo/v2 from 2.5.1 to 2.6.0 (#9408)
Bump github.com/onsi/ginkgo/v2 from 2.5.1 to 2.6.0

Bump github.com/onsi/ginkgo/v2 from 2.5.1 to 2.6.0
2022-12-17 03:37:41 -08:00
Jan-Otto Kröpke
d7674e4323
feat(helm): Optionally use cert-manager instead admission patch (#9279) 2022-12-07 04:16:38 -08:00
Johannes Würbach
3aa53aaf5b
fix: missing CORS headers when auth fails (#9251) 2022-12-04 17:49:01 -08:00
LongWuYuan
1e08519a73 fixed multiple ginkgo versions 2022-11-25 06:09:11 +05:30
Ricardo Katz
c1413e6079
Validate ingress path fields (#9309)
* Validate characters in path fields

* Add e2e tests for path validation

* Fix review comments
2022-11-17 04:24:40 -08:00
Tomas Hulata
490ecffc52
fix svc long name (#9245)
Signed-off-by: tombokombo <tombo@sysart.tech>

Signed-off-by: tombokombo <tombo@sysart.tech>
2022-11-05 14:22:15 -07:00
LR1990
c9faac2222
fix e2e resource leak when ginkgo exit before clear resource (#9103) 2022-10-12 12:45:02 -07:00
James Strong
93df796767
upgrade to golang 1.19.2 (#9124)
* upgrade to golang 1.19.2

Signed-off-by: James Strong <strong.james.e@gmail.com>

* update e2e testing to 1.25 kind

Signed-off-by: James Strong <strong.james.e@gmail.com>

Signed-off-by: James Strong <strong.james.e@gmail.com>
2022-10-12 12:39:00 -07:00
Ricardo Katz
2645b5c0e4
Remove deprecated net dependency (#9110) 2022-10-04 08:06:16 -07:00
Nate Campbell
7cb91ef9c1
Support none keyword in log-format escape (#8692)
* Support none keyword in log-format escape


## What this PR does / why we need it:
ingress-nginx does not support disabling escaping of special characters in the nginx log. This PR exposes the setting to support that functionality.

## Types of changes
- [ ] Bug fix (non-breaking change which fixes an issue)
- [x] New feature (non-breaking change which adds functionality)
- [ ] Breaking change (fix or feature that would cause existing functionality to change)
- [ ] Documentation only

## Which issue/s this PR fixes
<!--
(optional, in `fixes #<issue number>` format, will close that issue when PR gets merged):

fixes #
-->

## How Has This Been Tested?
Followed the [getting-started](96b6228a6b/docs/developer-guide/getting-started.md) guide. Used ppa:longsleep/golang-backports on WSL Ubuntu to establish a golang-1.18 environment with latest docker and recommended kind. Built the dev-env successfully; had issues with make test, but they are entirely unrelated to anything I touched. Ultimate test was
```
FOCUS=log-format make kind-e2e-test
...
Ginkgo ran 1 suite in 6m29.7437865s
Test Suite Passed
```

## Checklist:
<!--- 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! -->
- [x] My change requires a change to the documentation.
- [x] 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 tests to cover my changes.
- [x] All new and existing tests passed.

I did not update docs/e2e-tests.md.

* gofmt -s ./internal/ingress/controller/config/config.go
2022-09-30 08:00:29 -07:00
Matthias Neugebauer
26fe69cb47
Add annotation for setting sticky cookie domain (#9088)
This adds the new annotation `nginx.ingress.kubernetes.io/session-cookie-domain`
for setting the cookie `Domain` attribute of the sticky cookie.

Signed-off-by: Matthias Neugebauer <mtneug@mailbox.org>

Signed-off-by: Matthias Neugebauer <mtneug@mailbox.org>
2022-09-28 07:28:37 -07:00
Amim Knabben
12c9f00931
Adding a simpler interface for the HTTP request library. (#8862) 2022-09-05 04:02:36 -07:00
Ricardo Katz
bfd44ab83e
Add v1.25 test and reduce amount of e2e tests (#9018) 2022-09-04 16:22:36 -07:00
Harpreet singh
69318355b1
Fix defaultServer backend update for Ingress with defaultBackend. (#8825) 2022-08-22 16:26:23 -07:00
Jintao Zhang
730174f73d
feat: using LeaseLock for election (#8921)
We removed the use of configmap as an election lock, so we will use the
Lease API to complete the election.

Before this, we used `MultiLock` to facilitate smooth migration of
existing users of ingress-nginx from configmap to LeaseLock.

Signed-off-by: Jintao Zhang <zhangjintao9020@gmail.com>

Signed-off-by: Jintao Zhang <zhangjintao9020@gmail.com>
2022-08-22 15:38:16 -07:00
Long Wu Yuan
3a450e0468
updated testrunner and testecho images (#8948) 2022-08-22 11:24:29 -07:00
Ricardo Katz
4508493dfe
Clean old code and move helper functions (#8946) 2022-08-21 14:21:51 -07:00
Long Wu Yuan
a98c637872
bump baseimage alpine to v3.16.2 for zlib CVE fix (#8939) 2022-08-18 19:30:09 -07:00
Long Wu Yuan
0f61d9d0dc
updated to new images built today (#8896) 2022-08-08 11:40:19 -07:00
Lien Li
5b0cc8edca
migrate ginkgo to v2 (#8826)
* Migrate ginkgo to v2

* Update test/e2e/annotations/ipwhitelist.go

Co-authored-by: Jintao Zhang <tao12345666333@163.com>

* Update test/e2e/annotations/modsecurity/modsecurity.go

Co-authored-by: Jintao Zhang <tao12345666333@163.com>

* Update test/e2e/settings/access_log.go

Co-authored-by: Jintao Zhang <tao12345666333@163.com>

* remove unnecessary blank line

* re-order packages

* less change

Co-authored-by: Jintao Zhang <tao12345666333@163.com>
2022-07-31 09:16:28 -07:00
Long Wu Yuan
c5766dc011
changed baseimage sha & bumped ginkgo to 2.1.4 in test (#8860) 2022-07-23 18:54:57 -07:00
James Strong
e1a16f6e74
Update nginx base image in one place (#8400)
* update files to use one base image file

Signed-off-by: James Strong <strong.james.e@gmail.com>

* add chart test as well

Signed-off-by: James Strong <strong.james.e@gmail.com>

* update e2e-test image building

Signed-off-by: James Strong <strong.james.e@gmail.com>

* update e2e base image arg

Signed-off-by: James Strong <strong.james.e@gmail.com>

* add current e2e so test run

Signed-off-by: James Strong <strong.james.e@gmail.com>

* working on fixing build

* getting dev-env and make release to work

* test

* i think buildx is working on mac

* updates

* why docker for mac and linux cli differ

* fix target arch

* fix target arch

* fix loag issue

* fix issue

* update the chroot docker file

* fix docker base build

* mac is the issue

* env not getting to the e2e deployment.go file

* fix pull issue

* fix pull issue

* move test scripts into test folder

* clean up ci

* updates for PR

* remove unnesscary var
2022-07-08 09:27:47 -07:00
Long Wu Yuan
e1a0701802
change sha e2etestrunner and echoserver (#8740) 2022-06-26 07:48:59 -07:00
Long Wu Yuan
3348cd71e0
updated baseimage sha (#8737) 2022-06-24 09:44:57 -07:00
Long Wu Yuan
96b6228a6b
changed k8s.gcr.io to registry.k8s.io (#8667) 2022-06-10 04:01:52 -07:00
Long Wu Yuan
2fc8a62d1a
removed unavailable flag (#8681) 2022-06-09 10:03:42 -07:00
Ricardo Katz
bd1eb048b7
Improve path rule (#8623)
* Improve path rule

* Add nginx configuration tests

* Revert framework changes

* Add test to patched directives

* Fix root conf test

* Add comment in new function
2022-05-26 06:23:24 -07:00
Ricardo Katz
4dfb3f2e9a
Fix tls1.0 test (#8632)
* Fix tls1.0 test

* fix algorithm
2022-05-25 17:49:22 -07:00
Ricardo Katz
ac60ed85ab
Bump nginx image to version without core directives (#8625) 2022-05-24 06:10:06 -07:00
Maksim Nabokikh
2c27e66cc7
feat: always set auth cookie (#8213)
* feat: always set auth cookie

Signed-off-by: m.nabokikh <maksim.nabokikh@flant.com>

* feat: Add annotation to always set auth cookie

* Add annotation
* Add global configmap key
* Provide unit tests and e2e tests
* Fix e2e documentation autogen script

Signed-off-by: m.nabokikh <maksim.nabokikh@flant.com>

* Regenerate e2e tests

Signed-off-by: m.nabokikh <maksim.nabokikh@flant.com>
2022-05-19 15:27:53 -07:00
Long Wu Yuan
ec1b01092e
added debug commands (#8553) 2022-05-06 04:09:05 -07:00
kszafran
3230638160
Update default allowed CORS headers (#8459)
X-CustomHeader looks more like an example than a header we would want to
accept in production. Added Range as a useful header that enables
operations on resources that can be fetched in chunks.
2022-05-04 05:11:51 -07:00
Long Wu Yuan
2e1a4790bb
changed nginx base img tag to img built with alpine3.14.6 (#8479) 2022-04-15 21:37:10 -07:00
Chris Shino
f9372aa495
added new auth-tls-match-cn annotation (#8434)
* added new auth-tls-match-cn annotation

* added few more tests
2022-04-15 12:59:10 -07:00
Ricardo Katz
81c2afd975
update base images and protobuf gomod (#8478) 2022-04-15 12:53:12 -07:00
sskserk
d4b9b486e6
Upstream keepalive time (#8319)
* nginx 1.19.10 keepalive_time parameter

* nginx v1.19.10 base image

* keepalive_time documentation

* base image

* restore base image

* e2e test

* replace default value in test
2022-04-15 04:09:10 -07:00
Ricardo Katz
89ed571d2a
Implement object deep inspector (#8456) 2022-04-11 07:06:07 -07:00
Ricardo Katz
5737f16663
Update dependencies (#8455)
* Update more dependencies

* Fix e2e test for new ProbeHandler
2022-04-10 08:58:05 -07:00
Ricardo Katz
3def835a6a
Jail/chroot nginx process inside controller container (#8337)
* Initial work on chrooting nginx process

* More improvements in chroot

* Fix charts and some file locations

* Fix symlink on non chrooted container

* fix psp test

* Add e2e tests to chroot image

* Fix logger

* Add internal logger in controller

* Fix overlay for chrooted tests

* Fix tests

* fix boilerplates

* Fix unittest to point to the right pid

* Fix PR review
2022-04-08 21:48:04 -07:00
Gabor Lekeny
83ce21b4dd
Add keepalive support for auth requests (#8219)
* Add keepalive support for auth requests

* Fix typo

* Address PR comments

* Log warning when auth-url contains variable in its host:port
* Generate upstream name without replacing dots to underscores in server name
* Add comment in the nginx template when the keepalive upstream block is referenced

* Workaround for auth_request module ignores keepalive in upstream block

* The `auth_request` module does not support HTTP keepalives in upstream block:
  https://trac.nginx.org/nginx/ticket/1579
* As a workaround we use ngx.location.capture but unfortunately it does not
  support HTTP/2 so `use-http2` configuration parameter is needed.

* Handle PR comments

* Address PR comments

* Handle invalid values for int parameters

* Handle PR comments

* Fix e2e test
2022-04-08 20:22:04 -07:00
Aditya Kamath
f1cb2b73ca
update nginx base image to new alpine 3.14.4 build - try 2 (#8409)
* update nginx base image to new alpine 3.14.4 build

Signed-off-by: James Strong <strong.james.e@gmail.com>

* update test image

Signed-off-by: James Strong <strong.james.e@gmail.com>

* Update nginx base image

Signed-off-by: Aditya Kamath <theunrealgeek@gmail.com>

Co-authored-by: James Strong <strong.james.e@gmail.com>
2022-03-31 13:43:04 -07:00
Ana Claudia Riekstin
ba7f295538
Fix 50% split between canary and mainline tests (#8315)
* fix 50% canary test

* fix past tense

* after code review

* revert go.sum and go.mod

* run gofmt
2022-03-16 06:25:49 -07:00
Maksim Nabokikh
1e2ce80846
fix: deny locations with invalid auth-url annotation (#8256)
* fix: deny locations with invalid auth-url annotation

Signed-off-by: m.nabokikh <maksim.nabokikh@flant.com>

* Delete duplicate test

Signed-off-by: m.nabokikh <maksim.nabokikh@flant.com>
2022-03-01 02:13:51 -08:00
Elvin Efendi
04035cc1c2
Do not validate ingresses with unknown ingress class in admission webhook endpoint. (#8221) 2022-02-06 12:28:51 -08:00
Damien Mathieu
dcd552ceb5
use functional options to reduce number of methods creating an EchoDeployment (#8199) 2022-02-02 05:12:22 -08:00
Jintao Zhang
53ac0ddd42
Using Go install for misspell (#8191)
* chore: using go install misspell

Signed-off-by: Jintao Zhang <zhangjintao9020@gmail.com>

* chore: fix typo

Signed-off-by: Jintao Zhang <zhangjintao9020@gmail.com>
2022-01-26 18:52:50 -08:00
Ricardo Katz
38c73233f3
Remove deprecated libraries, update other libs, add ci v1.23 (#8118) 2022-01-09 16:29:12 -08:00
Tobias Salzmann
ce9deaa332
Add stream-snippet as a ConfigMap and Annotation option (#8029)
* stream snippet

* gofmt -s
2021-12-23 11:46:30 -08:00
Moh Basher
fea7fed6da
Disable default modsecurity_rules_file if modsecurity-snippet is specified (#8021)
* Disabled default modsecurity_rules_file if modsecurity-snippet is specifed

The default modsecurity_rules_file overwrites the ModSecurity-snippet if it is specified with custom config settings like "SecRuleEngine On". This will not let Modsecurity be in blocking mode even if "SecRuleEngine On" is specified in the ModSecurity-snippet configuration

* Remove unnecessary comments

Only have the default Modsecurity conf settings in case Modsecurity configuration snippet is not present and remove unnecessary comments

* Fixed modsecurity default file only if Modsecurity snippet present

Fixed if condition  Modsecurity snippet present have modsecurity default config file

* Added e2e test to disabling modsecurity conf

Added e2e in case modsecurity-snippet enabled to disable settings in default modsecurity.conf

* Validate writing to a different location

Validate also modsecurity to write to a different location instead of the default directory

* Fixed the formatting

* Fixed if empty ModsecuritySnippet

* Fixed ModsecuritySnippet condition

* Fixed the condition also in ingress controller template

* Removed the default config condition  in ingress controller template

* Fixed the default config condition in ingress controller template

* Fixed pull-ingress-nginx-test

* Revert "Fixed the default config condition in ingress controller template"

This reverts commit 9d38eca40f.

* Revert template_test

* Adjusted the formating %v
2021-12-23 03:34:38 -08:00