Skip to content

Commit

Permalink
Prepare 1.1 Release (#1378)
Browse files Browse the repository at this point in the history
Update the CHANGELOG and docs in preparation for the 1.1 release.
  • Loading branch information
kate-osborn authored Dec 14, 2023
1 parent 7e075c6 commit 4e3d9c4
Show file tree
Hide file tree
Showing 20 changed files with 112 additions and 91 deletions.
47 changes: 47 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,53 @@ This document includes a curated changelog for each release. We also publish a c
a [GitHub release](https://github.com/nginxinc/nginx-gateway-fabric/releases), which, by contrast, is auto-generated
and includes links to all PRs that went into the release.

## Release 1.1.0

*December 14, 2023*

This release updates NGINX Gateway Fabric to support version 1.0.0 of the Gateway API in addition to bug fixes and documentation updates. Our docs are now available at https://docs.nginx.com/nginx-gateway-fabric.

FEATURES:

- Update to v1.0.0 of the Gateway API. [PR-1250](https://github.com/nginxinc/nginx-gateway-fabric/pull/1250)
- Set the SupportedVersion Condition on GatewayClass. [PR-1301](https://github.com/nginxinc/nginx-gateway-fabric/pull/1301)

BUG FIXES:

- Merge HTTPRoute conditions from all Gateway controllers. [PR-1220](https://github.com/nginxinc/nginx-gateway-fabric/pull/1220)
- Validate header names and report validation errors in the HTTPRoute status. [PR-1239](https://github.com/nginxinc/nginx-gateway-fabric/pull/1239)
- Remove usage info from log output. [PR-1242](https://github.com/nginxinc/nginx-gateway-fabric/pull/1242)
- Set the Gateway Listener status AttachedRoutes field to the number of Routes associated with a Listener regardless of Gateway or Route status. [PR-1275](https://github.com/nginxinc/nginx-gateway-fabric/pull/1275)
- Set file mode explicitly for regular NGINX configuration files. [PR-1323](https://github.com/nginxinc/nginx-gateway-fabric/pull/1323). Thanks to [Kai-Hsun Chen](https://github.com/kevin85421).

DOCUMENTATION:

- Documentation is now available on docs.nginx.com. [Link](https://docs.nginx.com/nginx-gateway-fabric/)
- Update the resource validation documents to cover CEL validation. [Link](https://docs.nginx.com/nginx-gateway-fabric/overview/resource-validation/)
- Non-functional testing results. [Link](https://github.com/nginxinc/nginx-gateway-fabric/tree/main/tests)

HELM CHART:

- The version of the Helm chart is now 1.1.0.
- Add tolerations to the helm chart. [PR-1192](https://github.com/nginxinc/nginx-gateway-fabric/pull/1192). Thanks to [Jerome Brown](https://github.com/oWretch).
- Add extra volume mounts to the helm chart. [PR-1193](https://github.com/nginxinc/nginx-gateway-fabric/pull/1193). Thanks to [Jerome Brown](https://github.com/oWretch).
- Fix broken helm chart icon links. [PR-1290](https://github.com/nginxinc/nginx-gateway-fabric/pull/1290). Thanks to [arukiidou](https://github.com/arukiidou).

UPGRADE:

- This version of NGINX Gateway Fabric is not compatible with v0.8.0 of the Gateway API. You must upgrade the Gateway API CRDs to v1.0.0 before upgrading NGINX Gateway Fabric. For instructions, see the upgrade documentation for [helm](https://docs.nginx.com/nginx-gateway-fabric/installation/installing-ngf/helm/#upgrade-nginx-gateway-fabric) or [manifests](https://docs.nginx.com/nginx-gateway-fabric/installation/installing-ngf/manifests/#upgrade-nginx-gateway-fabric).

COMPATIBILITY:

- The Gateway API version: `1.0.0`
- NGINX version: `1.25.3`
- Kubernetes version: `1.23+`

CONTAINER IMAGES:

- Control plane: `ghcr.io/nginxinc/nginx-gateway-fabric:1.1.0`
- Data plane: `ghcr.io/nginxinc/nginx-gateway-fabric/nginx:1.1.0`

## Release 1.0.0

*October 24, 2023*
Expand Down
2 changes: 1 addition & 1 deletion Makefile
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
# variables that should not be overridden by the user
VERSION = edge
VERSION = 1.1.0
GIT_COMMIT = $(shell git rev-parse HEAD || echo "unknown")
DATE = $(shell date -u +"%Y-%m-%dT%H:%M:%SZ")
MANIFEST_DIR = $(shell pwd)/deploy/manifests
Expand Down
12 changes: 6 additions & 6 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ You can find the comprehensive NGINX Gateway Fabric user documentation on the [N
We publish NGINX Gateway Fabric releases on GitHub. See
our [releases page](https://github.com/nginxinc/nginx-gateway-fabric/releases).

The latest release is [1.0.0](https://github.com/nginxinc/nginx-gateway-fabric/releases/tag/v1.0.0).
The latest release is [1.1.0](https://github.com/nginxinc/nginx-gateway-fabric/releases/tag/v1.1.0).

The edge version is useful for experimenting with new features that are not yet published in a release. To use, choose
the *edge* version built from the [latest commit](https://github.com/nginxinc/nginx-gateway-fabric/commits/main)
Expand All @@ -40,10 +40,10 @@ from the main branch.
The table below summarizes the options regarding the images, manifests, documentation and examples and gives your links
to the correct versions:

| Version | Description | Installation Manifests | Documentation and Examples |
|----------------|------------------------------------------|-----------------------------------------------------------------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| Latest release | For production use | [Manifests](https://github.com/nginxinc/nginx-gateway-fabric/tree/v1.0.0/deploy). | [Documentation](https://github.com/nginxinc/nginx-gateway-fabric/tree/v1.0.0/docs). [Examples](https://github.com/nginxinc/nginx-gateway-fabric/tree/v1.0.0/examples). |
| Edge | For experimental use and latest features | [Manifests](https://github.com/nginxinc/nginx-gateway-fabric/tree/main/deploy). | [Documentation](https://github.com/nginxinc/nginx-gateway-fabric/tree/main/docs). [Examples](https://github.com/nginxinc/nginx-gateway-fabric/tree/main/examples). |
| Version | Description | Installation Manifests | Documentation and Examples |
|----------------|------------------------------------------|-----------------------------------------------------------------------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| Latest release | For production use | [Manifests](https://github.com/nginxinc/nginx-gateway-fabric/tree/v1.1.0/deploy). | [Documentation](https://docs.nginx.com/nginx-gateway-fabric/). [Examples](https://github.com/nginxinc/nginx-gateway-fabric/tree/v1.1.0/examples). |
| Edge | For experimental use and latest features | [Manifests](https://github.com/nginxinc/nginx-gateway-fabric/tree/main/deploy). | [Documentation](https://github.com/nginxinc/nginx-gateway-fabric/tree/main/site/content). [Examples](https://github.com/nginxinc/nginx-gateway-fabric/tree/main/examples). |

### Versioning

Expand All @@ -64,7 +64,7 @@ The following table lists the software versions NGINX Gateway Fabric supports.

| NGINX Gateway Fabric | Gateway API | Kubernetes | NGINX OSS |
|----------------------|-------------|------------|-----------|
| Edge | 1.0.0 | 1.23+ | 1.25.3 |
| 1.1.0 | 1.0.0 | 1.23+ | 1.25.3 |
| 1.0.0 | 0.8.1 | 1.23+ | 1.25.2 |
| 0.6.0 | 0.8.0 | 1.23+ | 1.25.2 |
| 0.5.0 | 0.7.1 | 1.21+ | 1.25.x * |
Expand Down
2 changes: 1 addition & 1 deletion conformance/Makefile
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
TAG = edge
TAG = 1.1.0
PREFIX = nginx-gateway-fabric
NGINX_PREFIX = $(PREFIX)/nginx
GW_API_VERSION ?= 1.0.0
Expand Down
2 changes: 1 addition & 1 deletion conformance/provisioner/provisioner.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -68,7 +68,7 @@ spec:
spec:
serviceAccountName: nginx-gateway-provisioner
containers:
- image: ghcr.io/nginxinc/nginx-gateway-fabric:edge
- image: ghcr.io/nginxinc/nginx-gateway-fabric:1.1.0
imagePullPolicy: Always
name: nginx-gateway-provisioner
securityContext:
Expand Down
10 changes: 5 additions & 5 deletions conformance/provisioner/static-deployment.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ metadata:
labels:
app.kubernetes.io/name: nginx-gateway
app.kubernetes.io/instance: nginx-gateway
app.kubernetes.io/version: "edge"
app.kubernetes.io/version: "1.1.0"
spec:
replicas: 1
selector:
Expand Down Expand Up @@ -44,8 +44,8 @@ spec:
valueFrom:
fieldRef:
fieldPath: metadata.name
image: ghcr.io/nginxinc/nginx-gateway-fabric:edge
imagePullPolicy: Always
image: ghcr.io/nginxinc/nginx-gateway-fabric:1.1.0
imagePullPolicy: IfNotPresent
name: nginx-gateway
ports:
- name: health
Expand Down Expand Up @@ -73,8 +73,8 @@ spec:
mountPath: /etc/nginx/secrets
- name: nginx-run
mountPath: /var/run/nginx
- image: ghcr.io/nginxinc/nginx-gateway-fabric/nginx:edge
imagePullPolicy: Always
- image: ghcr.io/nginxinc/nginx-gateway-fabric/nginx:1.1.0
imagePullPolicy: IfNotPresent
name: nginx
ports:
- containerPort: 80
Expand Down
8 changes: 4 additions & 4 deletions deploy/helm-chart/Chart.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -2,12 +2,12 @@ apiVersion: v2
name: nginx-gateway-fabric
description: NGINX Gateway Fabric
type: application
version: 1.0.0
appVersion: "edge"
version: 1.1.0
appVersion: "1.1.0"
home: https://github.com/nginxinc/nginx-gateway-fabric
icon: https://raw.githubusercontent.com/nginxinc/nginx-gateway-fabric/main/deploy/helm-chart/chart-icon.png
icon: https://raw.githubusercontent.com/nginxinc/nginx-gateway-fabric/v1.1.0/deploy/helm-chart/chart-icon.png
sources:
- https://github.com/nginxinc/nginx-gateway-fabric/tree/main/deploy/helm-chart
- https://github.com/nginxinc/nginx-gateway-fabric/tree/v1.1.0/deploy/helm-chart
keywords:
- kubernetes
- gateway
Expand Down
9 changes: 0 additions & 9 deletions deploy/helm-chart/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -37,15 +37,6 @@ This chart deploys the NGINX Gateway Fabric in your Kubernetes cluster.
> they are the correct version as supported by the NGINX Gateway Fabric -
> [see the Technical Specifications](https://github.com/nginxinc/nginx-gateway-fabric/blob/main/README.md#technical-specifications).
If installing the latest stable release of NGINX Gateway Fabric, ensure you are deploying its supported version of
the Gateway API resources:

```shell
kubectl apply -f https://github.com/kubernetes-sigs/gateway-api/releases/download/v0.8.1/standard-install.yaml
```

If you are installing the edge version of NGINX Gateway Fabric:

```shell
kubectl apply -f https://github.com/kubernetes-sigs/gateway-api/releases/download/v1.0.0/standard-install.yaml
```
Expand Down
8 changes: 4 additions & 4 deletions deploy/helm-chart/values.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -38,8 +38,8 @@ nginxGateway:
image:
## The NGINX Gateway Fabric image to use
repository: ghcr.io/nginxinc/nginx-gateway-fabric
tag: edge
pullPolicy: Always
tag: 1.1.0
pullPolicy: IfNotPresent

securityContext:
## Some environments may need this set to true in order for the control plane to successfully reload NGINX.
Expand All @@ -55,8 +55,8 @@ nginx:
## The NGINX image to use
image:
repository: ghcr.io/nginxinc/nginx-gateway-fabric/nginx
tag: edge
pullPolicy: Always
tag: 1.1.0
pullPolicy: IfNotPresent

## The lifecycle of the nginx container.
lifecycle: {}
Expand Down
20 changes: 10 additions & 10 deletions deploy/manifests/nginx-gateway.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ metadata:
labels:
app.kubernetes.io/name: nginx-gateway
app.kubernetes.io/instance: nginx-gateway
app.kubernetes.io/version: "edge"
app.kubernetes.io/version: "1.1.0"
annotations:
{}
---
Expand All @@ -24,7 +24,7 @@ metadata:
labels:
app.kubernetes.io/name: nginx-gateway
app.kubernetes.io/instance: nginx-gateway
app.kubernetes.io/version: "edge"
app.kubernetes.io/version: "1.1.0"
rules:
- apiGroups:
- ""
Expand Down Expand Up @@ -105,7 +105,7 @@ metadata:
labels:
app.kubernetes.io/name: nginx-gateway
app.kubernetes.io/instance: nginx-gateway
app.kubernetes.io/version: "edge"
app.kubernetes.io/version: "1.1.0"
roleRef:
apiGroup: rbac.authorization.k8s.io
kind: ClusterRole
Expand All @@ -124,7 +124,7 @@ metadata:
labels:
app.kubernetes.io/name: nginx-gateway
app.kubernetes.io/instance: nginx-gateway
app.kubernetes.io/version: "edge"
app.kubernetes.io/version: "1.1.0"
spec:
replicas: 1
selector:
Expand Down Expand Up @@ -163,8 +163,8 @@ spec:
valueFrom:
fieldRef:
fieldPath: metadata.name
image: ghcr.io/nginxinc/nginx-gateway-fabric:edge
imagePullPolicy: Always
image: ghcr.io/nginxinc/nginx-gateway-fabric:1.1.0
imagePullPolicy: IfNotPresent
name: nginx-gateway
ports:
- name: metrics
Expand Down Expand Up @@ -194,8 +194,8 @@ spec:
mountPath: /etc/nginx/secrets
- name: nginx-run
mountPath: /var/run/nginx
- image: ghcr.io/nginxinc/nginx-gateway-fabric/nginx:edge
imagePullPolicy: Always
- image: ghcr.io/nginxinc/nginx-gateway-fabric/nginx:1.1.0
imagePullPolicy: IfNotPresent
name: nginx
ports:
- containerPort: 80
Expand Down Expand Up @@ -248,7 +248,7 @@ metadata:
labels:
app.kubernetes.io/name: nginx-gateway
app.kubernetes.io/instance: nginx-gateway
app.kubernetes.io/version: "edge"
app.kubernetes.io/version: "1.1.0"
spec:
controllerName: gateway.nginx.org/nginx-gateway-controller
---
Expand All @@ -261,7 +261,7 @@ metadata:
labels:
app.kubernetes.io/name: nginx-gateway
app.kubernetes.io/instance: nginx-gateway
app.kubernetes.io/version: "edge"
app.kubernetes.io/version: "1.1.0"
spec:
logging:
level: info
2 changes: 1 addition & 1 deletion deploy/manifests/service/loadbalancer-aws-nlb.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ metadata:
labels:
app.kubernetes.io/name: nginx-gateway
app.kubernetes.io/instance: nginx-gateway
app.kubernetes.io/version: "edge"
app.kubernetes.io/version: "1.1.0"
annotations:
service.beta.kubernetes.io/aws-load-balancer-type: nlb
spec:
Expand Down
2 changes: 1 addition & 1 deletion deploy/manifests/service/loadbalancer.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ metadata:
labels:
app.kubernetes.io/name: nginx-gateway
app.kubernetes.io/instance: nginx-gateway
app.kubernetes.io/version: "edge"
app.kubernetes.io/version: "1.1.0"
spec:
externalTrafficPolicy: Local
type: LoadBalancer
Expand Down
2 changes: 1 addition & 1 deletion deploy/manifests/service/nodeport.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ metadata:
labels:
app.kubernetes.io/name: nginx-gateway
app.kubernetes.io/instance: nginx-gateway
app.kubernetes.io/version: "edge"
app.kubernetes.io/version: "1.1.0"
spec:
type: NodePort
selector:
Expand Down
2 changes: 1 addition & 1 deletion docs/developer/release-process.md
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ To create a new release, follow these steps:
branch, and the [example applications](/examples).
4. If a problem is found, prepare a fix PR, merge it into the main branch and return to the previous step.
5. If the supported Gateway API minor version has changed since the last release, test NGINX Gateway Fabric with the previous version of the Gateway API CRDs.
6. If a compatibility issue is found, add a note to the release notes explaining that the previous version is not supported.
6. If a compatibility issue is found, add a note to the [changelog](/CHANGELOG.md) explaining that the previous version is not supported.
7. Create a release branch following the `release-X.Y` naming convention.
8. Prepare and merge a PR into the **release branch** to update the repo files for the release:
1. Update the Helm [Chart.yaml](/deploy/helm-chart/Chart.yaml): the `appVersion` to `X.Y.Z`, the icon and source
Expand Down
1 change: 1 addition & 0 deletions examples/http-header-filter/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -72,6 +72,7 @@ Headers:
header 'My-cool-header' is 'my-client-value, this-is-an-appended-value'
header 'My-Overwrite-Header' is 'this-is-the-only-value'
header 'Host' is 'echo.example.com:$GW_PORT'
header 'X-Forwarded-For' is '$GW_IP'
header 'Connection' is 'close'
header 'Accept' is '*/*'
```
4 changes: 2 additions & 2 deletions site/content/how-to/traffic-management/advanced-routing.md
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@ The goal is to create a set of rules that will result in client requests being s
Begin by deploying the `coffee-v1` and `coffee-v2` applications:

```shell
kubectl apply -f https://raw.githubusercontent.com/nginxinc/nginx-gateway-fabric/main/examples/advanced-routing/coffee.yaml
kubectl apply -f https://raw.githubusercontent.com/nginxinc/nginx-gateway-fabric/v1.1.0/examples/advanced-routing/coffee.yaml
```

### Deploy the Gateway API Resources for the Coffee Applications
Expand Down Expand Up @@ -154,7 +154,7 @@ Let's deploy a different set of applications now called `tea` and `tea-post`. Th
### Deploy the Tea Applications

```shell
kubectl apply -f https://raw.githubusercontent.com/nginxinc/nginx-gateway-fabric/main/examples/advanced-routing/tea.yaml
kubectl apply -f https://raw.githubusercontent.com/nginxinc/nginx-gateway-fabric/v1.1.0/examples/advanced-routing/tea.yaml
```

### Deploy the HTTPRoute for the Tea Services
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,18 +4,7 @@ docs:

{{<note>}}The [Gateway API resources](https://github.com/kubernetes-sigs/gateway-api) from the standard channel must be installed before deploying NGINX Gateway Fabric. If they are already installed in your cluster, please ensure they are the correct version as supported by the NGINX Gateway Fabric - [see the Technical Specifications](https://github.com/nginxinc/nginx-gateway-fabric/blob/main/README.md#technical-specifications).{{</note>}}

**Stable release**

If installing the latest stable release of NGINX Gateway Fabric, ensure you are deploying its supported version of
the Gateway API resources:

```shell
kubectl apply -f https://github.com/kubernetes-sigs/gateway-api/releases/download/v0.8.1/standard-install.yaml
```

**Edge version**

If installing the edge version of NGINX Gateway Fabric from the **main** branch:
To install the Gateway API resources, run the following:

```shell
kubectl apply -f https://github.com/kubernetes-sigs/gateway-api/releases/download/v1.0.0/standard-install.yaml
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,25 +4,12 @@ docs:

{{<warning>}}This will remove all corresponding custom resources in your entire cluster, across all namespaces. Double-check to make sure you don't have any custom resources you need to keep, and confirm that there are no other Gateway API implementations active in your cluster.{{</warning>}}

To uninstall the Gateway API resources, including the CRDs and the validating webhook, run the following:

**Stable release**

If you were running the latest stable release version of NGINX Gateway Fabric:

```shell
kubectl delete -f https://github.com/kubernetes-sigs/gateway-api/releases/download/v0.8.1/standard-install.yaml
```

**Edge version**

If you were running the edge version of NGINX Gateway Fabric from the **main** branch:
To uninstall the Gateway API resources, run the following:

```shell
kubectl delete -f https://github.com/kubernetes-sigs/gateway-api/releases/download/v1.0.0/standard-install.yaml
```


If you are running on Kubernetes 1.23 or 1.24, you also need to delete the validating webhook. To do so, run:

```shell
Expand Down
Loading

0 comments on commit 4e3d9c4

Please sign in to comment.