What's Changed
๐ Features
- replace glog with forked version to include years by @haywoodsh in #2876
- Add ServiceMonitor to Helm Chart by @araineUnity in #2831
- Feature/flag include year by @shaun-nx in #2884
- feat: Support watching multiple namespaces by @ciarams87 in #2914
- Support new directive for dos: app_protect_dos_arb_fqdn by @pasmant in #2745
- Add support for wildcard hostname in VirutalServer by @shaun-nx in #2939
- Add initialDelaySeconds to helm charts by @aknot242 in #2854
- Accept proxy protocol when TLS passthrough enabled by @haywoodsh in #2993
- Allow to specify image with digest in helm chart by @hafe in #2979
- adding automountServiceAccountToken to helm chart by @jasonwilliams14 in #3031
- Add command line argument to manually disable IPV6 listeners for unsupported clusters by @haywoodsh in #3040
- Feat/ignore helm secrets by @shaun-nx in #3088
- Feat/transport server external name by @jjngx in #3041
๐ Bug Fixes
- fix: Correct error message on missing path in path validation by @zachomedia in #2971
- do not create configmap is customConfigMap is used by @coolbry95 in #3095
- Fix helm chart issue when set controller.strategy by @wd in #3106
- Optimise path validation by @haywoodsh in #3094
- Update helm rbac template for watch-ns by @vepatel in #3122
๐ Documentation
- Fix the docs for nginxReloadTimeout cli arg by @pleshakov in #2835
- fix spec.policy example to use a map by @TuxInvader in #2843
- Merge
release-2.3
tomain
by @lucacome in #2844 - fix: fix 2 broken links to NAP and NAP DoS docs by @Jcahilltorre in #2868
- Add missing minReadySeconds & strategy chart values in Helm Installation documentation by @aknot242 in #2853
- NGINX Ingress with Istio Service Mesh document by @jasonwilliams14 in #2768
- Bump f5-theme to v0.22.1 for main by @travisamartin in #2910
- docs: Update release notes with note on CVE by @ciarams87 in #2911
- Remove "new" & redundant text, add "recommended" by @jnewfield in #2938
- fix: update footer for NMS by @Jcahilltorre in #2937
- NGINX Ingress Controller Configuration guide update by @rranghar in #2864
- Make GitHub Checks more readable for CI by @lucacome in #2961
- docs: Reorganise examples by @ciarams87 in #2871
- docs: Fix links in the NAP config doc in main by @ciarams87 in #2983
- Document how the IC reloads NGINX by @pleshakov in #2836
- chore: Batch reloads runtime by @ciarams87 in #2986
- Fix typo in anchor link by @tomasohaodha in #3013
- Add docs for NAP DoS images by @lucacome in #3023
- Add lifecycle for controller container to helm chart by @coolbry95 in #3005
- feat: F5-hugo theme September bump by @Jcahilltorre in #3067
- feat: F5-hugo theme September bump (cherrypick) by @Jcahilltorre in #3071
- Add customConfigMap to helm charts by @coolbry95 in #3003
- Merge branch 'release-2.3' into main by @lucacome in #3084
- Add
helloworld.proto
and re-generate files by @lucacome in #3091 - Remove deprecated kubernetes.io/ingress.class from examples by @lucacome in #3029
- chore: Allow omitting the default server secret from Helm installs by @ciarams87 in #3087
- Add
ARCH
in Makefile, make Dockerfile more compatible with podman by @lucacome in #3102 - Apdoslogconf will warning case format is not splunk by @pasmant in #2991
- Release 2.4.0 by @shaun-nx in #3109
๐งช Tests
- Allow multiple markers in tests by @lucacome in #2874
- segregate IC and custom resources fixtures by @vepatel in #2908
- tests: Remove unnecessary library from tests by @ciarams87 in #2925
- Add isort and Black by @lucacome in #2929
- Add pod perf checks for multiple namespaces by @vepatel in #2934
- remove repeat test and add wait_and_assert by @vepatel in #2984
- Bump grpcio from 1.47.0 to 1.48.1 in /tests by @dependabot in #3008
- Bump locust from 2.11.1 to 2.12.0 in /perf-tests by @dependabot in #3021
- Bump certifi from 2022.6.15 to 2022.6.15.1 in /tests by @dependabot in #3028
- Bump certifi from 2022.6.15 to 2022.6.15.1 in /perf-tests by @dependabot in #3027
- Bump certifi from 2022.6.15.1 to 2022.9.14 in /tests by @dependabot in #3042
- Bail tests on test fixture setup error by @jjngx in #3037
- Bump grpcio from 1.48.1 to 1.49.0 in /tests by @dependabot in #3052
- Bump certifi from 2022.6.15.1 to 2022.9.14 in /perf-tests by @dependabot in #3043
- Add Helm test for Plus by @lucacome in #3064
- Improve NAP DoS tests by @pasmant in #2996
- Change timeout for attack ended by @pasmant in #3072
- Bump kindest/node from v1.25.0 to v1.25.1 in /tests/docker by @dependabot in #3068
- Bump locust from 2.12.0 to 2.12.1 in /perf-tests by @dependabot in #3073
- Bump grpcio from 1.49.0 to 1.49.1 in /tests by @dependabot in #3078
- Update containers in examples and tests by @lucacome in #3082
- Bump kindest/node from v1.25.1 to v1.25.2 in /tests/docker by @dependabot in #3089
- chore: Revert change to gitlab branch ref by @ciarams87 in #3093
- Change AppProtect warning message by @vepatel in #3096
- Bump pyopenssl from 22.0.0 to 22.1.0 in /tests by @dependabot in #3098
- Bump certifi from 2022.9.14 to 2022.9.24 in /perf-tests by @dependabot in #3099
- Bump certifi from 2022.9.14 to 2022.9.24 in /tests by @dependabot in #3100
- add canary header and update ap waf log pod by @vepatel in #3116
๐จ Maintenance
- Remove OpenTracing images in Updater by @lucacome in #2837
- Update path for CRD generation to include all by @lucacome in #2846
- fix: Change alpine version grab to include a colon in the updater by @ciarams87 in #2848
- Bump kind 1.21 and 1.22, add 1.23 by @lucacome in #2842
- Try to only include separators when necessary (#2766) by @jsoref in #2767
- Update Go lib for CVE-2022-29526 by @lucacome in #2878
- Use go-version-file in setup-go Action by @lucacome in #2883
- Remove multiple markers from tests by @lucacome in #2891
- Add check for go.mod and go.sum changes by @lucacome in #2902
- Use built-in cache in setup-go by @lucacome in #2905
- Add NAP DoS image to the pipeline by @lucacome in #2912
- Add Other Changes section to release.yml by @lucacome in #2958
- Remove deprecated go linters by @lucacome in #2960
- Replace all versions of glog with nginxinc/glog by @lucacome in #2972
- Remove archived repos from sync by @lucacome in #2980
- Update DoS CRDs version to v0.9.2 by @pasmant in #2981
- Remove workaround for Dependabot by @lucacome in #2997
- Remove duplicate print for k8s version, use right check for args by @lucacome in #3018
- Replace autolabler with actions/labeler by @lucacome in #3019
- Fix docs label name, remove test for unit tests by @lucacome in #3022
- Update kind versions in nightly by @lucacome in #3030
- Fix secrets formatting in workflow by @lucacome in #3066
- Update release prep script by @lucacome in #3085
- Update Helm Chart apiVersion to v2 by @lucacome in #3083
- Fix staticcheck linter issues by @jjngx in #3097
- Add RBAC for coordination.k8s.io/leases by @coolbry95 in #3101
- Eliminate dead code by @jjngx in #3104
- Fix staticcheck linter issues in k8s, nginx packages by @jjngx in #3107
- Pass Git info to Docker by @lucacome in #3112
- Announce release in Community Slack by @lucacome in #3124
- Upload Release artifacts to Azure by @lucacome in #3123
- Don't use
latest
tag for AWS images by @lucacome in #3125
โฌ๏ธ Dependencies
- Bump github.com/aws/aws-sdk-go-v2/config from 1.15.13 to 1.15.14 by @dependabot in #2841
- Bump google.golang.org/grpc from 1.47.0 to 1.48.0 by @dependabot in #2849
- Bump nginx from 1.23.0 to 1.23.1 in /build by @dependabot in #2872
- Bump library/nginx from 1.23.0-alpine to 1.23.1-alpine in /build by @dependabot in #2873
- Bump opentracing/nginx-opentracing from nginx-1.23.0 to nginx-1.23.1 in /build by @dependabot in #2879
- Bump github.com/nginxinc/nginx-plus-go-client from 0.9.0 to 0.10.0 by @dependabot in #2870
- Bump aquasecurity/trivy-action from 0.5.1 to 0.6.0 by @dependabot in #2882
- Bump urllib3 from 1.26.10 to 1.26.11 in /tests by @dependabot in #2886
- Bump urllib3 from 1.26.10 to 1.26.11 in /perf-tests by @dependabot in #2885
- Bump aquasecurity/trivy-action from 0.6.0 to 0.6.1 by @dependabot in #2890
- Bump github.com/aws/aws-sdk-go-v2/config from 1.15.14 to 1.15.15 by @dependabot in #2898
- Bump github.com/aws/aws-sdk-go-v2/service/marketplacemetering from 1.13.8 to 1.13.9 by @dependabot in #2897
- Bump golang from 1.18-alpine to 1.19-alpine in /build by @dependabot in #2899
- Bump locust from 2.10.1 to 2.10.2 in /perf-tests by @dependabot in #2903
- Bump aquasecurity/trivy-action from 0.6.1 to 0.6.2 by @dependabot in #2906
- Bump Go to 1.19 by @lucacome in #2900
- Bump cert-manager to 1.9.1 by @lucacome in #2839
- Bump k8s.io/client-go from 0.24.2 to 0.24.3 by @dependabot in #2856
- Bump k8s.io/code-generator from 0.24.2 to 0.24.3 by @dependabot in #2858
- Bump github.com/prometheus/client_golang from 1.12.2 to 1.13.0 by @dependabot in #2913
- Bump kindest/node from v1.24.2 to v1.24.3 in /tests/docker by @dependabot in #2915
- Bump github.com/aws/aws-sdk-go-v2/config from 1.15.15 to 1.15.16 by @dependabot in #2918
- Bump more-itertools from 8.13.0 to 8.14.0 in /tests by @dependabot in #2916
- Bump github.com/aws/aws-sdk-go-v2/service/marketplacemetering from 1.13.9 to 1.13.11 by @dependabot in #2919
- Bump github.com/aws/aws-sdk-go-v2/config from 1.15.16 to 1.15.17 by @dependabot in #2920
- Bump locust from 2.10.2 to 2.11.0 in /perf-tests by @dependabot in #2926
- Bump github.com/aws/aws-sdk-go-v2/service/marketplacemetering from 1.13.11 to 1.13.12 by @dependabot in #2927
- Bump github.com/aws/aws-sdk-go-v2/config from 1.15.17 to 1.16.1 by @dependabot in #2928
- Bump github.com/aws/aws-sdk-go-v2/config from 1.16.1 to 1.17.1 by @dependabot in #2932
- Bump anchore/sbom-action from 0.11.0 to 0.12.0 by @dependabot in #2941
- Bump aquasecurity/trivy-action from 0.6.2 to 0.7.1 by @dependabot in #2942
- Bump k8s.io/client-go from 0.24.3 to 0.24.4 by @dependabot in #2945
- Bump k8s.io/code-generator from 0.24.3 to 0.24.4 by @dependabot in #2944
- Bump urllib3 from 1.26.11 to 1.26.12 in /tests by @dependabot in #2954
- Update packages for CVE-2022-3209 and CVE-2021-46828 by @lucacome in #2957
- Bump urllib3 from 1.26.11 to 1.26.12 in /perf-tests by @dependabot in #2953
- Bump github.com/aws/aws-sdk-go-v2/service/marketplacemetering from 1.13.12 to 1.13.13 by @dependabot in #2959
- Bump locust from 2.11.0 to 2.11.1 in /perf-tests by @dependabot in #2973
- Bump google.golang.org/grpc from 1.48.0 to 1.49.0 by @dependabot in #2966
- Bump kindest/node from v1.24.3 to v1.25.0 in /tests/docker by @dependabot in #3007
- Bump pytest from 7.1.2 to 7.1.3 in /perf-tests by @dependabot in #3009
- Bump github.com/aws/aws-sdk-go-v2/config from 1.17.1 to 1.17.5 by @dependabot in #3015
- Bump grpcio-tools from 1.47.0 to 1.48.1 in /tests by @dependabot in #3010
- Bump github.com/aws/aws-sdk-go-v2/service/marketplacemetering from 1.13.13 to 1.13.17 by @dependabot in #3014
- Bump pytest from 7.1.2 to 7.1.3 in /tests by @dependabot in #3011
- Bump github.com/google/go-cmp from 0.5.8 to 0.5.9 by @dependabot in #3025
- Bump github.com/nginxinc/nginx-prometheus-exporter from 0.10.0 to 0.11.0 by @dependabot in #3026
- Bump github.com/aws/aws-sdk-go-v2/service/marketplacemetering from 1.13.17 to 1.13.18 by @dependabot in #3044
- Bump github.com/aws/aws-sdk-go-v2/config from 1.17.5 to 1.17.6 by @dependabot in #3045
- Update dependencies for CVEs by @lucacome in #3063
- Bump sigs.k8s.io/controller-tools from 0.9.2 to 0.10.0 by @dependabot in #3074
- Bump k8s.io/client-go from 0.25.0 to 0.25.1 by @dependabot in #3058
- Bump k8s.io/code-generator from 0.25.0 to 0.25.1 by @dependabot in #3059
- Bump github.com/aws/aws-sdk-go-v2/config from 1.17.6 to 1.17.7 by @dependabot in #3069
- Bump github.com/aws/aws-sdk-go-v2/service/marketplacemetering from 1.13.18 to 1.13.19 by @dependabot in #3070
- Bump actions/stale from 5 to 6 by @dependabot in #3075
- Bump k8s.io/client-go from 0.25.1 to 0.25.2 by @dependabot in #3077
- Bump k8s.io/code-generator from 0.25.1 to 0.25.2 by @dependabot in #3080
- Bump joshdales/labeler from 0861fa5accbc36878f85f40b98a9f40b15fe0429 to 4c74e8446142eeec7aa182f52ea24306a5479850 by @dependabot in #3090
- Update packages for CVE-2022-40674 by @lucacome in #3115
- Bump github.com/aws/aws-sdk-go-v2/config from 1.17.7 to 1.17.8 by @dependabot in #3117
New Contributors
- @TuxInvader made their first contribution in #2843
- @araineUnity made their first contribution in #2831
- @aknot242 made their first contribution in #2853
- @jnewfield made their first contribution in #2938
- @rranghar made their first contribution in #2864
- @hafe made their first contribution in #2979
- @zachomedia made their first contribution in #2971
- @coolbry95 made their first contribution in #3005
- @wd made their first contribution in #3106
Full Changelog: v2.3.1...v2.4.0
Upgrade
- For NGINX, use the v2.4.0 image from our DockerHub, GitHub Container, Amazon ECR Public Gallery or Quay.io.
- For NGINX Plus, use the v2.4.0 image from the F5 Container registry or the AWS Marketplace or build your own image using the v2.4.0 source code.
- For Helm, use version 0.15.0 of the chart.
Resources
- Documentation -- https://docs.nginx.com/nginx-ingress-controller/
- Configuration examples -- https://github.com/nginxinc/kubernetes-ingress/tree/v2.4.0/examples
- Helm Chart -- https://github.com/nginxinc/kubernetes-ingress/tree/v2.4.0/deployments/helm-chart
- Operator -- https://github.com/nginxinc/nginx-ingress-helm-operator/