├── .ct.yaml ├── .gcloudignore ├── .github ├── ISSUE_TEMPLATE │ ├── bug_report.md │ ├── config.yml │ ├── cve_report.md │ └── feature_request.md ├── PULL_REQUEST_TEMPLATE.md ├── actions │ └── mkdocs │ │ ├── Dockerfile │ │ ├── action.sh │ │ └── action.yml ├── dependabot.yml └── workflows │ ├── chart.yaml │ ├── ci.yaml │ ├── depreview.yaml │ ├── docs.yaml │ ├── golangci-lint.yml │ ├── images.yaml │ ├── junit-reports.yaml │ ├── perftest.yaml │ ├── plugin.yaml │ ├── project.yml │ ├── scorecards.yml │ ├── stale.yaml │ ├── vulnerability-scans.yaml │ ├── zz-tmpl-images.yaml │ └── zz-tmpl-k8s-e2e.yaml ├── .gitignore ├── .golangci.yml ├── .goreleaser.yaml ├── .luacheckrc ├── CONTRIBUTING.md ├── Changelog.md ├── GOLANG_VERSION ├── ISSUE_TRIAGE.md ├── LICENSE ├── MANUAL_RELEASE.md ├── Makefile ├── NEW_CONTRIBUTOR.md ├── NEW_RELEASE_PROCESS.md ├── NGINX_BASE ├── OWNERS ├── OWNERS_ALIASES ├── README.md ├── SECURITY.md ├── SECURITY_CONTACTS ├── build ├── build.sh ├── cover.sh ├── dev-env.sh ├── kind.yaml ├── run-in-docker.sh └── run-ingress-controller.sh ├── changelog ├── controller-1.10.0.md ├── controller-1.10.1.md ├── controller-1.10.2.md ├── controller-1.10.3.md ├── controller-1.10.4.md ├── controller-1.10.5.md ├── controller-1.10.6.md ├── controller-1.11.0.md ├── controller-1.11.1.md ├── controller-1.11.2.md ├── controller-1.11.3.md ├── controller-1.11.4.md ├── controller-1.11.5.md ├── controller-1.11.6.md ├── controller-1.12.0-beta.0.md ├── controller-1.12.0.md ├── controller-1.12.1.md ├── controller-1.12.2.md ├── controller-1.6.4.md ├── controller-1.7.0.md ├── controller-1.7.1.md ├── controller-1.8.0.md ├── controller-1.8.1.md ├── controller-1.8.2.md ├── controller-1.9.0-beta.0.md ├── controller-1.9.0.md ├── controller-1.9.1.md ├── controller-1.9.3.md ├── controller-1.9.4.md ├── controller-1.9.5.md ├── controller-1.9.6.md └── controller.md.gotmpl ├── charts └── ingress-nginx │ ├── .helmignore │ ├── Chart.yaml │ ├── OWNERS │ ├── README.md │ ├── README.md.gotmpl │ ├── changelog │ ├── helm-chart-2.10.0.md │ ├── helm-chart-2.11.0.md │ ├── helm-chart-2.11.1.md │ ├── helm-chart-2.11.2.md │ ├── helm-chart-2.11.3.md │ ├── helm-chart-2.12.0.md │ ├── helm-chart-2.12.1.md │ ├── helm-chart-2.13.0.md │ ├── helm-chart-2.14.0.md │ ├── helm-chart-2.15.0.md │ ├── helm-chart-2.16.0.md │ ├── helm-chart-2.9.0.md │ ├── helm-chart-2.9.1.md │ ├── helm-chart-3.0.0.md │ ├── helm-chart-3.10.0.md │ ├── helm-chart-3.10.1.md │ ├── helm-chart-3.11.0.md │ ├── helm-chart-3.11.1.md │ ├── helm-chart-3.12.0.md │ ├── helm-chart-3.13.0.md │ ├── helm-chart-3.14.0.md │ ├── helm-chart-3.15.0.md │ ├── helm-chart-3.15.1.md │ ├── helm-chart-3.16.0.md │ ├── helm-chart-3.16.1.md │ ├── helm-chart-3.17.0.md │ ├── helm-chart-3.18.0.md │ ├── helm-chart-3.19.0.md │ ├── helm-chart-3.20.0.md │ ├── helm-chart-3.20.1.md │ ├── helm-chart-3.21.0.md │ ├── helm-chart-3.22.0.md │ ├── helm-chart-3.23.0.md │ ├── helm-chart-3.24.0.md │ ├── helm-chart-3.25.0.md │ ├── helm-chart-3.26.0.md │ ├── helm-chart-3.27.0.md │ ├── helm-chart-3.28.0.md │ ├── helm-chart-3.29.0.md │ ├── helm-chart-3.3.0.md │ ├── helm-chart-3.3.1.md │ ├── helm-chart-3.30.0.md │ ├── helm-chart-3.31.0.md │ ├── helm-chart-3.32.0.md │ ├── helm-chart-3.33.0.md │ ├── helm-chart-3.34.0.md │ ├── helm-chart-3.4.0.md │ ├── helm-chart-3.5.0.md │ ├── helm-chart-3.5.1.md │ ├── helm-chart-3.6.0.md │ ├── helm-chart-3.7.0.md │ ├── helm-chart-3.7.1.md │ ├── helm-chart-3.8.0.md │ ├── helm-chart-3.9.0.md │ ├── helm-chart-4.0.1.md │ ├── helm-chart-4.0.10.md │ ├── helm-chart-4.0.11.md │ ├── helm-chart-4.0.12.md │ ├── helm-chart-4.0.13.md │ ├── helm-chart-4.0.14.md │ ├── helm-chart-4.0.15.md │ ├── helm-chart-4.0.18.md │ ├── helm-chart-4.0.2.md │ ├── helm-chart-4.0.3.md │ ├── helm-chart-4.0.5.md │ ├── helm-chart-4.0.6.md │ ├── helm-chart-4.0.7.md │ ├── helm-chart-4.0.9.md │ ├── helm-chart-4.1.0.md │ ├── helm-chart-4.1.2.md │ ├── helm-chart-4.10.0.md │ ├── helm-chart-4.10.1.md │ ├── helm-chart-4.10.2.md │ ├── helm-chart-4.10.3.md │ ├── helm-chart-4.10.4.md │ ├── helm-chart-4.10.5.md │ ├── helm-chart-4.10.6.md │ ├── helm-chart-4.11.0.md │ ├── helm-chart-4.11.1.md │ ├── helm-chart-4.11.2.md │ ├── helm-chart-4.11.3.md │ ├── helm-chart-4.11.4.md │ ├── helm-chart-4.11.5.md │ ├── helm-chart-4.11.6.md │ ├── helm-chart-4.12.0-beta.0.md │ ├── helm-chart-4.12.0.md │ ├── helm-chart-4.12.1.md │ ├── helm-chart-4.12.2.md │ ├── helm-chart-4.2.0.md │ ├── helm-chart-4.2.1.md │ ├── helm-chart-4.3.0.md │ ├── helm-chart-4.4.0.md │ ├── helm-chart-4.5.2.md │ ├── helm-chart-4.6.0.md │ ├── helm-chart-4.6.1.md │ ├── helm-chart-4.7.0.md │ ├── helm-chart-4.7.1.md │ ├── helm-chart-4.7.2.md │ ├── helm-chart-4.8.0-beta.0.md │ ├── helm-chart-4.8.0.md │ ├── helm-chart-4.8.1.md │ ├── helm-chart-4.8.2.md │ ├── helm-chart-4.8.3.md │ ├── helm-chart-4.9.0.md │ ├── helm-chart-4.9.1.md │ └── helm-chart.md.gotmpl │ ├── ci │ ├── admission-webhooks-cert-manager-values.yaml │ ├── controller-configmap-addheaders-values.yaml │ ├── controller-configmap-proxyheaders-values.yaml │ ├── controller-configmap-values.yaml │ ├── controller-daemonset-metrics-values.yaml │ ├── controller-daemonset-podannotations-values.yaml │ ├── controller-daemonset-values.yaml │ ├── controller-deployment-metrics-values.yaml │ ├── controller-deployment-podannotations-values.yaml │ ├── controller-deployment-values.yaml │ ├── controller-hpa-values.yaml │ ├── controller-ingressclass-values.yaml │ ├── controller-service-internal-values.yaml │ └── controller-service-values.yaml │ ├── templates │ ├── NOTES.txt │ ├── _helpers.tpl │ ├── _params.tpl │ ├── admission-webhooks │ │ ├── cert-manager.yaml │ │ ├── job-patch │ │ │ ├── clusterrole.yaml │ │ │ ├── clusterrolebinding.yaml │ │ │ ├── job-createSecret.yaml │ │ │ ├── job-patchWebhook.yaml │ │ │ ├── networkpolicy.yaml │ │ │ ├── role.yaml │ │ │ ├── rolebinding.yaml │ │ │ └── serviceaccount.yaml │ │ └── validating-webhook.yaml │ ├── clusterrole.yaml │ ├── clusterrolebinding.yaml │ ├── controller-configmap-addheaders.yaml │ ├── controller-configmap-proxyheaders.yaml │ ├── controller-configmap-tcp.yaml │ ├── controller-configmap-udp.yaml │ ├── controller-configmap.yaml │ ├── controller-daemonset.yaml │ ├── controller-deployment.yaml │ ├── controller-hpa.yaml │ ├── controller-ingressclass-aliases.yaml │ ├── controller-ingressclass.yaml │ ├── controller-keda.yaml │ ├── controller-networkpolicy.yaml │ ├── controller-poddisruptionbudget.yaml │ ├── controller-prometheusrule.yaml │ ├── controller-role.yaml │ ├── controller-rolebinding.yaml │ ├── controller-secret.yaml │ ├── controller-service-internal.yaml │ ├── controller-service-metrics.yaml │ ├── controller-service-webhook.yaml │ ├── controller-service.yaml │ ├── controller-serviceaccount.yaml │ ├── controller-servicemonitor.yaml │ ├── default-backend-deployment.yaml │ ├── default-backend-extra-configmaps.yaml │ ├── default-backend-hpa.yaml │ ├── default-backend-networkpolicy.yaml │ ├── default-backend-poddisruptionbudget.yaml │ ├── default-backend-service.yaml │ └── default-backend-serviceaccount.yaml │ ├── tests │ ├── admission-webhooks │ │ ├── cert-manager_test.yaml │ │ ├── job-patch │ │ │ ├── clusterrole_test.yaml │ │ │ ├── clusterrolebinding_test.yaml │ │ │ ├── job-createSecret_test.yaml │ │ │ ├── job-patchWebhook_test.yaml │ │ │ ├── role_test.yaml │ │ │ ├── rolebinding_test.yaml │ │ │ └── serviceaccount_test.yaml │ │ └── validating-webhook_test.yaml │ ├── controller-configmap-addheaders_test.yaml │ ├── controller-configmap-proxyheaders_test.yaml │ ├── controller-configmap_test.yaml │ ├── controller-daemonset_test.yaml │ ├── controller-deployment_test.yaml │ ├── controller-hpa_test.yaml │ ├── controller-ingressclass-aliases_test.yaml │ ├── controller-ingressclass_test.yaml │ ├── controller-keda_test.yaml │ ├── controller-networkpolicy_test.yaml │ ├── controller-poddisruptionbudget_test.yaml │ ├── controller-prometheusrule_test.yaml │ ├── controller-service-internal_test.yaml │ ├── controller-service-metrics_test.yaml │ ├── controller-service-webhook_test.yaml │ ├── controller-service_test.yaml │ ├── controller-serviceaccount_test.yaml │ ├── controller-servicemonitor_test.yaml │ ├── default-backend-deployment_test.yaml │ ├── default-backend-extra-configmaps_test.yaml │ ├── default-backend-poddisruptionbudget_test.yaml │ ├── default-backend-service_test.yaml │ └── default-backend-serviceaccount_test.yaml │ └── values.yaml ├── cloudbuild.yaml ├── cmd ├── annotations │ ├── annotations.tmpl │ └── main.go ├── dataplane │ └── main.go ├── dbg │ └── main.go ├── nginx │ ├── logger.go │ ├── main.go │ └── main_test.go ├── plugin │ ├── commands │ │ ├── backends │ │ │ └── backends.go │ │ ├── certs │ │ │ └── certs.go │ │ ├── conf │ │ │ └── conf.go │ │ ├── exec │ │ │ └── exec.go │ │ ├── general │ │ │ └── general.go │ │ ├── info │ │ │ └── info.go │ │ ├── ingresses │ │ │ ├── ingresses.go │ │ │ └── ingresses_test.go │ │ ├── lint │ │ │ └── main.go │ │ ├── logs │ │ │ └── logs.go │ │ └── ssh │ │ │ └── ssh.go │ ├── krew.yaml │ ├── kubectl │ │ └── kubectl.go │ ├── lints │ │ ├── deployment.go │ │ └── ingress.go │ ├── main.go │ ├── request │ │ └── request.go │ └── util │ │ └── util.go └── waitshutdown │ └── main.go ├── code-of-conduct.md ├── deploy ├── README.md ├── grafana │ ├── dashboards │ │ ├── .markdownlint.json │ │ ├── README.md │ │ ├── nginx.json │ │ ├── request-handling-performance.json │ │ ├── request-handling.png │ │ └── screenshot.png │ ├── deployment.yaml │ ├── kustomization.yaml │ └── service.yaml ├── prometheus │ ├── deployment.yaml │ ├── kustomization.yaml │ ├── prometheus.yaml │ ├── role-binding.yaml │ ├── role.yaml │ ├── service-account.yaml │ └── service.yaml └── static │ └── provider │ ├── aws │ ├── deploy.yaml │ ├── kustomization.yaml │ └── nlb-with-tls-termination │ │ ├── deploy.yaml │ │ └── kustomization.yaml │ ├── baremetal │ ├── deploy.yaml │ └── kustomization.yaml │ ├── cloud │ ├── deploy.yaml │ └── kustomization.yaml │ ├── do │ ├── deploy.yaml │ └── kustomization.yaml │ ├── exoscale │ ├── deploy.yaml │ └── kustomization.yaml │ ├── kind │ ├── deploy.yaml │ └── kustomization.yaml │ ├── oracle │ ├── deploy.yaml │ └── kustomization.yaml │ └── scw │ ├── deploy.yaml │ └── kustomization.yaml ├── docs ├── OWNERS ├── deploy │ ├── baremetal.md │ ├── hardening-guide.md │ ├── index.md │ ├── rbac.md │ └── upgrade.md ├── developer-guide │ ├── code-overview.md │ └── getting-started.md ├── e2e-tests.md ├── enhancements │ ├── 20190724-only-dynamic-ssl.md │ ├── 20190815-zone-aware-routing.md │ ├── 20231001-split-containers.md │ ├── README.md │ └── YYYYMMDD-kep-template.md ├── examples │ ├── PREREQUISITES.md │ ├── affinity │ │ └── cookie │ │ │ ├── README.md │ │ │ ├── ingress-samesite.yaml │ │ │ └── ingress.yaml │ ├── auth │ │ ├── basic │ │ │ └── README.md │ │ ├── client-certs │ │ │ ├── README.md │ │ │ └── ingress.yaml │ │ ├── external-auth │ │ │ ├── README.md │ │ │ └── ingress.yaml │ │ └── oauth-external-auth │ │ │ ├── README.md │ │ │ ├── images │ │ │ ├── dashboard.png │ │ │ ├── github-auth.png │ │ │ ├── oauth-login.png │ │ │ ├── register-oauth-app-2.png │ │ │ └── register-oauth-app.png │ │ │ ├── oauth2-proxy.yaml │ │ │ └── vouch-proxy.yaml │ ├── canary │ │ └── README.md │ ├── chashsubset │ │ └── deployment.yaml │ ├── customization │ │ ├── configuration-snippets │ │ │ ├── README.md │ │ │ └── ingress.yaml │ │ ├── custom-configuration │ │ │ ├── README.md │ │ │ └── configmap.yaml │ │ ├── custom-errors │ │ │ ├── README.md │ │ │ ├── custom-default-backend-error_pages.configMap.yaml │ │ │ ├── custom-default-backend.helm.values.yaml │ │ │ └── custom-default-backend.yaml │ │ ├── custom-headers │ │ │ ├── README.md │ │ │ ├── configmap-client-response.yaml │ │ │ ├── configmap.yaml │ │ │ └── custom-headers.yaml │ │ ├── external-auth-headers │ │ │ ├── README.md │ │ │ ├── auth-service.yaml │ │ │ └── echo-service.yaml │ │ ├── jwt │ │ │ └── README.md │ │ ├── ssl-dh-param │ │ │ ├── README.md │ │ │ ├── configmap.yaml │ │ │ └── ssl-dh-param.yaml │ │ └── sysctl │ │ │ ├── README.md │ │ │ └── patch.json │ ├── docker-registry │ │ ├── README.md │ │ ├── deployment.yaml │ │ ├── ingress-with-tls.yaml │ │ └── ingress-without-tls.yaml │ ├── grpc │ │ └── README.md │ ├── http-svc.yaml │ ├── index.md │ ├── multi-tls │ │ ├── README.md │ │ └── multi-tls.yaml │ ├── openpolicyagent │ │ ├── README.md │ │ ├── rule.yaml │ │ ├── template.yaml │ │ └── tests │ │ │ ├── should-allow-ns-except.yaml │ │ │ ├── should-allow.yaml │ │ │ └── should-deny.yaml │ ├── rewrite │ │ └── README.md │ ├── static-ip │ │ ├── README.md │ │ ├── nginx-ingress-controller.yaml │ │ ├── nginx-ingress.yaml │ │ └── static-ip-svc.yaml │ └── tls-termination │ │ ├── README.md │ │ └── ingress.yaml ├── extra.css ├── faq.md ├── how-it-works.md ├── images │ ├── baremetal │ │ ├── baremetal_overview.gliffy │ │ ├── baremetal_overview.jpg │ │ ├── cloud_overview.gliffy │ │ ├── cloud_overview.jpg │ │ ├── hostnetwork.gliffy │ │ ├── hostnetwork.jpg │ │ ├── metallb.gliffy │ │ ├── metallb.jpg │ │ ├── nodeport.gliffy │ │ ├── nodeport.jpg │ │ ├── user_edge.gliffy │ │ └── user_edge.jpg │ ├── elb-l7-listener.png │ ├── grafana-dashboard1.png │ ├── grafana.png │ ├── jaeger-demo.png │ ├── otel-grafana-demo.png │ ├── otel-jaeger-demo.png │ ├── otel-zipkin-demo.png │ ├── prometheus-dashboard.png │ ├── prometheus-dashboard1.png │ └── zipkin-demo.png ├── index.md ├── kubectl-plugin.md ├── lua_tests.md ├── requirements.txt ├── troubleshooting.md └── user-guide │ ├── basic-usage.md │ ├── cli-arguments.md │ ├── convert_arguments_to_doc.py │ ├── custom-errors.md │ ├── default-backend.md │ ├── exposing-tcp-udp-services.md │ ├── external-articles.md │ ├── fcgi-services.md │ ├── ingress-path-matching.md │ ├── k8s-122-migration.md │ ├── miscellaneous.md │ ├── monitoring.md │ ├── multiple-ingress.md │ ├── nginx-configuration │ ├── annotations-risk.md │ ├── annotations.md │ ├── configmap.md │ ├── custom-template.md │ ├── index.md │ └── log-format.md │ ├── third-party-addons │ ├── modsecurity.md │ └── opentelemetry.md │ └── tls.md ├── ginkgo_upgrade.md ├── go.mod ├── go.sum ├── hack ├── .tool-versions ├── add-namespace.py ├── boilerplate │ ├── boilerplate.generated.go.txt │ ├── boilerplate.go.txt │ ├── boilerplate.py │ ├── boilerplate.py.txt │ └── boilerplate.sh.txt ├── generate-deploy-scripts.sh ├── kube-env.sh ├── manifest-templates │ ├── common │ │ ├── kustomization.yaml │ │ └── namespace.yaml │ ├── provider │ │ ├── aws │ │ │ ├── kustomization.yaml │ │ │ ├── nlb-with-tls-termination │ │ │ │ ├── kustomization.yaml │ │ │ │ └── values.yaml │ │ │ └── values.yaml │ │ ├── baremetal │ │ │ ├── kustomization.yaml │ │ │ └── values.yaml │ │ ├── cloud │ │ │ ├── kustomization.yaml │ │ │ └── values.yaml │ │ ├── do │ │ │ ├── kustomization.yaml │ │ │ └── values.yaml │ │ ├── exoscale │ │ │ ├── kustomization.yaml │ │ │ └── values.yaml │ │ ├── kind │ │ │ ├── kustomization.yaml │ │ │ └── values.yaml │ │ ├── oracle │ │ │ ├── kustomization.yaml │ │ │ └── values.yaml │ │ └── scw │ │ │ ├── kustomization.yaml │ │ │ └── values.yaml │ └── static-kustomization-template.yaml ├── print-e2e-suite.sh ├── tools.go ├── update-annotation-doc.sh ├── update-codegen.sh ├── update-toc.sh ├── verify-all.sh ├── verify-annotation-docs.sh ├── verify-boilerplate.sh ├── verify-codegen.sh ├── verify-gofmt.sh ├── verify-golint.sh └── verify-lualint.sh ├── images ├── Makefile ├── README.md ├── cfssl │ ├── TAG │ ├── cloudbuild.yaml │ └── rootfs │ │ └── Dockerfile ├── custom-error-pages │ ├── TAG │ ├── cloudbuild.yaml │ └── rootfs │ │ ├── Dockerfile │ │ ├── etc │ │ └── mime.types │ │ ├── go.mod │ │ ├── go.sum │ │ ├── main.go │ │ ├── metrics.go │ │ └── www │ │ ├── 404.html │ │ ├── 404.json │ │ ├── 4xx.html │ │ ├── 4xx.json │ │ ├── 500.html │ │ ├── 500.json │ │ ├── 5xx.html │ │ └── 5xx.json ├── e2e-test-echo │ ├── EXTRAARGS │ ├── TAG │ ├── cloudbuild.yaml │ └── rootfs │ │ ├── Dockerfile │ │ └── nginx.conf ├── ext-auth-example-authsvc │ ├── TAG │ └── rootfs │ │ ├── Dockerfile │ │ ├── authsvc.go │ │ ├── go.mod │ │ └── go.sum ├── fastcgi-helloserver │ ├── TAG │ ├── cloudbuild.yaml │ └── rootfs │ │ ├── Dockerfile │ │ ├── go.mod │ │ └── main.go ├── go-grpc-greeter-server │ ├── TAG │ └── rootfs │ │ ├── Dockerfile │ │ ├── go.mod │ │ ├── go.sum │ │ └── main.go ├── httpbun │ ├── TAG │ ├── cloudbuild.yaml │ └── rootfs │ │ └── Dockerfile ├── kube-webhook-certgen │ ├── README.md │ ├── TAG │ ├── cloudbuild.yaml │ ├── hack │ │ ├── e2e.sh │ │ └── e2e.yaml │ └── rootfs │ │ ├── .gitignore │ │ ├── Dockerfile │ │ ├── LICENSE │ │ ├── README.md │ │ ├── cmd │ │ ├── create.go │ │ ├── patch.go │ │ ├── patch_test.go │ │ ├── root.go │ │ └── version.go │ │ ├── core │ │ └── version.go │ │ ├── go.mod │ │ ├── go.sum │ │ ├── main.go │ │ └── pkg │ │ ├── certs │ │ ├── certs.go │ │ └── certs_test.go │ │ └── k8s │ │ ├── k8s.go │ │ └── k8s_test.go ├── nginx │ ├── Makefile │ ├── README.md │ ├── TAG │ ├── cloudbuild.yaml │ └── rootfs │ │ ├── Dockerfile │ │ ├── build.sh │ │ └── patches │ │ ├── 00_drop-alias-root.patch │ │ ├── 01_nginx-1.27.1-win32_max_err_str.patch │ │ ├── 02_nginx-1.27.1-stream_balancer_export.patch │ │ ├── 03_nginx-1.27.1-stream_proxy_get_next_upstream_tries.patch │ │ ├── 04_nginx-1.27.1-stream_proxy_timeout_fields.patch │ │ ├── 05_nginx-1.27.1-stream_ssl_preread_no_skip.patch │ │ ├── 06_nginx-1.27.1-resolver_conf_parsing.patch │ │ ├── 07_nginx-1.27.1-daemon_destroy_pool.patch │ │ ├── 08_nginx-1.27.1-init_cycle_pool_release.patch │ │ ├── 09_nginx-1.27.1-balancer_status_code.patch │ │ ├── 10_nginx-1.27.1-delayed_posted_events.patch │ │ ├── 11_nginx-1.27.1-privileged_agent_process.patch │ │ ├── 12_nginx-1.27.1-privileged_agent_process_connections.patch │ │ ├── 13_nginx-1.27.1-privileged_agent_process_thread_pool.patch │ │ ├── 14_nginx-1.27.1-single_process_graceful_exit.patch │ │ ├── 15_nginx-1.27.1-intercept_error_log.patch │ │ ├── 16_nginx-1.27.1-upstream_pipelining.patch │ │ ├── 17_nginx-1.27.1-no_error_pages.patch │ │ ├── 18_nginx-1.27.1-no_Werror.patch │ │ ├── 19_nginx-1.27.1-log_escape_non_ascii.patch │ │ ├── 20_nginx-1.27.1-proxy_host_port_vars.patch │ │ ├── 21_nginx-1.27.1-cache_manager_exit.patch │ │ ├── 22_nginx-1.27.1-larger_max_error_str.patch │ │ ├── 23_nginx-1.27.1-pcre_conf_opt.patch │ │ ├── 24_nginx-1.27.1-always_enable_cc_feature_tests.patch │ │ ├── 25_nginx-1.27.1-ssl_cert_cb_yield.patch │ │ ├── 26_nginx-1.27.1-ssl_sess_cb_yield.patch │ │ ├── 27_nginx-1.27.1-ssl_client_hello_cb_yield.patch │ │ ├── 28_nginx-1.27.1-upstream_timeout_fields.patch │ │ ├── 29_nginx-1.27.1-safe_resolver_ipv6_option.patch │ │ ├── 30_nginx-1.27.1-socket_cloexec.patch │ │ ├── 31_nginx-1.27.1-reuseport_close_unused_fds.patch │ │ └── 32_nginx-1.27.1-proc_exit_handler.patch └── test-runner │ ├── Makefile │ ├── TAG │ ├── cloudbuild.yaml │ └── rootfs │ └── Dockerfile ├── internal ├── admission │ └── controller │ │ ├── main.go │ │ ├── main_test.go │ │ └── server.go ├── ingress │ ├── annotations │ │ ├── alias │ │ │ ├── main.go │ │ │ └── main_test.go │ │ ├── annotations.go │ │ ├── annotations_test.go │ │ ├── auth │ │ │ ├── main.go │ │ │ └── main_test.go │ │ ├── authreq │ │ │ ├── main.go │ │ │ └── main_test.go │ │ ├── authreqglobal │ │ │ ├── main.go │ │ │ └── main_test.go │ │ ├── authtls │ │ │ ├── main.go │ │ │ └── main_test.go │ │ ├── backendprotocol │ │ │ ├── main.go │ │ │ └── main_test.go │ │ ├── canary │ │ │ ├── main.go │ │ │ └── main_test.go │ │ ├── clientbodybuffersize │ │ │ ├── main.go │ │ │ └── main_test.go │ │ ├── connection │ │ │ ├── main.go │ │ │ └── main_test.go │ │ ├── cors │ │ │ ├── main.go │ │ │ └── main_test.go │ │ ├── customheaders │ │ │ ├── main.go │ │ │ └── main_test.go │ │ ├── customhttperrors │ │ │ ├── main.go │ │ │ └── main_test.go │ │ ├── defaultbackend │ │ │ ├── main.go │ │ │ └── main_test.go │ │ ├── disableproxyintercepterrors │ │ │ ├── main.go │ │ │ └── main_test.go │ │ ├── fastcgi │ │ │ ├── main.go │ │ │ └── main_test.go │ │ ├── http2pushpreload │ │ │ ├── main.go │ │ │ └── main_test.go │ │ ├── ipallowlist │ │ │ ├── main.go │ │ │ └── main_test.go │ │ ├── ipdenylist │ │ │ ├── main.go │ │ │ └── main_test.go │ │ ├── loadbalancing │ │ │ ├── main.go │ │ │ └── main_test.go │ │ ├── log │ │ │ ├── main.go │ │ │ └── main_test.go │ │ ├── mirror │ │ │ ├── main.go │ │ │ └── main_test.go │ │ ├── modsecurity │ │ │ ├── main.go │ │ │ └── main_test.go │ │ ├── opentelemetry │ │ │ ├── main.go │ │ │ └── main_test.go │ │ ├── parser │ │ │ ├── main.go │ │ │ ├── main_test.go │ │ │ ├── validators.go │ │ │ └── validators_test.go │ │ ├── portinredirect │ │ │ ├── main.go │ │ │ └── main_test.go │ │ ├── proxy │ │ │ ├── main.go │ │ │ └── main_test.go │ │ ├── proxyssl │ │ │ ├── main.go │ │ │ └── main_test.go │ │ ├── ratelimit │ │ │ ├── main.go │ │ │ └── main_test.go │ │ ├── redirect │ │ │ ├── redirect.go │ │ │ └── redirect_test.go │ │ ├── rewrite │ │ │ ├── main.go │ │ │ └── main_test.go │ │ ├── satisfy │ │ │ ├── main.go │ │ │ └── main_test.go │ │ ├── serversnippet │ │ │ ├── main.go │ │ │ └── main_test.go │ │ ├── serviceupstream │ │ │ ├── main.go │ │ │ └── main_test.go │ │ ├── sessionaffinity │ │ │ ├── main.go │ │ │ └── main_test.go │ │ ├── snippet │ │ │ ├── main.go │ │ │ └── main_test.go │ │ ├── sslcipher │ │ │ ├── main.go │ │ │ └── main_test.go │ │ ├── sslpassthrough │ │ │ ├── main.go │ │ │ └── main_test.go │ │ ├── streamsnippet │ │ │ ├── main.go │ │ │ └── main_test.go │ │ ├── upstreamhashby │ │ │ ├── main.go │ │ │ └── main_test.go │ │ ├── upstreamvhost │ │ │ ├── main.go │ │ │ └── main_test.go │ │ └── xforwardedprefix │ │ │ ├── main.go │ │ │ └── main_test.go │ ├── controller │ │ ├── certificate.go │ │ ├── checker.go │ │ ├── checker_test.go │ │ ├── config │ │ │ └── config.go │ │ ├── controller.go │ │ ├── controller_test.go │ │ ├── endpointslices.go │ │ ├── endpointslices_test.go │ │ ├── ingressclass │ │ │ └── ingressclass.go │ │ ├── location.go │ │ ├── nginx.go │ │ ├── nginx_test.go │ │ ├── process │ │ │ ├── nginx.go │ │ │ └── nginx_test.go │ │ ├── status.go │ │ ├── store │ │ │ ├── backend_ssl.go │ │ │ ├── configmap.go │ │ │ ├── endpointslice.go │ │ │ ├── endpointslice_test.go │ │ │ ├── ingress.go │ │ │ ├── ingress_annotation.go │ │ │ ├── ingressclass.go │ │ │ ├── local_secret.go │ │ │ ├── local_secret_test.go │ │ │ ├── namespace.go │ │ │ ├── objectref.go │ │ │ ├── objectref_test.go │ │ │ ├── secret.go │ │ │ ├── service.go │ │ │ ├── store.go │ │ │ └── store_test.go │ │ ├── template │ │ │ ├── buffer_pool.go │ │ │ ├── configmap.go │ │ │ ├── configmap_test.go │ │ │ ├── template.go │ │ │ └── template_test.go │ │ ├── util.go │ │ └── util_test.go │ ├── defaults │ │ └── main.go │ ├── errors │ │ ├── errors.go │ │ └── errors_test.go │ ├── inspector │ │ ├── ingress.go │ │ ├── ingress_test.go │ │ ├── inspector.go │ │ ├── inspector_test.go │ │ ├── rules.go │ │ ├── rules_test.go │ │ └── service.go │ ├── metric │ │ ├── collectors │ │ │ ├── admission.go │ │ │ ├── admission_test.go │ │ │ ├── controller.go │ │ │ ├── controller_test.go │ │ │ ├── main.go │ │ │ ├── nginx_status.go │ │ │ ├── nginx_status_test.go │ │ │ ├── process.go │ │ │ ├── process_test.go │ │ │ ├── socket.go │ │ │ ├── socket_test.go │ │ │ └── testutils.go │ │ ├── dummy.go │ │ └── main.go │ ├── resolver │ │ ├── main.go │ │ ├── main_test.go │ │ └── mock.go │ └── status │ │ ├── status.go │ │ └── status_test.go ├── k8s │ ├── main.go │ ├── main_test.go │ └── zz_generated.deepcopy.go ├── net │ ├── dns │ │ ├── dns.go │ │ └── dns_test.go │ ├── ipnet.go │ ├── ipnet_test.go │ ├── net.go │ ├── net_ipv6_test.go │ ├── net_test.go │ └── ssl │ │ ├── ssl.go │ │ └── ssl_test.go ├── nginx │ ├── main.go │ ├── maxmind.go │ └── maxmind_test.go └── task │ ├── queue.go │ └── queue_test.go ├── magefiles ├── exec.go ├── mage.go ├── steps │ ├── helm.go │ ├── release.go │ └── tags.go └── utils │ ├── common.go │ ├── controller.go │ ├── e2edocs.go │ ├── helm.go │ ├── releasenote.go │ └── templates │ └── e2edocs.tpl ├── mkdocs.yml ├── netlify.toml ├── pkg ├── apis │ └── ingress │ │ ├── sslcert.go │ │ ├── types.go │ │ ├── types_equals.go │ │ ├── types_equals_test.go │ │ └── zz_generated.deepcopy.go ├── flags │ ├── flags.go │ └── flags_test.go ├── metrics │ └── handler.go ├── tcpproxy │ └── tcp.go └── util │ ├── file │ ├── file.go │ ├── file_test.go │ ├── file_watcher.go │ ├── file_watcher_test.go │ ├── filesystem.go │ └── structure.go │ ├── ingress │ ├── ingress.go │ └── ingress_test.go │ ├── process │ ├── controller.go │ ├── sigterm.go │ └── sigterm_test.go │ ├── runtime │ ├── cpu_linux.go │ └── cpu_notlinux.go │ └── sets │ ├── match.go │ └── match_test.go ├── rootfs ├── .dockerignore ├── .gitignore ├── Dockerfile ├── Dockerfile-chroot ├── chroot.sh ├── etc │ └── nginx │ │ ├── lua │ │ ├── OWNERS │ │ ├── balancer.lua │ │ ├── balancer │ │ │ ├── chash.lua │ │ │ ├── chashsubset.lua │ │ │ ├── ewma.lua │ │ │ ├── resty.lua │ │ │ ├── round_robin.lua │ │ │ ├── sticky.lua │ │ │ ├── sticky_balanced.lua │ │ │ └── sticky_persistent.lua │ │ ├── certificate.lua │ │ ├── configuration.lua │ │ ├── lua_ingress.lua │ │ ├── monitor.lua │ │ ├── nginx │ │ │ ├── ngx_conf_balancer.lua │ │ │ ├── ngx_conf_balancer_tcp_udp.lua │ │ │ ├── ngx_conf_certificate.lua │ │ │ ├── ngx_conf_configuration.lua │ │ │ ├── ngx_conf_content_tcp_udp.lua │ │ │ ├── ngx_conf_external_auth.lua │ │ │ ├── ngx_conf_init_tcp_udp.lua │ │ │ ├── ngx_conf_is_dynamic_lb_initialized.lua │ │ │ ├── ngx_conf_log.lua │ │ │ ├── ngx_conf_log_block.lua │ │ │ ├── ngx_conf_rewrite_auth.lua │ │ │ ├── ngx_conf_srv_hdr_filter.lua │ │ │ ├── ngx_rewrite.lua │ │ │ └── ngx_srv_redirect.lua │ │ ├── ngx_conf_init.lua │ │ ├── ngx_conf_init_stream.lua │ │ ├── ngx_conf_init_worker.lua │ │ ├── tcp_udp_balancer.lua │ │ ├── tcp_udp_configuration.lua │ │ ├── test │ │ │ ├── balancer │ │ │ │ ├── chash_test.lua │ │ │ │ ├── chashsubset_test.lua │ │ │ │ ├── ewma_test.lua │ │ │ │ └── sticky_test.lua │ │ │ ├── balancer_test.lua │ │ │ ├── certificate_test.lua │ │ │ ├── configuration_test.lua │ │ │ ├── fixtures │ │ │ │ ├── default-cert.pem │ │ │ │ └── example-com-cert.pem │ │ │ ├── helpers.lua │ │ │ ├── lua_ingress_test.lua │ │ │ ├── monitor_test.lua │ │ │ ├── run.lua │ │ │ ├── util │ │ │ │ ├── dns_test.lua │ │ │ │ ├── nodemap_test.lua │ │ │ │ ├── resolv_conf_test.lua │ │ │ │ ├── same_site_test.lua │ │ │ │ └── split_test.lua │ │ │ └── util_test.lua │ │ ├── util.lua │ │ └── util │ │ │ ├── dns.lua │ │ │ ├── nodemap.lua │ │ │ ├── resolv_conf.lua │ │ │ ├── same_site.lua │ │ │ └── split.lua │ │ ├── nginx.conf │ │ ├── opentracing.json │ │ └── template │ │ └── nginx.tmpl └── nginx-chroot-wrapper.sh ├── test ├── data │ ├── cleanConf.expected.conf │ ├── cleanConf.src.conf │ └── config.json ├── e2e-image │ ├── .gitignore │ ├── Dockerfile │ ├── Makefile │ ├── e2e.sh │ └── namespace-overlays │ │ ├── admission │ │ └── values.yaml │ │ ├── custom-health-check-path │ │ └── values.yaml │ │ ├── disableleaderelection │ │ └── values.yaml │ │ ├── forwarded-port-headers │ │ └── values.yaml │ │ ├── namespace-selector │ │ └── values.yaml │ │ ├── topology │ │ └── values.yaml │ │ └── validations │ │ └── values.yaml ├── e2e │ ├── HTTPBUN_IMAGE │ ├── admission │ │ └── admission.go │ ├── annotations │ │ ├── affinity.go │ │ ├── affinitymode.go │ │ ├── alias.go │ │ ├── approot.go │ │ ├── auth.go │ │ ├── authtls.go │ │ ├── backendprotocol.go │ │ ├── canary.go │ │ ├── clientbodybuffersize.go │ │ ├── connection.go │ │ ├── cors.go │ │ ├── customheaders.go │ │ ├── customhttperrors.go │ │ ├── default_backend.go │ │ ├── disableaccesslog.go │ │ ├── disableproxyintercepterrors.go │ │ ├── fastcgi.go │ │ ├── forcesslredirect.go │ │ ├── fromtowwwredirect.go │ │ ├── grpc.go │ │ ├── http2pushpreload.go │ │ ├── ipallowlist.go │ │ ├── ipdenylist.go │ │ ├── limitconnections.go │ │ ├── limitrate.go │ │ ├── log.go │ │ ├── mirror.go │ │ ├── modsecurity │ │ │ └── modsecurity.go │ │ ├── preservetrailingslash.go │ │ ├── proxy.go │ │ ├── proxyssl.go │ │ ├── redirect.go │ │ ├── relativeredirects.go │ │ ├── rewrite.go │ │ ├── satisfy.go │ │ ├── serversnippet.go │ │ ├── serviceupstream.go │ │ ├── snippet.go │ │ ├── sslciphers.go │ │ ├── streamsnippet.go │ │ ├── upstreamhashby.go │ │ ├── upstreamvhost.go │ │ └── xforwardedprefix.go │ ├── cgroups │ │ └── cgroups.go │ ├── dbg │ │ └── main.go │ ├── defaultbackend │ │ ├── custom_default_backend.go │ │ ├── default_backend.go │ │ ├── ssl.go │ │ └── with_hosts.go │ ├── disableleaderelection │ │ └── disable_leader.go │ ├── e2e.go │ ├── e2e_test.go │ ├── endpointslices │ │ ├── longname.go │ │ └── topology.go │ ├── framework │ │ ├── deployment.go │ │ ├── exec.go │ │ ├── fastcgi_helloserver.go │ │ ├── framework.go │ │ ├── grpc_delay.go │ │ ├── healthz.go │ │ ├── httpexpect │ │ │ ├── README.md │ │ │ ├── array.go │ │ │ ├── chain.go │ │ │ ├── cookie.go │ │ │ ├── match.go │ │ │ ├── object.go │ │ │ ├── reporter.go │ │ │ ├── request.go │ │ │ ├── response.go │ │ │ ├── string.go │ │ │ └── value.go │ │ ├── k8s.go │ │ ├── logs.go │ │ ├── metrics.go │ │ ├── ssl.go │ │ ├── test_context.go │ │ └── util.go │ ├── gracefulshutdown │ │ ├── grace_period.go │ │ ├── shutdown.go │ │ └── slow_requests.go │ ├── ingress │ │ ├── deep_inspection.go │ │ ├── multiple_rules.go │ │ ├── pathtype_exact.go │ │ ├── pathtype_mixed.go │ │ ├── pathtype_prefix.go │ │ └── without_host.go │ ├── kind.yaml │ ├── leaks │ │ └── lua_ssl.go │ ├── loadbalance │ │ ├── configmap.go │ │ ├── ewma.go │ │ └── round_robin.go │ ├── lua │ │ ├── dynamic_certificates.go │ │ └── dynamic_configuration.go │ ├── metrics │ │ └── metrics.go │ ├── nginx │ │ └── nginx.go │ ├── run-chart-test.sh │ ├── run-e2e-suite.sh │ ├── run-kind-e2e.sh │ ├── security │ │ └── request_smuggling.go │ ├── servicebackend │ │ ├── service_backend.go │ │ ├── service_externalname.go │ │ └── service_nil_backend.go │ ├── settings │ │ ├── access_log.go │ │ ├── aio_write.go │ │ ├── badannotationvalues.go │ │ ├── brotli.go │ │ ├── configmap_change.go │ │ ├── custom_header.go │ │ ├── default_ssl_certificate.go │ │ ├── disable_catch_all.go │ │ ├── disable_service_external_name.go │ │ ├── disable_sync_events.go │ │ ├── enable_real_ip.go │ │ ├── forwarded_headers.go │ │ ├── geoip2.go │ │ ├── global_access_block.go │ │ ├── global_external_auth.go │ │ ├── global_options.go │ │ ├── grpc.go │ │ ├── gzip.go │ │ ├── hash-size.go │ │ ├── ingress_class.go │ │ ├── keep-alive.go │ │ ├── limit_rate.go │ │ ├── listen_nondefault_ports.go │ │ ├── log-format.go │ │ ├── lua_shared_dicts.go │ │ ├── main_snippet.go │ │ ├── modsecurity │ │ │ └── modsecurity_snippet.go │ │ ├── multi_accept.go │ │ ├── namespace_selector.go │ │ ├── no_auth_locations.go │ │ ├── no_tls_redirect_locations.go │ │ ├── ocsp │ │ │ ├── ca_csr.json │ │ │ ├── db-config.json │ │ │ ├── intermediate_ca_csr.json │ │ │ ├── leaf_csr.json │ │ │ ├── ocsp.go │ │ │ ├── ocsp_csr.json │ │ │ └── template.db │ │ ├── opentelemetry.go │ │ ├── proxy_connect_timeout.go │ │ ├── proxy_host.go │ │ ├── proxy_next_upstream.go │ │ ├── proxy_protocol.go │ │ ├── proxy_read_timeout.go │ │ ├── proxy_send_timeout.go │ │ ├── reuse-port.go │ │ ├── server_snippet.go │ │ ├── server_tokens.go │ │ ├── ssl_ciphers.go │ │ ├── ssl_passthrough.go │ │ ├── stream_snippet.go │ │ ├── tls.go │ │ └── validations │ │ │ └── validations.go │ ├── ssl │ │ ├── http_redirect.go │ │ └── secret_update.go │ ├── status │ │ └── update.go │ ├── tcpudp │ │ └── tcp.go │ └── wait-for-nginx.sh ├── k6 │ ├── README.md │ ├── loadtest.js │ └── smoketest.js ├── manifests │ ├── configuration-a.json │ ├── configuration-b.json │ └── configuration-c.json ├── test-lua.sh └── test.sh └── version └── version.go /.ct.yaml: -------------------------------------------------------------------------------- 1 | # Copyright 2024 The Kubernetes Authors. 2 | # 3 | # Licensed under the Apache License, Version 2.0 (the "License"); 4 | # you may not use this file except in compliance with the License. 5 | # You may obtain a copy of the License at 6 | # 7 | # http://www.apache.org/licenses/LICENSE-2.0 8 | # 9 | # Unless required by applicable law or agreed to in writing, software 10 | # distributed under the License is distributed on an "AS IS" BASIS, 11 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | # See the License for the specific language governing permissions and 13 | # limitations under the License. 14 | --- 15 | remote: origin 16 | target-branch: main 17 | 18 | validate-maintainers: false 19 | check-version-increment: false 20 | 21 | chart-repos: 22 | - ingress-nginx=https://kubernetes.github.io/ingress-nginx 23 | helm-extra-args: --timeout 800s 24 | 25 | chart-dirs: 26 | - charts 27 | -------------------------------------------------------------------------------- /.gcloudignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kubernetes/ingress-nginx/f0f2db512fc88e6e558d9672e9947a5ddd6e530e/.gcloudignore -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/config.yml: -------------------------------------------------------------------------------- 1 | contact_links: 2 | - name: Support Request/Question 3 | url: https://kubernetes.slack.com/messages/ingress-nginx/ 4 | about: Support request or question relating to Ingress NGINX in Kubernetes Slack 5 | -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/cve_report.md: -------------------------------------------------------------------------------- 1 | --- 2 | name: CVE Finding Report 3 | about: CVE reporting for ingress-nginx 4 | title: '' 5 | labels: kind/bug 6 | assignees: 7 | - Gacko 8 | - strongjz 9 | --- 10 | 11 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/feature_request.md: -------------------------------------------------------------------------------- 1 | --- 2 | name: Feature request 3 | about: Suggest an idea for this project or its docs 4 | title: '' 5 | labels: kind/feature 6 | assignees: '' 7 | 8 | --- 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 22 | -------------------------------------------------------------------------------- /.github/actions/mkdocs/Dockerfile: -------------------------------------------------------------------------------- 1 | FROM squidfunk/mkdocs-material:9.4.5 2 | 3 | COPY action.sh /action.sh 4 | 5 | RUN apk add --no-cache bash \ 6 | && chmod +x /action.sh 7 | 8 | ENTRYPOINT ["/action.sh"] 9 | -------------------------------------------------------------------------------- /.github/actions/mkdocs/action.yml: -------------------------------------------------------------------------------- 1 | # action.yml 2 | name: 'Deploy MkDocs' 3 | description: 'Deploys MkDocs site' 4 | branding: 5 | icon: 'arrow-up-circle' 6 | color: 'orange' 7 | runs: 8 | using: 'docker' 9 | image: 'Dockerfile' 10 | -------------------------------------------------------------------------------- /.github/workflows/depreview.yaml: -------------------------------------------------------------------------------- 1 | name: 'Dependency Review' 2 | on: [pull_request] 3 | 4 | permissions: 5 | contents: read 6 | 7 | jobs: 8 | dependency-review: 9 | runs-on: ubuntu-latest 10 | steps: 11 | - name: 'Checkout Repository' 12 | uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 13 | - name: 'Dependency Review' 14 | uses: actions/dependency-review-action@da24556b548a50705dd671f47852072ea4c105d9 # v4.7.1 15 | -------------------------------------------------------------------------------- /.github/workflows/golangci-lint.yml: -------------------------------------------------------------------------------- 1 | name: golangci-lint 2 | 3 | on: 4 | pull_request: 5 | paths: 6 | - '**/*.go' 7 | - '.github/workflows/golangci-lint.yml' 8 | 9 | permissions: 10 | contents: read 11 | 12 | jobs: 13 | golangci: 14 | name: lint 15 | runs-on: ubuntu-latest 16 | steps: 17 | - name: Checkout 18 | uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 19 | 20 | - name: Get go version 21 | run: echo "GOLANG_VERSION=$(cat GOLANG_VERSION)" >> $GITHUB_ENV 22 | 23 | - name: Set up Go 24 | id: go 25 | uses: actions/setup-go@d35c59abb061a4a6fb18e82ac0862c26744d6ab5 # v5.5.0 26 | with: 27 | go-version: ${{ env.GOLANG_VERSION }} 28 | check-latest: true 29 | 30 | - name: golangci-lint 31 | uses: golangci/golangci-lint-action@4afd733a84b1f43292c63897423277bb7f4313a9 # v8.0.0 32 | with: 33 | only-new-issues: true 34 | -------------------------------------------------------------------------------- /.github/workflows/junit-reports.yaml: -------------------------------------------------------------------------------- 1 | name: 'E2E Test Report' 2 | 3 | on: 4 | workflow_run: 5 | workflows: ['CI'] # runs after CI workflow 6 | types: 7 | - completed 8 | 9 | permissions: 10 | checks: write 11 | 12 | jobs: 13 | report: 14 | runs-on: ubuntu-latest 15 | steps: 16 | - uses: dorny/test-reporter@890a17cecf52a379fc869ab770a71657660be727 # v2.1.0 17 | with: 18 | artifact: /e2e-test-reports-(.*)/ 19 | name: JEST Tests $1 # Name of the check run which will be created 20 | path: 'report*.xml' # Path to test results (inside artifact .zip) 21 | reporter: jest-junit # Format of test results 22 | fail-on-empty: 'true' 23 | -------------------------------------------------------------------------------- /.github/workflows/project.yml: -------------------------------------------------------------------------------- 1 | name: Adds all issues 2 | 3 | on: 4 | issues: 5 | types: 6 | - opened 7 | 8 | jobs: 9 | add-to-project: 10 | name: Add issue to project 11 | runs-on: ubuntu-latest 12 | permissions: 13 | repository-projects: write 14 | issues: write 15 | steps: 16 | - uses: actions/add-to-project@244f685bbc3b7adfa8466e08b698b5577571133e # v1.0.2 17 | with: 18 | project-url: https://github.com/orgs/kubernetes/projects/104 19 | github-token: ${{ secrets.PROJECT_WRITER }} 20 | -------------------------------------------------------------------------------- /.goreleaser.yaml: -------------------------------------------------------------------------------- 1 | project_name: ingress-nginx 2 | release: 3 | github: 4 | owner: kubernetes 5 | name: ingress-nginx 6 | builds: 7 | - id: ingress-nginx 8 | goos: 9 | - darwin 10 | - linux 11 | - windows 12 | goarch: 13 | - arm64 14 | - amd64 15 | env: 16 | - CGO_ENABLED=0 17 | - GO111MODULE=on 18 | main: cmd/plugin/main.go 19 | binary: kubectl-ingress-nginx 20 | ldflags: | 21 | -s -w 22 | -X k8s.io/ingress-nginx/version.COMMIT={{ .Commit }} 23 | -X k8s.io/ingress-nginx/version.RELEASE={{ .Tag }} 24 | archives: 25 | - id: ingress-nginx 26 | builds: 27 | - ingress-nginx 28 | name_template: "kubectl-{{ .ProjectName }}_{{ .Os }}_{{ .Arch }}" 29 | format: tar.gz 30 | -------------------------------------------------------------------------------- /.luacheckrc: -------------------------------------------------------------------------------- 1 | std = 'ngx_lua' 2 | max_line_length = 100 3 | exclude_files = {'./rootfs/etc/nginx/lua/test/**/*.lua'} 4 | files["rootfs/etc/nginx/lua/lua_ingress.lua"] = { 5 | ignore = { "122" }, 6 | -- TODO(elvinefendi) figure out why this does not work 7 | --read_globals = {"math.randomseed"}, 8 | } 9 | -------------------------------------------------------------------------------- /GOLANG_VERSION: -------------------------------------------------------------------------------- 1 | 1.24.3 2 | -------------------------------------------------------------------------------- /NEW_RELEASE_PROCESS.md: -------------------------------------------------------------------------------- 1 | # Semi-Automated Release Process 2 | 3 | 1. Update TAG 4 | 2. Cloud Build 5 | 3. k8s.io PR 6 | 4. git pull origin main 7 | 5. git checkout -b $RELEASE_VERSION 8 | 6. mage release:newrelease $RELEASE_VERSION 9 | 7. Wait for PR -------------------------------------------------------------------------------- /NGINX_BASE: -------------------------------------------------------------------------------- 1 | registry.k8s.io/ingress-nginx/nginx:v2.1.1@sha256:248a0d3e77c244b5a5478ecf3163b1d8d8baf7a517aef46006d5b09c6f0bcf76 2 | -------------------------------------------------------------------------------- /OWNERS: -------------------------------------------------------------------------------- 1 | # See the OWNERS docs: https://www.kubernetes.dev/docs/guide/owners 2 | 3 | approvers: 4 | - ingress-nginx-maintainers 5 | 6 | reviewers: 7 | - ingress-nginx-reviewers 8 | 9 | emeritus_approvers: 10 | - aledbf # 2020-04-02 11 | - bowei # 2022-10-12 12 | - ElvinEfendi # 2023-04-23 13 | - rikatz # 2024-12-15 14 | -------------------------------------------------------------------------------- /OWNERS_ALIASES: -------------------------------------------------------------------------------- 1 | # See the OWNERS docs: https://www.kubernetes.dev/docs/guide/owners 2 | 3 | aliases: 4 | ingress-nginx-maintainers: 5 | - cpanato 6 | - Gacko 7 | - strongjz 8 | - tao12345666333 9 | 10 | ingress-nginx-reviewers: 11 | - cpanato 12 | - Gacko 13 | - strongjz 14 | - tao12345666333 15 | 16 | ingress-nginx-docs-maintainers: 17 | - longwuyuan 18 | -------------------------------------------------------------------------------- /SECURITY_CONTACTS: -------------------------------------------------------------------------------- 1 | # Defined below are the security contacts for this repo. 2 | # 3 | # They are the contact point for the Product Security Committee to reach out 4 | # to for triaging and handling of incoming issues. 5 | # 6 | # The below names agree to abide by the 7 | # [Embargo Policy](https://git.k8s.io/security/private-distributors-list.md#embargo-policy) 8 | # and will be removed and replaced if they violate that agreement. 9 | # 10 | # DO NOT REPORT SECURITY VULNERABILITIES DIRECTLY TO THESE NAMES, FOLLOW THE 11 | # INSTRUCTIONS AT https://kubernetes.io/security/ 12 | Gacko 13 | strongjz 14 | -------------------------------------------------------------------------------- /build/kind.yaml: -------------------------------------------------------------------------------- 1 | kind: Cluster 2 | apiVersion: kind.x-k8s.io/v1alpha4 3 | nodes: 4 | - role: control-plane 5 | kubeadmConfigPatches: 6 | - | 7 | kind: InitConfiguration 8 | nodeRegistration: 9 | kubeletExtraArgs: 10 | node-labels: "ingress-ready=true" 11 | authorization-mode: "AlwaysAllow" 12 | extraPortMappings: 13 | - containerPort: 80 14 | hostPort: 80 15 | protocol: TCP 16 | - containerPort: 443 17 | hostPort: 443 18 | protocol: TCP 19 | -------------------------------------------------------------------------------- /changelog/controller-1.8.2.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | 3 | ### 1.8.2 4 | 5 | Images: 6 | 7 | * registry.k8s.io/ingress-nginx/controller:v1.8.2@sha256:74834d3d25b336b62cabeb8bf7f1d788706e2cf1cfd64022de4137ade8881ff2 8 | * registry.k8s.io/ingress-nginx/controller-chroot:v1.8.2@sha256:1317a563219f755a6094d990057c78e5c4dcea5e31f4ce1db8641e732a7d6133 9 | 10 | ### All changes: 11 | 12 | * Release v1.8.2 and Update Go to v1.21.1 (#10379) 13 | * Making auth access logs optional (#10380) 14 | * [release-1.8] Disable Modsecurity from internal processing which affects large ingresses (#10375) 15 | * promote distroless otel init image (#10270) 16 | * [release-1.8] Update images tags after adding git data in gcloud (#10233) 17 | * [release-1.8] Golang 1.20.6 for test runner (#10231) 18 | 19 | **Full Changelog**: https://github.com/kubernetes/ingress-nginx/compare/controller-controller-v1.8.1...controller-controller-v1.8.2 20 | -------------------------------------------------------------------------------- /changelog/controller-1.9.1.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | 3 | ### 1.9.1 4 | 5 | Images: 6 | 7 | * registry.k8s.io/ingress-nginx/controller:v1.9.1@sha256:605a737877de78969493a4b1213b21de4ee425d2926906857b98050f57a95b25 8 | * registry.k8s.io/ingress-nginx/controller-chroot:v1.9.1@sha256:2ac744ef08850ee86ad7162451a6879f47c1a41c6a757f6b6f913c52103b8836 9 | 10 | ### All changes: 11 | 12 | * upgrade owasp modsecurity core rule set to v3.3.5 (#10437) 13 | * Start v1.9.1 release (#10463) 14 | * Accept backend protocol on any case (#10461) 15 | * Chart: Rework network policies. (#10438) 16 | 17 | ### Dependency updates: 18 | 19 | * Bump google.golang.org/grpc from 1.58.0 to 1.58.1 (#10436) 20 | 21 | **Full Changelog**: https://github.com/kubernetes/ingress-nginx/compare/controller-controller-v1.9.0...controller-controller-v1.9.1 22 | -------------------------------------------------------------------------------- /changelog/controller-1.9.4.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | 3 | ### 1.9.4 4 | 5 | Images: 6 | 7 | * registry.k8s.io/ingress-nginx/controller:v1.9.4@sha256:5b161f051d017e55d358435f295f5e9a297e66158f136321d9b04520ec6c48a3 8 | * registry.k8s.io/ingress-nginx/controller-chroot:v1.9.4@sha256:5976b1067cfbca8a21d0ba53d71f83543a73316a61ea7f7e436d6cf84ddf9b26 9 | 10 | ### All changes: 11 | 12 | * Cherry pick fcgi fix and release v1.9.4 (#10544) 13 | 14 | **Full Changelog**: https://github.com/kubernetes/ingress-nginx/compare/controller-controller-v1.9.3...controller-controller-v1.9.4 15 | -------------------------------------------------------------------------------- /changelog/controller-1.9.6.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | 3 | ### controller-v1.9.6 4 | 5 | Images: 6 | 7 | * registry.k8s.io/ingress-nginx/controller:v1.9.6@sha256:1405cc613bd95b2c6edd8b2a152510ae91c7e62aea4698500d23b2145960ab9c 8 | * registry.k8s.io/ingress-nginx/controller-chroot:v1.9.6@sha256:7eb46ff733429e0e46892903c7394aff149ac6d284d92b3946f3baf7ff26a096 9 | 10 | ### All changes: 11 | 12 | * update web hook cert gen to latest release v20231226-1a7112e06 13 | * annotation validation: validate regex in common name annotation (#10880) 14 | * change MODSECURITY_VERSION_LIB to 3.0.11 (#10879) 15 | * Include SECLEVEL and STRENGTH as part of ssl-cipher list validation (#10871) 16 | 17 | ### Dependency updates: 18 | 19 | * Bump github.com/opencontainers/runc from 1.1.10 to 1.1.11 (#10878) 20 | 21 | **Full Changelog**: https://github.com/kubernetes/ingress-nginx/compare/controller-v1.9.5...controller-v1.9.6 22 | -------------------------------------------------------------------------------- /changelog/controller.md.gotmpl: -------------------------------------------------------------------------------- 1 | # Changelog 2 | 3 | ### {{ .NewControllerVersion }} 4 | {{ with .ControllerImages }} 5 | Images: 6 | {{ range . }} 7 | * {{ .Registry }}/{{ .Name }}:{{ .Tag}}@{{ .Digest }} 8 | {{- end }} 9 | {{ end }} 10 | {{- with .Updates }} 11 | ### All changes: 12 | {{ range . }} 13 | * {{ . }} 14 | {{- end }} 15 | {{ end }} 16 | {{- with .DepUpdates }} 17 | ### Dependency updates: 18 | {{ range . }} 19 | * {{ . }} 20 | {{- end }} 21 | {{ end }} 22 | **Full Changelog**: https://github.com/kubernetes/ingress-nginx/compare/{{ .PreviousControllerVersion }}...{{ .NewControllerVersion }} 23 | -------------------------------------------------------------------------------- /charts/ingress-nginx/.helmignore: -------------------------------------------------------------------------------- 1 | # Patterns to ignore when building packages. 2 | # This supports shell glob matching, relative path matching, and 3 | # negation (prefixed with !). Only one pattern per line. 4 | .DS_Store 5 | # Common VCS dirs 6 | .git/ 7 | .gitignore 8 | .bzr/ 9 | .bzrignore 10 | .hg/ 11 | .hgignore 12 | .svn/ 13 | # Common backup files 14 | *.swp 15 | *.bak 16 | *.tmp 17 | *~ 18 | # Various IDEs 19 | .project 20 | .idea/ 21 | *.tmproj 22 | .vscode/ 23 | __snapshot__ 24 | -------------------------------------------------------------------------------- /charts/ingress-nginx/Chart.yaml: -------------------------------------------------------------------------------- 1 | annotations: 2 | artifacthub.io/changes: | 3 | - Update Ingress-Nginx version controller-v1.12.2 4 | artifacthub.io/prerelease: "false" 5 | apiVersion: v2 6 | appVersion: 1.12.2 7 | description: Ingress controller for Kubernetes using NGINX as a reverse proxy and 8 | load balancer 9 | home: https://github.com/kubernetes/ingress-nginx 10 | icon: https://upload.wikimedia.org/wikipedia/commons/thumb/c/c5/Nginx_logo.svg/500px-Nginx_logo.svg.png 11 | keywords: 12 | - ingress 13 | - nginx 14 | kubeVersion: '>=1.21.0-0' 15 | maintainers: 16 | - name: cpanato 17 | - name: Gacko 18 | - name: strongjz 19 | - name: tao12345666333 20 | name: ingress-nginx 21 | sources: 22 | - https://github.com/kubernetes/ingress-nginx 23 | version: 4.12.2 24 | -------------------------------------------------------------------------------- /charts/ingress-nginx/OWNERS: -------------------------------------------------------------------------------- 1 | # See the OWNERS docs: https://www.kubernetes.dev/docs/guide/owners 2 | 3 | labels: 4 | - area/helm 5 | -------------------------------------------------------------------------------- /charts/ingress-nginx/changelog/helm-chart-2.10.0.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | 3 | This file documents all notable changes to [ingress-nginx](https://github.com/kubernetes/ingress-nginx) Helm Chart. The release numbering uses [semantic versioning](http://semver.org). 4 | 5 | ### 2.10.0 6 | 7 | * [#5843](https://github.com/kubernetes/ingress-nginx/pull/5843) Update jettech/kube-webhook-certgen image 8 | 9 | **Full Changelog**: https://github.com/kubernetes/ingress-nginx/compare/ingress-nginx-2.9.1...ingress-nginx-2.10.0 10 | -------------------------------------------------------------------------------- /charts/ingress-nginx/changelog/helm-chart-2.11.0.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | 3 | This file documents all notable changes to [ingress-nginx](https://github.com/kubernetes/ingress-nginx) Helm Chart. The release numbering uses [semantic versioning](http://semver.org). 4 | 5 | ### 2.11.0 6 | 7 | * [#5879](https://github.com/kubernetes/ingress-nginx/pull/5879) Update helm chart for v0.34.0 8 | * [#5671](https://github.com/kubernetes/ingress-nginx/pull/5671) Make liveness probe more fault tolerant than readiness probe 9 | 10 | **Full Changelog**: https://github.com/kubernetes/ingress-nginx/compare/ingress-nginx-2.10.0...ingress-nginx-2.11.0 11 | -------------------------------------------------------------------------------- /charts/ingress-nginx/changelog/helm-chart-2.11.1.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | 3 | This file documents all notable changes to [ingress-nginx](https://github.com/kubernetes/ingress-nginx) Helm Chart. The release numbering uses [semantic versioning](http://semver.org). 4 | 5 | ### 2.11.1 6 | 7 | * [#5900](https://github.com/kubernetes/ingress-nginx/pull/5900) Release helm chart for v0.34.1 8 | 9 | **Full Changelog**: https://github.com/kubernetes/ingress-nginx/compare/ingress-nginx-2.11.0...ingress-nginx-2.11.1 10 | -------------------------------------------------------------------------------- /charts/ingress-nginx/changelog/helm-chart-2.11.2.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | 3 | This file documents all notable changes to [ingress-nginx](https://github.com/kubernetes/ingress-nginx) Helm Chart. The release numbering uses [semantic versioning](http://semver.org). 4 | 5 | ### 2.11.2 6 | 7 | * [#5951](https://github.com/kubernetes/ingress-nginx/pull/5951) Bump chart patch version 8 | 9 | **Full Changelog**: https://github.com/kubernetes/ingress-nginx/compare/ingress-nginx-2.11.1...ingress-nginx-2.11.2 10 | -------------------------------------------------------------------------------- /charts/ingress-nginx/changelog/helm-chart-2.11.3.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | 3 | This file documents all notable changes to [ingress-nginx](https://github.com/kubernetes/ingress-nginx) Helm Chart. The release numbering uses [semantic versioning](http://semver.org). 4 | 5 | ### 2.11.3 6 | 7 | * [#6038](https://github.com/kubernetes/ingress-nginx/pull/6038) Bump chart version PATCH 8 | 9 | **Full Changelog**: https://github.com/kubernetes/ingress-nginx/compare/ingress-nginx-2.11.2...ingress-nginx-2.11.3 10 | -------------------------------------------------------------------------------- /charts/ingress-nginx/changelog/helm-chart-2.12.0.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | 3 | This file documents all notable changes to [ingress-nginx](https://github.com/kubernetes/ingress-nginx) Helm Chart. The release numbering uses [semantic versioning](http://semver.org). 4 | 5 | ### 2.12.0 6 | 7 | * [#6039](https://github.com/kubernetes/ingress-nginx/pull/6039) Add configurable serviceMonitor metricRelabelling and targetLabels 8 | * [#6044](https://github.com/kubernetes/ingress-nginx/pull/6044) Fix YAML linting 9 | 10 | **Full Changelog**: https://github.com/kubernetes/ingress-nginx/compare/ingress-nginx-2.11.3...ingress-nginx-2.12.0 11 | -------------------------------------------------------------------------------- /charts/ingress-nginx/changelog/helm-chart-2.12.1.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | 3 | This file documents all notable changes to [ingress-nginx](https://github.com/kubernetes/ingress-nginx) Helm Chart. The release numbering uses [semantic versioning](http://semver.org). 4 | 5 | ### 2.12.1 6 | 7 | * [#6075](https://github.com/kubernetes/ingress-nginx/pull/6075) Sync helm chart affinity examples 8 | 9 | **Full Changelog**: https://github.com/kubernetes/ingress-nginx/compare/ingress-nginx-2.12.0...ingress-nginx-2.12.1 10 | -------------------------------------------------------------------------------- /charts/ingress-nginx/changelog/helm-chart-2.13.0.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | 3 | This file documents all notable changes to [ingress-nginx](https://github.com/kubernetes/ingress-nginx) Helm Chart. The release numbering uses [semantic versioning](http://semver.org). 4 | 5 | ### 2.13.0 6 | 7 | * [#6093](https://github.com/kubernetes/ingress-nginx/pull/6093) Release v0.35.0 8 | * [#6080](https://github.com/kubernetes/ingress-nginx/pull/6080) Switch images to k8s.gcr.io after Vanity Domain Flip 9 | 10 | **Full Changelog**: https://github.com/kubernetes/ingress-nginx/compare/ingress-nginx-2.12.1...ingress-nginx-2.13.0 11 | -------------------------------------------------------------------------------- /charts/ingress-nginx/changelog/helm-chart-2.14.0.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | 3 | This file documents all notable changes to [ingress-nginx](https://github.com/kubernetes/ingress-nginx) Helm Chart. The release numbering uses [semantic versioning](http://semver.org). 4 | 5 | ### 2.14.0 6 | 7 | * [#6104](https://github.com/kubernetes/ingress-nginx/pull/6104) Misc fixes for nginx-ingress chart for better keel and prometheus-operator integration 8 | 9 | **Full Changelog**: https://github.com/kubernetes/ingress-nginx/compare/ingress-nginx-2.13.0...ingress-nginx-2.14.0 10 | -------------------------------------------------------------------------------- /charts/ingress-nginx/changelog/helm-chart-2.15.0.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | 3 | This file documents all notable changes to [ingress-nginx](https://github.com/kubernetes/ingress-nginx) Helm Chart. The release numbering uses [semantic versioning](http://semver.org). 4 | 5 | ### 2.15.0 6 | 7 | * [#6087](https://github.com/kubernetes/ingress-nginx/pull/6087) Adding parameter for externalTrafficPolicy in internal controller service spec 8 | 9 | **Full Changelog**: https://github.com/kubernetes/ingress-nginx/compare/ingress-nginx-2.14.0...ingress-nginx-2.15.0 10 | -------------------------------------------------------------------------------- /charts/ingress-nginx/changelog/helm-chart-2.16.0.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | 3 | This file documents all notable changes to [ingress-nginx](https://github.com/kubernetes/ingress-nginx) Helm Chart. The release numbering uses [semantic versioning](http://semver.org). 4 | 5 | ### 2.16.0 6 | 7 | * [#6154](https://github.com/kubernetes/ingress-nginx/pull/6154) add `topologySpreadConstraint` to controller 8 | 9 | **Full Changelog**: https://github.com/kubernetes/ingress-nginx/compare/ingress-nginx-2.15.0...ingress-nginx-2.16.0 10 | -------------------------------------------------------------------------------- /charts/ingress-nginx/changelog/helm-chart-2.9.0.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | 3 | This file documents all notable changes to [ingress-nginx](https://github.com/kubernetes/ingress-nginx) Helm Chart. The release numbering uses [semantic versioning](http://semver.org). 4 | 5 | ### 2.9.0 6 | 7 | * [#5795](https://github.com/kubernetes/ingress-nginx/pull/5795) Use fully qualified images to avoid cri-o issues 8 | 9 | **Full Changelog**: https://github.com/kubernetes/ingress-nginx/compare/ingress-nginx-TODO...ingress-nginx-2.9.0 10 | -------------------------------------------------------------------------------- /charts/ingress-nginx/changelog/helm-chart-2.9.1.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | 3 | This file documents all notable changes to [ingress-nginx](https://github.com/kubernetes/ingress-nginx) Helm Chart. The release numbering uses [semantic versioning](http://semver.org). 4 | 5 | ### 2.9.1 6 | 7 | * [#5823](https://github.com/kubernetes/ingress-nginx/pull/5823) Add quoting to sysctls because numeric values need to be presented as strings (#5823) 8 | 9 | **Full Changelog**: https://github.com/kubernetes/ingress-nginx/compare/ingress-nginx-2.9.0...ingress-nginx-2.9.1 10 | -------------------------------------------------------------------------------- /charts/ingress-nginx/changelog/helm-chart-3.0.0.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | 3 | This file documents all notable changes to [ingress-nginx](https://github.com/kubernetes/ingress-nginx) Helm Chart. The release numbering uses [semantic versioning](http://semver.org). 4 | 5 | ### 3.0.0 6 | 7 | * [#6167](https://github.com/kubernetes/ingress-nginx/pull/6167) Update chart requirements 8 | 9 | **Full Changelog**: https://github.com/kubernetes/ingress-nginx/compare/ingress-nginx-2.16.0...ingress-nginx-3.0.0 10 | -------------------------------------------------------------------------------- /charts/ingress-nginx/changelog/helm-chart-3.10.0.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | 3 | This file documents all notable changes to [ingress-nginx](https://github.com/kubernetes/ingress-nginx) Helm Chart. The release numbering uses [semantic versioning](http://semver.org). 4 | 5 | ### 3.10.0 6 | 7 | * Fix routing regression introduced in 0.41.0 with PathType Exact 8 | 9 | **Full Changelog**: https://github.com/kubernetes/ingress-nginx/compare/ingress-nginx-3.9.0...ingress-nginx-3.10.0 10 | -------------------------------------------------------------------------------- /charts/ingress-nginx/changelog/helm-chart-3.10.1.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | 3 | This file documents all notable changes to [ingress-nginx](https://github.com/kubernetes/ingress-nginx) Helm Chart. The release numbering uses [semantic versioning](http://semver.org). 4 | 5 | ### 3.10.1 6 | 7 | * Fix regression introduced in 0.41.0 with external authentication 8 | 9 | **Full Changelog**: https://github.com/kubernetes/ingress-nginx/compare/ingress-nginx-3.10.0...ingress-nginx-3.10.1 10 | -------------------------------------------------------------------------------- /charts/ingress-nginx/changelog/helm-chart-3.11.0.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | 3 | This file documents all notable changes to [ingress-nginx](https://github.com/kubernetes/ingress-nginx) Helm Chart. The release numbering uses [semantic versioning](http://semver.org). 4 | 5 | ### 3.11.0 6 | 7 | * Support Keda Autoscaling 8 | 9 | **Full Changelog**: https://github.com/kubernetes/ingress-nginx/compare/ingress-nginx-3.10.1...ingress-nginx-3.11.0 10 | -------------------------------------------------------------------------------- /charts/ingress-nginx/changelog/helm-chart-3.11.1.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | 3 | This file documents all notable changes to [ingress-nginx](https://github.com/kubernetes/ingress-nginx) Helm Chart. The release numbering uses [semantic versioning](http://semver.org). 4 | 5 | ### 3.11.1 6 | 7 | * [#6505](https://github.com/kubernetes/ingress-nginx/pull/6505) Reorder HPA resource list to work with GitOps tooling 8 | 9 | **Full Changelog**: https://github.com/kubernetes/ingress-nginx/compare/ingress-nginx-3.11.0...ingress-nginx-3.11.1 10 | -------------------------------------------------------------------------------- /charts/ingress-nginx/changelog/helm-chart-3.12.0.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | 3 | This file documents all notable changes to [ingress-nginx](https://github.com/kubernetes/ingress-nginx) Helm Chart. The release numbering uses [semantic versioning](http://semver.org). 4 | 5 | ### 3.12.0 6 | 7 | * [#6514](https://github.com/kubernetes/ingress-nginx/pull/6514) Remove helm2 support and update docs 8 | 9 | **Full Changelog**: https://github.com/kubernetes/ingress-nginx/compare/ingress-nginx-3.11.1...ingress-nginx-3.12.0 10 | -------------------------------------------------------------------------------- /charts/ingress-nginx/changelog/helm-chart-3.13.0.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | 3 | This file documents all notable changes to [ingress-nginx](https://github.com/kubernetes/ingress-nginx) Helm Chart. The release numbering uses [semantic versioning](http://semver.org). 4 | 5 | ### 3.13.0 6 | 7 | * [#6544](https://github.com/kubernetes/ingress-nginx/pull/6544) Fix default backend HPA name variable 8 | 9 | **Full Changelog**: https://github.com/kubernetes/ingress-nginx/compare/ingress-nginx-3.12.0...ingress-nginx-3.13.0 10 | -------------------------------------------------------------------------------- /charts/ingress-nginx/changelog/helm-chart-3.14.0.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | 3 | This file documents all notable changes to [ingress-nginx](https://github.com/kubernetes/ingress-nginx) Helm Chart. The release numbering uses [semantic versioning](http://semver.org). 4 | 5 | ### 3.14.0 6 | 7 | * [#6469](https://github.com/kubernetes/ingress-nginx/pull/6469) Allow custom service names for controller and backend 8 | 9 | **Full Changelog**: https://github.com/kubernetes/ingress-nginx/compare/ingress-nginx-3.13.0...ingress-nginx-3.14.0 10 | -------------------------------------------------------------------------------- /charts/ingress-nginx/changelog/helm-chart-3.15.0.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | 3 | This file documents all notable changes to [ingress-nginx](https://github.com/kubernetes/ingress-nginx) Helm Chart. The release numbering uses [semantic versioning](http://semver.org). 4 | 5 | ### 3.15.0 6 | 7 | * [#6586](https://github.com/kubernetes/ingress-nginx/pull/6586) Fix 'maxmindLicenseKey' location in values.yaml 8 | 9 | **Full Changelog**: https://github.com/kubernetes/ingress-nginx/compare/ingress-nginx-3.14.0...ingress-nginx-3.15.0 10 | -------------------------------------------------------------------------------- /charts/ingress-nginx/changelog/helm-chart-3.15.1.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | 3 | This file documents all notable changes to [ingress-nginx](https://github.com/kubernetes/ingress-nginx) Helm Chart. The release numbering uses [semantic versioning](http://semver.org). 4 | 5 | ### 3.15.1 6 | 7 | * Fix chart-releaser action 8 | 9 | **Full Changelog**: https://github.com/kubernetes/ingress-nginx/compare/ingress-nginx-3.15.0...ingress-nginx-3.15.1 10 | -------------------------------------------------------------------------------- /charts/ingress-nginx/changelog/helm-chart-3.16.0.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | 3 | This file documents all notable changes to [ingress-nginx](https://github.com/kubernetes/ingress-nginx) Helm Chart. The release numbering uses [semantic versioning](http://semver.org). 4 | 5 | ### 3.16.0 6 | 7 | * [#6646](https://github.com/kubernetes/ingress-nginx/pull/6646) Added LoadBalancerIP value for internal service 8 | 9 | **Full Changelog**: https://github.com/kubernetes/ingress-nginx/compare/ingress-nginx-3.15.1...helm-chart-3.16.0 10 | -------------------------------------------------------------------------------- /charts/ingress-nginx/changelog/helm-chart-3.16.1.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | 3 | This file documents all notable changes to [ingress-nginx](https://github.com/kubernetes/ingress-nginx) Helm Chart. The release numbering uses [semantic versioning](http://semver.org). 4 | 5 | ### 3.16.1 6 | 7 | * Fix chart-releaser action 8 | 9 | **Full Changelog**: https://github.com/kubernetes/ingress-nginx/compare/helm-chart-3.16.0...helm-chart-3.16.1 10 | -------------------------------------------------------------------------------- /charts/ingress-nginx/changelog/helm-chart-3.17.0.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | 3 | This file documents all notable changes to [ingress-nginx](https://github.com/kubernetes/ingress-nginx) Helm Chart. The release numbering uses [semantic versioning](http://semver.org). 4 | 5 | ### 3.17.0 6 | 7 | * Update ingress-nginx v0.42.0 8 | 9 | **Full Changelog**: https://github.com/kubernetes/ingress-nginx/compare/helm-chart-3.16.1...helm-chart-3.17.0 10 | -------------------------------------------------------------------------------- /charts/ingress-nginx/changelog/helm-chart-3.18.0.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | 3 | This file documents all notable changes to [ingress-nginx](https://github.com/kubernetes/ingress-nginx) Helm Chart. The release numbering uses [semantic versioning](http://semver.org). 4 | 5 | ### 3.18.0 6 | 7 | * [#6688](https://github.com/kubernetes/ingress-nginx/pull/6688) Allow volume-type emptyDir in controller podsecuritypolicy 8 | * [#6691](https://github.com/kubernetes/ingress-nginx/pull/6691) Improve parsing of helm parameters 9 | 10 | **Full Changelog**: https://github.com/kubernetes/ingress-nginx/compare/helm-chart-3.17.0...helm-chart-3.18.0 11 | -------------------------------------------------------------------------------- /charts/ingress-nginx/changelog/helm-chart-3.19.0.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | 3 | This file documents all notable changes to [ingress-nginx](https://github.com/kubernetes/ingress-nginx) Helm Chart. The release numbering uses [semantic versioning](http://semver.org). 4 | 5 | ### 3.19.0 6 | 7 | * Update ingress-nginx v0.43.0 8 | 9 | **Full Changelog**: https://github.com/kubernetes/ingress-nginx/compare/helm-chart-3.18.0...helm-chart-3.19.0 10 | -------------------------------------------------------------------------------- /charts/ingress-nginx/changelog/helm-chart-3.20.0.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | 3 | This file documents all notable changes to [ingress-nginx](https://github.com/kubernetes/ingress-nginx) Helm Chart. The release numbering uses [semantic versioning](http://semver.org). 4 | 5 | ### 3.20.0 6 | 7 | * [#6730](https://github.com/kubernetes/ingress-nginx/pull/6730) Do not create HPA for defaultBackend if not enabled. 8 | 9 | **Full Changelog**: https://github.com/kubernetes/ingress-nginx/compare/helm-chart-3.19.0...helm-chart-3.20.0 10 | -------------------------------------------------------------------------------- /charts/ingress-nginx/changelog/helm-chart-3.20.1.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | 3 | This file documents all notable changes to [ingress-nginx](https://github.com/kubernetes/ingress-nginx) Helm Chart. The release numbering uses [semantic versioning](http://semver.org). 4 | 5 | ### 3.20.1 6 | 7 | * Do not create KEDA in case of DaemonSets. 8 | * Fix KEDA v2 definition 9 | 10 | **Full Changelog**: https://github.com/kubernetes/ingress-nginx/compare/helm-chart-3.20.0...helm-chart-3.20.1 11 | -------------------------------------------------------------------------------- /charts/ingress-nginx/changelog/helm-chart-3.21.0.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | 3 | This file documents all notable changes to [ingress-nginx](https://github.com/kubernetes/ingress-nginx) Helm Chart. The release numbering uses [semantic versioning](http://semver.org). 4 | 5 | ### 3.21.0 6 | 7 | * [#6783](https://github.com/kubernetes/ingress-nginx/pull/6783) Add custom annotations to ScaledObject 8 | * [#6761](https://github.com/kubernetes/ingress-nginx/pull/6761) Adding quotes in the serviceAccount name in Helm values 9 | * [#6767](https://github.com/kubernetes/ingress-nginx/pull/6767) Remove ClusterRole when scope option is enabled 10 | * [#6785](https://github.com/kubernetes/ingress-nginx/pull/6785) Update kube-webhook-certgen image to v1.5.1 11 | 12 | **Full Changelog**: https://github.com/kubernetes/ingress-nginx/compare/helm-chart-3.20.1...helm-chart-3.21.0 13 | -------------------------------------------------------------------------------- /charts/ingress-nginx/changelog/helm-chart-3.22.0.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | 3 | This file documents all notable changes to [ingress-nginx](https://github.com/kubernetes/ingress-nginx) Helm Chart. The release numbering uses [semantic versioning](http://semver.org). 4 | 5 | ### 3.22.0 6 | 7 | * [#6802](https://github.com/kubernetes/ingress-nginx/pull/6802) Add value for configuring a custom Diffie-Hellman parameters file 8 | * [#6815](https://github.com/kubernetes/ingress-nginx/pull/6815) Allow use of numeric namespaces in helm chart 9 | 10 | **Full Changelog**: https://github.com/kubernetes/ingress-nginx/compare/helm-chart-3.21.0...helm-chart-3.22.0 11 | -------------------------------------------------------------------------------- /charts/ingress-nginx/changelog/helm-chart-3.23.0.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | 3 | This file documents all notable changes to [ingress-nginx](https://github.com/kubernetes/ingress-nginx) Helm Chart. The release numbering uses [semantic versioning](http://semver.org). 4 | 5 | ### 3.23.0 6 | 7 | * Update ingress-nginx v0.44.0 8 | 9 | **Full Changelog**: https://github.com/kubernetes/ingress-nginx/compare/helm-chart-3.22.0...helm-chart-3.23.0 10 | -------------------------------------------------------------------------------- /charts/ingress-nginx/changelog/helm-chart-3.24.0.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | 3 | This file documents all notable changes to [ingress-nginx](https://github.com/kubernetes/ingress-nginx) Helm Chart. The release numbering uses [semantic versioning](http://semver.org). 4 | 5 | ### 3.24.0 6 | 7 | * [#6908](https://github.com/kubernetes/ingress-nginx/pull/6908) Add volumes to default-backend deployment 8 | 9 | **Full Changelog**: https://github.com/kubernetes/ingress-nginx/compare/helm-chart-3.23.0...helm-chart-3.24.0 10 | -------------------------------------------------------------------------------- /charts/ingress-nginx/changelog/helm-chart-3.25.0.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | 3 | This file documents all notable changes to [ingress-nginx](https://github.com/kubernetes/ingress-nginx) Helm Chart. The release numbering uses [semantic versioning](http://semver.org). 4 | 5 | ### 3.25.0 6 | 7 | * [#6957](https://github.com/kubernetes/ingress-nginx/pull/6957) Add ability to specify automountServiceAccountToken 8 | 9 | **Full Changelog**: https://github.com/kubernetes/ingress-nginx/compare/helm-chart-3.24.0...helm-chart-3.25.0 10 | -------------------------------------------------------------------------------- /charts/ingress-nginx/changelog/helm-chart-3.26.0.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | 3 | This file documents all notable changes to [ingress-nginx](https://github.com/kubernetes/ingress-nginx) Helm Chart. The release numbering uses [semantic versioning](http://semver.org). 4 | 5 | ### 3.26.0 6 | 7 | * [#6979](https://github.com/kubernetes/ingress-nginx/pull/6979) Changed servicePort value for metrics 8 | 9 | **Full Changelog**: https://github.com/kubernetes/ingress-nginx/compare/helm-chart-3.25.0...helm-chart-3.26.0 10 | -------------------------------------------------------------------------------- /charts/ingress-nginx/changelog/helm-chart-3.27.0.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | 3 | This file documents all notable changes to [ingress-nginx](https://github.com/kubernetes/ingress-nginx) Helm Chart. The release numbering uses [semantic versioning](http://semver.org). 4 | 5 | ### 3.27.0 6 | 7 | * Update ingress-nginx v0.45.0 8 | 9 | **Full Changelog**: https://github.com/kubernetes/ingress-nginx/compare/helm-chart-3.26.0...helm-chart-3.27.0 10 | -------------------------------------------------------------------------------- /charts/ingress-nginx/changelog/helm-chart-3.28.0.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | 3 | This file documents all notable changes to [ingress-nginx](https://github.com/kubernetes/ingress-nginx) Helm Chart. The release numbering uses [semantic versioning](http://semver.org). 4 | 5 | ### 3.28.0 6 | 7 | * [#6900](https://github.com/kubernetes/ingress-nginx/pull/6900) Support existing PSPs 8 | 9 | **Full Changelog**: https://github.com/kubernetes/ingress-nginx/compare/helm-chart-3.27.0...helm-chart-3.28.0 10 | -------------------------------------------------------------------------------- /charts/ingress-nginx/changelog/helm-chart-3.29.0.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | 3 | This file documents all notable changes to [ingress-nginx](https://github.com/kubernetes/ingress-nginx) Helm Chart. The release numbering uses [semantic versioning](http://semver.org). 4 | 5 | ### 3.29.0 6 | 7 | * [#6945](https://github.com/kubernetes/ingress-nginx/pull/7020) Add option to specify job label for ServiceMonitor 8 | 9 | **Full Changelog**: https://github.com/kubernetes/ingress-nginx/compare/helm-chart-3.28.0...helm-chart-3.29.0 10 | -------------------------------------------------------------------------------- /charts/ingress-nginx/changelog/helm-chart-3.3.0.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | 3 | This file documents all notable changes to [ingress-nginx](https://github.com/kubernetes/ingress-nginx) Helm Chart. The release numbering uses [semantic versioning](http://semver.org). 4 | 5 | ### 3.3.0 6 | 7 | * [#6203](https://github.com/kubernetes/ingress-nginx/pull/6203) Refactor parsing of key values 8 | * [#6162](https://github.com/kubernetes/ingress-nginx/pull/6162) Add helm chart options to expose metrics service as NodePort 9 | * [#6180](https://github.com/kubernetes/ingress-nginx/pull/6180) Fix helm chart admissionReviewVersions regression 10 | * [#6169](https://github.com/kubernetes/ingress-nginx/pull/6169) Fix Typo in example prometheus rules 11 | 12 | **Full Changelog**: https://github.com/kubernetes/ingress-nginx/compare/ingress-nginx-3.0.0...ingress-nginx-3.3.0 13 | -------------------------------------------------------------------------------- /charts/ingress-nginx/changelog/helm-chart-3.3.1.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | 3 | This file documents all notable changes to [ingress-nginx](https://github.com/kubernetes/ingress-nginx) Helm Chart. The release numbering uses [semantic versioning](http://semver.org). 4 | 5 | ### 3.3.1 6 | 7 | * [#6259](https://github.com/kubernetes/ingress-nginx/pull/6259) Release helm chart 8 | * [#6258](https://github.com/kubernetes/ingress-nginx/pull/6258) Fix chart markdown link 9 | * [#6253](https://github.com/kubernetes/ingress-nginx/pull/6253) Release v0.40.0 10 | * [#6233](https://github.com/kubernetes/ingress-nginx/pull/6233) Add admission controller e2e test 11 | 12 | **Full Changelog**: https://github.com/kubernetes/ingress-nginx/compare/ingress-nginx-3.3.0...ingress-nginx-3.3.1 13 | -------------------------------------------------------------------------------- /charts/ingress-nginx/changelog/helm-chart-3.30.0.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | 3 | This file documents all notable changes to [ingress-nginx](https://github.com/kubernetes/ingress-nginx) Helm Chart. The release numbering uses [semantic versioning](http://semver.org). 4 | 5 | ### 3.30.0 6 | 7 | * [#7092](https://github.com/kubernetes/ingress-nginx/pull/7092) Removes the possibility of using localhost in ExternalNames as endpoints 8 | 9 | **Full Changelog**: https://github.com/kubernetes/ingress-nginx/compare/helm-chart-3.29.0...helm-chart-3.30.0 10 | -------------------------------------------------------------------------------- /charts/ingress-nginx/changelog/helm-chart-3.31.0.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | 3 | This file documents all notable changes to [ingress-nginx](https://github.com/kubernetes/ingress-nginx) Helm Chart. The release numbering uses [semantic versioning](http://semver.org). 4 | 5 | ### 3.31.0 6 | 7 | * [7137] https://github.com/kubernetes/ingress-nginx/pull/7137 Add support for custom probes 8 | 9 | **Full Changelog**: https://github.com/kubernetes/ingress-nginx/compare/helm-chart-3.30.0...helm-chart-3.31.0 10 | -------------------------------------------------------------------------------- /charts/ingress-nginx/changelog/helm-chart-3.32.0.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | 3 | This file documents all notable changes to [ingress-nginx](https://github.com/kubernetes/ingress-nginx) Helm Chart. The release numbering uses [semantic versioning](http://semver.org). 4 | 5 | ### 3.32.0 6 | 7 | * [7117] https://github.com/kubernetes/ingress-nginx/pull/7117 Add annotations for HPA 8 | 9 | **Full Changelog**: https://github.com/kubernetes/ingress-nginx/compare/helm-chart-3.31.0...helm-chart-3.32.0 10 | -------------------------------------------------------------------------------- /charts/ingress-nginx/changelog/helm-chart-3.33.0.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | 3 | This file documents all notable changes to [ingress-nginx](https://github.com/kubernetes/ingress-nginx) Helm Chart. The release numbering uses [semantic versioning](http://semver.org). 4 | 5 | ### 3.33.0 6 | 7 | * [7164] https://github.com/kubernetes/ingress-nginx/pull/7164 Update nginx to v1.20.1 8 | 9 | **Full Changelog**: https://github.com/kubernetes/ingress-nginx/compare/helm-chart-3.32.0...helm-chart-3.33.0 10 | -------------------------------------------------------------------------------- /charts/ingress-nginx/changelog/helm-chart-3.34.0.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | 3 | This file documents all notable changes to [ingress-nginx](https://github.com/kubernetes/ingress-nginx) Helm Chart. The release numbering uses [semantic versioning](http://semver.org). 4 | 5 | ### 3.34.0 6 | 7 | * [7256] https://github.com/kubernetes/ingress-nginx/pull/7256 Add namespace field in the namespace scoped resource templates 8 | 9 | **Full Changelog**: https://github.com/kubernetes/ingress-nginx/compare/helm-chart-3.33.0...helm-chart-3.34.0 10 | -------------------------------------------------------------------------------- /charts/ingress-nginx/changelog/helm-chart-3.4.0.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | 3 | This file documents all notable changes to [ingress-nginx](https://github.com/kubernetes/ingress-nginx) Helm Chart. The release numbering uses [semantic versioning](http://semver.org). 4 | 5 | ### 3.4.0 6 | 7 | * [#6268](https://github.com/kubernetes/ingress-nginx/pull/6268) Update to 0.40.2 in helm chart #6288 8 | 9 | **Full Changelog**: https://github.com/kubernetes/ingress-nginx/compare/ingress-nginx-3.3.1...ingress-nginx-3.4.0 10 | -------------------------------------------------------------------------------- /charts/ingress-nginx/changelog/helm-chart-3.5.0.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | 3 | This file documents all notable changes to [ingress-nginx](https://github.com/kubernetes/ingress-nginx) Helm Chart. The release numbering uses [semantic versioning](http://semver.org). 4 | 5 | ### 3.5.0 6 | 7 | * [#6260](https://github.com/kubernetes/ingress-nginx/pull/6260) Allow Helm Chart to customize admission webhook's annotations, timeoutSeconds, namespaceSelector, objectSelector and cert files locations 8 | 9 | **Full Changelog**: https://github.com/kubernetes/ingress-nginx/compare/ingress-nginx-3.4.0...ingress-nginx-3.5.0 10 | -------------------------------------------------------------------------------- /charts/ingress-nginx/changelog/helm-chart-3.5.1.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | 3 | This file documents all notable changes to [ingress-nginx](https://github.com/kubernetes/ingress-nginx) Helm Chart. The release numbering uses [semantic versioning](http://semver.org). 4 | 5 | ### 3.5.1 6 | 7 | * [#6299](https://github.com/kubernetes/ingress-nginx/pull/6299) Fix helm chart release 8 | 9 | **Full Changelog**: https://github.com/kubernetes/ingress-nginx/compare/ingress-nginx-3.5.0...ingress-nginx-3.5.1 10 | -------------------------------------------------------------------------------- /charts/ingress-nginx/changelog/helm-chart-3.6.0.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | 3 | This file documents all notable changes to [ingress-nginx](https://github.com/kubernetes/ingress-nginx) Helm Chart. The release numbering uses [semantic versioning](http://semver.org). 4 | 5 | ### 3.6.0 6 | 7 | * [#6305](https://github.com/kubernetes/ingress-nginx/pull/6305) Add default linux nodeSelector 8 | 9 | **Full Changelog**: https://github.com/kubernetes/ingress-nginx/compare/ingress-nginx-3.5.1...ingress-nginx-3.6.0 10 | -------------------------------------------------------------------------------- /charts/ingress-nginx/changelog/helm-chart-3.7.0.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | 3 | This file documents all notable changes to [ingress-nginx](https://github.com/kubernetes/ingress-nginx) Helm Chart. The release numbering uses [semantic versioning](http://semver.org). 4 | 5 | ### 3.7.0 6 | 7 | * [#6316](https://github.com/kubernetes/ingress-nginx/pull/6316) Numerals in podAnnotations in quotes [#6315](https://github.com/kubernetes/ingress-nginx/issues/6315) 8 | 9 | **Full Changelog**: https://github.com/kubernetes/ingress-nginx/compare/ingress-nginx-3.6.0...ingress-nginx-3.7.0 10 | -------------------------------------------------------------------------------- /charts/ingress-nginx/changelog/helm-chart-3.7.1.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | 3 | This file documents all notable changes to [ingress-nginx](https://github.com/kubernetes/ingress-nginx) Helm Chart. The release numbering uses [semantic versioning](http://semver.org). 4 | 5 | ### 3.7.1 6 | 7 | * [#6326](https://github.com/kubernetes/ingress-nginx/pull/6326) Fix liveness and readiness probe path in daemonset chart 8 | 9 | **Full Changelog**: https://github.com/kubernetes/ingress-nginx/compare/ingress-nginx-3.7.0...ingress-nginx-3.7.1 10 | -------------------------------------------------------------------------------- /charts/ingress-nginx/changelog/helm-chart-3.8.0.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | 3 | This file documents all notable changes to [ingress-nginx](https://github.com/kubernetes/ingress-nginx) Helm Chart. The release numbering uses [semantic versioning](http://semver.org). 4 | 5 | ### 3.8.0 6 | 7 | * [#6395](https://github.com/kubernetes/ingress-nginx/pull/6395) Update jettech/kube-webhook-certgen image 8 | * [#6377](https://github.com/kubernetes/ingress-nginx/pull/6377) Added loadBalancerSourceRanges for internal lbs 9 | * [#6356](https://github.com/kubernetes/ingress-nginx/pull/6356) Add securitycontext settings on defaultbackend 10 | * [#6401](https://github.com/kubernetes/ingress-nginx/pull/6401) Fix controller service annotations 11 | * [#6403](https://github.com/kubernetes/ingress-nginx/pull/6403) Initial helm chart changelog 12 | 13 | **Full Changelog**: https://github.com/kubernetes/ingress-nginx/compare/ingress-nginx-3.7.1...ingress-nginx-3.8.0 14 | -------------------------------------------------------------------------------- /charts/ingress-nginx/changelog/helm-chart-3.9.0.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | 3 | This file documents all notable changes to [ingress-nginx](https://github.com/kubernetes/ingress-nginx) Helm Chart. The release numbering uses [semantic versioning](http://semver.org). 4 | 5 | ### 3.9.0 6 | 7 | * [#6423](https://github.com/kubernetes/ingress-nginx/pull/6423) Add Default backend HPA autoscaling 8 | 9 | **Full Changelog**: https://github.com/kubernetes/ingress-nginx/compare/ingress-nginx-3.8.0...ingress-nginx-3.9.0 10 | -------------------------------------------------------------------------------- /charts/ingress-nginx/changelog/helm-chart-4.0.1.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | 3 | This file documents all notable changes to [ingress-nginx](https://github.com/kubernetes/ingress-nginx) Helm Chart. The release numbering uses [semantic versioning](http://semver.org). 4 | 5 | ### 4.0.1 6 | 7 | * [7535] https://github.com/kubernetes/ingress-nginx/pull/7535 Release v1.0.0 ingress-nginx 8 | 9 | **Full Changelog**: https://github.com/kubernetes/ingress-nginx/compare/helm-chart-3.34.0...helm-chart-4.0.1 10 | -------------------------------------------------------------------------------- /charts/ingress-nginx/changelog/helm-chart-4.0.10.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | 3 | This file documents all notable changes to [ingress-nginx](https://github.com/kubernetes/ingress-nginx) Helm Chart. The release numbering uses [semantic versioning](http://semver.org). 4 | 5 | ### 4.0.10 6 | 7 | * [7964] https://github.com/kubernetes/ingress-nginx/pull/7964 Update controller version to v1.1.0 8 | 9 | **Full Changelog**: https://github.com/kubernetes/ingress-nginx/compare/helm-chart-4.0.9...helm-chart-4.0.10 10 | -------------------------------------------------------------------------------- /charts/ingress-nginx/changelog/helm-chart-4.0.11.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | 3 | This file documents all notable changes to [ingress-nginx](https://github.com/kubernetes/ingress-nginx) Helm Chart. The release numbering uses [semantic versioning](http://semver.org). 4 | 5 | ### 4.0.11 6 | 7 | * [7873] https://github.com/kubernetes/ingress-nginx/pull/7873 Makes the [appProtocol](https://kubernetes.io/docs/concepts/services-networking/_print/#application-protocol) field optional. 8 | 9 | **Full Changelog**: https://github.com/kubernetes/ingress-nginx/compare/helm-chart-4.0.10...helm-chart-4.0.11 10 | -------------------------------------------------------------------------------- /charts/ingress-nginx/changelog/helm-chart-4.0.12.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | 3 | This file documents all notable changes to [ingress-nginx](https://github.com/kubernetes/ingress-nginx) Helm Chart. The release numbering uses [semantic versioning](http://semver.org). 4 | 5 | ### 4.0.12 6 | 7 | * [7978] https://github.com/kubernetes/ingress-nginx/pull/7979 Support custom annotations in admissions Jobs 8 | 9 | **Full Changelog**: https://github.com/kubernetes/ingress-nginx/compare/helm-chart-4.0.11...helm-chart-4.0.12 10 | -------------------------------------------------------------------------------- /charts/ingress-nginx/changelog/helm-chart-4.0.13.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | 3 | This file documents all notable changes to [ingress-nginx](https://github.com/kubernetes/ingress-nginx) Helm Chart. The release numbering uses [semantic versioning](http://semver.org). 4 | 5 | ### 4.0.13 6 | 7 | * [8008] https://github.com/kubernetes/ingress-nginx/pull/8008 Add relabelings in controller-servicemonitor.yaml 8 | 9 | **Full Changelog**: https://github.com/kubernetes/ingress-nginx/compare/helm-chart-4.0.12...helm-chart-4.0.13 10 | -------------------------------------------------------------------------------- /charts/ingress-nginx/changelog/helm-chart-4.0.14.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | 3 | This file documents all notable changes to [ingress-nginx](https://github.com/kubernetes/ingress-nginx) Helm Chart. The release numbering uses [semantic versioning](http://semver.org). 4 | 5 | ### 4.0.14 6 | 7 | * [8061] https://github.com/kubernetes/ingress-nginx/pull/8061 Using helm-docs to populate values table in README.md 8 | 9 | **Full Changelog**: https://github.com/kubernetes/ingress-nginx/compare/helm-chart-4.0.13...helm-chart-4.0.14 10 | -------------------------------------------------------------------------------- /charts/ingress-nginx/changelog/helm-chart-4.0.2.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | 3 | This file documents all notable changes to [ingress-nginx](https://github.com/kubernetes/ingress-nginx) Helm Chart. The release numbering uses [semantic versioning](http://semver.org). 4 | 5 | ### 4.0.2 6 | 7 | * [7681] https://github.com/kubernetes/ingress-nginx/pull/7681 Release v1.0.1 of ingress-nginx 8 | 9 | **Full Changelog**: https://github.com/kubernetes/ingress-nginx/compare/helm-chart-4.0.1...helm-chart-4.0.2 10 | -------------------------------------------------------------------------------- /charts/ingress-nginx/changelog/helm-chart-4.0.3.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | 3 | This file documents all notable changes to [ingress-nginx](https://github.com/kubernetes/ingress-nginx) Helm Chart. The release numbering uses [semantic versioning](http://semver.org). 4 | 5 | ### 4.0.3 6 | 7 | * [7707] https://github.com/kubernetes/ingress-nginx/pull/7707 Release v1.0.2 of ingress-nginx 8 | 9 | **Full Changelog**: https://github.com/kubernetes/ingress-nginx/compare/helm-chart-4.0.2...helm-chart-4.0.3 10 | -------------------------------------------------------------------------------- /charts/ingress-nginx/changelog/helm-chart-4.0.5.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | 3 | This file documents all notable changes to [ingress-nginx](https://github.com/kubernetes/ingress-nginx) Helm Chart. The release numbering uses [semantic versioning](http://semver.org). 4 | 5 | ### 4.0.5 6 | 7 | * [7740] https://github.com/kubernetes/ingress-nginx/pull/7740 Release v1.0.3 of ingress-nginx 8 | 9 | **Full Changelog**: https://github.com/kubernetes/ingress-nginx/compare/helm-chart-4.0.3...helm-chart-4.0.5 10 | -------------------------------------------------------------------------------- /charts/ingress-nginx/changelog/helm-chart-4.0.6.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | 3 | This file documents all notable changes to [ingress-nginx](https://github.com/kubernetes/ingress-nginx) Helm Chart. The release numbering uses [semantic versioning](http://semver.org). 4 | 5 | ### 4.0.6 6 | 7 | * [7804] https://github.com/kubernetes/ingress-nginx/pull/7804 Release v1.0.4 of ingress-nginx 8 | * [7651] https://github.com/kubernetes/ingress-nginx/pull/7651 Support ipFamilyPolicy and ipFamilies fields in Helm Chart 9 | * [7798] https://github.com/kubernetes/ingress-nginx/pull/7798 Exoscale: use HTTP Healthcheck mode 10 | * [7793] https://github.com/kubernetes/ingress-nginx/pull/7793 Update kube-webhook-certgen to v1.1.1 11 | 12 | **Full Changelog**: https://github.com/kubernetes/ingress-nginx/compare/helm-chart-4.0.5...helm-chart-4.0.6 13 | -------------------------------------------------------------------------------- /charts/ingress-nginx/changelog/helm-chart-4.0.7.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | 3 | This file documents all notable changes to [ingress-nginx](https://github.com/kubernetes/ingress-nginx) Helm Chart. The release numbering uses [semantic versioning](http://semver.org). 4 | 5 | ### 4.0.7 6 | 7 | * [7923] https://github.com/kubernetes/ingress-nginx/pull/7923 Release v1.0.5 of ingress-nginx 8 | * [7806] https://github.com/kubernetes/ingress-nginx/pull/7806 Choice option for internal/external loadbalancer type service 9 | 10 | **Full Changelog**: https://github.com/kubernetes/ingress-nginx/compare/helm-chart-4.0.6...helm-chart-4.0.7 11 | -------------------------------------------------------------------------------- /charts/ingress-nginx/changelog/helm-chart-4.0.9.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | 3 | This file documents all notable changes to [ingress-nginx](https://github.com/kubernetes/ingress-nginx) Helm Chart. The release numbering uses [semantic versioning](http://semver.org). 4 | 5 | ### 4.0.9 6 | 7 | * [6992] https://github.com/kubernetes/ingress-nginx/pull/6992 Add ability to specify labels for all resources 8 | 9 | **Full Changelog**: https://github.com/kubernetes/ingress-nginx/compare/helm-chart-4.0.7...helm-chart-4.0.9 10 | -------------------------------------------------------------------------------- /charts/ingress-nginx/changelog/helm-chart-4.1.2.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | 3 | This file documents all notable changes to [ingress-nginx](https://github.com/kubernetes/ingress-nginx) Helm Chart. The release numbering uses [semantic versioning](http://semver.org). 4 | 5 | ### 4.1.2 6 | 7 | * [8587](https://github.com/kubernetes/ingress-nginx/pull/8587) Add CAP_SYS_CHROOT to DS/PSP when needed 8 | * [8458](https://github.com/kubernetes/ingress-nginx/pull/8458) Add portNamePrefix Helm chart parameter 9 | * [8522](https://github.com/kubernetes/ingress-nginx/pull/8522) Add documentation for controller.service.loadBalancerIP in Helm chart 10 | 11 | **Full Changelog**: https://github.com/kubernetes/ingress-nginx/compare/helm-chart-4.1.0...helm-chart-4.1.2 12 | -------------------------------------------------------------------------------- /charts/ingress-nginx/changelog/helm-chart-4.10.0.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | 3 | This file documents all notable changes to [ingress-nginx](https://github.com/kubernetes/ingress-nginx) Helm Chart. The release numbering uses [semantic versioning](http://semver.org). 4 | 5 | ### 4.10.0 6 | 7 | * - "Update Ingress-Nginx version controller-v1.10.0" 8 | 9 | **Full Changelog**: https://github.com/kubernetes/ingress-nginx/compare/helm-chart-4.9.1...helm-chart-4.10.0 10 | -------------------------------------------------------------------------------- /charts/ingress-nginx/changelog/helm-chart-4.10.1.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | 3 | This file documents all notable changes to [ingress-nginx](https://github.com/kubernetes/ingress-nginx) Helm Chart. The release numbering uses [semantic versioning](http://semver.org). 4 | 5 | ### 4.10.1 6 | 7 | * - "update post submit helm ci and clean up (#11221)" 8 | * - "refactor helm ci tests part I (#11188)" 9 | * - "Update Ingress-Nginx version controller-v1.10.1" 10 | 11 | **Full Changelog**: https://github.com/kubernetes/ingress-nginx/compare/helm-chart-4.10.0...helm-chart-4.10.1 12 | -------------------------------------------------------------------------------- /charts/ingress-nginx/changelog/helm-chart-4.10.2.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | 3 | This file documents all notable changes to [ingress-nginx](https://github.com/kubernetes/ingress-nginx) Helm Chart. The release numbering uses [semantic versioning](http://semver.org). 4 | 5 | ### 4.10.2 6 | 7 | * Chores: Align security contacts & chart maintainers to actual owners. (#11480) 8 | * Fix helm install on cloud provider admonition block (#11412) 9 | * edited helm-install tips (#11411) 10 | * added info for aws helm install (#11410) 11 | * add workflow to helm release and update ct for branch (#11317) 12 | * Merge pull request #11277 from strongjz/chart-1.10.1 (#11314) 13 | * release helm chart from release branch (#11278) 14 | * update post submit helm ci and clean up (#11221) 15 | * refactor helm ci tests part I (#11188) 16 | * Update Ingress-Nginx version controller-v1.10.2 17 | 18 | **Full Changelog**: https://github.com/kubernetes/ingress-nginx/compare/helm-chart-4.10.1...helm-chart-4.10.2 19 | -------------------------------------------------------------------------------- /charts/ingress-nginx/changelog/helm-chart-4.10.3.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | 3 | This file documents all notable changes to [ingress-nginx](https://github.com/kubernetes/ingress-nginx) Helm Chart. The release numbering uses [semantic versioning](http://semver.org). 4 | 5 | ### 4.10.3 6 | 7 | * Update Ingress-Nginx version controller-v1.10.3 8 | 9 | **Full Changelog**: https://github.com/kubernetes/ingress-nginx/compare/helm-chart-4.10.2...helm-chart-4.10.3 10 | -------------------------------------------------------------------------------- /charts/ingress-nginx/changelog/helm-chart-4.10.4.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | 3 | This file documents all notable changes to [ingress-nginx](https://github.com/kubernetes/ingress-nginx) Helm Chart. The release numbering uses [semantic versioning](http://semver.org). 4 | 5 | ### 4.10.4 6 | 7 | * Update Ingress-Nginx version controller-v1.10.4 8 | 9 | **Full Changelog**: https://github.com/kubernetes/ingress-nginx/compare/helm-chart-4.10.3...helm-chart-4.10.4 10 | -------------------------------------------------------------------------------- /charts/ingress-nginx/changelog/helm-chart-4.10.5.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | 3 | This file documents all notable changes to [ingress-nginx](https://github.com/kubernetes/ingress-nginx) Helm Chart. The release numbering uses [semantic versioning](http://semver.org). 4 | 5 | ### 4.10.5 6 | 7 | * Update Ingress-Nginx version controller-v1.10.5 8 | 9 | **Full Changelog**: https://github.com/kubernetes/ingress-nginx/compare/helm-chart-4.10.4...helm-chart-4.10.5 10 | -------------------------------------------------------------------------------- /charts/ingress-nginx/changelog/helm-chart-4.10.6.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | 3 | This file documents all notable changes to [ingress-nginx](https://github.com/kubernetes/ingress-nginx) Helm Chart. The release numbering uses [semantic versioning](http://semver.org). 4 | 5 | ### 4.10.6 6 | 7 | * CI: Fix chart testing. (#12260) 8 | * Update Ingress-Nginx version controller-v1.10.6 9 | 10 | **Full Changelog**: https://github.com/kubernetes/ingress-nginx/compare/helm-chart-4.10.5...helm-chart-4.10.6 11 | -------------------------------------------------------------------------------- /charts/ingress-nginx/changelog/helm-chart-4.11.0.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | 3 | This file documents all notable changes to [ingress-nginx](https://github.com/kubernetes/ingress-nginx) Helm Chart. The release numbering uses [semantic versioning](http://semver.org). 4 | 5 | ### 4.11.0 6 | 7 | * Chores: Align security contacts & chart maintainers to actual owners. (#11465) 8 | * Merge pull request #11277 from strongjz/chart-1.10.1 (#11415) 9 | * Fix helm install on cloud provider admonition block (#11394) 10 | * edited helm-install tips (#11393) 11 | * added info for aws helm install (#11390) 12 | * add workflow to helm release and update ct for branch (#11378) 13 | * release helm chart from release branch (#11276) 14 | * update post submit helm ci and clean up (#11220) 15 | * refactor helm ci tests part I (#11178) 16 | * Update Ingress-Nginx version controller-v1.11.0 17 | 18 | **Full Changelog**: https://github.com/kubernetes/ingress-nginx/compare/helm-chart-4.10.2...helm-chart-4.11.0 19 | -------------------------------------------------------------------------------- /charts/ingress-nginx/changelog/helm-chart-4.11.1.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | 3 | This file documents all notable changes to [ingress-nginx](https://github.com/kubernetes/ingress-nginx) Helm Chart. The release numbering uses [semantic versioning](http://semver.org). 4 | 5 | ### 4.11.1 6 | 7 | * Update Ingress-Nginx version controller-v1.11.1 8 | 9 | **Full Changelog**: https://github.com/kubernetes/ingress-nginx/compare/helm-chart-4.11.0...helm-chart-4.11.1 10 | -------------------------------------------------------------------------------- /charts/ingress-nginx/changelog/helm-chart-4.11.2.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | 3 | This file documents all notable changes to [ingress-nginx](https://github.com/kubernetes/ingress-nginx) Helm Chart. The release numbering uses [semantic versioning](http://semver.org). 4 | 5 | ### 4.11.2 6 | 7 | * Update Ingress-Nginx version controller-v1.11.2 8 | 9 | **Full Changelog**: https://github.com/kubernetes/ingress-nginx/compare/helm-chart-4.11.1...helm-chart-4.11.2 10 | -------------------------------------------------------------------------------- /charts/ingress-nginx/changelog/helm-chart-4.11.3.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | 3 | This file documents all notable changes to [ingress-nginx](https://github.com/kubernetes/ingress-nginx) Helm Chart. The release numbering uses [semantic versioning](http://semver.org). 4 | 5 | ### 4.11.3 6 | 7 | * Update Ingress-Nginx version controller-v1.11.3 8 | 9 | **Full Changelog**: https://github.com/kubernetes/ingress-nginx/compare/helm-chart-4.11.2...helm-chart-4.11.3 10 | -------------------------------------------------------------------------------- /charts/ingress-nginx/changelog/helm-chart-4.11.4.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | 3 | This file documents all notable changes to [ingress-nginx](https://github.com/kubernetes/ingress-nginx) Helm Chart. The release numbering uses [semantic versioning](http://semver.org). 4 | 5 | ### 4.11.4 6 | 7 | * CI: Fix chart testing. (#12259) 8 | * Update Ingress-Nginx version controller-v1.11.4 9 | 10 | **Full Changelog**: https://github.com/kubernetes/ingress-nginx/compare/helm-chart-4.11.3...helm-chart-4.11.4 11 | -------------------------------------------------------------------------------- /charts/ingress-nginx/changelog/helm-chart-4.11.5.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | 3 | This file documents all notable changes to [ingress-nginx](https://github.com/kubernetes/ingress-nginx) Helm Chart. The release numbering uses [semantic versioning](http://semver.org). 4 | 5 | ### 4.11.5 6 | 7 | * Update Ingress-Nginx version controller-v1.11.5 8 | 9 | **Full Changelog**: https://github.com/kubernetes/ingress-nginx/compare/helm-chart-4.11.4...helm-chart-4.11.5 10 | -------------------------------------------------------------------------------- /charts/ingress-nginx/changelog/helm-chart-4.11.6.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | 3 | This file documents all notable changes to [ingress-nginx](https://github.com/kubernetes/ingress-nginx) Helm Chart. The release numbering uses [semantic versioning](http://semver.org). 4 | 5 | ### 4.11.6 6 | 7 | * Update Ingress-Nginx version controller-v1.11.6 8 | 9 | **Full Changelog**: https://github.com/kubernetes/ingress-nginx/compare/helm-chart-4.11.5...helm-chart-4.11.6 10 | -------------------------------------------------------------------------------- /charts/ingress-nginx/changelog/helm-chart-4.12.0-beta.0.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | 3 | This file documents all notable changes to [ingress-nginx](https://github.com/kubernetes/ingress-nginx) Helm Chart. The release numbering uses [semantic versioning](http://semver.org). 4 | 5 | ### 4.12.0-beta.0 6 | 7 | * Update Ingress-Nginx version controller-v1.12.0-beta.0 8 | 9 | **Full Changelog**: https://github.com/kubernetes/ingress-nginx/compare/helm-chart-4.11.0...helm-chart-4.12.0-beta.0 10 | -------------------------------------------------------------------------------- /charts/ingress-nginx/changelog/helm-chart-4.12.0.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | 3 | This file documents all notable changes to [ingress-nginx](https://github.com/kubernetes/ingress-nginx) Helm Chart. The release numbering uses [semantic versioning](http://semver.org). 4 | 5 | ### 4.12.0 6 | 7 | * CI: Fix chart testing. (#12258) 8 | * Update Ingress-Nginx version controller-v1.12.0 9 | 10 | **Full Changelog**: https://github.com/kubernetes/ingress-nginx/compare/helm-chart-4.11.0...helm-chart-4.12.0 11 | -------------------------------------------------------------------------------- /charts/ingress-nginx/changelog/helm-chart-4.12.1.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | 3 | This file documents all notable changes to [ingress-nginx](https://github.com/kubernetes/ingress-nginx) Helm Chart. The release numbering uses [semantic versioning](http://semver.org). 4 | 5 | ### 4.12.1 6 | 7 | * Update Ingress-Nginx version controller-v1.12.1 8 | 9 | **Full Changelog**: https://github.com/kubernetes/ingress-nginx/compare/helm-chart-4.12.0...helm-chart-4.12.1 10 | -------------------------------------------------------------------------------- /charts/ingress-nginx/changelog/helm-chart-4.12.2.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | 3 | This file documents all notable changes to [ingress-nginx](https://github.com/kubernetes/ingress-nginx) Helm Chart. The release numbering uses [semantic versioning](http://semver.org). 4 | 5 | ### 4.12.2 6 | 7 | * Update Ingress-Nginx version controller-v1.12.2 8 | 9 | **Full Changelog**: https://github.com/kubernetes/ingress-nginx/compare/helm-chart-4.12.1...helm-chart-4.12.2 10 | -------------------------------------------------------------------------------- /charts/ingress-nginx/changelog/helm-chart-4.2.1.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | 3 | This file documents all notable changes to [ingress-nginx](https://github.com/kubernetes/ingress-nginx) Helm Chart. The release numbering uses [semantic versioning](http://semver.org). 4 | 5 | ### 4.2.1 6 | 7 | * The sha of kube-webhook-certgen image & the opentelemetry image, in values file, was changed to new images built on alpine-v3.16.1 8 | * [8896](https://github.com/kubernetes/ingress-nginx/pull/8896) updated to new images built today 9 | 10 | **Full Changelog**: https://github.com/kubernetes/ingress-nginx/compare/helm-chart-4.2.0...helm-chart-4.2.1 11 | -------------------------------------------------------------------------------- /charts/ingress-nginx/changelog/helm-chart-4.3.0.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | 3 | This file documents all notable changes to [ingress-nginx](https://github.com/kubernetes/ingress-nginx) Helm Chart. The release numbering uses [semantic versioning](http://semver.org). 4 | 5 | ### 4.3.0 6 | 7 | * Support for Kubernetes v.1.25.0 was added and support for endpoint slices 8 | * Support for Kubernetes v1.20.0 and v1.21.0 was removed 9 | * [8890](https://github.com/kubernetes/ingress-nginx/pull/8890) migrate to endpointslices 10 | * [9059](https://github.com/kubernetes/ingress-nginx/pull/9059) kubewebhookcertgen sha change after go1191 11 | * [9046](https://github.com/kubernetes/ingress-nginx/pull/9046) Parameterize metrics port name 12 | * [9104](https://github.com/kubernetes/ingress-nginx/pull/9104) Fix yaml formatting error with multiple annotations 13 | 14 | **Full Changelog**: https://github.com/kubernetes/ingress-nginx/compare/helm-chart-4.2.1...helm-chart-4.3.0 15 | -------------------------------------------------------------------------------- /charts/ingress-nginx/changelog/helm-chart-4.4.0.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | 3 | This file documents all notable changes to [ingress-nginx](https://github.com/kubernetes/ingress-nginx) Helm Chart. The release numbering uses [semantic versioning](http://semver.org). 4 | 5 | ### 4.4.0 6 | 7 | * Adding support for disabling liveness and readiness probes to the Helm chart by @njegosrailic in https://github.com/kubernetes/ingress-nginx/pull/9238 8 | * add:(admission-webhooks) ability to set securityContext by @ybelMekk in https://github.com/kubernetes/ingress-nginx/pull/9186 9 | * #7652 - Updated Helm chart to use the fullname for the electionID if not specified. by @FutureMatt in https://github.com/kubernetes/ingress-nginx/pull/9133 10 | * Rename controller-wehbooks-networkpolicy.yaml. by @Gacko in https://github.com/kubernetes/ingress-nginx/pull/9123 11 | 12 | **Full Changelog**: https://github.com/kubernetes/ingress-nginx/compare/helm-chart-4.3.0...helm-chart-4.4.0 13 | -------------------------------------------------------------------------------- /charts/ingress-nginx/changelog/helm-chart-4.5.2.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | 3 | This file documents all notable changes to [ingress-nginx](https://github.com/kubernetes/ingress-nginx) Helm Chart. The release numbering uses [semantic versioning](http://semver.org). 4 | 5 | ### 4.5.2 6 | 7 | * add lint on chart before release (#9570) 8 | * ci: remove setup-helm step (#9404) 9 | * feat(helm): Optionally use cert-manager instead admission patch (#9279) 10 | * run helm release on main only and when the chart/value changes only (#9290) 11 | * Update Ingress-Nginx version controller-v1.6.4 12 | 13 | **Full Changelog**: https://github.com/kubernetes/ingress-nginx/compare/helm-chart-4.4.3...helm-chart-4.5.2 14 | -------------------------------------------------------------------------------- /charts/ingress-nginx/changelog/helm-chart-4.6.1.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | 3 | This file documents all notable changes to [ingress-nginx](https://github.com/kubernetes/ingress-nginx) Helm Chart. The release numbering uses [semantic versioning](http://semver.org). 4 | 5 | ### 4.6.1 6 | 7 | * [helm] Support custom port configuration for internal service (#9846) 8 | * Adding resource type to default HPA configuration to resolve issues with Terraform helm chart usage (#9803) 9 | * Update Ingress-Nginx version controller-v1.7.1 10 | 11 | **Full Changelog**: https://github.com/kubernetes/ingress-nginx/compare/helm-chart-4.6.0...helm-chart-4.6.1 12 | -------------------------------------------------------------------------------- /charts/ingress-nginx/changelog/helm-chart-4.7.0.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | 3 | This file documents all notable changes to [ingress-nginx](https://github.com/kubernetes/ingress-nginx) Helm Chart. The release numbering uses [semantic versioning](http://semver.org). 4 | 5 | ### 4.7.0 6 | 7 | * helm: Fix opentelemetry module installation for daemonset (#9792) 8 | * Update charts/* to keep project name display aligned (#9931) 9 | * HPA: Use capabilities & align manifests. (#9521) 10 | * PodDisruptionBudget spec logic update (#9904) 11 | * add option for annotations in PodDisruptionBudget (#9843) 12 | * Update Ingress-Nginx version controller-v1.8.0 13 | 14 | **Full Changelog**: https://github.com/kubernetes/ingress-nginx/compare/helm-chart-4.6.1...helm-chart-4.7.0 15 | -------------------------------------------------------------------------------- /charts/ingress-nginx/changelog/helm-chart-4.7.1.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | 3 | This file documents all notable changes to [ingress-nginx](https://github.com/kubernetes/ingress-nginx) Helm Chart. The release numbering uses [semantic versioning](http://semver.org). 4 | 5 | ### 4.7.1 6 | 7 | * Added a doc line to the missing helm value service.internal.loadBalancerIP (#9406) 8 | * feat(helm): Add loadBalancerClass (#9562) 9 | * added helmshowvalues example (#10019) 10 | * Update Ingress-Nginx version controller-v1.8.1 11 | 12 | **Full Changelog**: https://github.com/kubernetes/ingress-nginx/compare/helm-chart-4.7.0...helm-chart-4.7.1 13 | -------------------------------------------------------------------------------- /charts/ingress-nginx/changelog/helm-chart-4.7.2.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | 3 | This file documents all notable changes to [ingress-nginx](https://github.com/kubernetes/ingress-nginx) Helm Chart. The release numbering uses [semantic versioning](http://semver.org). 4 | 5 | ### 4.7.2 6 | 7 | * Update Ingress-Nginx version controller-v1.8.2 8 | 9 | **Full Changelog**: https://github.com/kubernetes/ingress-nginx/compare/helm-chart-4.7.1...helm-chart-4.7.2 10 | -------------------------------------------------------------------------------- /charts/ingress-nginx/changelog/helm-chart-4.8.0-beta.0.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | 3 | This file documents all notable changes to [ingress-nginx](https://github.com/kubernetes/ingress-nginx) Helm Chart. The release numbering uses [semantic versioning](http://semver.org). 4 | 5 | ### 4.8.0-beta.0 6 | 7 | * ci(helm): fix Helm Chart release action 422 error (#10237) 8 | * helm: Use .Release.Namespace as default for ServiceMonitor namespace (#10249) 9 | * [helm] configure allow to configure hostAliases (#10180) 10 | * [helm] pass service annotations through helm tpl engine (#10084) 11 | * Update Ingress-Nginx version controller-v1.9.0-beta.0 12 | 13 | **Full Changelog**: https://github.com/kubernetes/ingress-nginx/compare/helm-chart-4.7.2...helm-chart-4.8.0-beta.0 14 | -------------------------------------------------------------------------------- /charts/ingress-nginx/changelog/helm-chart-4.8.0.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | 3 | This file documents all notable changes to [ingress-nginx](https://github.com/kubernetes/ingress-nginx) Helm Chart. The release numbering uses [semantic versioning](http://semver.org). 4 | 5 | ### 4.8.0 6 | 7 | * ci(helm): fix Helm Chart release action 422 error (#10237) 8 | * helm: Use .Release.Namespace as default for ServiceMonitor namespace (#10249) 9 | * [helm] configure allow to configure hostAliases (#10180) 10 | * [helm] pass service annotations through helm tpl engine (#10084) 11 | * Update Ingress-Nginx version controller-v1.9.0 12 | 13 | **Full Changelog**: https://github.com/kubernetes/ingress-nginx/compare/helm-chart-4.7.2...helm-chart-4.8.0 14 | -------------------------------------------------------------------------------- /charts/ingress-nginx/changelog/helm-chart-4.8.1.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | 3 | This file documents all notable changes to [ingress-nginx](https://github.com/kubernetes/ingress-nginx) Helm Chart. The release numbering uses [semantic versioning](http://semver.org). 4 | 5 | ### 4.8.1 6 | 7 | * Update Ingress-Nginx version controller-v1.9.1 8 | 9 | **Full Changelog**: https://github.com/kubernetes/ingress-nginx/compare/helm-chart-4.8.0...helm-chart-4.8.1 10 | -------------------------------------------------------------------------------- /charts/ingress-nginx/changelog/helm-chart-4.8.2.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | 3 | This file documents all notable changes to [ingress-nginx](https://github.com/kubernetes/ingress-nginx) Helm Chart. The release numbering uses [semantic versioning](http://semver.org). 4 | 5 | ### 4.8.2 6 | 7 | * update nginx base, httpbun, e2e, helm webhook cert gen (#10506) 8 | * Update Ingress-Nginx version controller-v1.9.3 9 | 10 | **Full Changelog**: https://github.com/kubernetes/ingress-nginx/compare/helm-chart-4.8.1...helm-chart-4.8.2 11 | -------------------------------------------------------------------------------- /charts/ingress-nginx/changelog/helm-chart-4.8.3.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | 3 | This file documents all notable changes to [ingress-nginx](https://github.com/kubernetes/ingress-nginx) Helm Chart. The release numbering uses [semantic versioning](http://semver.org). 4 | 5 | ### 4.8.3 6 | 7 | * Update Ingress-Nginx version controller-v1.9.4 8 | 9 | **Full Changelog**: https://github.com/kubernetes/ingress-nginx/compare/helm-chart-4.8.2...helm-chart-4.8.3 10 | -------------------------------------------------------------------------------- /charts/ingress-nginx/changelog/helm-chart-4.9.0.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | 3 | This file documents all notable changes to [ingress-nginx](https://github.com/kubernetes/ingress-nginx) Helm Chart. The release numbering uses [semantic versioning](http://semver.org). 4 | 5 | ### 4.9.0 6 | 7 | * - "Add controller.metrics.serviceMonitor.annotations in Helm chart" 8 | * - "fix(labels): use complete labels variable on default-backend deployment" 9 | * - "chart: allow setting allocateLoadBalancerNodePorts (#10693)" 10 | * - "[release-1.9] feat(helm): add documentation about metric args (#10695)" 11 | * - "Update Ingress-Nginx version controller-v1.9.5" 12 | 13 | **Full Changelog**: https://github.com/kubernetes/ingress-nginx/compare/helm-chart-4.8.3...helm-chart-4.9.0 14 | -------------------------------------------------------------------------------- /charts/ingress-nginx/changelog/helm-chart-4.9.1.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | 3 | This file documents all notable changes to [ingress-nginx](https://github.com/kubernetes/ingress-nginx) Helm Chart. The release numbering uses [semantic versioning](http://semver.org). 4 | 5 | ### 4.9.1 6 | 7 | * - "update web hook cert gen to latest release v20231226-1a7112e06" 8 | * - "Update Ingress-Nginx version controller-v1.9.6" 9 | 10 | **Full Changelog**: https://github.com/kubernetes/ingress-nginx/compare/helm-chart-4.9.0...helm-chart-4.9.1 11 | -------------------------------------------------------------------------------- /charts/ingress-nginx/changelog/helm-chart.md.gotmpl: -------------------------------------------------------------------------------- 1 | # Changelog 2 | 3 | This file documents all notable changes to [ingress-nginx](https://github.com/kubernetes/ingress-nginx) Helm Chart. The release numbering uses [semantic versioning](http://semver.org). 4 | 5 | ### {{ .NewHelmChartVersion }} 6 | {{ with .HelmUpdates }} 7 | {{- range . }} 8 | * {{ . }} 9 | {{- end }} 10 | {{ end }} 11 | **Full Changelog**: https://github.com/kubernetes/ingress-nginx/compare/helm-chart-{{ .PreviousHelmChartVersion }}...helm-chart-{{ .NewHelmChartVersion }} 12 | -------------------------------------------------------------------------------- /charts/ingress-nginx/ci/admission-webhooks-cert-manager-values.yaml: -------------------------------------------------------------------------------- 1 | controller: 2 | image: 3 | repository: ingress-controller/controller 4 | tag: 1.0.0-dev 5 | digest: null 6 | 7 | service: 8 | type: ClusterIP 9 | 10 | admissionWebhooks: 11 | certManager: 12 | enabled: true 13 | -------------------------------------------------------------------------------- /charts/ingress-nginx/ci/controller-configmap-addheaders-values.yaml: -------------------------------------------------------------------------------- 1 | controller: 2 | image: 3 | repository: ingress-controller/controller 4 | tag: 1.0.0-dev 5 | digest: null 6 | 7 | service: 8 | type: ClusterIP 9 | 10 | addHeaders: 11 | X-Frame-Options: deny 12 | -------------------------------------------------------------------------------- /charts/ingress-nginx/ci/controller-configmap-proxyheaders-values.yaml: -------------------------------------------------------------------------------- 1 | controller: 2 | image: 3 | repository: ingress-controller/controller 4 | tag: 1.0.0-dev 5 | digest: null 6 | 7 | service: 8 | type: ClusterIP 9 | 10 | proxySetHeaders: 11 | X-Forwarded-Proto: https 12 | -------------------------------------------------------------------------------- /charts/ingress-nginx/ci/controller-configmap-values.yaml: -------------------------------------------------------------------------------- 1 | controller: 2 | image: 3 | repository: ingress-controller/controller 4 | tag: 1.0.0-dev 5 | digest: null 6 | 7 | service: 8 | type: ClusterIP 9 | 10 | config: 11 | use-proxy-protocol: "true" 12 | -------------------------------------------------------------------------------- /charts/ingress-nginx/ci/controller-daemonset-metrics-values.yaml: -------------------------------------------------------------------------------- 1 | controller: 2 | image: 3 | repository: ingress-controller/controller 4 | tag: 1.0.0-dev 5 | digest: null 6 | 7 | service: 8 | type: ClusterIP 9 | 10 | kind: DaemonSet 11 | 12 | metrics: 13 | enabled: true 14 | -------------------------------------------------------------------------------- /charts/ingress-nginx/ci/controller-daemonset-podannotations-values.yaml: -------------------------------------------------------------------------------- 1 | controller: 2 | image: 3 | repository: ingress-controller/controller 4 | tag: 1.0.0-dev 5 | digest: null 6 | 7 | service: 8 | type: ClusterIP 9 | 10 | kind: DaemonSet 11 | 12 | podAnnotations: 13 | prometheus.io/scrape: "true" 14 | prometheus.io/port: "10254" 15 | prometheus.io/scheme: http 16 | prometheus.io/path: /metrics 17 | -------------------------------------------------------------------------------- /charts/ingress-nginx/ci/controller-daemonset-values.yaml: -------------------------------------------------------------------------------- 1 | controller: 2 | image: 3 | repository: ingress-controller/controller 4 | tag: 1.0.0-dev 5 | digest: null 6 | 7 | service: 8 | type: ClusterIP 9 | 10 | kind: DaemonSet 11 | -------------------------------------------------------------------------------- /charts/ingress-nginx/ci/controller-deployment-metrics-values.yaml: -------------------------------------------------------------------------------- 1 | controller: 2 | image: 3 | repository: ingress-controller/controller 4 | tag: 1.0.0-dev 5 | digest: null 6 | 7 | service: 8 | type: ClusterIP 9 | 10 | kind: Deployment 11 | 12 | metrics: 13 | enabled: true 14 | -------------------------------------------------------------------------------- /charts/ingress-nginx/ci/controller-deployment-podannotations-values.yaml: -------------------------------------------------------------------------------- 1 | controller: 2 | image: 3 | repository: ingress-controller/controller 4 | tag: 1.0.0-dev 5 | digest: null 6 | 7 | service: 8 | type: ClusterIP 9 | 10 | kind: Deployment 11 | 12 | podAnnotations: 13 | prometheus.io/scrape: "true" 14 | prometheus.io/port: "10254" 15 | prometheus.io/scheme: http 16 | prometheus.io/path: /metrics 17 | -------------------------------------------------------------------------------- /charts/ingress-nginx/ci/controller-deployment-values.yaml: -------------------------------------------------------------------------------- 1 | controller: 2 | image: 3 | repository: ingress-controller/controller 4 | tag: 1.0.0-dev 5 | digest: null 6 | 7 | service: 8 | type: ClusterIP 9 | 10 | kind: Deployment 11 | -------------------------------------------------------------------------------- /charts/ingress-nginx/ci/controller-hpa-values.yaml: -------------------------------------------------------------------------------- 1 | controller: 2 | image: 3 | repository: ingress-controller/controller 4 | tag: 1.0.0-dev 5 | digest: null 6 | 7 | service: 8 | type: ClusterIP 9 | 10 | autoscaling: 11 | enabled: true 12 | behavior: 13 | scaleDown: 14 | stabilizationWindowSeconds: 300 15 | policies: 16 | - type: Pods 17 | value: 1 18 | periodSeconds: 180 19 | -------------------------------------------------------------------------------- /charts/ingress-nginx/ci/controller-ingressclass-values.yaml: -------------------------------------------------------------------------------- 1 | controller: 2 | image: 3 | repository: ingress-controller/controller 4 | tag: 1.0.0-dev 5 | digest: null 6 | 7 | service: 8 | type: ClusterIP 9 | 10 | ingressClassResource: 11 | name: custom-nginx 12 | default: true 13 | controllerValue: k8s.io/custom-nginx 14 | 15 | watchIngressWithoutClass: true 16 | -------------------------------------------------------------------------------- /charts/ingress-nginx/ci/controller-service-internal-values.yaml: -------------------------------------------------------------------------------- 1 | controller: 2 | image: 3 | repository: ingress-controller/controller 4 | tag: 1.0.0-dev 5 | digest: null 6 | 7 | service: 8 | type: ClusterIP 9 | 10 | internal: 11 | enabled: true 12 | labels: 13 | external-dns.alpha.kubernetes.io/hostname: internal.example.com 14 | annotations: 15 | service.beta.kubernetes.io/aws-load-balancer-internal: "true" 16 | -------------------------------------------------------------------------------- /charts/ingress-nginx/ci/controller-service-values.yaml: -------------------------------------------------------------------------------- 1 | controller: 2 | image: 3 | repository: ingress-controller/controller 4 | tag: 1.0.0-dev 5 | digest: null 6 | 7 | service: 8 | type: NodePort 9 | 10 | external: 11 | labels: 12 | external-dns.alpha.kubernetes.io/hostname: external.example.com 13 | 14 | nodePorts: 15 | tcp: 16 | 9000: 30090 17 | udp: 18 | 9001: 30091 19 | 20 | portNamePrefix: port 21 | 22 | tcp: 23 | 9000: default/test:8080 24 | 25 | udp: 26 | 9001: default/test:8080 27 | -------------------------------------------------------------------------------- /charts/ingress-nginx/templates/clusterrolebinding.yaml: -------------------------------------------------------------------------------- 1 | {{- if and .Values.rbac.create (not .Values.rbac.scope) -}} 2 | apiVersion: rbac.authorization.k8s.io/v1 3 | kind: ClusterRoleBinding 4 | metadata: 5 | labels: 6 | {{- include "ingress-nginx.labels" . | nindent 4 }} 7 | {{- with .Values.controller.labels }} 8 | {{- toYaml . | nindent 4 }} 9 | {{- end }} 10 | name: {{ include "ingress-nginx.fullname" . }} 11 | roleRef: 12 | apiGroup: rbac.authorization.k8s.io 13 | kind: ClusterRole 14 | name: {{ include "ingress-nginx.fullname" . }} 15 | subjects: 16 | - kind: ServiceAccount 17 | name: {{ template "ingress-nginx.serviceAccountName" . }} 18 | namespace: {{ include "ingress-nginx.namespace" . }} 19 | {{- end }} 20 | -------------------------------------------------------------------------------- /charts/ingress-nginx/templates/controller-configmap-addheaders.yaml: -------------------------------------------------------------------------------- 1 | {{- if .Values.controller.addHeaders -}} 2 | apiVersion: v1 3 | kind: ConfigMap 4 | metadata: 5 | labels: 6 | {{- include "ingress-nginx.labels" . | nindent 4 }} 7 | app.kubernetes.io/component: controller 8 | {{- with .Values.controller.labels }} 9 | {{- toYaml . | nindent 4 }} 10 | {{- end }} 11 | name: {{ include "ingress-nginx.fullname" . }}-custom-add-headers 12 | namespace: {{ include "ingress-nginx.namespace" . }} 13 | data: {{ toYaml .Values.controller.addHeaders | nindent 2 }} 14 | {{- end }} 15 | -------------------------------------------------------------------------------- /charts/ingress-nginx/templates/controller-configmap-proxyheaders.yaml: -------------------------------------------------------------------------------- 1 | {{- if .Values.controller.proxySetHeaders -}} 2 | apiVersion: v1 3 | kind: ConfigMap 4 | metadata: 5 | labels: 6 | {{- include "ingress-nginx.labels" . | nindent 4 }} 7 | app.kubernetes.io/component: controller 8 | {{- with .Values.controller.labels }} 9 | {{- toYaml . | nindent 4 }} 10 | {{- end }} 11 | name: {{ include "ingress-nginx.fullname" . }}-custom-proxy-headers 12 | namespace: {{ include "ingress-nginx.namespace" . }} 13 | data: {{ toYaml .Values.controller.proxySetHeaders | nindent 2 }} 14 | {{- end }} 15 | -------------------------------------------------------------------------------- /charts/ingress-nginx/templates/controller-configmap-tcp.yaml: -------------------------------------------------------------------------------- 1 | {{- if .Values.tcp -}} 2 | apiVersion: v1 3 | kind: ConfigMap 4 | metadata: 5 | labels: 6 | {{- include "ingress-nginx.labels" . | nindent 4 }} 7 | app.kubernetes.io/component: controller 8 | {{- with .Values.controller.labels }} 9 | {{- toYaml . | nindent 4 }} 10 | {{- end }} 11 | {{- if .Values.controller.tcp.annotations }} 12 | annotations: {{ toYaml .Values.controller.tcp.annotations | nindent 4 }} 13 | {{- end }} 14 | name: {{ include "ingress-nginx.fullname" . }}-tcp 15 | namespace: {{ include "ingress-nginx.namespace" . }} 16 | data: {{ tpl (toYaml .Values.tcp) . | nindent 2 }} 17 | {{- end }} 18 | -------------------------------------------------------------------------------- /charts/ingress-nginx/templates/controller-configmap-udp.yaml: -------------------------------------------------------------------------------- 1 | {{- if .Values.udp -}} 2 | apiVersion: v1 3 | kind: ConfigMap 4 | metadata: 5 | labels: 6 | {{- include "ingress-nginx.labels" . | nindent 4 }} 7 | app.kubernetes.io/component: controller 8 | {{- with .Values.controller.labels }} 9 | {{- toYaml . | nindent 4 }} 10 | {{- end }} 11 | {{- if .Values.controller.udp.annotations }} 12 | annotations: {{ toYaml .Values.controller.udp.annotations | nindent 4 }} 13 | {{- end }} 14 | name: {{ include "ingress-nginx.fullname" . }}-udp 15 | namespace: {{ include "ingress-nginx.namespace" . }} 16 | data: {{ tpl (toYaml .Values.udp) . | nindent 2 }} 17 | {{- end }} 18 | -------------------------------------------------------------------------------- /charts/ingress-nginx/templates/controller-ingressclass-aliases.yaml: -------------------------------------------------------------------------------- 1 | {{- if .Values.controller.ingressClassResource.enabled -}} 2 | {{- range .Values.controller.ingressClassResource.aliases }} 3 | --- 4 | apiVersion: networking.k8s.io/v1 5 | kind: IngressClass 6 | metadata: 7 | labels: 8 | {{- include "ingress-nginx.labels" $ | nindent 4 }} 9 | app.kubernetes.io/component: controller 10 | {{- with $.Values.controller.labels }} 11 | {{- toYaml . | nindent 4 }} 12 | {{- end }} 13 | name: {{ . }} 14 | {{- if $.Values.controller.ingressClassResource.annotations }} 15 | annotations: {{ toYaml $.Values.controller.ingressClassResource.annotations | nindent 4 }} 16 | {{- end }} 17 | spec: 18 | controller: {{ $.Values.controller.ingressClassResource.controllerValue }} 19 | {{- with $.Values.controller.ingressClassResource.parameters }} 20 | parameters: {{ toYaml . | nindent 4 }} 21 | {{- end }} 22 | {{- end }} 23 | {{- end }} 24 | -------------------------------------------------------------------------------- /charts/ingress-nginx/templates/controller-rolebinding.yaml: -------------------------------------------------------------------------------- 1 | {{- if .Values.rbac.create -}} 2 | apiVersion: rbac.authorization.k8s.io/v1 3 | kind: RoleBinding 4 | metadata: 5 | labels: 6 | {{- include "ingress-nginx.labels" . | nindent 4 }} 7 | app.kubernetes.io/component: controller 8 | {{- with .Values.controller.labels }} 9 | {{- toYaml . | nindent 4 }} 10 | {{- end }} 11 | name: {{ include "ingress-nginx.fullname" . }} 12 | namespace: {{ include "ingress-nginx.namespace" . }} 13 | roleRef: 14 | apiGroup: rbac.authorization.k8s.io 15 | kind: Role 16 | name: {{ include "ingress-nginx.fullname" . }} 17 | subjects: 18 | - kind: ServiceAccount 19 | name: {{ template "ingress-nginx.serviceAccountName" . }} 20 | namespace: {{ include "ingress-nginx.namespace" . }} 21 | {{- end }} 22 | -------------------------------------------------------------------------------- /charts/ingress-nginx/templates/controller-secret.yaml: -------------------------------------------------------------------------------- 1 | {{- if .Values.dhParam -}} 2 | apiVersion: v1 3 | kind: Secret 4 | metadata: 5 | labels: 6 | {{- include "ingress-nginx.labels" . | nindent 4 }} 7 | app.kubernetes.io/component: controller 8 | {{- with .Values.controller.labels }} 9 | {{- toYaml . | nindent 4 }} 10 | {{- end }} 11 | name: {{ include "ingress-nginx.controller.fullname" . }} 12 | namespace: {{ include "ingress-nginx.namespace" . }} 13 | data: 14 | dhparam.pem: {{ .Values.dhParam }} 15 | {{- end }} 16 | -------------------------------------------------------------------------------- /charts/ingress-nginx/templates/controller-serviceaccount.yaml: -------------------------------------------------------------------------------- 1 | {{- if or .Values.serviceAccount.create -}} 2 | apiVersion: v1 3 | kind: ServiceAccount 4 | metadata: 5 | labels: 6 | {{- include "ingress-nginx.labels" . | nindent 4 }} 7 | app.kubernetes.io/component: controller 8 | {{- with .Values.controller.labels }} 9 | {{- toYaml . | nindent 4 }} 10 | {{- end }} 11 | name: {{ template "ingress-nginx.serviceAccountName" . }} 12 | namespace: {{ include "ingress-nginx.namespace" . }} 13 | {{- if .Values.serviceAccount.annotations }} 14 | annotations: {{ toYaml .Values.serviceAccount.annotations | nindent 4 }} 15 | {{- end }} 16 | automountServiceAccountToken: {{ .Values.serviceAccount.automountServiceAccountToken }} 17 | {{- end }} 18 | -------------------------------------------------------------------------------- /charts/ingress-nginx/templates/default-backend-extra-configmaps.yaml: -------------------------------------------------------------------------------- 1 | {{- if .Values.defaultBackend.enabled }} 2 | {{- range .Values.defaultBackend.extraConfigMaps }} 3 | --- 4 | apiVersion: v1 5 | kind: ConfigMap 6 | metadata: 7 | labels: 8 | {{- include "ingress-nginx.labels" $ | nindent 4 }} 9 | app.kubernetes.io/component: default-backend 10 | {{- with $.Values.defaultBackend.labels }} 11 | {{- toYaml . | nindent 4 }} 12 | {{- end }} 13 | {{- with .labels }} 14 | {{- toYaml . | nindent 4 }} 15 | {{- end }} 16 | name: {{ .name }} 17 | namespace: {{ include "ingress-nginx.namespace" $ }} 18 | data: 19 | {{- with .data }} 20 | {{- toYaml . | nindent 2 }} 21 | {{- end }} 22 | {{- end }} 23 | {{- end }} 24 | -------------------------------------------------------------------------------- /charts/ingress-nginx/templates/default-backend-networkpolicy.yaml: -------------------------------------------------------------------------------- 1 | {{- if and .Values.defaultBackend.enabled .Values.defaultBackend.networkPolicy.enabled }} 2 | apiVersion: networking.k8s.io/v1 3 | kind: NetworkPolicy 4 | metadata: 5 | labels: 6 | {{- include "ingress-nginx.labels" . | nindent 4 }} 7 | app.kubernetes.io/component: default-backend 8 | {{- with .Values.defaultBackend.labels }} 9 | {{- toYaml . | nindent 4 }} 10 | {{- end }} 11 | name: {{ include "ingress-nginx.defaultBackend.fullname" . }} 12 | namespace: {{ include "ingress-nginx.namespace" . }} 13 | spec: 14 | podSelector: 15 | matchLabels: 16 | {{- include "ingress-nginx.selectorLabels" . | nindent 6 }} 17 | app.kubernetes.io/component: default-backend 18 | policyTypes: 19 | - Ingress 20 | - Egress 21 | ingress: 22 | - ports: 23 | - protocol: TCP 24 | port: {{ .Values.defaultBackend.port }} 25 | {{- end }} 26 | -------------------------------------------------------------------------------- /charts/ingress-nginx/templates/default-backend-serviceaccount.yaml: -------------------------------------------------------------------------------- 1 | {{- if and .Values.defaultBackend.enabled .Values.defaultBackend.serviceAccount.create -}} 2 | apiVersion: v1 3 | kind: ServiceAccount 4 | metadata: 5 | labels: 6 | {{- include "ingress-nginx.labels" . | nindent 4 }} 7 | app.kubernetes.io/component: default-backend 8 | {{- with .Values.defaultBackend.labels }} 9 | {{- toYaml . | nindent 4 }} 10 | {{- end }} 11 | name: {{ include "ingress-nginx.defaultBackend.serviceAccountName" . }} 12 | namespace: {{ include "ingress-nginx.namespace" . }} 13 | automountServiceAccountToken: {{ .Values.defaultBackend.serviceAccount.automountServiceAccountToken }} 14 | {{- end }} 15 | -------------------------------------------------------------------------------- /charts/ingress-nginx/tests/admission-webhooks/job-patch/clusterrole_test.yaml: -------------------------------------------------------------------------------- 1 | suite: Admission Webhooks > Patch Job > ClusterRole 2 | templates: 3 | - admission-webhooks/job-patch/clusterrole.yaml 4 | 5 | tests: 6 | - it: should not create a ClusterRole if `controller.admissionWebhooks.patch.rbac.create` is false 7 | set: 8 | controller.admissionWebhooks.patch.rbac.create: false 9 | asserts: 10 | - hasDocuments: 11 | count: 0 12 | -------------------------------------------------------------------------------- /charts/ingress-nginx/tests/admission-webhooks/job-patch/clusterrolebinding_test.yaml: -------------------------------------------------------------------------------- 1 | suite: Admission Webhooks > Patch Job > ClusterRoleBinding 2 | templates: 3 | - admission-webhooks/job-patch/clusterrolebinding.yaml 4 | 5 | tests: 6 | - it: should not create a ClusterRoleBinding if `controller.admissionWebhooks.patch.rbac.create` is false 7 | set: 8 | controller.admissionWebhooks.patch.rbac.create: false 9 | asserts: 10 | - hasDocuments: 11 | count: 0 12 | -------------------------------------------------------------------------------- /charts/ingress-nginx/tests/admission-webhooks/job-patch/job-createSecret_test.yaml: -------------------------------------------------------------------------------- 1 | suite: Admission Webhooks > Patch Job > Create Secret Job 2 | templates: 3 | - admission-webhooks/job-patch/job-createSecret.yaml 4 | 5 | tests: 6 | - it: should create a Job with token auto-mounting disabled if `controller.admissionWebhooks.patch.serviceAccount.automountServiceAccountToken` is false 7 | set: 8 | controller.admissionWebhooks.patch.serviceAccount.automountServiceAccountToken: false 9 | asserts: 10 | - equal: 11 | path: spec.template.spec.automountServiceAccountToken 12 | value: false 13 | -------------------------------------------------------------------------------- /charts/ingress-nginx/tests/admission-webhooks/job-patch/job-patchWebhook_test.yaml: -------------------------------------------------------------------------------- 1 | suite: Admission Webhooks > Patch Job > Patch Webhook Job 2 | templates: 3 | - admission-webhooks/job-patch/job-patchWebhook.yaml 4 | 5 | tests: 6 | - it: should create a Job with token auto-mounting disabled if `controller.admissionWebhooks.patch.serviceAccount.automountServiceAccountToken` is false 7 | set: 8 | controller.admissionWebhooks.patch.serviceAccount.automountServiceAccountToken: false 9 | asserts: 10 | - equal: 11 | path: spec.template.spec.automountServiceAccountToken 12 | value: false 13 | -------------------------------------------------------------------------------- /charts/ingress-nginx/tests/admission-webhooks/job-patch/role_test.yaml: -------------------------------------------------------------------------------- 1 | suite: Admission Webhooks > Patch Job > Role 2 | templates: 3 | - admission-webhooks/job-patch/role.yaml 4 | 5 | tests: 6 | - it: should not create a Role if `controller.admissionWebhooks.patch.rbac.create` is false 7 | set: 8 | controller.admissionWebhooks.patch.rbac.create: false 9 | asserts: 10 | - hasDocuments: 11 | count: 0 12 | -------------------------------------------------------------------------------- /charts/ingress-nginx/tests/admission-webhooks/job-patch/rolebinding_test.yaml: -------------------------------------------------------------------------------- 1 | suite: Admission Webhooks > Patch Job > RoleBinding 2 | templates: 3 | - admission-webhooks/job-patch/rolebinding.yaml 4 | 5 | tests: 6 | - it: should not create a RoleBinding if `controller.admissionWebhooks.patch.rbac.create` is false 7 | set: 8 | controller.admissionWebhooks.patch.rbac.create: false 9 | asserts: 10 | - hasDocuments: 11 | count: 0 12 | -------------------------------------------------------------------------------- /charts/ingress-nginx/tests/controller-configmap-addheaders_test.yaml: -------------------------------------------------------------------------------- 1 | suite: Controller > ConfigMap > Add Headers 2 | templates: 3 | - controller-configmap-addheaders.yaml 4 | 5 | tests: 6 | - it: should not create a ConfigMap if `controller.addHeaders` is not set 7 | set: 8 | controller.addHeaders: null 9 | asserts: 10 | - hasDocuments: 11 | count: 0 12 | 13 | - it: should create a ConfigMap if `controller.addHeaders` is set 14 | set: 15 | controller.addHeaders: 16 | X-Another-Custom-Header: Value 17 | asserts: 18 | - hasDocuments: 19 | count: 1 20 | - isKind: 21 | of: ConfigMap 22 | - equal: 23 | path: metadata.name 24 | value: RELEASE-NAME-ingress-nginx-custom-add-headers 25 | - equal: 26 | path: data.X-Another-Custom-Header 27 | value: Value 28 | -------------------------------------------------------------------------------- /charts/ingress-nginx/tests/controller-configmap-proxyheaders_test.yaml: -------------------------------------------------------------------------------- 1 | suite: Controller > ConfigMap > Proxy Headers 2 | templates: 3 | - controller-configmap-proxyheaders.yaml 4 | 5 | tests: 6 | - it: should not create a ConfigMap if `controller.proxySetHeaders` is not set 7 | set: 8 | controller.proxySetHeaders: null 9 | asserts: 10 | - hasDocuments: 11 | count: 0 12 | 13 | - it: should create a ConfigMap if `controller.proxySetHeaders` is set 14 | set: 15 | controller.proxySetHeaders: 16 | X-Custom-Header: Value 17 | asserts: 18 | - hasDocuments: 19 | count: 1 20 | - isKind: 21 | of: ConfigMap 22 | - equal: 23 | path: metadata.name 24 | value: RELEASE-NAME-ingress-nginx-custom-proxy-headers 25 | - equal: 26 | path: data.X-Custom-Header 27 | value: Value 28 | -------------------------------------------------------------------------------- /charts/ingress-nginx/tests/controller-configmap_test.yaml: -------------------------------------------------------------------------------- 1 | suite: Controller > ConfigMap 2 | templates: 3 | - controller-configmap.yaml 4 | 5 | tests: 6 | - it: should create a ConfigMap 7 | asserts: 8 | - hasDocuments: 9 | count: 1 10 | - isKind: 11 | of: ConfigMap 12 | - equal: 13 | path: metadata.name 14 | value: RELEASE-NAME-ingress-nginx-controller 15 | 16 | - it: should create a ConfigMap with templated values if `controller.config` contains templates 17 | set: 18 | controller.config: 19 | template: "test.{{ .Release.Namespace }}.svc.kubernetes.local" 20 | integer: 12345 21 | boolean: true 22 | asserts: 23 | - equal: 24 | path: data.template 25 | value: test.NAMESPACE.svc.kubernetes.local 26 | - equal: 27 | path: data.integer 28 | value: "12345" 29 | - equal: 30 | path: data.boolean 31 | value: "true" 32 | -------------------------------------------------------------------------------- /charts/ingress-nginx/tests/controller-hpa_test.yaml: -------------------------------------------------------------------------------- 1 | suite: Controller > HPA 2 | templates: 3 | - controller-hpa.yaml 4 | 5 | tests: 6 | - it: should create an HPA if `controller.autoscaling.enabled` is true 7 | set: 8 | controller.autoscaling.enabled: true 9 | asserts: 10 | - hasDocuments: 11 | count: 1 12 | - isKind: 13 | of: HorizontalPodAutoscaler 14 | - equal: 15 | path: metadata.name 16 | value: RELEASE-NAME-ingress-nginx-controller 17 | 18 | - it: should not create an HPA if `controller.autoscaling.enabled` is true and `controller.keda.enabled` is true 19 | set: 20 | controller.autoscaling.enabled: true 21 | controller.keda.enabled: true 22 | asserts: 23 | - hasDocuments: 24 | count: 0 25 | 26 | - it: should not create an HPA if `controller.kind` is "DaemonSet" 27 | set: 28 | controller.kind: DaemonSet 29 | asserts: 30 | - hasDocuments: 31 | count: 0 32 | -------------------------------------------------------------------------------- /charts/ingress-nginx/tests/controller-keda_test.yaml: -------------------------------------------------------------------------------- 1 | suite: Controller > KEDA 2 | templates: 3 | - controller-keda.yaml 4 | 5 | tests: 6 | - it: should create a ScaledObject if `controller.keda.enabled` is true 7 | set: 8 | controller.keda.enabled: true 9 | asserts: 10 | - hasDocuments: 11 | count: 1 12 | - isKind: 13 | of: ScaledObject 14 | - equal: 15 | path: metadata.name 16 | value: RELEASE-NAME-ingress-nginx-controller 17 | 18 | - it: should not create a ScaledObject if `controller.keda.enabled` is true and `controller.autoscaling.enabled` is true 19 | set: 20 | controller.keda.enabled: true 21 | controller.autoscaling.enabled: true 22 | asserts: 23 | - hasDocuments: 24 | count: 0 25 | 26 | - it: should not create a ScaledObject if `controller.kind` is "DaemonSet" 27 | set: 28 | controller.kind: DaemonSet 29 | asserts: 30 | - hasDocuments: 31 | count: 0 32 | -------------------------------------------------------------------------------- /charts/ingress-nginx/tests/controller-networkpolicy_test.yaml: -------------------------------------------------------------------------------- 1 | suite: Controller > NetworkPolicy 2 | templates: 3 | - controller-networkpolicy.yaml 4 | 5 | tests: 6 | - it: should not create a NetworkPolicy if `controller.networkPolicy.enabled` is false 7 | set: 8 | controller.networkPolicy.enabled: false 9 | asserts: 10 | - hasDocuments: 11 | count: 0 12 | 13 | - it: should create a NetworkPolicy if `controller.networkPolicy.enabled` is true 14 | set: 15 | controller.networkPolicy.enabled: true 16 | asserts: 17 | - hasDocuments: 18 | count: 1 19 | - isKind: 20 | of: NetworkPolicy 21 | - equal: 22 | path: metadata.name 23 | value: RELEASE-NAME-ingress-nginx-controller 24 | -------------------------------------------------------------------------------- /cloudbuild.yaml: -------------------------------------------------------------------------------- 1 | options: 2 | # Ignore Prow provided substitutions. 3 | substitution_option: ALLOW_LOOSE 4 | steps: 5 | - name: gcr.io/k8s-staging-test-infra/gcb-docker-gcloud:v20250513-9264efb079 6 | env: 7 | - REPO_INFO=https://github.com/kubernetes/ingress-nginx 8 | - COMMIT_SHA=${_PULL_BASE_SHA} 9 | - BUILD_ID=${BUILD_ID} 10 | entrypoint: make 11 | args: 12 | - release 13 | -------------------------------------------------------------------------------- /cmd/annotations/annotations.tmpl: -------------------------------------------------------------------------------- 1 | # Annotations Scope and Risk 2 | 3 | |Group |Annotation | Risk | Scope | 4 | |--------|------------------|------|-------| 5 | {{- range $doc := . }} 6 | | {{ $doc.Group }} | {{ $doc.Annotation }} | {{ $doc.Risk }} | {{ $doc.Scope }} | 7 | {{- end }} 8 | -------------------------------------------------------------------------------- /code-of-conduct.md: -------------------------------------------------------------------------------- 1 | # Kubernetes Community Code of Conduct 2 | 3 | Please refer to our [Kubernetes Community Code of Conduct](https://git.k8s.io/community/code-of-conduct.md) 4 | -------------------------------------------------------------------------------- /deploy/README.md: -------------------------------------------------------------------------------- 1 | # Deployment documentation moved! 2 | 3 | See [/docs/deploy](../docs/deploy/index.md). 4 | -------------------------------------------------------------------------------- /deploy/grafana/dashboards/.markdownlint.json: -------------------------------------------------------------------------------- 1 | { 2 | "MD024": { "siblings_only": true } 3 | } 4 | -------------------------------------------------------------------------------- /deploy/grafana/dashboards/request-handling.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kubernetes/ingress-nginx/f0f2db512fc88e6e558d9672e9947a5ddd6e530e/deploy/grafana/dashboards/request-handling.png -------------------------------------------------------------------------------- /deploy/grafana/dashboards/screenshot.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kubernetes/ingress-nginx/f0f2db512fc88e6e558d9672e9947a5ddd6e530e/deploy/grafana/dashboards/screenshot.png -------------------------------------------------------------------------------- /deploy/grafana/deployment.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: apps/v1 2 | kind: Deployment 3 | metadata: 4 | name: grafana 5 | namespace: ingress-nginx 6 | spec: 7 | strategy: 8 | rollingUpdate: 9 | maxSurge: 1 10 | maxUnavailable: 1 11 | type: RollingUpdate 12 | template: 13 | spec: 14 | containers: 15 | - image: grafana/grafana 16 | name: grafana 17 | ports: 18 | - containerPort: 3000 19 | protocol: TCP 20 | resources: 21 | limits: 22 | cpu: 500m 23 | memory: 2500Mi 24 | requests: 25 | cpu: 100m 26 | memory: 100Mi 27 | volumeMounts: 28 | - mountPath: /var/lib/grafana 29 | name: data 30 | restartPolicy: Always 31 | volumes: 32 | - emptyDir: {} 33 | name: data 34 | -------------------------------------------------------------------------------- /deploy/grafana/kustomization.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: kustomize.config.k8s.io/v1beta1 2 | kind: Kustomization 3 | namespace: ingress-nginx 4 | commonLabels: 5 | app.kubernetes.io/name: grafana 6 | app.kubernetes.io/part-of: ingress-nginx 7 | resources: 8 | - deployment.yaml 9 | - service.yaml 10 | images: 11 | - name: grafana/grafana 12 | -------------------------------------------------------------------------------- /deploy/grafana/service.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: v1 2 | kind: Service 3 | metadata: 4 | name: grafana 5 | spec: 6 | ports: 7 | - port: 3000 8 | protocol: TCP 9 | targetPort: 3000 10 | type: NodePort 11 | -------------------------------------------------------------------------------- /deploy/prometheus/deployment.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: apps/v1 2 | kind: Deployment 3 | metadata: 4 | name: prometheus-server 5 | spec: 6 | replicas: 1 7 | template: 8 | spec: 9 | serviceAccountName: prometheus-server 10 | containers: 11 | - name: prometheus 12 | image: prom/prometheus 13 | args: 14 | - "--config.file=/etc/prometheus/prometheus.yaml" 15 | - "--storage.tsdb.path=/prometheus/" 16 | ports: 17 | - containerPort: 9090 18 | volumeMounts: 19 | - name: prometheus-config-volume 20 | mountPath: /etc/prometheus/ 21 | - name: prometheus-storage-volume 22 | mountPath: /prometheus/ 23 | volumes: 24 | - name: prometheus-config-volume 25 | configMap: 26 | name: prometheus-configuration 27 | - name: prometheus-storage-volume 28 | emptyDir: {} 29 | -------------------------------------------------------------------------------- /deploy/prometheus/kustomization.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: kustomize.config.k8s.io/v1beta1 2 | kind: Kustomization 3 | namespace: ingress-nginx 4 | commonLabels: 5 | app.kubernetes.io/name: prometheus 6 | app.kubernetes.io/part-of: ingress-nginx 7 | resources: 8 | - role.yaml 9 | - service-account.yaml 10 | - role-binding.yaml 11 | - deployment.yaml 12 | - service.yaml 13 | images: 14 | - name: prom/prometheus 15 | configMapGenerator: 16 | - name: prometheus-configuration 17 | files: 18 | - prometheus.yaml 19 | -------------------------------------------------------------------------------- /deploy/prometheus/prometheus.yaml: -------------------------------------------------------------------------------- 1 | global: 2 | scrape_interval: 10s 3 | scrape_configs: 4 | - job_name: 'ingress-nginx-endpoints' 5 | kubernetes_sd_configs: 6 | - role: pod 7 | namespaces: 8 | names: 9 | - ingress-nginx 10 | relabel_configs: 11 | - source_labels: [__meta_kubernetes_pod_annotation_prometheus_io_scrape] 12 | action: keep 13 | regex: true 14 | - source_labels: [__meta_kubernetes_pod_annotation_prometheus_io_scheme] 15 | action: replace 16 | target_label: __scheme__ 17 | regex: (https?) 18 | - source_labels: [__meta_kubernetes_pod_annotation_prometheus_io_path] 19 | action: replace 20 | target_label: __metrics_path__ 21 | regex: (.+) 22 | - source_labels: [__address__, __meta_kubernetes_pod_annotation_prometheus_io_port] 23 | action: replace 24 | target_label: __address__ 25 | regex: ([^:]+)(?::\d+)?;(\d+) 26 | replacement: $1:$2 27 | - source_labels: [__meta_kubernetes_service_name] 28 | regex: prometheus-server 29 | action: drop 30 | -------------------------------------------------------------------------------- /deploy/prometheus/role-binding.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: rbac.authorization.k8s.io/v1 2 | kind: RoleBinding 3 | metadata: 4 | name: prometheus-server 5 | roleRef: 6 | apiGroup: rbac.authorization.k8s.io 7 | kind: Role 8 | name: prometheus-server 9 | subjects: 10 | - kind: ServiceAccount 11 | name: prometheus-server 12 | -------------------------------------------------------------------------------- /deploy/prometheus/role.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: rbac.authorization.k8s.io/v1 2 | kind: Role 3 | metadata: 4 | name: prometheus-server 5 | rules: 6 | - apiGroups: [""] 7 | resources: 8 | - services 9 | - endpoints 10 | - pods 11 | verbs: ["get", "list", "watch"] 12 | -------------------------------------------------------------------------------- /deploy/prometheus/service-account.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: v1 2 | kind: ServiceAccount 3 | metadata: 4 | name: prometheus-server 5 | -------------------------------------------------------------------------------- /deploy/prometheus/service.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: v1 2 | kind: Service 3 | metadata: 4 | name: prometheus-server 5 | spec: 6 | type: NodePort 7 | ports: 8 | - port: 9090 9 | targetPort: 9090 10 | -------------------------------------------------------------------------------- /deploy/static/provider/aws/kustomization.yaml: -------------------------------------------------------------------------------- 1 | # NOTE: kustomize is not supported. This file exists only to be able to reference it from bases. 2 | # https://kubectl.docs.kubernetes.io/references/kustomize/bases/ 3 | # 4 | # ``` 5 | # namespace: ingress-nginx 6 | # bases: 7 | # - github.com/kubernetes/ingress-nginx/tree/main/deploy/static/provider/aws 8 | # ``` 9 | 10 | resources: 11 | - deploy.yaml 12 | -------------------------------------------------------------------------------- /deploy/static/provider/aws/nlb-with-tls-termination/kustomization.yaml: -------------------------------------------------------------------------------- 1 | # NOTE: kustomize is not supported. This file exists only to be able to reference it from bases. 2 | # https://kubectl.docs.kubernetes.io/references/kustomize/bases/ 3 | # 4 | # ``` 5 | # namespace: ingress-nginx 6 | # bases: 7 | # - github.com/kubernetes/ingress-nginx/tree/main/deploy/static/provider/aws/nlb-with-tls-termination 8 | # ``` 9 | 10 | resources: 11 | - deploy.yaml 12 | -------------------------------------------------------------------------------- /deploy/static/provider/baremetal/kustomization.yaml: -------------------------------------------------------------------------------- 1 | # NOTE: kustomize is not supported. This file exists only to be able to reference it from bases. 2 | # https://kubectl.docs.kubernetes.io/references/kustomize/bases/ 3 | # 4 | # ``` 5 | # namespace: ingress-nginx 6 | # bases: 7 | # - github.com/kubernetes/ingress-nginx/tree/main/deploy/static/provider/baremetal 8 | # ``` 9 | 10 | resources: 11 | - deploy.yaml 12 | -------------------------------------------------------------------------------- /deploy/static/provider/cloud/kustomization.yaml: -------------------------------------------------------------------------------- 1 | # NOTE: kustomize is not supported. This file exists only to be able to reference it from bases. 2 | # https://kubectl.docs.kubernetes.io/references/kustomize/bases/ 3 | # 4 | # ``` 5 | # namespace: ingress-nginx 6 | # bases: 7 | # - github.com/kubernetes/ingress-nginx/tree/main/deploy/static/provider/cloud 8 | # ``` 9 | 10 | resources: 11 | - deploy.yaml 12 | -------------------------------------------------------------------------------- /deploy/static/provider/do/kustomization.yaml: -------------------------------------------------------------------------------- 1 | # NOTE: kustomize is not supported. This file exists only to be able to reference it from bases. 2 | # https://kubectl.docs.kubernetes.io/references/kustomize/bases/ 3 | # 4 | # ``` 5 | # namespace: ingress-nginx 6 | # bases: 7 | # - github.com/kubernetes/ingress-nginx/tree/main/deploy/static/provider/do 8 | # ``` 9 | 10 | resources: 11 | - deploy.yaml 12 | -------------------------------------------------------------------------------- /deploy/static/provider/exoscale/kustomization.yaml: -------------------------------------------------------------------------------- 1 | # NOTE: kustomize is not supported. This file exists only to be able to reference it from bases. 2 | # https://kubectl.docs.kubernetes.io/references/kustomize/bases/ 3 | # 4 | # ``` 5 | # namespace: ingress-nginx 6 | # bases: 7 | # - github.com/kubernetes/ingress-nginx/tree/main/deploy/static/provider/exoscale 8 | # ``` 9 | 10 | resources: 11 | - deploy.yaml 12 | -------------------------------------------------------------------------------- /deploy/static/provider/kind/kustomization.yaml: -------------------------------------------------------------------------------- 1 | # NOTE: kustomize is not supported. This file exists only to be able to reference it from bases. 2 | # https://kubectl.docs.kubernetes.io/references/kustomize/bases/ 3 | # 4 | # ``` 5 | # namespace: ingress-nginx 6 | # bases: 7 | # - github.com/kubernetes/ingress-nginx/tree/main/deploy/static/provider/kind 8 | # ``` 9 | 10 | resources: 11 | - deploy.yaml 12 | -------------------------------------------------------------------------------- /deploy/static/provider/oracle/kustomization.yaml: -------------------------------------------------------------------------------- 1 | # NOTE: kustomize is not supported. This file exists only to be able to reference it from bases. 2 | # https://kubectl.docs.kubernetes.io/references/kustomize/bases/ 3 | # 4 | # ``` 5 | # namespace: ingress-nginx 6 | # bases: 7 | # - github.com/kubernetes/ingress-nginx/tree/main/deploy/static/provider/oracle 8 | # ``` 9 | 10 | resources: 11 | - deploy.yaml 12 | -------------------------------------------------------------------------------- /deploy/static/provider/scw/kustomization.yaml: -------------------------------------------------------------------------------- 1 | # NOTE: kustomize is not supported. This file exists only to be able to reference it from bases. 2 | # https://kubectl.docs.kubernetes.io/references/kustomize/bases/ 3 | # 4 | # ``` 5 | # namespace: ingress-nginx 6 | # bases: 7 | # - github.com/kubernetes/ingress-nginx/tree/main/deploy/static/provider/scw 8 | # ``` 9 | 10 | resources: 11 | - deploy.yaml 12 | -------------------------------------------------------------------------------- /docs/OWNERS: -------------------------------------------------------------------------------- 1 | # See the OWNERS docs: https://www.kubernetes.dev/docs/guide/owners 2 | 3 | approvers: 4 | - ingress-nginx-docs-maintainers 5 | 6 | labels: 7 | - area/docs 8 | -------------------------------------------------------------------------------- /docs/examples/affinity/cookie/ingress.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: networking.k8s.io/v1 2 | kind: Ingress 3 | metadata: 4 | name: nginx-test 5 | annotations: 6 | nginx.ingress.kubernetes.io/affinity: "cookie" 7 | nginx.ingress.kubernetes.io/session-cookie-name: "route" 8 | nginx.ingress.kubernetes.io/session-cookie-expires: "172800" 9 | nginx.ingress.kubernetes.io/session-cookie-max-age: "172800" 10 | 11 | spec: 12 | ingressClassName: nginx 13 | rules: 14 | - host: stickyingress.example.com 15 | http: 16 | paths: 17 | - path: / 18 | pathType: Prefix 19 | backend: 20 | service: 21 | name: http-svc 22 | port: 23 | number: 80 24 | -------------------------------------------------------------------------------- /docs/examples/auth/external-auth/ingress.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: networking.k8s.io/v1 2 | kind: Ingress 3 | metadata: 4 | annotations: 5 | nginx.ingress.kubernetes.io/auth-url: "https://httpbin.org/basic-auth/user/passwd" 6 | name: external-auth 7 | spec: 8 | ingressClassName: nginx 9 | rules: 10 | - host: external-auth-01.sample.com 11 | http: 12 | paths: 13 | - path: / 14 | pathType: Prefix 15 | backend: 16 | service: 17 | name: http-svc 18 | port: 19 | number: 80 20 | -------------------------------------------------------------------------------- /docs/examples/auth/oauth-external-auth/images/dashboard.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kubernetes/ingress-nginx/f0f2db512fc88e6e558d9672e9947a5ddd6e530e/docs/examples/auth/oauth-external-auth/images/dashboard.png -------------------------------------------------------------------------------- /docs/examples/auth/oauth-external-auth/images/github-auth.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kubernetes/ingress-nginx/f0f2db512fc88e6e558d9672e9947a5ddd6e530e/docs/examples/auth/oauth-external-auth/images/github-auth.png -------------------------------------------------------------------------------- /docs/examples/auth/oauth-external-auth/images/oauth-login.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kubernetes/ingress-nginx/f0f2db512fc88e6e558d9672e9947a5ddd6e530e/docs/examples/auth/oauth-external-auth/images/oauth-login.png -------------------------------------------------------------------------------- /docs/examples/auth/oauth-external-auth/images/register-oauth-app-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kubernetes/ingress-nginx/f0f2db512fc88e6e558d9672e9947a5ddd6e530e/docs/examples/auth/oauth-external-auth/images/register-oauth-app-2.png -------------------------------------------------------------------------------- /docs/examples/auth/oauth-external-auth/images/register-oauth-app.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kubernetes/ingress-nginx/f0f2db512fc88e6e558d9672e9947a5ddd6e530e/docs/examples/auth/oauth-external-auth/images/register-oauth-app.png -------------------------------------------------------------------------------- /docs/examples/customization/configuration-snippets/README.md: -------------------------------------------------------------------------------- 1 | # Configuration Snippets 2 | 3 | ## Ingress 4 | 5 | The Ingress in [this example](ingress.yaml) adds a custom header to Nginx configuration that only applies to that specific Ingress. If you want to add headers that apply globally to all Ingresses, please have a look at [an example of specifying custom headers](../custom-headers/README.md). 6 | 7 | ```console 8 | kubectl apply -f ingress.yaml 9 | ``` 10 | 11 | ## Test 12 | 13 | Check if the contents of the annotation are present in the nginx.conf file using: 14 | 15 | ```console 16 | kubectl exec ingress-nginx-controller-873061567-4n3k2 -n kube-system -- cat /etc/nginx/nginx.conf 17 | ``` 18 | -------------------------------------------------------------------------------- /docs/examples/customization/configuration-snippets/ingress.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: networking.k8s.io/v1 2 | kind: Ingress 3 | metadata: 4 | name: nginx-configuration-snippet 5 | annotations: 6 | nginx.ingress.kubernetes.io/configuration-snippet: | 7 | more_set_headers "Request-Id: $req_id"; 8 | spec: 9 | ingressClassName: nginx 10 | rules: 11 | - host: custom.configuration.com 12 | http: 13 | paths: 14 | - path: / 15 | pathType: Prefix 16 | backend: 17 | service: 18 | name: http-svc 19 | port: 20 | number: 80 21 | -------------------------------------------------------------------------------- /docs/examples/customization/custom-configuration/README.md: -------------------------------------------------------------------------------- 1 | # Custom Configuration 2 | 3 | Using a [ConfigMap](https://kubernetes.io/docs/tasks/configure-pod-container/configure-pod-configmap/) is possible to customize the NGINX configuration 4 | 5 | For example, if we want to change the timeouts we need to create a ConfigMap: 6 | 7 | ``` 8 | $ cat configmap.yaml 9 | apiVersion: v1 10 | data: 11 | proxy-connect-timeout: "10" 12 | proxy-read-timeout: "120" 13 | proxy-send-timeout: "120" 14 | kind: ConfigMap 15 | metadata: 16 | name: ingress-nginx-controller 17 | ``` 18 | 19 | ``` 20 | curl https://raw.githubusercontent.com/kubernetes/ingress-nginx/main/docs/examples/customization/custom-configuration/configmap.yaml \ 21 | | kubectl apply -f - 22 | ``` 23 | 24 | If the Configmap is updated, NGINX will be reloaded with the new configuration. 25 | -------------------------------------------------------------------------------- /docs/examples/customization/custom-configuration/configmap.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: v1 2 | kind: ConfigMap 3 | metadata: 4 | name: ingress-nginx-controller 5 | namespace: ingress-nginx 6 | labels: 7 | app.kubernetes.io/name: ingress-nginx 8 | app.kubernetes.io/part-of: ingress-nginx 9 | data: 10 | proxy-connect-timeout: "10" 11 | proxy-read-timeout: "120" 12 | proxy-send-timeout: "120" 13 | -------------------------------------------------------------------------------- /docs/examples/customization/custom-errors/custom-default-backend-error_pages.configMap.yaml: -------------------------------------------------------------------------------- 1 | # Custom error page configMap 2 | --- 3 | apiVersion: v1 4 | kind: ConfigMap 5 | metadata: 6 | name: custom-error-pages 7 | data: 8 | 404: | 9 | 10 | 11 |