add a way to configure the `proxy_cache_*` [1] directive for external-auth.
The user-defined cache_key may contain sensitive information
(e.g. Authorization header).
We want to store *only* a hash of that key, not the key itself on disk.
[1] http://nginx.org/en/docs/http/ngx_http_proxy_module.html#proxy_cache_key
Signed-off-by: Moritz Johner <beller.moritz@googlemail.com>
* related to:
* https://github.com/kubernetes/ingress-nginx/issues/3070
* https://github.com/kubernetes/ingress-nginx/issues/3335
* add a 503 test
* test a service that starts out empty
(a.k.a. ingress-nginx controller (re-)start)
* test scaling up (should route traffic accordingly)
* test scaling down to empty service
* use custom deployments for scaling test.
* provide a fix by updating the lua table (cache) of the configured backends
to unset the backend if there are no endpoints available.