This file defines a list of annotations which are supported by various Ingress controllers (both those based on the common ingress code, and alternative implementations).
The intention is to ensure the maximum amount of compatibility between different implementations.
All annotations are assumed to be prefixed with `ingress.kubernetes.io/` except where otherwise specified.
There is no attempt to record implementation-specific annotations using other prefixes.
(Traefik in particular defines several of its own annotations which are not described here, and does not seem to support any of the standard annotations.)
| `auth-satisfy` | Behaviour when more than one of `auth-type`, `auth-tls-secret` or `whitelist-source-range` are configured: `all` or `any`. | `all` | trafficserver | `trafficserver`
| `whitelist-source-range` | Comma-separate list of IP addresses to enable access to. | | nginx, haproxy, trafficserver
| `follow-redirects` | Follow HTTP redirects in the response and deliver the redirect target to the client. | | trafficserver
| `kubernetes.io/ingress.global-static-ip-name` | Name of the static global IP address in GCP to use when provisioning the HTTPS load balancer. | empty string | gce
[1] The documentation for the `nginx` controller says that only one of `limit-connections` or `limit-rps` may be specified; it's not clear why this is.
| `cache-enable` | Cache responses according to Expires or Cache-Control headers. | | trafficserver
| `cache-generation` | An arbitrary numeric value included in the cache key; changing this effectively clears the cache for this ingress. | | trafficserver
| `cache-ignore-query-params` | Space-separate list of globs matching URL parameters to ignore when doing cache lookups. | | trafficserver
| `cache-whitelist-query-params` | Ignore any URL parameters not in this whitespace-separate list of globs. | | trafficserver
| `cache-sort-query-params` | Lexically sort the query parameters by name before cache lookup. | | trafficserver
| `cache-ignore-cookies` | Requests containing a `Cookie:` header will not use the cache unless all the cookie names match this whitespace-separate list of globs. | | trafficserver