Skip to content

Commit 283a218

Browse files
authored
Release 2.0.2 (#3595)
Update all necessary files in the release branch for 2.0.2.
1 parent 9706882 commit 283a218

File tree

16 files changed

+192
-160
lines changed

16 files changed

+192
-160
lines changed

CHANGELOG.md

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,37 @@ This document includes a curated changelog for each release. We also publish a c
44
a [GitHub release](https://github.com/nginx/nginx-gateway-fabric/releases), which, by contrast, is auto-generated
55
and includes links to all PRs that went into the release.
66

7+
## Release 2.0.2
8+
9+
_July 8, 2025_
10+
11+
Bug Fixes:
12+
13+
- Fix crash when BackendRef filter is specified. [3508](https://github.com/nginx/nginx-gateway-fabric/pull/3508)
14+
- Fix index out of bounds error when building status. [3513](https://github.com/nginx/nginx-gateway-fabric/pull/3513)
15+
- Disable automountServiceAccountToken on ServiceAccount, and instead enable on the Pods directly. [3573](https://github.com/nginx/nginx-gateway-fabric/pull/3573)
16+
- Fix port binding with reduced privileges. [3574](https://github.com/nginx/nginx-gateway-fabric/pull/3574)
17+
- Fixed an issue where SnippetsFilters were being included in NGINX configuration for all gateways regardless of whether routes attached to those specific gateways actually referenced the filters. [3586](https://github.com/nginx/nginx-gateway-fabric/pull/3586)
18+
19+
HELM CHART:
20+
21+
- The version of the Helm chart is now 2.0.2.
22+
- Removes Extra keyword from volumeMounts and Volumes for the data plane. [3588](https://github.com/nginx/nginx-gateway-fabric/pull/3588). Thanks to [vazkarvishal](https://github.com/vazkarvishal).
23+
24+
COMPATIBILITY:
25+
26+
- Gateway API version: `1.3.0`
27+
- NGINX version: `1.28.0`
28+
- NGINX Plus version: `R34`
29+
- NGINX Agent version: `v3.0.1`
30+
- Kubernetes version: `1.25+`
31+
32+
CONTAINER IMAGES:
33+
34+
- Control plane: `ghcr.io/nginx/nginx-gateway-fabric:2.0.2`
35+
- Data plane: `ghcr.io/nginx/nginx-gateway-fabric/nginx:2.0.2`
36+
- Data plane with NGINX Plus: `private-registry.nginx.com/nginx-gateway-fabric/nginx-plus:2.0.2`
37+
738
## Release 2.0.1
839

940
_June 11, 2025_

Makefile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
# variables that should not be overridden by the user
2-
VERSION = 2.0.1
2+
VERSION = 2.0.2
33
SELF_DIR := $(dir $(abspath $(lastword $(MAKEFILE_LIST))))
44
CHART_DIR = $(SELF_DIR)charts/nginx-gateway-fabric
55
NGINX_CONF_DIR = internal/controller/nginx/conf

README.md

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@ You can find the comprehensive NGINX Gateway Fabric user documentation on the [N
3636
We publish NGINX Gateway Fabric releases on GitHub. See
3737
our [releases page](https://github.com/nginx/nginx-gateway-fabric/releases).
3838

39-
The latest release is [2.0.1](https://github.com/nginx/nginx-gateway-fabric/releases/tag/v2.0.1).
39+
The latest release is [2.0.2](https://github.com/nginx/nginx-gateway-fabric/releases/tag/v2.0.1).
4040

4141
The edge version is useful for experimenting with new features that are not yet published in a release. To use, choose
4242
the _edge_ version built from the [latest commit](https://github.com/nginx/nginx-gateway-fabric/commits/main)
@@ -47,7 +47,7 @@ to the correct versions:
4747

4848
| Version | Description | Installation Manifests | Documentation and Examples |
4949
|----------------|------------------------------------------|--------------------------------------------------------------------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------|
50-
| Latest release | For production use | [Manifests](https://github.com/nginx/nginx-gateway-fabric/tree/v2.0.1/deploy). | [Documentation](https://docs.nginx.com/nginx-gateway-fabric). [Examples](https://github.com/nginx/nginx-gateway-fabric/tree/v2.0.1/examples). |
50+
| Latest release | For production use | [Manifests](https://github.com/nginx/nginx-gateway-fabric/tree/v2.0.2/deploy). | [Documentation](https://docs.nginx.com/nginx-gateway-fabric). [Examples](https://github.com/nginx/nginx-gateway-fabric/tree/v2.0.2/examples). |
5151
| Edge | For experimental use and latest features | [Manifests](https://github.com/nginx/nginx-gateway-fabric/tree/main/deploy). | [Examples](https://github.com/nginx/nginx-gateway-fabric/tree/main/examples). |
5252

5353
### Versioning
@@ -69,6 +69,7 @@ The following table lists the software versions NGINX Gateway Fabric supports.
6969
| NGINX Gateway Fabric | Gateway API | Kubernetes | NGINX OSS | NGINX Plus | NGINX Agent |
7070
|----------------------|-------------|------------|-----------|------------|-------------|
7171
| Edge | 1.3.0 | 1.25+ | 1.28.0 | R34 | v3.0.1 |
72+
| 2.0.2 | 1.3.0 | 1.25+ | 1.28.0 | R34 | v3.0.1 |
7273
| 2.0.1 | 1.3.0 | 1.25+ | 1.28.0 | R34 | v3.0.1 |
7374
| 2.0.0 | 1.3.0 | 1.25+ | 1.28.0 | R34 | v3.0.0 |
7475
| 1.6.2 | 1.2.1 | 1.25+ | 1.27.4 | R33 | --- |

charts/nginx-gateway-fabric/Chart.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,8 @@ apiVersion: v2
22
name: nginx-gateway-fabric
33
description: NGINX Gateway Fabric
44
type: application
5-
version: 2.0.1
6-
appVersion: "2.0.1"
5+
version: 2.0.2
6+
appVersion: "2.0.2"
77
kubeVersion: ">= 1.25.0-0"
88
home: https://github.com/nginx/nginx-gateway-fabric
99
icon: https://raw.githubusercontent.com/nginx/nginx-gateway-fabric/main/charts/nginx-gateway-fabric/chart-icon.png

charts/nginx-gateway-fabric/README.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11

22
# NGINX Gateway Fabric Helm Chart
33

4-
![Version: 2.0.1](https://img.shields.io/badge/Version-2.0.1-informational?style=flat-square) ![AppVersion: 2.0.1](https://img.shields.io/badge/AppVersion-2.0.1-informational?style=flat-square)
4+
![Version: 2.0.2](https://img.shields.io/badge/Version-2.0.2-informational?style=flat-square) ![AppVersion: 2.0.2](https://img.shields.io/badge/AppVersion-2.0.2-informational?style=flat-square)
55

66
- [NGINX Gateway Fabric Helm Chart](#nginx-gateway-fabric-helm-chart)
77
- [Introduction](#introduction)
@@ -264,7 +264,7 @@ The following table lists the configurable parameters of the NGINX Gateway Fabri
264264
| `certGenerator.ttlSecondsAfterFinished` | How long to wait after the cert generator job has finished before it is removed by the job controller. | int | `30` |
265265
| `clusterDomain` | The DNS cluster domain of your Kubernetes cluster. | string | `"cluster.local"` |
266266
| `gateways` | A list of Gateway objects. View https://gateway-api.sigs.k8s.io/reference/spec/#gateway for full Gateway reference. | list | `[]` |
267-
| `nginx` | The nginx section contains the configuration for all NGINX data plane deployments installed by the NGINX Gateway Fabric control plane. | object | `{"config":{},"container":{},"debug":false,"image":{"pullPolicy":"IfNotPresent","repository":"ghcr.io/nginx/nginx-gateway-fabric/nginx","tag":"2.0.1"},"imagePullSecret":"","imagePullSecrets":[],"kind":"deployment","plus":false,"pod":{},"replicas":1,"service":{"externalTrafficPolicy":"Local","loadBalancerClass":"","loadBalancerIP":"","loadBalancerSourceRanges":[],"nodePorts":[],"type":"LoadBalancer"},"usage":{"caSecretName":"","clientSSLSecretName":"","endpoint":"","resolver":"","secretName":"nplus-license","skipVerify":false}}` |
267+
| `nginx` | The nginx section contains the configuration for all NGINX data plane deployments installed by the NGINX Gateway Fabric control plane. | object | `{"config":{},"container":{},"debug":false,"image":{"pullPolicy":"IfNotPresent","repository":"ghcr.io/nginx/nginx-gateway-fabric/nginx","tag":"2.0.2"},"imagePullSecret":"","imagePullSecrets":[],"kind":"deployment","plus":false,"pod":{},"replicas":1,"service":{"externalTrafficPolicy":"Local","loadBalancerClass":"","loadBalancerIP":"","loadBalancerSourceRanges":[],"nodePorts":[],"type":"LoadBalancer"},"usage":{"caSecretName":"","clientSSLSecretName":"","endpoint":"","resolver":"","secretName":"nplus-license","skipVerify":false}}` |
268268
| `nginx.config` | The configuration for the data plane that is contained in the NginxProxy resource. This is applied globally to all Gateways managed by this instance of NGINX Gateway Fabric. | object | `{}` |
269269
| `nginx.container` | The container configuration for the NGINX container. This is applied globally to all Gateways managed by this instance of NGINX Gateway Fabric. | object | `{}` |
270270
| `nginx.debug` | Enable debugging for NGINX. Uses the nginx-debug binary. The NGINX error log level should be set to debug in the NginxProxy resource. | bool | `false` |
@@ -288,7 +288,7 @@ The following table lists the configurable parameters of the NGINX Gateway Fabri
288288
| `nginx.usage.resolver` | The nameserver used to resolve the NGINX Plus usage reporting endpoint. Used with NGINX Instance Manager. | string | `""` |
289289
| `nginx.usage.secretName` | The name of the Secret containing the JWT for NGINX Plus usage reporting. Must exist in the same namespace that the NGINX Gateway Fabric control plane is running in (default namespace: nginx-gateway). | string | `"nplus-license"` |
290290
| `nginx.usage.skipVerify` | Disable client verification of the NGINX Plus usage reporting server certificate. | bool | `false` |
291-
| `nginxGateway` | The nginxGateway section contains configuration for the NGINX Gateway Fabric control plane deployment. | object | `{"affinity":{},"config":{"logging":{"level":"info"}},"configAnnotations":{},"extraVolumeMounts":[],"extraVolumes":[],"gatewayClassAnnotations":{},"gatewayClassName":"nginx","gatewayControllerName":"gateway.nginx.org/nginx-gateway-controller","gwAPIExperimentalFeatures":{"enable":false},"image":{"pullPolicy":"IfNotPresent","repository":"ghcr.io/nginx/nginx-gateway-fabric","tag":"2.0.1"},"kind":"deployment","labels":{},"leaderElection":{"enable":true,"lockName":""},"lifecycle":{},"metrics":{"enable":true,"port":9113,"secure":false},"nodeSelector":{},"podAnnotations":{},"productTelemetry":{"enable":true},"readinessProbe":{"enable":true,"initialDelaySeconds":3,"port":8081},"replicas":1,"resources":{},"service":{"annotations":{},"labels":{}},"serviceAccount":{"annotations":{},"imagePullSecret":"","imagePullSecrets":[],"name":""},"snippetsFilters":{"enable":false},"terminationGracePeriodSeconds":30,"tolerations":[],"topologySpreadConstraints":[]}` |
291+
| `nginxGateway` | The nginxGateway section contains configuration for the NGINX Gateway Fabric control plane deployment. | object | `{"affinity":{},"config":{"logging":{"level":"info"}},"configAnnotations":{},"extraVolumeMounts":[],"extraVolumes":[],"gatewayClassAnnotations":{},"gatewayClassName":"nginx","gatewayControllerName":"gateway.nginx.org/nginx-gateway-controller","gwAPIExperimentalFeatures":{"enable":false},"image":{"pullPolicy":"IfNotPresent","repository":"ghcr.io/nginx/nginx-gateway-fabric","tag":"2.0.2"},"kind":"deployment","labels":{},"leaderElection":{"enable":true,"lockName":""},"lifecycle":{},"metrics":{"enable":true,"port":9113,"secure":false},"nodeSelector":{},"podAnnotations":{},"productTelemetry":{"enable":true},"readinessProbe":{"enable":true,"initialDelaySeconds":3,"port":8081},"replicas":1,"resources":{},"service":{"annotations":{},"labels":{}},"serviceAccount":{"annotations":{},"imagePullSecret":"","imagePullSecrets":[],"name":""},"snippetsFilters":{"enable":false},"terminationGracePeriodSeconds":30,"tolerations":[],"topologySpreadConstraints":[]}` |
292292
| `nginxGateway.affinity` | The affinity of the NGINX Gateway Fabric control plane pod. | object | `{}` |
293293
| `nginxGateway.config.logging.level` | Log level. | string | `"info"` |
294294
| `nginxGateway.configAnnotations` | Set of custom annotations for NginxGateway objects. | object | `{}` |
@@ -298,7 +298,7 @@ The following table lists the configurable parameters of the NGINX Gateway Fabri
298298
| `nginxGateway.gatewayClassName` | The name of the GatewayClass that will be created as part of this release. Every NGINX Gateway Fabric must have a unique corresponding GatewayClass resource. NGINX Gateway Fabric only processes resources that belong to its class - i.e. have the "gatewayClassName" field resource equal to the class. | string | `"nginx"` |
299299
| `nginxGateway.gatewayControllerName` | The name of the Gateway controller. The controller name must be of the form: DOMAIN/PATH. The controller's domain is gateway.nginx.org. | string | `"gateway.nginx.org/nginx-gateway-controller"` |
300300
| `nginxGateway.gwAPIExperimentalFeatures.enable` | Enable the experimental features of Gateway API which are supported by NGINX Gateway Fabric. Requires the Gateway APIs installed from the experimental channel. | bool | `false` |
301-
| `nginxGateway.image` | The image configuration for the NGINX Gateway Fabric control plane. | object | `{"pullPolicy":"IfNotPresent","repository":"ghcr.io/nginx/nginx-gateway-fabric","tag":"2.0.1"}` |
301+
| `nginxGateway.image` | The image configuration for the NGINX Gateway Fabric control plane. | object | `{"pullPolicy":"IfNotPresent","repository":"ghcr.io/nginx/nginx-gateway-fabric","tag":"2.0.2"}` |
302302
| `nginxGateway.image.repository` | The NGINX Gateway Fabric image to use | string | `"ghcr.io/nginx/nginx-gateway-fabric"` |
303303
| `nginxGateway.kind` | The kind of the NGINX Gateway Fabric installation - currently, only deployment is supported. | string | `"deployment"` |
304304
| `nginxGateway.labels` | Set of labels to be added for NGINX Gateway Fabric deployment. | object | `{}` |

charts/nginx-gateway-fabric/values.schema.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -344,7 +344,7 @@
344344
"type": "string"
345345
},
346346
"tag": {
347-
"default": "2.0.1",
347+
"default": "2.0.2",
348348
"required": [],
349349
"title": "tag",
350350
"type": "string"
@@ -645,7 +645,7 @@
645645
"type": "string"
646646
},
647647
"tag": {
648-
"default": "2.0.1",
648+
"default": "2.0.2",
649649
"required": [],
650650
"title": "tag",
651651
"type": "string"

charts/nginx-gateway-fabric/values.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -115,7 +115,7 @@ nginxGateway:
115115
image:
116116
# -- The NGINX Gateway Fabric image to use
117117
repository: ghcr.io/nginx/nginx-gateway-fabric
118-
tag: 2.0.1
118+
tag: 2.0.2
119119
# @schema
120120
# enum:
121121
# - Always
@@ -199,7 +199,7 @@ nginx:
199199
image:
200200
# -- The NGINX image to use.
201201
repository: ghcr.io/nginx/nginx-gateway-fabric/nginx
202-
tag: 2.0.1
202+
tag: 2.0.2
203203
# @schema
204204
# enum:
205205
# - Always

deploy/azure/deploy.yaml

Lines changed: 16 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ metadata:
1010
labels:
1111
app.kubernetes.io/instance: nginx-gateway
1212
app.kubernetes.io/name: nginx-gateway
13-
app.kubernetes.io/version: 2.0.1
13+
app.kubernetes.io/version: 2.0.2
1414
name: nginx-gateway
1515
namespace: nginx-gateway
1616
---
@@ -20,7 +20,7 @@ metadata:
2020
labels:
2121
app.kubernetes.io/instance: nginx-gateway
2222
app.kubernetes.io/name: nginx-gateway
23-
app.kubernetes.io/version: 2.0.1
23+
app.kubernetes.io/version: 2.0.2
2424
name: nginx-gateway-cert-generator
2525
namespace: nginx-gateway
2626
---
@@ -30,7 +30,7 @@ metadata:
3030
labels:
3131
app.kubernetes.io/instance: nginx-gateway
3232
app.kubernetes.io/name: nginx-gateway
33-
app.kubernetes.io/version: 2.0.1
33+
app.kubernetes.io/version: 2.0.2
3434
name: nginx-gateway-cert-generator
3535
namespace: nginx-gateway
3636
rules:
@@ -49,7 +49,7 @@ metadata:
4949
labels:
5050
app.kubernetes.io/instance: nginx-gateway
5151
app.kubernetes.io/name: nginx-gateway
52-
app.kubernetes.io/version: 2.0.1
52+
app.kubernetes.io/version: 2.0.2
5353
name: nginx-gateway
5454
rules:
5555
- apiGroups:
@@ -180,7 +180,7 @@ metadata:
180180
labels:
181181
app.kubernetes.io/instance: nginx-gateway
182182
app.kubernetes.io/name: nginx-gateway
183-
app.kubernetes.io/version: 2.0.1
183+
app.kubernetes.io/version: 2.0.2
184184
name: nginx-gateway-cert-generator
185185
namespace: nginx-gateway
186186
roleRef:
@@ -198,7 +198,7 @@ metadata:
198198
labels:
199199
app.kubernetes.io/instance: nginx-gateway
200200
app.kubernetes.io/name: nginx-gateway
201-
app.kubernetes.io/version: 2.0.1
201+
app.kubernetes.io/version: 2.0.2
202202
name: nginx-gateway
203203
roleRef:
204204
apiGroup: rbac.authorization.k8s.io
@@ -215,7 +215,7 @@ metadata:
215215
labels:
216216
app.kubernetes.io/instance: nginx-gateway
217217
app.kubernetes.io/name: nginx-gateway
218-
app.kubernetes.io/version: 2.0.1
218+
app.kubernetes.io/version: 2.0.2
219219
name: nginx-gateway
220220
namespace: nginx-gateway
221221
spec:
@@ -235,7 +235,7 @@ metadata:
235235
labels:
236236
app.kubernetes.io/instance: nginx-gateway
237237
app.kubernetes.io/name: nginx-gateway
238-
app.kubernetes.io/version: 2.0.1
238+
app.kubernetes.io/version: 2.0.2
239239
name: nginx-gateway
240240
namespace: nginx-gateway
241241
spec:
@@ -283,8 +283,8 @@ spec:
283283
fieldRef:
284284
fieldPath: metadata.labels['app.kubernetes.io/instance']
285285
- name: IMAGE_NAME
286-
value: ghcr.io/nginx/nginx-gateway-fabric:2.0.1
287-
image: ghcr.io/nginx/nginx-gateway-fabric:2.0.1
286+
value: ghcr.io/nginx/nginx-gateway-fabric:2.0.2
287+
image: ghcr.io/nginx/nginx-gateway-fabric:2.0.2
288288
imagePullPolicy: IfNotPresent
289289
name: nginx-gateway
290290
ports:
@@ -331,7 +331,7 @@ metadata:
331331
labels:
332332
app.kubernetes.io/instance: nginx-gateway
333333
app.kubernetes.io/name: nginx-gateway
334-
app.kubernetes.io/version: 2.0.1
334+
app.kubernetes.io/version: 2.0.2
335335
name: nginx-gateway-cert-generator
336336
namespace: nginx-gateway
337337
spec:
@@ -351,7 +351,7 @@ spec:
351351
valueFrom:
352352
fieldRef:
353353
fieldPath: metadata.namespace
354-
image: ghcr.io/nginx/nginx-gateway-fabric:2.0.1
354+
image: ghcr.io/nginx/nginx-gateway-fabric:2.0.2
355355
imagePullPolicy: IfNotPresent
356356
name: cert-generator
357357
securityContext:
@@ -377,7 +377,7 @@ metadata:
377377
labels:
378378
app.kubernetes.io/instance: nginx-gateway
379379
app.kubernetes.io/name: nginx-gateway
380-
app.kubernetes.io/version: 2.0.1
380+
app.kubernetes.io/version: 2.0.2
381381
name: nginx
382382
spec:
383383
controllerName: gateway.nginx.org/nginx-gateway-controller
@@ -393,7 +393,7 @@ metadata:
393393
labels:
394394
app.kubernetes.io/instance: nginx-gateway
395395
app.kubernetes.io/name: nginx-gateway
396-
app.kubernetes.io/version: 2.0.1
396+
app.kubernetes.io/version: 2.0.2
397397
name: nginx-gateway-config
398398
namespace: nginx-gateway
399399
spec:
@@ -406,7 +406,7 @@ metadata:
406406
labels:
407407
app.kubernetes.io/instance: nginx-gateway
408408
app.kubernetes.io/name: nginx-gateway
409-
app.kubernetes.io/version: 2.0.1
409+
app.kubernetes.io/version: 2.0.2
410410
name: nginx-gateway-proxy-config
411411
namespace: nginx-gateway
412412
spec:
@@ -416,7 +416,7 @@ spec:
416416
image:
417417
pullPolicy: IfNotPresent
418418
repository: ghcr.io/nginx/nginx-gateway-fabric/nginx
419-
tag: 2.0.1
419+
tag: 2.0.2
420420
pod:
421421
nodeSelector:
422422
kubernetes.io/os: linux

0 commit comments

Comments
 (0)