ingress-nginx/e2e-tests/index.html

9 lines
100 KiB
HTML

<!doctype html><html lang=en class=no-js> <head><meta charset=utf-8><meta name=viewport content="width=device-width,initial-scale=1"><link href=https://kubernetes.github.io/ingress-nginx/e2e-tests/ rel=canonical><link rel="shortcut icon" href=../assets/images/favicon.png><meta name=generator content="mkdocs-1.1.2, mkdocs-material-6.2.4"><title>e2e test suite for [NGINX Ingress Controller](https://github.com/kubernetes/ingress-nginx/tree/master/) - NGINX Ingress Controller</title><link rel=stylesheet href=../assets/stylesheets/main.15aa0b43.min.css><link rel=stylesheet href=../assets/stylesheets/palette.75751829.min.css><meta name=theme-color content=#009485><link rel=preconnect href=https://fonts.gstatic.com crossorigin><link rel=stylesheet href="https://fonts.googleapis.com/css?family=Roboto:300,400,400i,700%7CRoboto+Mono&display=fallback"><style>body,input{font-family:"Roboto",-apple-system,BlinkMacSystemFont,Helvetica,Arial,sans-serif}code,kbd,pre{font-family:"Roboto Mono",SFMono-Regular,Consolas,Menlo,monospace}</style><link rel=stylesheet href=../extra.css><script>window.ga=window.ga||function(){(ga.q=ga.q||[]).push(arguments)},ga.l=+new Date,ga("create","UA-118407822-1","kubernetes.github.io"),ga("set","anonymizeIp",!0),ga("send","pageview"),document.addEventListener("DOMContentLoaded",function(){document.forms.search&&document.forms.search.query.addEventListener("blur",function(){if(this.value){var e=document.location.pathname;ga("send","pageview",e+"?q="+this.value)}})}),document.addEventListener("DOMContentSwitch",function(){ga("send","pageview",document.location.pathname)})</script><script async src=https://www.google-analytics.com/analytics.js></script></head> <body dir=ltr data-md-color-scheme data-md-color-primary=teal data-md-color-accent=green> <input class=md-toggle data-md-toggle=drawer type=checkbox id=__drawer autocomplete=off> <input class=md-toggle data-md-toggle=search type=checkbox id=__search autocomplete=off> <label class=md-overlay for=__drawer></label> <div data-md-component=skip> <a href=#e2e-test-suite-for-nginx-ingress-controller class=md-skip> Skip to content </a> </div> <div data-md-component=announce> </div> <header class=md-header data-md-component=header> <nav class="md-header-nav md-grid" aria-label=Header> <a href=https://kubernetes.github.io/ingress-nginx title="NGINX Ingress Controller" class="md-header-nav__button md-logo" aria-label="NGINX Ingress Controller"> <svg xmlns=http://www.w3.org/2000/svg viewbox="0 0 24 24"><path d="M12 8a3 3 0 003-3 3 3 0 00-3-3 3 3 0 00-3 3 3 3 0 003 3m0 3.54C9.64 9.35 6.5 8 3 8v11c3.5 0 6.64 1.35 9 3.54 2.36-2.19 5.5-3.54 9-3.54V8c-3.5 0-6.64 1.35-9 3.54z"/></svg> </a> <label class="md-header-nav__button md-icon" for=__drawer> <svg xmlns=http://www.w3.org/2000/svg viewbox="0 0 24 24"><path d="M3 6h18v2H3V6m0 5h18v2H3v-2m0 5h18v2H3v-2z"/></svg> </label> <div class=md-header-nav__title data-md-component=header-title> <div class=md-header-nav__ellipsis> <div class=md-header-nav__topic> <span class=md-ellipsis> NGINX Ingress Controller </span> </div> <div class=md-header-nav__topic> <span class=md-ellipsis> e2e test suite for [NGINX Ingress Controller](https://github.com/kubernetes/ingress-nginx/tree/master/) </span> </div> </div> </div> <label class="md-header-nav__button md-icon" for=__search> <svg xmlns=http://www.w3.org/2000/svg viewbox="0 0 24 24"><path d="M9.5 3A6.5 6.5 0 0116 9.5c0 1.61-.59 3.09-1.56 4.23l.27.27h.79l5 5-1.5 1.5-5-5v-.79l-.27-.27A6.516 6.516 0 019.5 16 6.5 6.5 0 013 9.5 6.5 6.5 0 019.5 3m0 2C7 5 5 7 5 9.5S7 14 9.5 14 14 12 14 9.5 12 5 9.5 5z"/></svg> </label> <div class=md-search data-md-component=search role=dialog> <label class=md-search__overlay for=__search></label> <div class=md-search__inner role=search> <form class=md-search__form name=search> <input type=text class=md-search__input name=query aria-label=Search placeholder=Search autocapitalize=off autocorrect=off autocomplete=off spellcheck=false data-md-component=search-query data-md-state=active required> <label class="md-search__icon md-icon" for=__search> <svg xmlns=http://www.w3.org/2000/svg viewbox="0 0 24 24"><path d="M9.5 3A6.5 6.5 0 0116 9.5c0 1.61-.59 3.09-1.56 4.23l.27.27h.79l5 5-1.5 1.5-5-5v-.79l-.27-.27A6.516 6.516 0 019.5 16 6.5 6.5 0 013 9.5 6.5 6.5 0 019.5 3m0 2C7 5 5 7 5 9.5S7 14 9.5 14 14 12 14 9.5 12 5 9.5 5z"/></svg> <svg xmlns=http://www.w3.org/2000/svg viewbox="0 0 24 24"><path d="M20 11v2H8l5.5 5.5-1.42 1.42L4.16 12l7.92-7.92L13.5 5.5 8 11h12z"/></svg> </label> <button type=reset class="md-search__icon md-icon" aria-label=Clear data-md-component=search-reset tabindex=-1> <svg xmlns=http://www.w3.org/2000/svg viewbox="0 0 24 24"><path d="M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12 19 6.41z"/></svg> </button> </form> <div class=md-search__output> <div class=md-search__scrollwrap data-md-scrollfix> <div class=md-search-result data-md-component=search-result> <div class=md-search-result__meta> Initializing search </div> <ol class=md-search-result__list></ol> </div> </div> </div> </div> </div> <div class=md-header-nav__source> <a href=https://github.com/kubernetes/ingress-nginx/ title="Go to repository" class=md-source> <div class="md-source__icon md-icon"> <svg xmlns=http://www.w3.org/2000/svg viewbox="0 0 448 512"><path d="M439.55 236.05L244 40.45a28.87 28.87 0 00-40.81 0l-40.66 40.63 51.52 51.52c27.06-9.14 52.68 16.77 43.39 43.68l49.66 49.66c34.23-11.8 61.18 31 35.47 56.69-26.49 26.49-70.21-2.87-56-37.34L240.22 199v121.85c25.3 12.54 22.26 41.85 9.08 55a34.34 34.34 0 01-48.55 0c-17.57-17.6-11.07-46.91 11.25-56v-123c-20.8-8.51-24.6-30.74-18.64-45L142.57 101 8.45 235.14a28.86 28.86 0 000 40.81l195.61 195.6a28.86 28.86 0 0040.8 0l194.69-194.69a28.86 28.86 0 000-40.81z"/></svg> </div> <div class=md-source__repository> kubernetes/ingress-nginx </div> </a> </div> </nav> </header> <div class=md-container data-md-component=container> <nav class=md-tabs aria-label=Tabs data-md-component=tabs> <div class="md-tabs__inner md-grid"> <ul class=md-tabs__list> <li class=md-tabs__item> <a href=.. class=md-tabs__link> Welcome </a> </li> <li class=md-tabs__item> <a href=../deploy/ class=md-tabs__link> Deployment </a> </li> <li class=md-tabs__item> <a href=../user-guide/nginx-configuration/ class=md-tabs__link> User guide </a> </li> <li class=md-tabs__item> <a href=../examples/ class=md-tabs__link> Examples </a> </li> </ul> </div> </nav> <main class=md-main data-md-component=main> <div class="md-main__inner md-grid"> <div class="md-sidebar md-sidebar--primary" data-md-component=navigation> <div class=md-sidebar__scrollwrap> <div class=md-sidebar__inner> <nav class="md-nav md-nav--primary md-nav--lifted" aria-label=Navigation data-md-level=0> <label class=md-nav__title for=__drawer> <a href=https://kubernetes.github.io/ingress-nginx title="NGINX Ingress Controller" class="md-nav__button md-logo" aria-label="NGINX Ingress Controller"> <svg xmlns=http://www.w3.org/2000/svg viewbox="0 0 24 24"><path d="M12 8a3 3 0 003-3 3 3 0 00-3-3 3 3 0 00-3 3 3 3 0 003 3m0 3.54C9.64 9.35 6.5 8 3 8v11c3.5 0 6.64 1.35 9 3.54 2.36-2.19 5.5-3.54 9-3.54V8c-3.5 0-6.64 1.35-9 3.54z"/></svg> </a> NGINX Ingress Controller </label> <div class=md-nav__source> <a href=https://github.com/kubernetes/ingress-nginx/ title="Go to repository" class=md-source> <div class="md-source__icon md-icon"> <svg xmlns=http://www.w3.org/2000/svg viewbox="0 0 448 512"><path d="M439.55 236.05L244 40.45a28.87 28.87 0 00-40.81 0l-40.66 40.63 51.52 51.52c27.06-9.14 52.68 16.77 43.39 43.68l49.66 49.66c34.23-11.8 61.18 31 35.47 56.69-26.49 26.49-70.21-2.87-56-37.34L240.22 199v121.85c25.3 12.54 22.26 41.85 9.08 55a34.34 34.34 0 01-48.55 0c-17.57-17.6-11.07-46.91 11.25-56v-123c-20.8-8.51-24.6-30.74-18.64-45L142.57 101 8.45 235.14a28.86 28.86 0 000 40.81l195.61 195.6a28.86 28.86 0 0040.8 0l194.69-194.69a28.86 28.86 0 000-40.81z"/></svg> </div> <div class=md-source__repository> kubernetes/ingress-nginx </div> </a> </div> <ul class=md-nav__list data-md-scrollfix> <li class="md-nav__item md-nav__item--nested"> <input class="md-nav__toggle md-toggle" data-md-toggle=nav-1 type=checkbox id=nav-1> <label class=md-nav__link for=nav-1> Welcome <span class="md-nav__icon md-icon"></span> </label> <nav class=md-nav aria-label=Welcome data-md-level=1> <label class=md-nav__title for=nav-1> <span class="md-nav__icon md-icon"></span> Welcome </label> <ul class=md-nav__list data-md-scrollfix> <li class=md-nav__item> <a href=.. class=md-nav__link> Welcome </a> </li> <li class=md-nav__item> <a href=../how-it-works/ class=md-nav__link> How it works </a> </li> <li class=md-nav__item> <a href=../troubleshooting/ class=md-nav__link> Troubleshooting </a> </li> <li class=md-nav__item> <a href=../kubectl-plugin/ class=md-nav__link> kubectl plugin </a> </li> <li class=md-nav__item> <a href=../development/ class=md-nav__link> Development </a> </li> </ul> </nav> </li> <li class="md-nav__item md-nav__item--nested"> <input class="md-nav__toggle md-toggle" data-md-toggle=nav-2 type=checkbox id=nav-2> <label class=md-nav__link for=nav-2> Deployment <span class="md-nav__icon md-icon"></span> </label> <nav class=md-nav aria-label=Deployment data-md-level=1> <label class=md-nav__title for=nav-2> <span class="md-nav__icon md-icon"></span> Deployment </label> <ul class=md-nav__list data-md-scrollfix> <li class=md-nav__item> <a href=../deploy/ class=md-nav__link> Installation Guide </a> </li> <li class=md-nav__item> <a href=../deploy/baremetal/ class=md-nav__link> Bare-metal considerations </a> </li> <li class=md-nav__item> <a href=../deploy/rbac/ class=md-nav__link> Role Based Access Control (RBAC) </a> </li> <li class=md-nav__item> <a href=../deploy/upgrade/ class=md-nav__link> Upgrade </a> </li> <li class=md-nav__item> <a href=../deploy/hardening-guide/ class=md-nav__link> Hardening guide </a> </li> </ul> </nav> </li> <li class="md-nav__item md-nav__item--nested"> <input class="md-nav__toggle md-toggle" data-md-toggle=nav-3 type=checkbox id=nav-3> <label class=md-nav__link for=nav-3> User guide <span class="md-nav__icon md-icon"></span> </label> <nav class=md-nav aria-label="User guide" data-md-level=1> <label class=md-nav__title for=nav-3> <span class="md-nav__icon md-icon"></span> User guide </label> <ul class=md-nav__list data-md-scrollfix> <li class="md-nav__item md-nav__item--section md-nav__item--nested"> <input class="md-nav__toggle md-toggle" data-md-toggle=nav-3-1 type=checkbox id=nav-3-1> <label class=md-nav__link for=nav-3-1> NGINX Configuration <span class="md-nav__icon md-icon"></span> </label> <nav class=md-nav aria-label="NGINX Configuration" data-md-level=2> <label class=md-nav__title for=nav-3-1> <span class="md-nav__icon md-icon"></span> NGINX Configuration </label> <ul class=md-nav__list data-md-scrollfix> <li class=md-nav__item> <a href=../user-guide/nginx-configuration/ class=md-nav__link> Introduction </a> </li> <li class=md-nav__item> <a href=../user-guide/basic-usage/ class=md-nav__link> Basic usage </a> </li> <li class=md-nav__item> <a href=../user-guide/nginx-configuration/annotations/ class=md-nav__link> Annotations </a> </li> <li class=md-nav__item> <a href=../user-guide/nginx-configuration/configmap/ class=md-nav__link> ConfigMap </a> </li> <li class=md-nav__item> <a href=../user-guide/nginx-configuration/custom-template/ class=md-nav__link> Custom NGINX template </a> </li> <li class=md-nav__item> <a href=../user-guide/nginx-configuration/log-format/ class=md-nav__link> Log format </a> </li> </ul> </nav> </li> <li class=md-nav__item> <a href=../user-guide/cli-arguments/ class=md-nav__link> Command line arguments </a> </li> <li class=md-nav__item> <a href=../user-guide/custom-errors/ class=md-nav__link> Custom errors </a> </li> <li class=md-nav__item> <a href=../user-guide/default-backend/ class=md-nav__link> Default backend </a> </li> <li class=md-nav__item> <a href=../user-guide/exposing-tcp-udp-services/ class=md-nav__link> Exposing TCP and UDP services </a> </li> <li class=md-nav__item> <a href=../user-guide/fcgi-services/ class=md-nav__link> Exposing FCGI services </a> </li> <li class=md-nav__item> <a href=../user-guide/ingress-path-matching/ class=md-nav__link> Regular expressions in paths </a> </li> <li class=md-nav__item> <a href=../user-guide/external-articles/ class=md-nav__link> External Articles </a> </li> <li class=md-nav__item> <a href=../user-guide/miscellaneous/ class=md-nav__link> Miscellaneous </a> </li> <li class=md-nav__item> <a href=../user-guide/monitoring/ class=md-nav__link> Prometheus and Grafana installation </a> </li> <li class=md-nav__item> <a href=../user-guide/multiple-ingress/ class=md-nav__link> Multiple Ingress controllers </a> </li> <li class=md-nav__item> <a href=../user-guide/tls/ class=md-nav__link> TLS/HTTPS </a> </li> <li class="md-nav__item md-nav__item--section md-nav__item--nested"> <input class="md-nav__toggle md-toggle" data-md-toggle=nav-3-13 type=checkbox id=nav-3-13> <label class=md-nav__link for=nav-3-13> Third party addons <span class="md-nav__icon md-icon"></span> </label> <nav class=md-nav aria-label="Third party addons" data-md-level=2> <label class=md-nav__title for=nav-3-13> <span class="md-nav__icon md-icon"></span> Third party addons </label> <ul class=md-nav__list data-md-scrollfix> <li class=md-nav__item> <a href=../user-guide/third-party-addons/modsecurity/ class=md-nav__link> ModSecurity Web Application Firewall </a> </li> <li class=md-nav__item> <a href=../user-guide/third-party-addons/opentracing/ class=md-nav__link> OpenTracing </a> </li> </ul> </nav> </li> </ul> </nav> </li> <li class="md-nav__item md-nav__item--nested"> <input class="md-nav__toggle md-toggle" data-md-toggle=nav-4 type=checkbox id=nav-4> <label class=md-nav__link for=nav-4> Examples <span class="md-nav__icon md-icon"></span> </label> <nav class=md-nav aria-label=Examples data-md-level=1> <label class=md-nav__title for=nav-4> <span class="md-nav__icon md-icon"></span> Examples </label> <ul class=md-nav__list data-md-scrollfix> <li class=md-nav__item> <a href=../examples/ class=md-nav__link> Introduction </a> </li> <li class=md-nav__item> <a href=../examples/PREREQUISITES/ class=md-nav__link> Prerequisites </a> </li> <li class=md-nav__item> <a href=../examples/affinity/cookie/ class=md-nav__link> Sticky Sessions </a> </li> <li class="md-nav__item md-nav__item--section md-nav__item--nested"> <input class="md-nav__toggle md-toggle" data-md-toggle=nav-4-4 type=checkbox id=nav-4-4> <label class=md-nav__link for=nav-4-4> Auth <span class="md-nav__icon md-icon"></span> </label> <nav class=md-nav aria-label=Auth data-md-level=2> <label class=md-nav__title for=nav-4-4> <span class="md-nav__icon md-icon"></span> Auth </label> <ul class=md-nav__list data-md-scrollfix> <li class=md-nav__item> <a href=../examples/auth/basic/ class=md-nav__link> Basic Authentication </a> </li> <li class=md-nav__item> <a href=../examples/auth/client-certs/ class=md-nav__link> Client Certificate Authentication </a> </li> <li class=md-nav__item> <a href=../examples/auth/external-auth/ class=md-nav__link> External Basic Authentication </a> </li> <li class=md-nav__item> <a href=../examples/auth/oauth-external-auth/ class=md-nav__link> External OAUTH Authentication </a> </li> </ul> </nav> </li> <li class="md-nav__item md-nav__item--section md-nav__item--nested"> <input class="md-nav__toggle md-toggle" data-md-toggle=nav-4-5 type=checkbox id=nav-4-5> <label class=md-nav__link for=nav-4-5> Customization <span class="md-nav__icon md-icon"></span> </label> <nav class=md-nav aria-label=Customization data-md-level=2> <label class=md-nav__title for=nav-4-5> <span class="md-nav__icon md-icon"></span> Customization </label> <ul class=md-nav__list data-md-scrollfix> <li class=md-nav__item> <a href=../examples/customization/configuration-snippets/ class=md-nav__link> Configuration Snippets </a> </li> <li class=md-nav__item> <a href=../examples/customization/custom-configuration/ class=md-nav__link> Custom Configuration </a> </li> <li class=md-nav__item> <a href=../examples/customization/custom-errors/ class=md-nav__link> Custom Errors </a> </li> <li class=md-nav__item> <a href=../examples/customization/custom-headers/ class=md-nav__link> Custom Headers </a> </li> <li class=md-nav__item> <a href=../examples/customization/external-auth-headers/ class=md-nav__link> External authentication </a> </li> <li class=md-nav__item> <a href=../examples/customization/ssl-dh-param/ class=md-nav__link> Custom DH parameters for perfect forward secrecy </a> </li> <li class=md-nav__item> <a href=../examples/customization/sysctl/ class=md-nav__link> Sysctl tuning </a> </li> </ul> </nav> </li> <li class=md-nav__item> <a href=../examples/docker-registry/ class=md-nav__link> Docker registry </a> </li> <li class=md-nav__item> <a href=../examples/grpc/ class=md-nav__link> gRPC </a> </li> <li class=md-nav__item> <a href=../examples/multi-tls/ class=md-nav__link> Multi TLS certificate termination </a> </li> <li class=md-nav__item> <a href=../examples/rewrite/ class=md-nav__link> Rewrite </a> </li> <li class=md-nav__item> <a href=../examples/static-ip/ class=md-nav__link> Static IPs </a> </li> <li class=md-nav__item> <a href=../examples/tls-termination/ class=md-nav__link> TLS termination </a> </li> <li class=md-nav__item> <a href=../examples/psp/ class=md-nav__link> Pod Security Policy (PSP) </a> </li> </ul> </nav> </li> </ul> </nav> </div> </div> </div> <div class="md-sidebar md-sidebar--secondary" data-md-component=toc> <div class=md-sidebar__scrollwrap> <div class=md-sidebar__inner> <nav class="md-nav md-nav--secondary" aria-label="Table of contents"> <label class=md-nav__title for=__toc> <span class="md-nav__icon md-icon"></span> Table of contents </label> <ul class=md-nav__list data-md-scrollfix> <li class=md-nav__item> <a href=#default-backend-change-default-settings class=md-nav__link> [Default Backend] change default settings </a> </li> <li class=md-nav__item> <a href=#default-backend class=md-nav__link> [Default Backend] </a> </li> <li class=md-nav__item> <a href=#default-backend-custom-service class=md-nav__link> [Default Backend] custom service </a> </li> <li class=md-nav__item> <a href=#default-backend-ssl class=md-nav__link> [Default Backend] SSL </a> </li> <li class=md-nav__item> <a href=#tcp-tcp-services class=md-nav__link> [TCP] tcp-services </a> </li> <li class=md-nav__item> <a href=#auth- class=md-nav__link> auth-* </a> </li> <li class=md-nav__item> <a href=#affinitymode class=md-nav__link> affinitymode </a> </li> <li class=md-nav__item> <a href=#proxy- class=md-nav__link> proxy-* </a> </li> <li class=md-nav__item> <a href=#affinity-session-cookie-name class=md-nav__link> affinity session-cookie-name </a> </li> <li class=md-nav__item> <a href=#mirror- class=md-nav__link> mirror-* </a> </li> <li class=md-nav__item> <a href=#canary- class=md-nav__link> canary-* </a> </li> <li class=md-nav__item> <a href=#limit-rate class=md-nav__link> limit-rate </a> </li> <li class=md-nav__item> <a href=#force-ssl-redirect class=md-nav__link> force-ssl-redirect </a> </li> <li class=md-nav__item> <a href=#http2-push-preload class=md-nav__link> http2-push-preload </a> </li> <li class=md-nav__item> <a href=#proxy-ssl- class=md-nav__link> proxy-ssl-* </a> </li> <li class=md-nav__item> <a href=#modsecurity-owasp class=md-nav__link> modsecurity owasp </a> </li> <li class=md-nav__item> <a href=#backend-protocol-grpc class=md-nav__link> backend-protocol - GRPC </a> </li> <li class=md-nav__item> <a href=#cors- class=md-nav__link> cors-* </a> </li> <li class=md-nav__item> <a href=#influxdb- class=md-nav__link> influxdb-* </a> </li> <li class=md-nav__item> <a href=#annotation-limit-connections class=md-nav__link> Annotation - limit-connections </a> </li> <li class=md-nav__item> <a href=#client-body-buffer-size class=md-nav__link> client-body-buffer-size </a> </li> <li class=md-nav__item> <a href=#default-backend_1 class=md-nav__link> default-backend </a> </li> <li class=md-nav__item> <a href=#connection-proxy-header class=md-nav__link> connection-proxy-header </a> </li> <li class=md-nav__item> <a href=#upstream-vhost class=md-nav__link> upstream-vhost </a> </li> <li class=md-nav__item> <a href=#custom-http-errors class=md-nav__link> custom-http-errors </a> </li> <li class=md-nav__item> <a href=#disable-access-log-disable-http-access-log-disable-stream-access-log class=md-nav__link> disable-access-log disable-http-access-log disable-stream-access-log </a> </li> <li class=md-nav__item> <a href=#server-snippet class=md-nav__link> server-snippet </a> </li> <li class=md-nav__item> <a href=#rewrite-target-use-regex-enable-rewrite-log class=md-nav__link> rewrite-target use-regex enable-rewrite-log </a> </li> <li class=md-nav__item> <a href=#app-root class=md-nav__link> app-root </a> </li> <li class=md-nav__item> <a href=#whitelist-source-range class=md-nav__link> whitelist-source-range </a> </li> <li class=md-nav__item> <a href=#enable-access-log-enable-rewrite-log class=md-nav__link> enable-access-log enable-rewrite-log </a> </li> <li class=md-nav__item> <a href=#x-forwarded-prefix class=md-nav__link> x-forwarded-prefix </a> </li> <li class=md-nav__item> <a href=#configuration-snippet class=md-nav__link> configuration-snippet </a> </li> <li class=md-nav__item> <a href=#backend-protocol-fastcgi class=md-nav__link> backend-protocol - FastCGI </a> </li> <li class=md-nav__item> <a href=#from-to-www-redirect class=md-nav__link> from-to-www-redirect </a> </li> <li class=md-nav__item> <a href=#permanent-redirect-permanent-redirect-code class=md-nav__link> permanent-redirect permanent-redirect-code </a> </li> <li class=md-nav__item> <a href=#upstream-hash-by- class=md-nav__link> upstream-hash-by-* </a> </li> <li class=md-nav__item> <a href=#annotation-global-rate-limit class=md-nav__link> annotation-global-rate-limit </a> </li> <li class=md-nav__item> <a href=#backend-protocol class=md-nav__link> backend-protocol </a> </li> <li class=md-nav__item> <a href=#satisfy class=md-nav__link> satisfy </a> </li> <li class=md-nav__item> <a href=#server-alias class=md-nav__link> server-alias </a> </li> <li class=md-nav__item> <a href=#ssl-ciphers class=md-nav__link> ssl-ciphers </a> </li> <li class=md-nav__item> <a href=#auth-tls- class=md-nav__link> auth-tls-* </a> </li> <li class=md-nav__item> <a href=#status-status-update class=md-nav__link> [Status] status update </a> </li> <li class=md-nav__item> <a href=#debug-cli class=md-nav__link> Debug CLI </a> </li> <li class=md-nav__item> <a href=#memory-leak-dynamic-certificates class=md-nav__link> [Memory Leak] Dynamic Certificates </a> </li> <li class=md-nav__item> <a href=#ingress-pathtype-mix-exact-and-prefix-paths class=md-nav__link> [Ingress] [PathType] mix Exact and Prefix paths </a> </li> <li class=md-nav__item> <a href=#ingress-definition-without-host class=md-nav__link> [Ingress] definition without host </a> </li> <li class=md-nav__item> <a href=#single-ingress-multiple-hosts class=md-nav__link> single ingress - multiple hosts </a> </li> <li class=md-nav__item> <a href=#ingress-pathtype-exact class=md-nav__link> [Ingress] [PathType] exact </a> </li> <li class=md-nav__item> <a href=#ingress-pathtype-prefix-checks class=md-nav__link> [Ingress] [PathType] prefix checks </a> </li> <li class=md-nav__item> <a href=#security-request-smuggling class=md-nav__link> [Security] request smuggling </a> </li> <li class=md-nav__item> <a href=#ssl-flag-default-ssl-certificate class=md-nav__link> [SSL] [Flag] default-ssl-certificate </a> </li> <li class=md-nav__item> <a href=#enable-real-ip class=md-nav__link> enable-real-ip </a> </li> <li class=md-nav__item> <a href=#access-log class=md-nav__link> access-log </a> </li> <li class=md-nav__item> <a href=#lua-lua-shared-dicts class=md-nav__link> [Lua] lua-shared-dicts </a> </li> <li class=md-nav__item> <a href=#server-tokens class=md-nav__link> server-tokens </a> </li> <li class=md-nav__item> <a href=#use-proxy-protocol class=md-nav__link> use-proxy-protocol </a> </li> <li class=md-nav__item> <a href=#flag-custom-http-and-https-ports class=md-nav__link> [Flag] custom HTTP and HTTPS ports </a> </li> <li class=md-nav__item> <a href=#security-no-auth-locations class=md-nav__link> [Security] no-auth-locations </a> </li> <li class=md-nav__item> <a href=#dynamic-proxy_host class=md-nav__link> Dynamic $proxy_host </a> </li> <li class=md-nav__item> <a href=#proxy-connect-timeout class=md-nav__link> proxy-connect-timeout </a> </li> <li class=md-nav__item> <a href=#security-pod-security-policies class=md-nav__link> [Security] Pod Security Policies </a> </li> <li class=md-nav__item> <a href=#geoip2 class=md-nav__link> Geoip2 </a> </li> <li class=md-nav__item> <a href=#security-pod-security-policies-with-volumes class=md-nav__link> [Security] Pod Security Policies with volumes </a> </li> <li class=md-nav__item> <a href=#enable-multi-accept class=md-nav__link> enable-multi-accept </a> </li> <li class=md-nav__item> <a href=#log-format- class=md-nav__link> log-format-* </a> </li> <li class=md-nav__item> <a href=#flag-ingress-class class=md-nav__link> [Flag] ingress-class </a> </li> <li class=md-nav__item> <a href=#ssl-ciphers_1 class=md-nav__link> ssl-ciphers </a> </li> <li class=md-nav__item> <a href=#proxy-next-upstream class=md-nav__link> proxy-next-upstream </a> </li> <li class=md-nav__item> <a href=#security-global-auth-url class=md-nav__link> [Security] global-auth-url </a> </li> <li class=md-nav__item> <a href=#security-block- class=md-nav__link> [Security] block-* </a> </li> <li class=md-nav__item> <a href=#plugins class=md-nav__link> plugins </a> </li> <li class=md-nav__item> <a href=#configmap-limit-rate class=md-nav__link> Configmap - limit-rate </a> </li> <li class=md-nav__item> <a href=#configure-opentracing class=md-nav__link> Configure OpenTracing </a> </li> <li class=md-nav__item> <a href=#use-forwarded-headers class=md-nav__link> use-forwarded-headers </a> </li> <li class=md-nav__item> <a href=#proxy-send-timeout class=md-nav__link> proxy-send-timeout </a> </li> <li class=md-nav__item> <a href=#add-no-tls-redirect-locations class=md-nav__link> Add no tls redirect locations </a> </li> <li class=md-nav__item> <a href=#settings-global-rate-limit class=md-nav__link> settings-global-rate-limit </a> </li> <li class=md-nav__item> <a href=#add-headers class=md-nav__link> add-headers </a> </li> <li class=md-nav__item> <a href=#hash-size class=md-nav__link> hash size </a> </li> <li class=md-nav__item> <a href=#keep-alive-keep-alive-requests class=md-nav__link> keep-alive keep-alive-requests </a> </li> <li class=md-nav__item> <a href=#flag-disable-catch-all class=md-nav__link> [Flag] disable-catch-all </a> </li> <li class=md-nav__item> <a href=#main-snippet class=md-nav__link> main-snippet </a> </li> <li class=md-nav__item> <a href=#ssl-tls-protocols-ciphers-and-headers class=md-nav__link> [SSL] TLS protocols, ciphers and headers) </a> </li> <li class=md-nav__item> <a href=#configmap-change class=md-nav__link> Configmap change </a> </li> <li class=md-nav__item> <a href=#proxy-read-timeout class=md-nav__link> proxy-read-timeout </a> </li> <li class=md-nav__item> <a href=#security-modsecurity-snippet class=md-nav__link> [Security] modsecurity-snippet </a> </li> <li class=md-nav__item> <a href=#ocsp class=md-nav__link> OCSP </a> </li> <li class=md-nav__item> <a href=#reuse-port class=md-nav__link> reuse-port </a> </li> <li class=md-nav__item> <a href=#shutdown-graceful-shutdown-with-pending-request class=md-nav__link> [Shutdown] Graceful shutdown with pending request </a> </li> <li class=md-nav__item> <a href=#shutdown-ingress-controller class=md-nav__link> [Shutdown] ingress controller </a> </li> <li class=md-nav__item> <a href=#service-backend-status-code-503 class=md-nav__link> [Service] backend status code 503 </a> </li> <li class=md-nav__item> <a href=#service-type-externalname class=md-nav__link> [Service] Type ExternalName </a> </li> </ul> </nav> </div> </div> </div> <div class=md-content> <article class="md-content__inner md-typeset"> <a href=https://github.com/kubernetes/ingress-nginx/edit/master/docs/e2e-tests.md title="Edit this page" class="md-content__button md-icon"> <svg xmlns=http://www.w3.org/2000/svg viewbox="0 0 24 24"><path d="M20.71 7.04c.39-.39.39-1.04 0-1.41l-2.34-2.34c-.37-.39-1.02-.39-1.41 0l-1.84 1.83 3.75 3.75M3 17.25V21h3.75L17.81 9.93l-3.75-3.75L3 17.25z"/></svg> </a> <h1 id=e2e-test-suite-for-nginx-ingress-controller>e2e test suite for <a href=https://github.com/kubernetes/ingress-nginx/tree/master/ >NGINX Ingress Controller</a><a class=headerlink href=#e2e-test-suite-for-nginx-ingress-controller title="Permanent link"></a></h1> <h3 id=default-backend-change-default-settings><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/defaultbackend/with_hosts.go#L31>[Default Backend] change default settings</a><a class=headerlink href=#default-backend-change-default-settings title="Permanent link"></a></h3> <ul> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/defaultbackend/with_hosts.go#L39>should apply the annotation to the default backend</a></li> </ul> <h3 id=default-backend><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/defaultbackend/default_backend.go#L29>[Default Backend]</a><a class=headerlink href=#default-backend title="Permanent link"></a></h3> <ul> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/defaultbackend/default_backend.go#L32>should return 404 sending requests when only a default backend is running</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/defaultbackend/default_backend.go#L89>enables access logging for default backend</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/defaultbackend/default_backend.go#L106>disables access logging for default backend</a></li> </ul> <h3 id=default-backend-custom-service><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/defaultbackend/custom_default_backend.go#L33>[Default Backend] custom service</a><a class=headerlink href=#default-backend-custom-service title="Permanent link"></a></h3> <ul> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/defaultbackend/custom_default_backend.go#L36>uses custom default backend that returns 200 as status code</a></li> </ul> <h3 id=default-backend-ssl><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/defaultbackend/ssl.go#L26>[Default Backend] SSL</a><a class=headerlink href=#default-backend-ssl title="Permanent link"></a></h3> <ul> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/defaultbackend/ssl.go#L29>should return a self generated SSL certificate</a></li> </ul> <h3 id=tcp-tcp-services><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/tcpudp/tcp.go#L37>[TCP] tcp-services</a><a class=headerlink href=#tcp-tcp-services title="Permanent link"></a></h3> <ul> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/tcpudp/tcp.go#L40>should expose a TCP service</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/tcpudp/tcp.go#L98>should expose an ExternalName TCP service</a></li> </ul> <h3 id=auth-><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/auth.go#L39>auth-*</a><a class=headerlink href=#auth- title="Permanent link"></a></h3> <ul> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/auth.go#L46>should return status code 200 when no authentication is configured</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/auth.go#L65>should return status code 503 when authentication is configured with an invalid secret</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/auth.go#L89>should return status code 401 when authentication is configured but Authorization header is not configured</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/auth.go#L116>should return status code 401 when authentication is configured and Authorization header is sent with invalid credentials</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/auth.go#L144>should return status code 200 when authentication is configured and Authorization header is sent</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/auth.go#L171>should return status code 200 when authentication is configured with a map and Authorization header is sent</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/auth.go#L199>should return status code 401 when authentication is configured with invalid content and Authorization header is sent</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/auth.go#L238>proxy_set_header My-Custom-Header 42;</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/auth.go#L256>proxy_set_header My-Custom-Header 42;</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/auth.go#L273>proxy_set_header 'My-Custom-Header' '42';</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/auth.go#L294></a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/auth.go#L316>retains cookie set by external authentication server</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/auth.go#L413>should return status code 200 when signed in</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/auth.go#L422>should redirect to signin url when not signed in</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/auth.go#L433>keeps processing new ingresses even if one of the existing ingresses is misconfigured</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/auth.go#L490>should return status code 200 when signed in</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/auth.go#L499>should redirect to signin url when not signed in</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/auth.go#L510>keeps processing new ingresses even if one of the existing ingresses is misconfigured</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/auth.go#L584>should return status code 200 when signed in after auth backend is deleted </a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/auth.go#L604>should deny login for different location on same server</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/auth.go#L632>should deny login for different servers</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/auth.go#L661>should redirect to signin url when not signed in</a></li> </ul> <h3 id=affinitymode><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/affinitymode.go#L31>affinitymode</a><a class=headerlink href=#affinitymode title="Permanent link"></a></h3> <ul> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/affinitymode.go#L34>Balanced affinity mode should balance</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/affinitymode.go#L64>Check persistent affinity mode</a></li> </ul> <h3 id=proxy-><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/proxy.go#L28>proxy-*</a><a class=headerlink href=#proxy- title="Permanent link"></a></h3> <ul> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/proxy.go#L36>should set proxy_redirect to off</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/proxy.go#L52>should set proxy_redirect to default</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/proxy.go#L68>should set proxy_redirect to hello.com goodbye.com</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/proxy.go#L85>should set proxy client-max-body-size to 8m</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/proxy.go#L100>should not set proxy client-max-body-size to incorrect value</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/proxy.go#L115>should set valid proxy timeouts</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/proxy.go#L136>should not set invalid proxy timeouts</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/proxy.go#L157>should turn on proxy-buffering</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/proxy.go#L179>should turn off proxy-request-buffering</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/proxy.go#L194>should build proxy next upstream</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/proxy.go#L215>should setup proxy cookies</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/proxy.go#L233>should change the default proxy HTTP version</a></li> </ul> <h3 id=affinity-session-cookie-name><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/affinity.go#L35>affinity session-cookie-name</a><a class=headerlink href=#affinity-session-cookie-name title="Permanent link"></a></h3> <ul> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/affinity.go#L42>should set sticky cookie SERVERID</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/affinity.go#L64>should change cookie name on ingress definition change</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/affinity.go#L99>should set the path to /something on the generated cookie</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/affinity.go#L121>does not set the path to / on the generated cookie if there's more than one rule referring to the same backend</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/affinity.go#L182>should set cookie with expires</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/affinity.go#L213>should work with use-regex annotation and session-cookie-path</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/affinity.go#L237>should warn user when use-regex is true and session-cookie-path is not set</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/affinity.go#L263>should not set affinity across all server locations when using separate ingresses</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/affinity.go#L295>should set sticky cookie without host</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/affinity.go#L315>should work with server-alias annotation</a></li> </ul> <h3 id=mirror-><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/mirror.go#L28>mirror-*</a><a class=headerlink href=#mirror- title="Permanent link"></a></h3> <ul> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/mirror.go#L36>should set mirror-target to http://localhost/mirror</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/mirror.go#L51>should set mirror-target to https://test.env.com/$request_uri</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/mirror.go#L67>should disable mirror-request-body</a></li> </ul> <h3 id=canary-><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/canary.go#L35>canary-*</a><a class=headerlink href=#canary- title="Permanent link"></a></h3> <ul> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/canary.go#L47>should response with a 200 status from the mainline upstream when requests are made to the mainline ingress</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/canary.go#L79>should return 404 status for requests to the canary if no matching ingress is found</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/canary.go#L106>should return the correct status codes when endpoints are unavailable</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/canary.go#L160>should route requests to the correct upstream if mainline ingress is created before the canary ingress</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/canary.go#L205>should route requests to the correct upstream if mainline ingress is created after the canary ingress</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/canary.go#L249>should route requests to the correct upstream if the mainline ingress is modified</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/canary.go#L306>should route requests to the correct upstream if the canary ingress is modified</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/canary.go#L361>should route requests to the correct upstream</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/canary.go#L415>should route requests to the correct upstream</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/canary.go#L479>should route requests to the correct upstream</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/canary.go#L521>should route requests to the correct upstream</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/canary.go#L555>should routes to mainline upstream when the given Regex causes error</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/canary.go#L593>should route requests to the correct upstream</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/canary.go#L632>should route requests to the correct upstream</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/canary.go#L687>should route requests to the correct upstream</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/canary.go#L743>should not use canary as a catch-all server</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/canary.go#L771>should not use canary with domain as a server</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/canary.go#L795>does not crash when canary ingress has multiple paths to the same non-matching backend</a></li> </ul> <h3 id=limit-rate><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/limitrate.go#L29>limit-rate</a><a class=headerlink href=#limit-rate title="Permanent link"></a></h3> <ul> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/limitrate.go#L37>Check limit-rate annotation</a></li> </ul> <h3 id=force-ssl-redirect><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/forcesslredirect.go#L27>force-ssl-redirect</a><a class=headerlink href=#force-ssl-redirect title="Permanent link"></a></h3> <ul> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/forcesslredirect.go#L34>should redirect to https</a></li> </ul> <h3 id=http2-push-preload><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/http2pushpreload.go#L27>http2-push-preload</a><a class=headerlink href=#http2-push-preload title="Permanent link"></a></h3> <ul> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/http2pushpreload.go#L34>enable the http2-push-preload directive</a></li> </ul> <h3 id=proxy-ssl-><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/proxyssl.go#L30>proxy-ssl-*</a><a class=headerlink href=#proxy-ssl- title="Permanent link"></a></h3> <ul> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/proxyssl.go#L37>should set valid proxy-ssl-secret</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/proxyssl.go#L64>should set valid proxy-ssl-secret, proxy-ssl-verify to on, proxy-ssl-verify-depth to 2, and proxy-ssl-server-name to on</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/proxyssl.go#L94>should set valid proxy-ssl-secret, proxy-ssl-ciphers to HIGH:!AES</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/proxyssl.go#L122>should set valid proxy-ssl-secret, proxy-ssl-protocols</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/proxyssl.go#L150>proxy-ssl-location-only flag should change the nginx config server part</a></li> </ul> <h3 id=modsecurity-owasp><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/modsecurity.go#L27>modsecurity owasp</a><a class=headerlink href=#modsecurity-owasp title="Permanent link"></a></h3> <ul> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/modsecurity.go#L34>should enable modsecurity</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/modsecurity.go#L52>should enable modsecurity with transaction ID and OWASP rules</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/modsecurity.go#L73>should disable modsecurity</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/modsecurity.go#L90>should enable modsecurity with snippet</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/modsecurity.go#L109>should enable modsecurity without using 'modsecurity on;'</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/modsecurity.go#L131>should disable modsecurity using 'modsecurity off;'</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/modsecurity.go#L152>should enable modsecurity with snippet and block requests</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/modsecurity.go#L186>should enable modsecurity globally and with modsecurity-snippet block requests</a></li> </ul> <h3 id=backend-protocol-grpc><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/grpc.go#L38>backend-protocol - GRPC</a><a class=headerlink href=#backend-protocol-grpc title="Permanent link"></a></h3> <ul> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/grpc.go#L41>should use grpc_pass in the configuration file</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/grpc.go#L66>should return OK for service with backend protocol GRPC</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/grpc.go#L124>should return OK for service with backend protocol GRPCS</a></li> </ul> <h3 id=cors-><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/cors.go#L28>cors-*</a><a class=headerlink href=#cors- title="Permanent link"></a></h3> <ul> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/cors.go#L35>should enable cors</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/cors.go#L60>should set cors methods to only allow POST, GET</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/cors.go#L76>should set cors max-age</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/cors.go#L92>should disable cors allow credentials</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/cors.go#L108>should allow origin for cors</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/cors.go#L124>should allow headers for cors</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/cors.go#L140>should expose headers for cors</a></li> </ul> <h3 id=influxdb-><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/influxdb.go#L39>influxdb-*</a><a class=headerlink href=#influxdb- title="Permanent link"></a></h3> <ul> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/influxdb.go#L48>should send the request metric to the influxdb server</a></li> </ul> <h3 id=annotation-limit-connections><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/limitconnections.go#L31>Annotation - limit-connections</a><a class=headerlink href=#annotation-limit-connections title="Permanent link"></a></h3> <ul> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/limitconnections.go#L38>should limit-connections</a></li> </ul> <h3 id=client-body-buffer-size><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/clientbodybuffersize.go#L28>client-body-buffer-size</a><a class=headerlink href=#client-body-buffer-size title="Permanent link"></a></h3> <ul> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/clientbodybuffersize.go#L35>should set client_body_buffer_size to 1000</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/clientbodybuffersize.go#L51>should set client_body_buffer_size to 1K</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/clientbodybuffersize.go#L67>should set client_body_buffer_size to 1k</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/clientbodybuffersize.go#L83>should set client_body_buffer_size to 1m</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/clientbodybuffersize.go#L99>should set client_body_buffer_size to 1M</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/clientbodybuffersize.go#L115>should not set client_body_buffer_size to invalid 1b</a></li> </ul> <h3 id=default-backend_1><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/default_backend.go#L29>default-backend</a><a class=headerlink href=#default-backend_1 title="Permanent link"></a></h3> <ul> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/default_backend.go#L37>should use a custom default backend as upstream</a></li> </ul> <h3 id=connection-proxy-header><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/connection.go#L29>connection-proxy-header</a><a class=headerlink href=#connection-proxy-header title="Permanent link"></a></h3> <ul> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/connection.go#L36>set connection header to keep-alive</a></li> </ul> <h3 id=upstream-vhost><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/upstreamvhost.go#L27>upstream-vhost</a><a class=headerlink href=#upstream-vhost title="Permanent link"></a></h3> <ul> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/upstreamvhost.go#L34>set host to upstreamvhost.bar.com</a></li> </ul> <h3 id=custom-http-errors><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/customhttperrors.go#L34>custom-http-errors</a><a class=headerlink href=#custom-http-errors title="Permanent link"></a></h3> <ul> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/customhttperrors.go#L41>configures Nginx correctly</a></li> </ul> <h3 id=disable-access-log-disable-http-access-log-disable-stream-access-log><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/disableaccesslog.go#L27>disable-access-log disable-http-access-log disable-stream-access-log</a><a class=headerlink href=#disable-access-log-disable-http-access-log-disable-stream-access-log title="Permanent link"></a></h3> <ul> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/disableaccesslog.go#L34>disable-access-log set access_log off</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/disableaccesslog.go#L46>disable-http-access-log set access_log off</a></li> </ul> <h3 id=server-snippet><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/serversnippet.go#L27>server-snippet</a><a class=headerlink href=#server-snippet title="Permanent link"></a></h3> <ul> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/serversnippet.go#L34></a></li> </ul> <h3 id=rewrite-target-use-regex-enable-rewrite-log><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/rewrite.go#L30>rewrite-target use-regex enable-rewrite-log</a><a class=headerlink href=#rewrite-target-use-regex-enable-rewrite-log title="Permanent link"></a></h3> <ul> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/rewrite.go#L37>should write rewrite logs</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/rewrite.go#L66>should use correct longest path match</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/rewrite.go#L111>should use ~* location modifier if regex annotation is present</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/rewrite.go#L158>should fail to use longest match for documented warning</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/rewrite.go#L190>should allow for custom rewrite parameters</a></li> </ul> <h3 id=app-root><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/approot.go#L28>app-root</a><a class=headerlink href=#app-root title="Permanent link"></a></h3> <ul> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/approot.go#L35>should redirect to /foo</a></li> </ul> <h3 id=whitelist-source-range><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/ipwhitelist.go#L26>whitelist-source-range</a><a class=headerlink href=#whitelist-source-range title="Permanent link"></a></h3> <ul> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/ipwhitelist.go#L33>should set valid ip whitelist range</a></li> </ul> <h3 id=enable-access-log-enable-rewrite-log><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/log.go#L27>enable-access-log enable-rewrite-log</a><a class=headerlink href=#enable-access-log-enable-rewrite-log title="Permanent link"></a></h3> <ul> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/log.go#L34>set access_log off</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/log.go#L49>set rewrite_log on</a></li> </ul> <h3 id=x-forwarded-prefix><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/xforwardedprefix.go#L28>x-forwarded-prefix</a><a class=headerlink href=#x-forwarded-prefix title="Permanent link"></a></h3> <ul> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/xforwardedprefix.go#L35>should set the X-Forwarded-Prefix to the annotation value</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/xforwardedprefix.go#L57>should not add X-Forwarded-Prefix if the annotation value is empty</a></li> </ul> <h3 id=configuration-snippet><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/snippet.go#L27>configuration-snippet</a><a class=headerlink href=#configuration-snippet title="Permanent link"></a></h3> <ul> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/snippet.go#L34> in all locations</a></li> </ul> <h3 id=backend-protocol-fastcgi><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/fastcgi.go#L31>backend-protocol - FastCGI</a><a class=headerlink href=#backend-protocol-fastcgi title="Permanent link"></a></h3> <ul> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/fastcgi.go#L38>should use fastcgi_pass in the configuration file</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/fastcgi.go#L55>should add fastcgi_index in the configuration file</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/fastcgi.go#L72>should add fastcgi_param in the configuration file</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/fastcgi.go#L105>should return OK for service with backend protocol FastCGI</a></li> </ul> <h3 id=from-to-www-redirect><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/fromtowwwredirect.go#L31>from-to-www-redirect</a><a class=headerlink href=#from-to-www-redirect title="Permanent link"></a></h3> <ul> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/fromtowwwredirect.go#L38>should redirect from www HTTP to HTTP</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/fromtowwwredirect.go#L64>should redirect from www HTTPS to HTTPS</a></li> </ul> <h3 id=permanent-redirect-permanent-redirect-code><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/redirect.go#L30>permanent-redirect permanent-redirect-code</a><a class=headerlink href=#permanent-redirect-permanent-redirect-code title="Permanent link"></a></h3> <ul> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/redirect.go#L33>should respond with a standard redirect code</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/redirect.go#L61>should respond with a custom redirect code</a></li> </ul> <h3 id=upstream-hash-by-><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/upstreamhashby.go#L76>upstream-hash-by-*</a><a class=headerlink href=#upstream-hash-by- title="Permanent link"></a></h3> <ul> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/upstreamhashby.go#L83>should connect to the same pod</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/upstreamhashby.go#L92>should connect to the same subset of pods</a></li> </ul> <h3 id=annotation-global-rate-limit><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/globalratelimit.go#L30>annotation-global-rate-limit</a><a class=headerlink href=#annotation-global-rate-limit title="Permanent link"></a></h3> <ul> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/globalratelimit.go#L38>generates correct configuration</a></li> </ul> <h3 id=backend-protocol><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/backendprotocol.go#L27>backend-protocol</a><a class=headerlink href=#backend-protocol title="Permanent link"></a></h3> <ul> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/backendprotocol.go#L34>should set backend protocol to https:// and use proxy_pass</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/backendprotocol.go#L49>should set backend protocol to grpc:// and use grpc_pass</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/backendprotocol.go#L64>should set backend protocol to grpcs:// and use grpc_pass</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/backendprotocol.go#L79>should set backend protocol to '' and use fastcgi_pass</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/backendprotocol.go#L94>should set backend protocol to '' and use ajp_pass</a></li> </ul> <h3 id=satisfy><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/satisfy.go#L35>satisfy</a><a class=headerlink href=#satisfy title="Permanent link"></a></h3> <ul> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/satisfy.go#L42>should configure satisfy directive correctly</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/satisfy.go#L84>should allow multiple auth with satisfy any</a></li> </ul> <h3 id=server-alias><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/alias.go#L29>server-alias</a><a class=headerlink href=#server-alias title="Permanent link"></a></h3> <ul> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/alias.go#L36>should return status code 200 for host 'foo' and 404 for 'bar'</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/alias.go#L62>should return status code 200 for host 'foo' and 'bar'</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/alias.go#L87>should return status code 200 for hosts defined in two ingresses, different path with one alias</a></li> </ul> <h3 id=ssl-ciphers><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/sslciphers.go#L27>ssl-ciphers</a><a class=headerlink href=#ssl-ciphers title="Permanent link"></a></h3> <ul> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/sslciphers.go#L34>should change ssl ciphers</a></li> </ul> <h3 id=auth-tls-><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/authtls.go#L30>auth-tls-*</a><a class=headerlink href=#auth-tls- title="Permanent link"></a></h3> <ul> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/authtls.go#L37>should set valid auth-tls-secret</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/authtls.go#L73>should set valid auth-tls-secret, sslVerify to off, and sslVerifyDepth to 2</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/authtls.go#L103>should set valid auth-tls-secret, pass certificate to upstream, and error page</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/annotations/authtls.go#L153>should validate auth-tls-verify-client</a></li> </ul> <h3 id=status-status-update><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/status/update.go#L38>[Status] status update</a><a class=headerlink href=#status-status-update title="Permanent link"></a></h3> <ul> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/status/update.go#L43>should update status field after client-go reconnection</a></li> </ul> <h3 id=debug-cli><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/dbg/main.go#L29>Debug CLI</a><a class=headerlink href=#debug-cli title="Permanent link"></a></h3> <ul> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/dbg/main.go#L37>should list the backend servers</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/dbg/main.go#L56>should get information for a specific backend server</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/dbg/main.go#L85>should produce valid JSON for /dbg general</a></li> </ul> <h3 id=memory-leak-dynamic-certificates><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/leaks/lua_ssl.go#L35>[Memory Leak] Dynamic Certificates</a><a class=headerlink href=#memory-leak-dynamic-certificates title="Permanent link"></a></h3> <ul> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/leaks/lua_ssl.go#L42>should not leak memory from ingress SSL certificates or configuration updates</a></li> </ul> <h3 id=ingress-pathtype-mix-exact-and-prefix-paths><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/ingress/pathtype_mixed.go#L30>[Ingress] [PathType] mix Exact and Prefix paths</a><a class=headerlink href=#ingress-pathtype-mix-exact-and-prefix-paths title="Permanent link"></a></h3> <ul> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/ingress/pathtype_mixed.go#L39>should choose the correct location</a></li> </ul> <h3 id=ingress-definition-without-host><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/ingress/without_host.go#L32>[Ingress] definition without host</a><a class=headerlink href=#ingress-definition-without-host title="Permanent link"></a></h3> <ul> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/ingress/without_host.go#L35>should set ingress details variables for ingresses without a host</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/ingress/without_host.go#L56>should set ingress details variables for ingresses with host without IngressRuleValue, only Backend</a></li> </ul> <h3 id=single-ingress-multiple-hosts><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/ingress/multiple_rules.go#L31>single ingress - multiple hosts</a><a class=headerlink href=#single-ingress-multiple-hosts title="Permanent link"></a></h3> <ul> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/ingress/multiple_rules.go#L39>should set the correct $service_name NGINX variable</a></li> </ul> <h3 id=ingress-pathtype-exact><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/ingress/pathtype_exact.go#L30>[Ingress] [PathType] exact</a><a class=headerlink href=#ingress-pathtype-exact title="Permanent link"></a></h3> <ul> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/ingress/pathtype_exact.go#L37>should choose exact location for /exact</a></li> </ul> <h3 id=ingress-pathtype-prefix-checks><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/ingress/pathtype_prefix.go#L28>[Ingress] [PathType] prefix checks</a><a class=headerlink href=#ingress-pathtype-prefix-checks title="Permanent link"></a></h3> <ul> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/ingress/pathtype_prefix.go#L35>should return 404 when prefix /aaa does not match request /aaaccc</a></li> </ul> <h3 id=security-request-smuggling><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/security/request_smuggling.go#L32>[Security] request smuggling</a><a class=headerlink href=#security-request-smuggling title="Permanent link"></a></h3> <ul> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/security/request_smuggling.go#L39>should not return body content from error_page</a></li> </ul> <h3 id=ssl-flag-default-ssl-certificate><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/default_ssl_certificate.go#L33>[SSL] [Flag] default-ssl-certificate</a><a class=headerlink href=#ssl-flag-default-ssl-certificate title="Permanent link"></a></h3> <ul> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/default_ssl_certificate.go#L64>uses default ssl certificate for catch-all ingress</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/default_ssl_certificate.go#L80>uses default ssl certificate for host based ingress when configured certificate does not match host</a></li> </ul> <h3 id=enable-real-ip><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/enable_real_ip.go#L30>enable-real-ip</a><a class=headerlink href=#enable-real-ip title="Permanent link"></a></h3> <ul> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/enable_real_ip.go#L40>trusts X-Forwarded-For header only when setting is true</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/enable_real_ip.go#L78>should not trust X-Forwarded-For header when setting is false</a></li> </ul> <h3 id=access-log><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/access_log.go#L26>access-log</a><a class=headerlink href=#access-log title="Permanent link"></a></h3> <ul> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/access_log.go#L31>use the default configuration</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/access_log.go#L39>use the specified configuration</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/access_log.go#L51>use the specified configuration</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/access_log.go#L63>use the specified configuration</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/access_log.go#L75>use the specified configuration</a></li> </ul> <h3 id=lua-lua-shared-dicts><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/lua_shared_dicts.go#L26>[Lua] lua-shared-dicts</a><a class=headerlink href=#lua-lua-shared-dicts title="Permanent link"></a></h3> <ul> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/lua_shared_dicts.go#L29>configures lua shared dicts</a></li> </ul> <h3 id=server-tokens><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/server_tokens.go#L30>server-tokens</a><a class=headerlink href=#server-tokens title="Permanent link"></a></h3> <ul> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/server_tokens.go#L38>should not exists Server header in the response</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/server_tokens.go#L50>should exists Server header in the response when is enabled</a></li> </ul> <h3 id=use-proxy-protocol><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/proxy_protocol.go#L36>use-proxy-protocol</a><a class=headerlink href=#use-proxy-protocol title="Permanent link"></a></h3> <ul> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/proxy_protocol.go#L46>should respect port passed by the PROXY Protocol</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/proxy_protocol.go#L79>should respect proto passed by the PROXY Protocol server port</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/proxy_protocol.go#L112>should enable PROXY Protocol for HTTPS</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/proxy_protocol.go#L155>should enable PROXY Protocol for TCP</a></li> </ul> <h3 id=flag-custom-http-and-https-ports><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/listen_nondefault_ports.go#L32>[Flag] custom HTTP and HTTPS ports</a><a class=headerlink href=#flag-custom-http-and-https-ports title="Permanent link"></a></h3> <ul> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/listen_nondefault_ports.go#L48>should set X-Forwarded-Port headers accordingly when listening on a non-default HTTP port</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/listen_nondefault_ports.go#L70>should set X-Forwarded-Port header to 443</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/listen_nondefault_ports.go#L100>should set the X-Forwarded-Port header to 443</a></li> </ul> <h3 id=security-no-auth-locations><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/no_auth_locations.go#L34>[Security] no-auth-locations</a><a class=headerlink href=#security-no-auth-locations title="Permanent link"></a></h3> <ul> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/no_auth_locations.go#L55>should return status code 401 when accessing '/' unauthentication</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/no_auth_locations.go#L69>should return status code 200 when accessing '/' authentication</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/no_auth_locations.go#L83>should return status code 200 when accessing '/noauth' unauthenticated</a></li> </ul> <h3 id=dynamic-proxy_host><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/proxy_host.go#L28>Dynamic $proxy_host</a><a class=headerlink href=#dynamic-proxy_host title="Permanent link"></a></h3> <ul> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/proxy_host.go#L36>should exist a proxy_host</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/proxy_host.go#L57>should exist a proxy_host using the upstream-vhost annotation value</a></li> </ul> <h3 id=proxy-connect-timeout><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/proxy_connect_timeout.go#L28>proxy-connect-timeout</a><a class=headerlink href=#proxy-connect-timeout title="Permanent link"></a></h3> <ul> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/proxy_connect_timeout.go#L36>should set valid proxy timeouts using configmap values</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/proxy_connect_timeout.go#L52>should not set invalid proxy timeouts using configmap values</a></li> </ul> <h3 id=security-pod-security-policies><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/pod_security_policy.go#L40>[Security] Pod Security Policies</a><a class=headerlink href=#security-pod-security-policies title="Permanent link"></a></h3> <ul> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/pod_security_policy.go#L43>should be running with a Pod Security Policy</a></li> </ul> <h3 id=geoip2><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/geoip2.go#L29>Geoip2</a><a class=headerlink href=#geoip2 title="Permanent link"></a></h3> <ul> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/geoip2.go#L38>should only allow requests from specific countries</a></li> </ul> <h3 id=security-pod-security-policies-with-volumes><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/pod_security_policy_volumes.go#L36>[Security] Pod Security Policies with volumes</a><a class=headerlink href=#security-pod-security-policies-with-volumes title="Permanent link"></a></h3> <ul> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/pod_security_policy_volumes.go#L39>should be running with a Pod Security Policy</a></li> </ul> <h3 id=enable-multi-accept><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/multi_accept.go#L27>enable-multi-accept</a><a class=headerlink href=#enable-multi-accept title="Permanent link"></a></h3> <ul> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/multi_accept.go#L31>should be enabled by default</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/multi_accept.go#L39>should be enabled when set to true</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/multi_accept.go#L49>should be disabled when set to false</a></li> </ul> <h3 id=log-format-><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/log-format.go#L28>log-format-*</a><a class=headerlink href=#log-format- title="Permanent link"></a></h3> <ul> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/log-format.go#L40>should disable the log-format-escape-json by default</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/log-format.go#L47>should enable the log-format-escape-json</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/log-format.go#L55>should disable the log-format-escape-json</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/log-format.go#L66>log-format-escape-json enabled</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/log-format.go#L89>log-format-escape-json disabled</a></li> </ul> <h3 id=flag-ingress-class><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/ingress_class.go#L39>[Flag] ingress-class</a><a class=headerlink href=#flag-ingress-class title="Permanent link"></a></h3> <ul> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/ingress_class.go#L91>should ignore Ingress with class</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/ingress_class.go#L143>should ignore Ingress with no class</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/ingress_class.go#L177>should delete Ingress when class is removed</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/ingress_class.go#L216>check scenarios for IngressClass and ingress.class annotation</a></li> </ul> <h3 id=ssl-ciphers_1><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/ssl_ciphers.go#L28>ssl-ciphers</a><a class=headerlink href=#ssl-ciphers_1 title="Permanent link"></a></h3> <ul> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/ssl_ciphers.go#L31>Add ssl ciphers</a></li> </ul> <h3 id=proxy-next-upstream><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/proxy_next_upstream.go#L28>proxy-next-upstream</a><a class=headerlink href=#proxy-next-upstream title="Permanent link"></a></h3> <ul> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/proxy_next_upstream.go#L36>should build proxy next upstream using configmap values</a></li> </ul> <h3 id=security-global-auth-url><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/global_external_auth.go#L32>[Security] global-auth-url</a><a class=headerlink href=#security-global-auth-url title="Permanent link"></a></h3> <ul> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/global_external_auth.go#L83>should return status code 401 when request any protected service</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/global_external_auth.go#L100>should return status code 200 when request whitelisted (via no-auth-locations) service and 401 when request protected service</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/global_external_auth.go#L124>should return status code 200 when request whitelisted (via ingress annotation) service and 401 when request protected service</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/global_external_auth.go#L153>should still return status code 200 after auth backend is deleted using cache </a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/global_external_auth.go#L195></a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/global_external_auth.go#L208></a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/global_external_auth.go#L221></a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/global_external_auth.go#L235></a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/global_external_auth.go#L248></a></li> </ul> <h3 id=security-block-><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/global_access_block.go#L28>[Security] block-*</a><a class=headerlink href=#security-block- title="Permanent link"></a></h3> <ul> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/global_access_block.go#L38>should block CIDRs defined in the ConfigMap</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/global_access_block.go#L55>should block User-Agents defined in the ConfigMap</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/global_access_block.go#L88>should block Referers defined in the ConfigMap</a></li> </ul> <h3 id=plugins><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/plugins.go#L28>plugins</a><a class=headerlink href=#plugins title="Permanent link"></a></h3> <ul> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/plugins.go#L35>should exist a x-hello-world header</a></li> </ul> <h3 id=configmap-limit-rate><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/limit_rate.go#L28>Configmap - limit-rate</a><a class=headerlink href=#configmap-limit-rate title="Permanent link"></a></h3> <ul> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/limit_rate.go#L36>Check limit-rate config</a></li> </ul> <h3 id=configure-opentracing><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/opentracing.go#L47>Configure OpenTracing</a><a class=headerlink href=#configure-opentracing title="Permanent link"></a></h3> <ul> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/opentracing.go#L57>should not exists opentracing directive</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/opentracing.go#L70>should exists opentracing directive when is enabled</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/opentracing.go#L84>should not exists opentracing_operation_name directive when is empty</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/opentracing.go#L99>should exists opentracing_operation_name directive when is configured</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/opentracing.go#L114>should not exists opentracing_location_operation_name directive when is empty</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/opentracing.go#L129>should exists opentracing_location_operation_name directive when is configured</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/opentracing.go#L144>should enable opentracing using zipkin</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/opentracing.go#L156>should enable opentracing using jaeger</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/opentracing.go#L168>should enable opentracing using jaeger with sampler host</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/opentracing.go#L181>should propagate the w3c header when configured with jaeger</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/opentracing.go#L225>should enable opentracing using datadog</a></li> </ul> <h3 id=use-forwarded-headers><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/forwarded_headers.go#L30>use-forwarded-headers</a><a class=headerlink href=#use-forwarded-headers title="Permanent link"></a></h3> <ul> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/forwarded_headers.go#L40>should trust X-Forwarded headers when setting is true</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/forwarded_headers.go#L90>should not trust X-Forwarded headers when setting is false</a></li> </ul> <h3 id=proxy-send-timeout><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/proxy_send_timeout.go#L28>proxy-send-timeout</a><a class=headerlink href=#proxy-send-timeout title="Permanent link"></a></h3> <ul> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/proxy_send_timeout.go#L36>should set valid proxy send timeouts using configmap values</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/proxy_send_timeout.go#L52>should not set invalid proxy send timeouts using configmap values</a></li> </ul> <h3 id=add-no-tls-redirect-locations><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/no_tls_redirect_locations.go#L28>Add no tls redirect locations</a><a class=headerlink href=#add-no-tls-redirect-locations title="Permanent link"></a></h3> <ul> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/no_tls_redirect_locations.go#L31>Check no tls redirect locations config</a></li> </ul> <h3 id=settings-global-rate-limit><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/globalratelimit.go#L30>settings-global-rate-limit</a><a class=headerlink href=#settings-global-rate-limit title="Permanent link"></a></h3> <ul> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/globalratelimit.go#L38>generates correct NGINX configuration</a></li> </ul> <h3 id=add-headers><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/custom_header.go#L30>add-headers</a><a class=headerlink href=#add-headers title="Permanent link"></a></h3> <ul> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/custom_header.go#L40>Add a custom header</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/custom_header.go#L65>Add multiple custom headers</a></li> </ul> <h3 id=hash-size><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/hash-size.go#L27>hash size</a><a class=headerlink href=#hash-size title="Permanent link"></a></h3> <ul> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/hash-size.go#L40>should set server_names_hash_bucket_size</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/hash-size.go#L48>should set server_names_hash_max_size</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/hash-size.go#L60>should set proxy-headers-hash-bucket-size</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/hash-size.go#L68>should set proxy-headers-hash-max-size</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/hash-size.go#L80>should set variables-hash-bucket-size</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/hash-size.go#L88>should set variables-hash-max-size</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/hash-size.go#L100>should set vmap-hash-bucket-size</a></li> </ul> <h3 id=keep-alive-keep-alive-requests><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/keep-alive.go#L28>keep-alive keep-alive-requests</a><a class=headerlink href=#keep-alive-keep-alive-requests title="Permanent link"></a></h3> <ul> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/keep-alive.go#L40>should set keepalive_timeout</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/keep-alive.go#L48>should set keepalive_requests</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/keep-alive.go#L59>should set keepalive connection to upstream server</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/keep-alive.go#L68>should set keep alive connection timeout to upstream server</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/keep-alive.go#L77>should set the request count to upstream server through one keep alive connection</a></li> </ul> <h3 id=flag-disable-catch-all><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/disable_catch_all.go#L34>[Flag] disable-catch-all</a><a class=headerlink href=#flag-disable-catch-all title="Permanent link"></a></h3> <ul> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/disable_catch_all.go#L51>should ignore catch all Ingress</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/disable_catch_all.go#L70>should delete Ingress updated to catch-all</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/disable_catch_all.go#L108>should allow Ingress with both a default backend and rules</a></li> </ul> <h3 id=main-snippet><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/main_snippet.go#L27>main-snippet</a><a class=headerlink href=#main-snippet title="Permanent link"></a></h3> <ul> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/main_snippet.go#L31>should add value of main-snippet setting to nginx config</a></li> </ul> <h3 id=ssl-tls-protocols-ciphers-and-headers><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/tls.go#L31>[SSL] TLS protocols, ciphers and headers)</a><a class=headerlink href=#ssl-tls-protocols-ciphers-and-headers title="Permanent link"></a></h3> <ul> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/tls.go#L65>setting cipher suite</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/tls.go#L87>enforcing TLS v1.0</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/tls.go#L133>setting max-age parameter</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/tls.go#L149>setting includeSubDomains parameter</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/tls.go#L168>setting preload parameter</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/tls.go#L188>overriding what's set from the upstream</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/tls.go#L209>should not use ports during the HTTP to HTTPS redirection</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/tls.go#L227>should not use ports or X-Forwarded-Host during the HTTP to HTTPS redirection</a></li> </ul> <h3 id=configmap-change><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/configmap_change.go#L29>Configmap change</a><a class=headerlink href=#configmap-change title="Permanent link"></a></h3> <ul> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/configmap_change.go#L36>should reload after an update in the configuration</a></li> </ul> <h3 id=proxy-read-timeout><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/proxy_read_timeout.go#L28>proxy-read-timeout</a><a class=headerlink href=#proxy-read-timeout title="Permanent link"></a></h3> <ul> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/proxy_read_timeout.go#L36>should set valid proxy read timeouts using configmap values</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/proxy_read_timeout.go#L52>should not set invalid proxy read timeouts using configmap values</a></li> </ul> <h3 id=security-modsecurity-snippet><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/modsecurity_snippet.go#L27>[Security] modsecurity-snippet</a><a class=headerlink href=#security-modsecurity-snippet title="Permanent link"></a></h3> <ul> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/modsecurity_snippet.go#L30>should add value of modsecurity-snippet setting to nginx config</a></li> </ul> <h3 id=ocsp><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/ocsp/ocsp.go#L42>OCSP</a><a class=headerlink href=#ocsp title="Permanent link"></a></h3> <ul> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/ocsp/ocsp.go#L49>should enable OCSP and contain stapling information in the connection</a></li> </ul> <h3 id=reuse-port><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/reuse-port.go#L27>reuse-port</a><a class=headerlink href=#reuse-port title="Permanent link"></a></h3> <ul> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/reuse-port.go#L38>reuse port should be enabled by default</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/reuse-port.go#L44>reuse port should be disabled</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/settings/reuse-port.go#L52>reuse port should be enabled</a></li> </ul> <h3 id=shutdown-graceful-shutdown-with-pending-request><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/gracefulshutdown/slow_requests.go#L28>[Shutdown] Graceful shutdown with pending request</a><a class=headerlink href=#shutdown-graceful-shutdown-with-pending-request title="Permanent link"></a></h3> <ul> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/gracefulshutdown/slow_requests.go#L36>should let slow requests finish before shutting down</a></li> </ul> <h3 id=shutdown-ingress-controller><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/gracefulshutdown/shutdown.go#L33>[Shutdown] ingress controller</a><a class=headerlink href=#shutdown-ingress-controller title="Permanent link"></a></h3> <ul> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/gracefulshutdown/shutdown.go#L43>should shutdown in less than 60 secons without pending connections</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/gracefulshutdown/shutdown.go#L64>should shutdown after waiting 60 seconds for pending connections to be closed</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/gracefulshutdown/shutdown.go#L109>should shutdown after waiting 150 seconds for pending connections to be closed</a></li> </ul> <h3 id=service-backend-status-code-503><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/servicebackend/service_backend.go#L32>[Service] backend status code 503</a><a class=headerlink href=#service-backend-status-code-503 title="Permanent link"></a></h3> <ul> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/servicebackend/service_backend.go#L35>should return 503 when backend service does not exist</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/servicebackend/service_backend.go#L53>should return 503 when all backend service endpoints are unavailable</a></li> </ul> <h3 id=service-type-externalname><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/servicebackend/service_externalname.go#L37>[Service] Type ExternalName</a><a class=headerlink href=#service-type-externalname title="Permanent link"></a></h3> <ul> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/servicebackend/service_externalname.go#L40>works with external name set to incomplete fqdn</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/servicebackend/service_externalname.go#L73>should return 200 for service type=ExternalName without a port defined</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/servicebackend/service_externalname.go#L107>should return 200 for service type=ExternalName with a port defined</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/servicebackend/service_externalname.go#L148>should return status 502 for service type=ExternalName with an invalid host</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/servicebackend/service_externalname.go#L179>should return 200 for service type=ExternalName using a port name</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/servicebackend/service_externalname.go#L221>should return 200 for service type=ExternalName using FQDN with trailing dot</a></li> <li><a href=https://github.com/kubernetes/ingress-nginx/tree/master/test/e2e/servicebackend/service_externalname.go#L252>should update the external name after a service update</a></li> </ul> </article> </div> </div> </main> <footer class=md-footer> <div class=md-footer-nav> <nav class="md-footer-nav__inner md-grid" aria-label=Footer> <a href=../development/ class="md-footer-nav__link md-footer-nav__link--prev" rel=prev> <div class="md-footer-nav__button md-icon"> <svg xmlns=http://www.w3.org/2000/svg viewbox="0 0 24 24"><path d="M20 11v2H8l5.5 5.5-1.42 1.42L4.16 12l7.92-7.92L13.5 5.5 8 11h12z"/></svg> </div> <div class=md-footer-nav__title> <div class=md-ellipsis> <span class=md-footer-nav__direction> Previous </span> None </div> </div> </a> <a href=../how-it-works/ class="md-footer-nav__link md-footer-nav__link--next" rel=next> <div class=md-footer-nav__title> <div class=md-ellipsis> <span class=md-footer-nav__direction> Next </span> None </div> </div> <div class="md-footer-nav__button md-icon"> <svg xmlns=http://www.w3.org/2000/svg viewbox="0 0 24 24"><path d="M4 11v2h12l-5.5 5.5 1.42 1.42L19.84 12l-7.92-7.92L10.5 5.5 16 11H4z"/></svg> </div> </a> </nav> </div> <div class="md-footer-meta md-typeset"> <div class="md-footer-meta__inner md-grid"> <div class=md-footer-copyright> Made with <a href=https://squidfunk.github.io/mkdocs-material/ target=_blank rel=noopener> Material for MkDocs </a> </div> </div> </div> </footer> </div> <script src=../assets/javascripts/vendor.93c04032.min.js></script> <script src=../assets/javascripts/bundle.83e5331e.min.js></script><script id=__lang type=application/json>{"clipboard.copy": "Copy to clipboard", "clipboard.copied": "Copied to clipboard", "search.config.lang": "en", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.placeholder": "Search", "search.result.placeholder": "Type to start searching", "search.result.none": "No matching documents", "search.result.one": "1 matching document", "search.result.other": "# matching documents", "search.result.more.one": "1 more on this page", "search.result.more.other": "# more on this page", "search.result.term.missing": "Missing"}</script> <script>
app = initialize({
base: "..",
features: ['navigation.tabs', 'navigation.tabs.sticky', 'navigation.instant', 'navigation.sections'],
search: Object.assign({
worker: "../assets/javascripts/worker/search.8c7e0a7e.min.js"
}, typeof search !== "undefined" && search)
})
</script> </body> </html>