Commit graph

217 commits

Author SHA1 Message Date
Manuel Alejandro de Brito Fontes
1539a24c7b Start using e2e test images from gcr.io 2020-06-27 11:36:17 -04:00
Manuel Alejandro de Brito Fontes
53fbaaf6bc Update httpexpect package name 2020-06-24 16:15:04 -04:00
Manuel Alejandro de Brito Fontes
d250b97b43 Build multi-arch images by default 2020-05-31 12:35:19 -04:00
Manuel Alejandro de Brito Fontes
b18ea267a8 Wait before any request to the ingress controller pod 2020-05-14 10:47:51 -04:00
Manuel Alejandro de Brito Fontes
a95d850384 Add support for PathTypeExact 2020-04-23 11:12:37 -04:00
Manuel Alejandro de Brito Fontes
efbb3f9fc8 Add support for IngressClass and ingress.class annotation 2020-04-22 09:15:32 -04:00
Kubernetes Prow Robot
461aa93d13
Merge pull request #5296 from SzekeresB/dev/proxy-ssl
Added proxy-ssl-location-only test.
2020-03-30 05:07:55 -07:00
Balazs Szekeres
d362475334 Added proxy-ssl-location-only test. 2020-03-30 10:30:22 +02:00
Manuel Alejandro de Brito Fontes
a46126a034 Update client-go methods to support context and and new create and delete options 2020-03-27 19:52:51 -03:00
Manuel Alejandro de Brito Fontes
d72ff0f8af
Ensure DeleteDeployment waits until there are no pods running (#5269) 2020-03-20 13:02:15 -03:00
Manuel Alejandro de Brito Fontes
7627757081
Cleanup of chart labels (#5258) 2020-03-18 08:35:29 -03:00
Balazs Szekeres
7789843bd7 Added affinity-mode tc and refactored affinity.go 2020-03-06 12:43:34 +01:00
Kubernetes Prow Robot
ad4221f8bb
Merge pull request #4963 from HowJMay/fix_typo
fix: Fix typo
2020-02-21 05:58:32 -08:00
Balazs Szekeres
4f11e99131 Added tc for limit-connection annotation 2020-02-20 16:22:06 +01:00
Manuel Alejandro de Brito Fontes
57fcbdfb73
Lint go code (#5132) 2020-02-19 21:43:14 -03:00
Manuel Alejandro de Brito Fontes
f9624cbe46 Refactor e2e tests to use testify y httpexpect 2020-02-19 19:42:50 -03:00
Manuel Alejandro de Brito Fontes
046e2d959d Replace gomega with testify 2020-02-19 19:42:50 -03:00
Manuel Alejandro de Brito Fontes
cc318cdec1
Cleanup and standardization of e2e test definitions (#5090) 2020-02-16 15:27:58 -03:00
Manuel Alejandro de Brito Fontes
37c24b0df5
Migration e2e installation to helm (#5086) 2020-02-16 11:58:37 -03:00
Manuel Alejandro de Brito Fontes
e179a24f97 Cleanup of e2e tests 2020-02-14 01:09:08 -03:00
Manuel Alejandro de Brito Fontes
2e3f128ed5 Enable grpc e2e tests 2020-02-14 01:09:08 -03:00
Manuel Alejandro de Brito Fontes
b4dba519fc Remove dependency of https://grpcb.in 2020-02-13 15:33:14 -03:00
Manuel Alejandro de Brito Fontes
4a21dc17f4 Remove cleanup helper 2020-02-13 15:33:14 -03:00
Manuel Alejandro de Brito Fontes
b37270bdde Cleanup framework package 2020-02-13 15:33:14 -03:00
Manuel Alejandro de Brito Fontes
ac2ce11739
Add echo image to avoid building and installing dependencies in each test (#5028) 2020-02-06 18:08:44 -03:00
Manuel Alejandro de Brito Fontes
b3146354d4 Refactor mirror feature 2020-02-05 10:39:55 -03:00
Manuel Alejandro de Brito Fontes
68bfbd939b Remove hard-coded timeout in e2e tests 2020-01-27 00:01:13 -03:00
Manuel Alejandro de Brito Fontes
1443ebf5a8
Cleanup of e2e docker images (#4962) 2020-01-25 17:43:21 -03:00
HowJMay
ad8a01f945 fix: Fix typo
Fix typo in comment
2020-01-25 16:03:18 +08:00
Manuel Alejandro de Brito Fontes
2af6305a4f Fix flaking e2e tests 2020-01-05 14:08:56 -03:00
Manuel Alejandro de Brito Fontes
6c92c80073 Fix sticky session for ingress without host 2020-01-02 16:52:49 -03:00
Manuel Alejandro de Brito Fontes
5c30820d1f Remove hard-coded annotation and don't use map pointers 2019-12-13 03:05:20 -03:00
Manuel Alejandro de Brito Fontes
c2550930b1 Fix e2e test flakes 2019-12-13 01:34:52 -03:00
Manuel Alejandro de Brito Fontes
0dce5be743 Migrate ingress definitions from extensions to networking.k8s.io 2019-12-12 21:25:00 -03:00
Elvin Efendi
49ba53b7b6 regression test for duplicate hsts 2019-12-12 13:45:43 -05:00
A Gardner
786a3b6862 Add support for configmap of headers to be sent to external auth service 2019-09-24 10:53:23 -04:00
Manuel Alejandro de Brito Fontes
c85450c1e7
Remove hard-coded names from e2e test and use local docker dependencies (#4502) 2019-09-01 14:16:52 -04:00
Manuel Alejandro de Brito Fontes
fcd3054f13
Lint code using staticcheck (#4471) 2019-08-23 12:08:40 -04:00
Guangming Wang
3c05cc4225
cleanup: fix typos in framework.go
Signed-off-by: Guangming Wang <guangming.wang@daocloud.io>
2019-08-17 23:16:15 +08:00
Manuel Alejandro de Brito Fontes
80bd481abb
Only support SSL dynamic mode 2019-08-13 17:33:34 -04:00
Manuel Alejandro de Brito Fontes
8a9298ae27
Add helper to extract prometheus metrics in e2e tests 2019-08-13 12:53:40 -04:00
Jeroen Schutrup
8dd912114e
Move X-Forwarded-Port variable to the location context
Resolves issue #4038 where the X-Forwarded-Port header would be set to the value of the https listening port if all of the following settings were satisfied:
- The ingress controller was started with a non-default HTTPS port set with the `--https-port` argument
- An ingress is created having:
  - the `nginx.ingress.kubernetes.io/auth-url` annotation set
  - TLS enabled

This commit solves this issue by moving the setting of the `pass_server_port` variable from the server, one level down to the location context.
2019-08-06 17:00:58 +02:00
Charle Demers
72271e9313
FastCGI backend support (#2982)
Co-authored-by: Pierrick Charron <pierrick@adoy.net>
2019-07-31 10:39:21 -04:00
Moritz Johner
23504db770 feat: auth-req caching
add a way to configure the `proxy_cache_*` [1] directive for external-auth.
The user-defined cache_key may contain sensitive information
(e.g. Authorization header).
We want to store *only* a hash of that key, not the key itself on disk.

[1] http://nginx.org/en/docs/http/ngx_http_proxy_module.html#proxy_cache_key

Signed-off-by: Moritz Johner <beller.moritz@googlemail.com>
2019-07-17 18:39:04 +02:00
Elvin Efendi
964a484b2f GetLbAlgorithm helper func for e2e 2019-07-03 08:15:41 -04:00
Manuel Alejandro de Brito Fontes
004d0c8214
Fix go imports 2019-06-30 18:58:18 -04:00
Manuel Alejandro de Brito Fontes
591887089f
Add e2e test suite to detect memory leaks in lua 2019-06-27 22:05:52 -04:00
Manuel Alejandro de Brito Fontes
dca5557c50
In case of errors running e2e tests, print the generated nginx.conf file 2019-06-23 22:51:39 -04:00
Nick Novitski
d617e5abdc Use apps/v1 api group in e2e tests 2019-05-29 12:12:45 -07:00
Nick Novitski
8ea40bbcb9 fix typo: deployement->deployment 2019-05-07 16:16:06 -07:00
Manuel Alejandro de Brito Fontes
14a9e9f3fa
Update dependencies client-go to release-11.0 and kubernetes-1.14.0 2019-03-28 20:43:18 -03:00
Per Bernhardt
8a40e82ffb Fix panic on multiple non-matching canary 2019-03-04 12:30:59 +01:00
Manuel Alejandro de Brito Fontes
5e249d3366
Refactor e2e tests to use the service ClusterIP 2019-02-24 20:04:07 -03:00
Tim Reddehase
16dcace669 do not wait for endpoints that shouldn't exist
If there are no replicas defined, do not wait
around for the respective endpoints, since none
are expected.
2019-02-03 16:53:38 +01:00
Tim Reddehase
018a1e4d94 respond with 503 when there are no endpoints
* related to:
  * https://github.com/kubernetes/ingress-nginx/issues/3070
  * https://github.com/kubernetes/ingress-nginx/issues/3335
* add a 503 test
  * test a service that starts out empty
    (a.k.a. ingress-nginx controller (re-)start)
  * test scaling up (should route traffic accordingly)
  * test scaling down to empty service
  * use custom deployments for scaling test.
* provide a fix by updating the lua table (cache) of the configured backends
  to unset the backend if there are no endpoints available.
2019-02-03 11:43:47 +01:00
Alex Kursell
ca74960905 Fix --disable-catch-all 2019-01-25 14:53:55 -05:00
Manuel Alejandro de Brito Fontes
0db09f425d
Refactor e2e tls helper 2019-01-10 20:59:49 -03:00
Kubernetes Prow Robot
8f57f9578d
Merge pull request #3586 from Shopify/disable-catch-all
Add --disable-catch-all option to disable catch-all server
2019-01-07 07:16:26 -08:00
Maxime Ginters
1678d99a03 Add --disable-catch-all option to disable catch-all server 2018-12-21 13:22:26 -05:00
Kubernetes Prow Robot
63b01370e4
Merge pull request #3548 from breunigs/integration-test-graceful-shutdown-clean
e2e test to ensure graceful shutdown does not lose requests
2018-12-21 06:33:27 -08:00
Maxime Ginters
f90881b367 Update lua configuration_data when number of controller pod change 2018-12-14 13:34:54 -05:00
Stefan Breunig
571bcfc433 e2e test to ensure graceful shutdown does not lose requests (see #3533 #3536) 2018-12-11 11:37:19 +01:00
Maxime Ginters
af460f7e15 Fix a bug with Canary becoming main server 2018-12-06 11:04:32 -05:00
Manuel Alejandro de Brito Fontes
68f344233b Fix lint issues 2018-12-05 13:28:28 -03:00
Manuel Alejandro de Brito Fontes
2fa55eabf6 Replace glog with klog 2018-12-05 13:27:55 -03:00
Manuel Alejandro de Brito Fontes
fdeeac3606
Wait for the right number of endpoints (#3497) 2018-11-30 20:17:18 -03:00
Manuel Alejandro de Brito Fontes
c3ff68e9ca
Adjust default timeout for e2e tests (#3495) 2018-11-30 18:55:53 -03:00
Manuel Alejandro de Brito Fontes
e192bbaf14
Wait for endpoints instead of pods 2018-11-29 13:06:10 -03:00
Manuel Alejandro de Brito Fontes
8a0dec9dd1 Add probes to deployments used in e2e tests 2018-11-29 10:53:48 -03:00
Manuel Alejandro de Brito Fontes
83dc4607c5
Remove e2e boilerplate 2018-10-29 22:38:15 -03:00
Manuel Alejandro de Brito Fontes
fed013ab6f Fix status update in case of connection errors 2018-10-29 13:01:41 -03:00
Fernando Diaz
b503c6bdeb Add e2e Tests for AuthTLS
Adds E2E tests for the following annotations:

- auth-tls-secret
- auth-tls-verify-depth
- auth-tls-verify-client
- auth-tls-error-page
- auth-tls-pass-certificate-to-upstream
2018-10-18 20:09:21 -05:00
Manuel Alejandro de Brito Fontes
74c2f93de6
Only support dynamic configuration 2018-10-09 22:05:45 -03:00
Fernando Diaz
527805f296 Add E2E tests for HealthCheck
Adds e2e tests for:

- upstream-max-fails
- upstream-fail-timeout
2018-10-08 13:17:19 -05:00
Wong Hoi Sing Edison
6d3e9ea7d0 Fixup #2970: Add Missing Label app.kubernetes.io/part-of: ingress-nginx
-    Add missing label `app.kubernetes.io/part-of: ingress-nginx` for deploy example
-    Update new labels for docs/deploy and docs/examples
-    Update new labels for test/e2e and test/manifests
-    Update new labels for images/nginx

Also close #3001
2018-09-05 11:48:29 +08:00
Elvin Efendi
dc952dc462 consistently fallback to default certificate when TLS is configured 2018-08-22 20:53:25 -04:00
Manuel Alejandro de Brito Fontes
77b922aa00
Remove echoheaders image from the repository (#2921) 2018-08-10 07:08:46 -04:00
Manuel de Brito Fontes
b148f113ae
Use authbind to bind privileged ports 2018-08-05 11:18:50 -04:00
Elvin Efendi
6641aa58e2 use static mode for affinity e2e test 2018-07-26 22:34:49 -04:00
k8s-ci-robot
237dcd7aa7
Merge pull request #2811 from takonomura/escape-request-uri
Escape $request_uri for external auth
2018-07-21 02:23:38 -07:00
takonomura
3ce0ad988f Add e2e test for external auth 2018-07-21 16:22:48 +09:00
Manuel de Brito Fontes
2f70c351cb Catch errors waiting for controller deployment 2018-07-19 21:06:35 -04:00
Manuel de Brito Fontes
1542a12764
Refactor controller metrics interface 2018-07-12 12:46:34 -04:00
AdamDang
616b94e584
Correct grammar mistakes 2018-06-24 23:44:42 +02:00
Lorenzo Fontana
c3b896dfbc
InfluxDB annotations e2e tests
Signed-off-by: Lorenzo Fontana <lo@linux.com>
2018-05-19 19:07:16 +02:00
k8s-ci-robot
aa256ac887
Merge pull request #2423 from diazjf/fix-2074
Resolves issue with proxy-redirect nginx configuration
2018-05-18 12:42:51 -07:00
Manuel Alejandro de Brito Fontes
f92f5f80e4
Simplify installation and e2e manifests (#2515) 2018-05-17 17:50:21 -04:00
Fernando Diaz
e224259e38 Resolves issue with proxy-redirect nginx configuration
Resolves an issue where the proxy-redirect annotations were not generating the
correct configuration possibly because of user error. This is done by only
setting the proxy_redirect if both proxy-redirect-from and proxy-redirect-to
have valid values. Also adds the e2e tests.

Fixes #2074
2018-05-17 11:22:31 -05:00
Manuel de Brito Fontes
ff3e182350 Add support for grpc_set_header 2018-05-17 08:35:11 -04:00
Antoine Cotten
553df8a0cc
Refactor e2e framework for TLS tests 2018-04-27 23:24:22 +02:00
Antoine Cotten
c93f39f019
Bump echoserver version used in e2e test (1.10) 2018-04-27 23:24:22 +02:00
Manuel de Brito Fontes
9bf553559c Apply gometalinter suggestions 2018-04-25 18:53:49 -03:00
Manuel de Brito Fontes
42e0c0abf7
Improve speed of e2e tests 2018-04-20 00:04:34 -03:00
Manuel de Brito Fontes
62a80a39ad
Remove most of the time.Sleep from the e2e tests 2018-04-19 17:48:50 -03:00
Andrew Louis
444914b764 Move the resetting logic into framework
Stylistic fixes based on feedback
2018-04-18 11:48:22 -04:00
Andrew Louis
19337f05fb Introduce ConfigMap updating helpers into e2e/framework and retain default nginx-configuration state between tests
Group sublogic
2018-04-17 15:08:26 -04:00
Elvin Efendi
ee46f486c7 e2e tests for dynamic configuration and Lua features and a bug fix (#2254)
* e2e tests for dynamic configuration and Lua features

* do not rely on force reload to dynamically configure when reload is needed

* fix misspelling

* skip dynamic configuration in the first template rendering

* dont error on first sync
2018-04-01 17:09:27 -03:00
Antoine Cotten
86a3a63488 Include tests in golint checks, fix warnings (#2180) 2018-03-07 08:37:30 -08:00
Manuel de Brito Fontes
62622f6516 Clenup tests 2018-01-23 21:11:56 -03:00
Manuel de Brito Fontes
12ec0475c0 Fix SSL passthrough 2018-01-23 19:34:33 -03:00
Manuel de Brito Fontes
1ec0a60746 Add container flag where is required to run the command 2018-01-23 19:34:33 -03:00
Manuel de Brito Fontes
c5df325c98 Add missing test framework helper 2018-01-18 16:32:09 -03:00
Manuel Alejandro de Brito Fontes
807932259e
If server_tokens is disabled remove the Server header (#1903)
* If server_tokens is disabled remove the Server header

* Add server-tokens tests

* Fix tests
2018-01-17 10:26:53 -02:00
Manuel Alejandro de Brito Fontes
f732b4ea2f
Improve speed of tests execution (#1861) 2017-12-27 08:16:59 -03:00
Manuel Alejandro de Brito Fontes
49238d0e67
Merge pull request #1786 from oilbeater/fix/type
fix: some typo.
2017-12-04 10:09:50 -03:00
Manuel de Brito Fontes
a4f67c0853 Fix verification of boilerplate, style and file headers 2017-12-03 13:58:23 -03:00
Mengxin Liu
9cf0b11fc7 fix: some typo. 2017-12-02 13:47:04 +08:00
Manuel Alejandro de Brito Fontes
82b4d2a0af
Merge pull request #1231 from canhnt/sticky-path-rewriter
Add tests to cover sticky cookie and rewrite-target annotations
2017-11-23 20:08:04 -03:00
Canh Ngo
d37722b0c7 Added e2e test for sticky cookie and redirection 2017-11-23 22:30:46 +01:00
Manuel de Brito Fontes
12f118992f Cleanup of e2e helpers 2017-11-23 16:53:00 -03:00
Manuel de Brito Fontes
b6dfe3d54d Improve e2e checks 2017-11-22 14:19:15 -03:00
Manuel de Brito Fontes
a36cd10041 Do not update a secret not referenced by ingress rules 2017-11-14 17:50:08 -03:00
Mengxin Liu
b3cec74e79 fix: Core() is deprecated use CoreV1() instead. 2017-11-13 23:45:01 +08:00
Manuel de Brito Fontes
a858c549d9 Add e2e tests for auth annotation 2017-11-12 20:08:32 -03:00
Manuel de Brito Fontes
4c1c707e9c Add tests for alias annotation 2017-11-11 14:53:44 -03:00
Manuel de Brito Fontes
311d286a34 Fix license in header of files 2017-11-05 18:35:46 -03:00
Manuel de Brito Fontes
601fb7dacf Add e2e tests 2017-10-20 20:33:48 -03:00