diff --git a/CHANGELOG.md b/CHANGELOG.md index 74b8ea6a1b..6838f8dab9 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,6 +4,60 @@ 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.5.0 + +_November 20, 2024_ + +BREAKING CHANGES: + +- NGINX Plus R33 support added. The NGINX Plus release now requires a valid JSON Web Token (JWT) in order to run. Users of NGINX Plus _must_ have this JWT added to a Secret before installing NGINX Gateway Fabric v1.5.0. See the [NGINX Plus JWT](https://docs.nginx.com/nginx-gateway-fabric/installation/nginx-plus-jwt/) guide for information on setting this up. [2760](https://github.com/nginxinc/nginx-gateway-fabric/pull/2760) + +FEATURES: + +- Add support to retain client IP information. [2284](https://github.com/nginxinc/nginx-gateway-fabric/pull/2284) +- Add the ability to configure data plane error log level. [2603](https://github.com/nginxinc/nginx-gateway-fabric/pull/2603) +- Introduce SnippetsFilter API, which allows users to inject custom NGINX configuration via an HTTPRoute or GRPCRoute filter. See the [SnippetsFilter guide](https://docs.nginx.com/nginx-gateway-fabric/how-to/traffic-management/snippets/) for information on how to use SnippetsFilters. [2604](https://github.com/nginxinc/nginx-gateway-fabric/pull/2604) +- Reduce logging verbosity of default Info log level. [2455](https://github.com/nginxinc/nginx-gateway-fabric/pull/2455) + +BUG FIXES: + +- Stream status_zone directive is no longer set if its value is empty. [2684](https://github.com/nginxinc/nginx-gateway-fabric/pull/2684) +- Fix an issue with upstream names when split clients are used with a namespace name that starts with a number. [2730](https://github.com/nginxinc/nginx-gateway-fabric/pull/2730) +- A 503 http response code is now returned to the client when a service has no ready endpoints. [2696](https://github.com/nginxinc/nginx-gateway-fabric/pull/2696) + +DOCUMENTATION: + +- Add a [guide](https://docs.nginx.com/nginx-gateway-fabric/how-to/traffic-management/snippets) for SnippetsFilter. [2721](https://github.com/nginxinc/nginx-gateway-fabric/pull/2721) +- Add a new [Get started](https://docs.nginx.com/nginx-gateway-fabric/get-started/) document. [2721](https://github.com/nginxinc/nginx-gateway-fabric/pull/2717) +- Add documentation for [proxyProtocol and rewriteClientIP](https://docs.nginx.com/nginx-gateway-fabric/how-to/data-plane-configuration/#configure-proxy-protocol-and-rewriteclientip-settings) settings. [2701](https://github.com/nginxinc/nginx-gateway-fabric/pull/2701) +- Fix indentation in lifecycle examples. [2588](https://github.com/nginxinc/nginx-gateway-fabric/pull/2588). Thanks to [Derek F](https://github.com/defrank). + +HELM CHART: + +- The version of the Helm chart is now 1.5.0 +- Add `loadBalancerSourceRanges` to helm parameters to use during install/upgrade. [2773](https://github.com/nginxinc/nginx-gateway-fabric/pull/2773) +- Add `loadBalancerIP` as a helm parameter to use during install/upgrade. [2766](https://github.com/nginxinc/nginx-gateway-fabric/pull/2766) +- Add Helm schema. [2492](https://github.com/nginxinc/nginx-gateway-fabric/pull/2492) +- Add capability to configure `topologySpreadConstraints`. [2703](https://github.com/nginxinc/nginx-gateway-fabric/pull/2703). Thanks to [Robsta86](https://github.com/Robsta86) + +DEPENDENCIES: + +- NGINX Plus was updated to R33. [2760](https://github.com/nginxinc/nginx-gateway-fabric/pull/2760) +- Update to v1.2.0 of the Gateway API. [2694](https://github.com/nginxinc/nginx-gateway-fabric/pull/2694) + +COMPATIBILITY: + +- Gateway API version: `1.2.0` +- NGINX version: `1.27.2` +- NGINX Plus version: `R33` +- Kubernetes version: `1.25+` + +CONTAINER IMAGES: + +- Control plane: `ghcr.io/nginxinc/nginx-gateway-fabric:1.5.0` +- Data plane: `ghcr.io/nginxinc/nginx-gateway-fabric/nginx:1.5.0` +- Data plane with NGINX Plus: `private-registry.nginx.com/nginx-gateway-fabric/nginx-plus:1.5.0` + ## Release 1.4.0 _August 20, 2024_ diff --git a/README.md b/README.md index 996dfe2051..a0849338cc 100644 --- a/README.md +++ b/README.md @@ -34,7 +34,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.4.0](https://github.com/nginxinc/nginx-gateway-fabric/releases/tag/v1.4.0). +The latest release is [1.5.0](https://github.com/nginxinc/nginx-gateway-fabric/releases/tag/v1.5.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) @@ -45,7 +45,7 @@ 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.4.0/deploy). | [Documentation](https://docs.nginx.com/nginx-gateway-fabric). [Examples](https://github.com/nginxinc/nginx-gateway-fabric/tree/v1.4.0/examples). | +| Latest release | For production use | [Manifests](https://github.com/nginxinc/nginx-gateway-fabric/tree/v1.5.0/deploy). | [Documentation](https://docs.nginx.com/nginx-gateway-fabric). [Examples](https://github.com/nginxinc/nginx-gateway-fabric/tree/v1.5.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 @@ -66,21 +66,13 @@ The following table lists the software versions NGINX Gateway Fabric supports. | NGINX Gateway Fabric | Gateway API | Kubernetes | NGINX OSS | NGINX Plus | |----------------------|-------------|------------|-----------|------------| -| Edge | 1.2.0 | 1.25+ | 1.27.2 | R32 | +| Edge | 1.2.0 | 1.25+ | 1.27.2 | R33 | +| 1.5.0 | 1.2.0 | 1.25+ | 1.27.2 | R33 | | 1.4.0 | 1.1.0 | 1.25+ | 1.27.1 | R32 | | 1.3.0 | 1.1.0 | 1.25+ | 1.27.0 | R32 | | 1.2.0 | 1.0.0 | 1.23+ | 1.25.4 | R31 | | 1.1.0 | 1.0.0 | 1.23+ | 1.25.3 | n/a | | 1.0.0 | 0.8.1 | 1.23+ | 1.25.2 | n/a | -| 0.6.0 | 0.8.0 | 1.23+ | 1.25.2 | n/a | -| 0.5.0 | 0.7.1 | 1.21+ | 1.25.x \* | n/a | -| 0.4.0 | 0.7.1 | 1.21+ | 1.25.x \* | n/a | -| 0.3.0 | 0.6.2 | 1.21+ | 1.23.x \* | n/a | -| 0.2.0 | 0.5.1 | 1.21+ | 1.21.x \* | n/a | -| 0.1.0 | 0.5.0 | 1.19+ | 1.21.3 | n/a | - -\*the installation manifests use the minor version of NGINX container image (e.g. 1.25) and the patch version is not -specified. This means that the latest available patch version is used. ## SBOM (Software Bill of Materials) diff --git a/charts/nginx-gateway-fabric/Chart.yaml b/charts/nginx-gateway-fabric/Chart.yaml index da51db8850..c40680cf74 100644 --- a/charts/nginx-gateway-fabric/Chart.yaml +++ b/charts/nginx-gateway-fabric/Chart.yaml @@ -2,7 +2,7 @@ apiVersion: v2 name: nginx-gateway-fabric description: NGINX Gateway Fabric type: application -version: 1.4.0 +version: 1.5.0 appVersion: "edge" kubeVersion: ">= 1.25.0-0" home: https://github.com/nginxinc/nginx-gateway-fabric diff --git a/charts/nginx-gateway-fabric/README.md b/charts/nginx-gateway-fabric/README.md index 38c93d5214..83689fd990 100644 --- a/charts/nginx-gateway-fabric/README.md +++ b/charts/nginx-gateway-fabric/README.md @@ -1,7 +1,7 @@ # NGINX Gateway Fabric Helm Chart -![Version: 1.4.0](https://img.shields.io/badge/Version-1.4.0-informational?style=flat-square) ![AppVersion: edge](https://img.shields.io/badge/AppVersion-edge-informational?style=flat-square) +![Version: 1.5.0](https://img.shields.io/badge/Version-1.5.0-informational?style=flat-square) ![AppVersion: edge](https://img.shields.io/badge/AppVersion-edge-informational?style=flat-square) - [NGINX Gateway Fabric Helm Chart](#nginx-gateway-fabric-helm-chart) - [Introduction](#introduction) diff --git a/site/content/get-started.md b/site/content/get-started.md index c9fda29a1b..b497832189 100644 --- a/site/content/get-started.md +++ b/site/content/get-started.md @@ -53,6 +53,7 @@ Run the following command: ```shell kind create cluster --config cluster-config.yaml ``` + ```text Creating cluster "kind" ... ✓ Ensuring node image (kindest/node:v1.31.0) 🖼 @@ -75,6 +76,7 @@ If you have cloned [the NGINX Gateway Fabric repository](https://github.com/ngin ```shell make create-kind-cluster ``` + {{< /note >}} --- @@ -86,8 +88,9 @@ make create-kind-cluster Use `kubectl` to add the API resources for NGINX Gateway Fabric with the following command: ```shell -kubectl kustomize "https://github.com/nginxinc/nginx-gateway-fabric/config/crd/gateway-api/standard?ref=v1.4.0" | kubectl apply -f - +kubectl kustomize "https://github.com/nginxinc/nginx-gateway-fabric/config/crd/gateway-api/standard?ref=v1.5.0" | kubectl apply -f - ``` + ```text customresourcedefinition.apiextensions.k8s.io/gatewayclasses.gateway.networking.k8s.io created customresourcedefinition.apiextensions.k8s.io/gateways.gateway.networking.k8s.io created @@ -100,8 +103,9 @@ customresourcedefinition.apiextensions.k8s.io/referencegrants.gateway.networking To use experimental features, you'll need to install the API resources from the experimental channel instead. ```shell -kubectl kustomize "https://github.com/nginxinc/nginx-gateway-fabric/config/crd/gateway-api/experimental?ref=v1.4.0" | kubectl apply -f - +kubectl kustomize "https://github.com/nginxinc/nginx-gateway-fabric/config/crd/gateway-api/experimental?ref=v1.5.0" | kubectl apply -f - ``` + {{< /note >}} --- @@ -113,8 +117,9 @@ Use `helm` to install NGINX Gateway Fabric with the following command: ```shell helm install ngf oci://ghcr.io/nginxinc/charts/nginx-gateway-fabric --create-namespace -n nginx-gateway --set service.create=false ``` + ```text -Pulled: ghcr.io/nginxinc/charts/nginx-gateway-fabric:1.4.0 +Pulled: ghcr.io/nginxinc/charts/nginx-gateway-fabric:1.5.0 Digest: sha256:9bbd1a2fcbfd5407ad6be39f796f582e6263512f1f3a8969b427d39063cc6fee NAME: ngf LAST DEPLOYED: Mon Oct 21 14:45:14 2024 @@ -130,6 +135,7 @@ If you installed the API resources from the experimental channel during the last ```shell helm install ngf oci://ghcr.io/nginxinc/charts/nginx-gateway-fabric --create-namespace -n nginx-gateway --set service.create=false --set nginxGateway.gwAPIExperimentalFeatures.enable=true ``` + {{< /note >}} --- @@ -151,7 +157,7 @@ metadata: labels: app.kubernetes.io/name: nginx-gateway-fabric app.kubernetes.io/instance: ngf - app.kubernetes.io/version: "1.4.0" + app.kubernetes.io/version: "1.5.0" spec: type: NodePort selector: @@ -175,6 +181,7 @@ Apply it using `kubectl`: ```shell kubectl apply -f nodeport-config.yaml ``` + ```text service/nginx-gateway created ``` @@ -201,13 +208,14 @@ The YAML code in the following sections can be found in the [cafe-example folder Create the file _cafe.yaml_ with the following contents: -{{< ghcode "https://raw.githubusercontent.com/nginxinc/nginx-gateway-fabric/refs/heads/main/examples/cafe-example/cafe.yaml">}} +{{< ghcode `https://raw.githubusercontent.com/nginxinc/nginx-gateway-fabric/refs/heads/main/examples/cafe-example/cafe.yaml`>}} -Apply it: +Apply it using `kubectl`: ```shell kubectl apply -f cafe.yaml ``` + ```text deployment.apps/coffee created service/coffee created @@ -220,6 +228,7 @@ Verify that the new pods are in the `default` namespace: ```shell kubectl -n default get pods ``` + ```text NAME READY STATUS RESTARTS AGE coffee-6db967495b-wk2mm 1/1 Running 0 10s @@ -232,26 +241,28 @@ tea-7b7d6c947d-d4qcf 1/1 Running 0 10s Create the file _gateway.yaml_ with the following contents: -{{< ghcode "https://raw.githubusercontent.com/nginxinc/nginx-gateway-fabric/refs/heads/main/examples/cafe-example/gateway.yaml">}} +{{< ghcode `https://raw.githubusercontent.com/nginxinc/nginx-gateway-fabric/refs/heads/main/examples/cafe-example/gateway.yaml`>}} Apply it using `kubectl`: ```shell kubectl apply -f gateway.yaml ``` + ```text gateway.gateway.networking.k8s.io/gateway created ``` Create the file _cafe-routes.yaml_ with the following contents: -{{< ghcode "https://raw.githubusercontent.com/nginxinc/nginx-gateway-fabric/refs/heads/main/examples/cafe-example/cafe-routes.yaml">}} +{{< ghcode `https://raw.githubusercontent.com/nginxinc/nginx-gateway-fabric/refs/heads/main/examples/cafe-example/cafe-routes.yaml`>}} Apply it using `kubectl`: ```shell kubectl apply -f cafe-routes.yaml ``` + ```text httproute.gateway.networking.k8s.io/coffee created httproute.gateway.networking.k8s.io/tea created @@ -266,6 +277,7 @@ You can check that all of the expected services are available using `kubectl get ```shell kubectl get service --all-namespaces ``` + ```text NAMESPACE NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE default coffee ClusterIP 10.96.18.163 80/TCP 2m51s @@ -280,6 +292,7 @@ You can also use `kubectl describe` on the new resources to check their status: ```shell kubectl describe httproutes ``` + ```text Name: coffee Namespace: default @@ -394,6 +407,7 @@ Events: ```shell kubectl describe gateways ``` + ```text Name: gateway Namespace: default @@ -480,6 +494,7 @@ You can use `curl` to test the new services by targeting the hostname (_cafe.exa ```shell curl --resolve cafe.example.com:8080:127.0.0.1 http://cafe.example.com:8080/coffee ``` + ```text Server address: 10.244.0.6:8080 Server name: coffee-6db967495b-wk2mm @@ -491,6 +506,7 @@ Request ID: fb226a54fd94f927b484dd31fb30e747 ```shell curl --resolve cafe.example.com:8080:127.0.0.1 http://cafe.example.com:8080/tea ``` + ```text Server address: 10.244.0.7:8080 Server name: tea-7b7d6c947d-d4qcf diff --git a/site/content/how-to/monitoring/prometheus.md b/site/content/how-to/monitoring/prometheus.md index 0d47badc54..20a5c7404d 100644 --- a/site/content/how-to/monitoring/prometheus.md +++ b/site/content/how-to/monitoring/prometheus.md @@ -102,11 +102,11 @@ You can configure monitoring metrics for NGINX Gateway Fabric using Helm or Mani ### Using Helm -If you're setting up NGINX Gateway Fabric with Helm, you can adjust the `metrics.*` parameters to fit your needs. For detailed options and instructions, see the [Helm README](https://github.com/nginxinc/nginx-gateway-fabric/blob/v1.4.0/charts/nginx-gateway-fabric/README.md). +If you're setting up NGINX Gateway Fabric with Helm, you can adjust the `metrics.*` parameters to fit your needs. For detailed options and instructions, see the [Helm README](https://github.com/nginxinc/nginx-gateway-fabric/blob/v1.5.0/charts/nginx-gateway-fabric/README.md). ### Using Kubernetes manifests -For setups using Kubernetes manifests, change the metrics configuration by editing the NGINX Gateway Fabric manifest that you want to deploy. You can find some examples in the [deploy](https://github.com/nginxinc/nginx-gateway-fabric/tree/v1.4.0/deploy) directory. +For setups using Kubernetes manifests, change the metrics configuration by editing the NGINX Gateway Fabric manifest that you want to deploy. You can find some examples in the [deploy](https://github.com/nginxinc/nginx-gateway-fabric/tree/v1.5.0/deploy) directory. #### Disabling metrics diff --git a/site/content/how-to/traffic-management/advanced-routing.md b/site/content/how-to/traffic-management/advanced-routing.md index 72b6d994c4..37cc5c2554 100644 --- a/site/content/how-to/traffic-management/advanced-routing.md +++ b/site/content/how-to/traffic-management/advanced-routing.md @@ -36,7 +36,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/v1.4.0/examples/advanced-routing/coffee.yaml +kubectl apply -f https://raw.githubusercontent.com/nginxinc/nginx-gateway-fabric/v1.5.0/examples/advanced-routing/coffee.yaml ``` ### Deploy the Gateway API Resources for the Coffee applications @@ -156,7 +156,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/v1.4.0/examples/advanced-routing/tea.yaml +kubectl apply -f https://raw.githubusercontent.com/nginxinc/nginx-gateway-fabric/v1.5.0/examples/advanced-routing/tea.yaml ``` ### Deploy the HTTPRoute for the Tea services diff --git a/site/content/how-to/traffic-management/client-settings.md b/site/content/how-to/traffic-management/client-settings.md index 791dae9efd..9bf21f0764 100644 --- a/site/content/how-to/traffic-management/client-settings.md +++ b/site/content/how-to/traffic-management/client-settings.md @@ -45,19 +45,19 @@ For all the possible configuration options for `ClientSettingsPolicy`, see the [ - Create the coffee and tea example applications: ```yaml - kubectl apply -f https://raw.githubusercontent.com/nginxinc/nginx-gateway-fabric/v1.4.0/examples/client-settings-policy/app.yaml + kubectl apply -f https://raw.githubusercontent.com/nginxinc/nginx-gateway-fabric/v1.5.0/examples/client-settings-policy/app.yaml ``` - Create a Gateway: ```yaml - kubectl apply -f https://raw.githubusercontent.com/nginxinc/nginx-gateway-fabric/v1.4.0/examples/client-settings-policy/gateway.yaml + kubectl apply -f https://raw.githubusercontent.com/nginxinc/nginx-gateway-fabric/v1.5.0/examples/client-settings-policy/gateway.yaml ``` - Create HTTPRoutes for the coffee and tea applications: ```yaml - kubectl apply -f https://raw.githubusercontent.com/nginxinc/nginx-gateway-fabric/v1.4.0/examples/client-settings-policy/httproutes.yaml + kubectl apply -f https://raw.githubusercontent.com/nginxinc/nginx-gateway-fabric/v1.5.0/examples/client-settings-policy/httproutes.yaml ``` - Test the configuration: diff --git a/site/content/how-to/traffic-management/request-response-headers.md b/site/content/how-to/traffic-management/request-response-headers.md index b57f90ef22..efa6fbfab4 100644 --- a/site/content/how-to/traffic-management/request-response-headers.md +++ b/site/content/how-to/traffic-management/request-response-headers.md @@ -64,7 +64,7 @@ This examples demonstrates how to configure traffic routing for a simple echo se Begin by deploying the example application `headers`. It is a simple application that returns the request headers which will be modified later. ```shell -kubectl apply -f https://raw.githubusercontent.com/nginxinc/nginx-gateway-fabric/v1.4.0/examples/http-request-header-filter/headers.yaml +kubectl apply -f https://raw.githubusercontent.com/nginxinc/nginx-gateway-fabric/v1.5.0/examples/http-request-header-filter/headers.yaml ``` This will create the headers Service and a Deployment with one Pod. Run the following command to verify the resources were created: @@ -72,6 +72,7 @@ This will create the headers Service and a Deployment with one Pod. Run the foll ```shell kubectl get pods,svc ``` + ```text pod/headers-545698447b-z52kj 1/1 Running 0 23s @@ -175,7 +176,7 @@ kubectl delete httproutes.gateway.networking.k8s.io headers ``` ```shell -kubectl delete -f https://raw.githubusercontent.com/nginxinc/nginx-gateway-fabric/v1.4.0/examples/http-request-header-filter/headers.yaml +kubectl delete -f https://raw.githubusercontent.com/nginxinc/nginx-gateway-fabric/v1.5.0/examples/http-request-header-filter/headers.yaml ``` ## ResponseHeaderModifier example @@ -187,7 +188,7 @@ Begin by configuring an application with custom headers and a simple HTTPRoute. Begin by deploying the example application `headers`. It is a simple application that adds response headers that will be modified later. ```shell -kubectl apply -f https://raw.githubusercontent.com/nginxinc/nginx-gateway-fabric/v1.4.0/examples/http-response-header-filter/headers.yaml +kubectl apply -f https://raw.githubusercontent.com/nginxinc/nginx-gateway-fabric/v1.5.0/examples/http-response-header-filter/headers.yaml ``` This will create the headers Service and a Deployment with one Pod. Run the following command to verify the resources were created: @@ -195,6 +196,7 @@ This will create the headers Service and a Deployment with one Pod. Run the foll ```shell kubectl get pods,svc ``` + ```text NAME READY STATUS RESTARTS AGE pod/headers-6f854c478-hd2jr 1/1 Running 0 95s @@ -243,6 +245,7 @@ Use `curl` with the `-i` flag to access the application and include the response ```shell curl -i --resolve cafe.example.com:$GW_PORT:$GW_IP http://cafe.example.com:$GW_PORT/headers ``` + ```text HTTP/1.1 200 OK Server: nginx/1.25.5 @@ -319,6 +322,7 @@ Send a curl request to the modified `headers` application to verify the response ```shell curl -i --resolve cafe.example.com:$GW_PORT:$GW_IP http://cafe.example.com:$GW_PORT/headers ``` + ```text HTTP/1.1 200 OK Server: nginx/1.25.5 diff --git a/site/content/how-to/traffic-management/snippets.md b/site/content/how-to/traffic-management/snippets.md index 6064ee5dbf..e986042ad6 100644 --- a/site/content/how-to/traffic-management/snippets.md +++ b/site/content/how-to/traffic-management/snippets.md @@ -73,19 +73,19 @@ We have outlined a few best practices to keep in mind when using `SnippetsFilter - Create the coffee and tea example applications: ```yaml - kubectl apply -f https://raw.githubusercontent.com/nginxinc/nginx-gateway-fabric/v1.4.0/examples/snippets-filter/app.yaml + kubectl apply -f https://raw.githubusercontent.com/nginxinc/nginx-gateway-fabric/v1.5.0/examples/snippets-filter/app.yaml ``` - Create a Gateway: ```yaml - kubectl apply -f https://raw.githubusercontent.com/nginxinc/nginx-gateway-fabric/v1.4.0/examples/snippets-filter/gateway.yaml + kubectl apply -f https://raw.githubusercontent.com/nginxinc/nginx-gateway-fabric/v1.5.0/examples/snippets-filter/gateway.yaml ``` - Create HTTPRoutes for the coffee and tea applications: ```yaml - kubectl apply -f https://raw.githubusercontent.com/nginxinc/nginx-gateway-fabric/v1.4.0/examples/snippets-filter/httproutes.yaml + kubectl apply -f https://raw.githubusercontent.com/nginxinc/nginx-gateway-fabric/v1.5.0/examples/snippets-filter/httproutes.yaml ``` - Test the configuration: diff --git a/site/content/how-to/upgrade-apps-without-downtime.md b/site/content/how-to/upgrade-apps-without-downtime.md index e832dcdedd..2c50fce0c7 100644 --- a/site/content/how-to/upgrade-apps-without-downtime.md +++ b/site/content/how-to/upgrade-apps-without-downtime.md @@ -56,7 +56,7 @@ For example, an application can be exposed using a routing rule like below: port: 80 ``` -{{< note >}}See the [Cafe example](https://github.com/nginxinc/nginx-gateway-fabric/tree/v1.4.0/examples/cafe-example) for a basic example.{{< /note >}} +{{< note >}}See the [Cafe example](https://github.com/nginxinc/nginx-gateway-fabric/tree/v1.5.0/examples/cafe-example) for a basic example.{{< /note >}} The upgrade methods in the next sections cover: @@ -121,4 +121,4 @@ By updating the rule you can further increase the share of traffic the new versi weight: 1 ``` -See the [Traffic splitting example](https://github.com/nginxinc/nginx-gateway-fabric/tree/v1.4.0/examples/traffic-splitting) from our repository. +See the [Traffic splitting example](https://github.com/nginxinc/nginx-gateway-fabric/tree/v1.5.0/examples/traffic-splitting) from our repository. diff --git a/site/content/includes/installation/install-gateway-api-experimental-features.md b/site/content/includes/installation/install-gateway-api-experimental-features.md index 27e1170027..e9a516e903 100644 --- a/site/content/includes/installation/install-gateway-api-experimental-features.md +++ b/site/content/includes/installation/install-gateway-api-experimental-features.md @@ -10,7 +10,7 @@ To use Gateway API experimental resources, the Gateway API resources from the ex To install the Gateway API resources from the experimental channel, run the following: ```shell -kubectl kustomize "https://github.com/nginxinc/nginx-gateway-fabric/config/crd/gateway-api/experimental?ref=v1.4.0" | kubectl apply -f - +kubectl kustomize "https://github.com/nginxinc/nginx-gateway-fabric/config/crd/gateway-api/experimental?ref=v1.5.0" | kubectl apply -f - ``` {{< note >}}If you plan to use the `edge` version of NGINX Gateway Fabric, you can replace the version in `ref` with `main`, for example `ref=main`. {{}} diff --git a/site/content/includes/installation/install-gateway-api-resources.md b/site/content/includes/installation/install-gateway-api-resources.md index 109b6f4fd6..9fa5a82956 100644 --- a/site/content/includes/installation/install-gateway-api-resources.md +++ b/site/content/includes/installation/install-gateway-api-resources.md @@ -2,12 +2,12 @@ docs: "DOCS-1438" --- -{{< 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/v1.4.0/README.md#technical-specifications). {{}} +{{< 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/v1.5.0/README.md#technical-specifications). {{}} To install the Gateway API resources, run the following: ```shell -kubectl kustomize "https://github.com/nginxinc/nginx-gateway-fabric/config/crd/gateway-api/standard?ref=v1.4.0" | kubectl apply -f - +kubectl kustomize "https://github.com/nginxinc/nginx-gateway-fabric/config/crd/gateway-api/standard?ref=v1.5.0" | kubectl apply -f - ``` {{< note >}}If you plan to use the `edge` version of NGINX Gateway Fabric, you can replace the version in `ref` with `main`, for example `ref=main`.{{}} @@ -18,7 +18,7 @@ NGINX Gateway Fabric currently supports a subset of the additional features prov To install from the experimental channel, run the following: ```shell -kubectl kustomize "https://github.com/nginxinc/nginx-gateway-fabric/config/crd/gateway-api/experimental?ref=v1.4.0" | kubectl apply -f - +kubectl kustomize "https://github.com/nginxinc/nginx-gateway-fabric/config/crd/gateway-api/experimental?ref=v1.5.0" | kubectl apply -f - ``` {{< note >}} To learn more about what Gateway API resources NGINX Gateway Fabric currently supports, visit our [Gateway API Compatibility]({{< relref "overview/gateway-api-compatibility.md" >}}) document. {{}} diff --git a/site/content/includes/installation/uninstall-gateway-api-resources.md b/site/content/includes/installation/uninstall-gateway-api-resources.md index 3b4efa9171..94e6a886c5 100644 --- a/site/content/includes/installation/uninstall-gateway-api-resources.md +++ b/site/content/includes/installation/uninstall-gateway-api-resources.md @@ -7,11 +7,11 @@ docs: "DOCS-1436" To uninstall the Gateway API resources, run the following: ```shell -kubectl kustomize "https://github.com/nginxinc/nginx-gateway-fabric/config/crd/gateway-api/standard?ref=v1.4.0" | kubectl delete -f - +kubectl kustomize "https://github.com/nginxinc/nginx-gateway-fabric/config/crd/gateway-api/standard?ref=v1.5.0" | kubectl delete -f - ``` Alternatively, if you installed the Gateway APIs from the experimental channel, run the following: ```shell -kubectl kustomize "https://github.com/nginxinc/nginx-gateway-fabric/config/crd/gateway-api/experimental?ref=v1.4.0" | kubectl delete -f - +kubectl kustomize "https://github.com/nginxinc/nginx-gateway-fabric/config/crd/gateway-api/experimental?ref=v1.5.0" | kubectl delete -f - ``` diff --git a/site/content/installation/building-the-images.md b/site/content/installation/building-the-images.md index ed03e099f1..b294d5fb7b 100644 --- a/site/content/installation/building-the-images.md +++ b/site/content/installation/building-the-images.md @@ -26,7 +26,7 @@ If building the NGINX Plus image, you will also need a valid NGINX Plus license 1. Clone the repo and change into the `nginx-gateway-fabric` directory: ```shell - git clone https://github.com/nginxinc/nginx-gateway-fabric.git --branch v1.4.0 + git clone https://github.com/nginxinc/nginx-gateway-fabric.git --branch v1.5.0 cd nginx-gateway-fabric ``` @@ -62,20 +62,20 @@ If building the NGINX Plus image, you will also need a valid NGINX Plus license ``` Set the `PREFIX` variable to the name of the registry you'd like to push the image to. By default, the images will be - named `nginx-gateway-fabric:1.4.0` and `nginx-gateway-fabric/nginx:1.4.0` or `nginx-gateway-fabric/nginx-plus:1.4.0`. + named `nginx-gateway-fabric:1.5.0` and `nginx-gateway-fabric/nginx:1.5.0` or `nginx-gateway-fabric/nginx-plus:1.5.0`. 1. Push the images to your container registry: ```shell - docker push myregistry.example.com/nginx-gateway-fabric:1.4.0 - docker push myregistry.example.com/nginx-gateway-fabric/nginx:1.4.0 + docker push myregistry.example.com/nginx-gateway-fabric:1.5.0 + docker push myregistry.example.com/nginx-gateway-fabric/nginx:1.5.0 ``` or ```shell - docker push myregistry.example.com/nginx-gateway-fabric:1.4.0 - docker push myregistry.example.com/nginx-gateway-fabric/nginx-plus:1.4.0 + docker push myregistry.example.com/nginx-gateway-fabric:1.5.0 + docker push myregistry.example.com/nginx-gateway-fabric/nginx-plus:1.5.0 ``` Make sure to substitute `myregistry.example.com/nginx-gateway-fabric` with your registry. diff --git a/site/content/installation/installing-ngf/helm.md b/site/content/installation/installing-ngf/helm.md index 143a982830..02cfbf9490 100644 --- a/site/content/installation/installing-ngf/helm.md +++ b/site/content/installation/installing-ngf/helm.md @@ -157,7 +157,7 @@ helm install ngf oci://ghcr.io/nginxinc/charts/nginx-gateway-fabric --create-nam #### Examples -You can find several examples of configuration options of the `values.yaml` file in the [helm examples](https://github.com/nginxinc/nginx-gateway-fabric/tree/v1.4.0/examples/helm) directory. +You can find several examples of configuration options of the `values.yaml` file in the [helm examples](https://github.com/nginxinc/nginx-gateway-fabric/tree/v1.5.0/examples/helm) directory. ### Access NGINX Gateway Fabric @@ -178,13 +178,13 @@ To upgrade your Gateway API resources, take the following steps: - To upgrade the Gateway API resources, run: ```shell - kubectl kustomize "https://github.com/nginxinc/nginx-gateway-fabric/config/crd/gateway-api/standard?ref=v1.4.0" | kubectl apply -f - + kubectl kustomize "https://github.com/nginxinc/nginx-gateway-fabric/config/crd/gateway-api/standard?ref=v1.5.0" | kubectl apply -f - ``` or, if you installed the from the experimental channel: ```shell - kubectl kustomize "https://github.com/nginxinc/nginx-gateway-fabric/config/crd/gateway-api/experimental?ref=v1.4.0" | kubectl apply -f - + kubectl kustomize "https://github.com/nginxinc/nginx-gateway-fabric/config/crd/gateway-api/experimental?ref=v1.5.0" | kubectl apply -f - ``` ### Upgrade NGINX Gateway Fabric CRDs @@ -198,7 +198,7 @@ To upgrade the CRDs, take the following steps: 2. Upgrade the CRDs: ```shell - kubectl apply -f https://raw.githubusercontent.com/nginxinc/nginx-gateway-fabric/v1.4.0/deploy/crds.yaml + kubectl apply -f https://raw.githubusercontent.com/nginxinc/nginx-gateway-fabric/v1.5.0/deploy/crds.yaml ``` {{}}Ignore the following warning, as it is expected.{{}} @@ -315,7 +315,7 @@ Follow these steps to uninstall NGINX Gateway Fabric and Gateway API from your K ```shell kubectl delete ns nginx-gateway - kubectl delete -f https://raw.githubusercontent.com/nginxinc/nginx-gateway-fabric/v1.4.0/deploy/crds.yaml + kubectl delete -f https://raw.githubusercontent.com/nginxinc/nginx-gateway-fabric/v1.5.0/deploy/crds.yaml ``` 3. **Remove the Gateway API resources:** @@ -324,4 +324,4 @@ Follow these steps to uninstall NGINX Gateway Fabric and Gateway API from your K ## Additional configuration -For a full list of the Helm Chart configuration parameters, read [the NGINX Gateway Fabric Helm Chart](https://github.com/nginxinc/nginx-gateway-fabric/blob/v1.4.0/charts/nginx-gateway-fabric/README.md#configuration). +For a full list of the Helm Chart configuration parameters, read [the NGINX Gateway Fabric Helm Chart](https://github.com/nginxinc/nginx-gateway-fabric/blob/v1.5.0/charts/nginx-gateway-fabric/README.md#configuration). diff --git a/site/content/installation/installing-ngf/manifests.md b/site/content/installation/installing-ngf/manifests.md index c2eff51048..875a8a08c3 100644 --- a/site/content/installation/installing-ngf/manifests.md +++ b/site/content/installation/installing-ngf/manifests.md @@ -53,7 +53,7 @@ Deploying NGINX Gateway Fabric with Kubernetes manifests takes only a few steps. #### Stable release ```shell -kubectl apply -f https://raw.githubusercontent.com/nginxinc/nginx-gateway-fabric/v1.4.0/deploy/crds.yaml +kubectl apply -f https://raw.githubusercontent.com/nginxinc/nginx-gateway-fabric/v1.5.0/deploy/crds.yaml ``` #### Edge version @@ -73,7 +73,7 @@ kubectl apply -f https://raw.githubusercontent.com/nginxinc/nginx-gateway-fabric Deploys NGINX Gateway Fabric with NGINX OSS. ```shell -kubectl apply -f https://raw.githubusercontent.com/nginxinc/nginx-gateway-fabric/v1.4.0/deploy/default/deploy.yaml +kubectl apply -f https://raw.githubusercontent.com/nginxinc/nginx-gateway-fabric/v1.5.0/deploy/default/deploy.yaml ``` {{% /tab %}} @@ -83,7 +83,7 @@ kubectl apply -f https://raw.githubusercontent.com/nginxinc/nginx-gateway-fabric Deploys NGINX Gateway Fabric with NGINX OSS and an AWS Network Load Balancer service. ```shell -kubectl apply -f https://raw.githubusercontent.com/nginxinc/nginx-gateway-fabric/v1.4.0/deploy/aws-nlb/deploy.yaml +kubectl apply -f https://raw.githubusercontent.com/nginxinc/nginx-gateway-fabric/v1.5.0/deploy/aws-nlb/deploy.yaml ``` {{% /tab %}} @@ -93,7 +93,7 @@ kubectl apply -f https://raw.githubusercontent.com/nginxinc/nginx-gateway-fabric Deploys NGINX Gateway Fabric with NGINX OSS and `nodeSelector` to deploy on Linux nodes. ```shell -kubectl apply -f https://raw.githubusercontent.com/nginxinc/nginx-gateway-fabric/v1.4.0/deploy/azure/deploy.yaml +kubectl apply -f https://raw.githubusercontent.com/nginxinc/nginx-gateway-fabric/v1.5.0/deploy/azure/deploy.yaml ``` {{% /tab %}} @@ -105,7 +105,7 @@ NGINX Plus Docker registry, and the `imagePullSecretName` is the name of the Sec The NGINX Plus JWT Secret used to run NGINX Plus is also specified in a volume mount and the `--usage-report-secret` parameter. These Secrets are created as part of the [Before you begin](#before-you-begin) section. ```shell -kubectl apply -f https://raw.githubusercontent.com/nginxinc/nginx-gateway-fabric/v1.4.0/deploy/nginx-plus/deploy.yaml +kubectl apply -f https://raw.githubusercontent.com/nginxinc/nginx-gateway-fabric/v1.5.0/deploy/nginx-plus/deploy.yaml ``` {{% /tab %}} @@ -115,7 +115,7 @@ kubectl apply -f https://raw.githubusercontent.com/nginxinc/nginx-gateway-fabric Deploys NGINX Gateway Fabric with NGINX OSS and experimental features. ```shell -kubectl apply -f https://raw.githubusercontent.com/nginxinc/nginx-gateway-fabric/v1.4.0/deploy/experimental/deploy.yaml +kubectl apply -f https://raw.githubusercontent.com/nginxinc/nginx-gateway-fabric/v1.5.0/deploy/experimental/deploy.yaml ``` {{< note >}} Requires the Gateway APIs installed from the experimental channel. {{< /note >}} @@ -129,7 +129,7 @@ NGINX Plus Docker registry, and the `imagePullSecretName` is the name of the Sec The NGINX Plus JWT Secret used to run NGINX Plus is also specified in a volume mount and the `--usage-report-secret` parameter. These Secrets are created as part of the [Before you begin](#before-you-begin) section. ```shell -kubectl apply -f https://raw.githubusercontent.com/nginxinc/nginx-gateway-fabric/v1.4.0/deploy/nginx-plus-experimental/deploy.yaml +kubectl apply -f https://raw.githubusercontent.com/nginxinc/nginx-gateway-fabric/v1.5.0/deploy/nginx-plus-experimental/deploy.yaml ``` {{< note >}} Requires the Gateway APIs installed from the experimental channel. {{< /note >}} @@ -141,7 +141,7 @@ kubectl apply -f https://raw.githubusercontent.com/nginxinc/nginx-gateway-fabric Deploys NGINX Gateway Fabric with NGINX OSS using a Service type of `NodePort`. ```shell -kubectl apply -f https://raw.githubusercontent.com/nginxinc/nginx-gateway-fabric/v1.4.0/deploy/nodeport/deploy.yaml +kubectl apply -f https://raw.githubusercontent.com/nginxinc/nginx-gateway-fabric/v1.5.0/deploy/nodeport/deploy.yaml ``` {{% /tab %}} @@ -151,7 +151,7 @@ kubectl apply -f https://raw.githubusercontent.com/nginxinc/nginx-gateway-fabric Deploys NGINX Gateway Fabric with NGINX OSS on OpenShift. ```shell -kubectl apply -f https://raw.githubusercontent.com/nginxinc/nginx-gateway-fabric/v1.4.0/deploy/openshift/deploy.yaml +kubectl apply -f https://raw.githubusercontent.com/nginxinc/nginx-gateway-fabric/v1.5.0/deploy/openshift/deploy.yaml ``` {{% /tab %}} @@ -193,13 +193,13 @@ To upgrade NGINX Gateway Fabric and get the latest features and improvements, ta - To upgrade the Gateway API resources, run: ```shell - kubectl kustomize "https://github.com/nginxinc/nginx-gateway-fabric/config/crd/gateway-api/standard?ref=v1.4.0" | kubectl apply -f - + kubectl kustomize "https://github.com/nginxinc/nginx-gateway-fabric/config/crd/gateway-api/standard?ref=v1.5.0" | kubectl apply -f - ``` or, if you installed the from the experimental channel: ```shell - kubectl kustomize "https://github.com/nginxinc/nginx-gateway-fabric/config/crd/gateway-api/experimental?ref=v1.4.0" | kubectl apply -f - + kubectl kustomize "https://github.com/nginxinc/nginx-gateway-fabric/config/crd/gateway-api/experimental?ref=v1.5.0" | kubectl apply -f - ``` 1. **Upgrade NGINX Gateway Fabric CRDs:** @@ -207,7 +207,7 @@ To upgrade NGINX Gateway Fabric and get the latest features and improvements, ta - To upgrade the Custom Resource Definitions (CRDs), run: ```shell - kubectl apply -f https://raw.githubusercontent.com/nginxinc/nginx-gateway-fabric/v1.4.0/deploy/crds.yaml + kubectl apply -f https://raw.githubusercontent.com/nginxinc/nginx-gateway-fabric/v1.5.0/deploy/crds.yaml ``` 1. **Upgrade NGINX Gateway Fabric deployment:** @@ -278,7 +278,7 @@ Follow these steps to uninstall NGINX Gateway Fabric and Gateway API from your K ``` ```shell - kubectl delete -f https://raw.githubusercontent.com/nginxinc/nginx-gateway-fabric/v1.4.0/deploy/crds.yaml + kubectl delete -f https://raw.githubusercontent.com/nginxinc/nginx-gateway-fabric/v1.5.0/deploy/crds.yaml ``` 1. **Remove the Gateway API resources:** diff --git a/site/content/installation/nginx-plus-jwt.md b/site/content/installation/nginx-plus-jwt.md index 220fd0ef32..17121e9a22 100644 --- a/site/content/installation/nginx-plus-jwt.md +++ b/site/content/installation/nginx-plus-jwt.md @@ -228,7 +228,7 @@ Replace the contents of `` with the contents of the JWT token itself. You can then pull the image: ```shell -docker pull private-registry.nginx.com/nginx-gateway-fabric/nginx-plus:1.4.0 +docker pull private-registry.nginx.com/nginx-gateway-fabric/nginx-plus:1.5.0 ``` Once you have successfully pulled the image, you can tag it as needed, then push it to a different container registry. diff --git a/site/content/overview/gateway-architecture.md b/site/content/overview/gateway-architecture.md index 015bfc4e55..c3b829b0eb 100644 --- a/site/content/overview/gateway-architecture.md +++ b/site/content/overview/gateway-architecture.md @@ -21,7 +21,7 @@ NGINX Gateway Fabric is an open source project that provides an implementation o For a list of supported Gateway API resources and features, see the [Gateway API Compatibility]({{< relref "/overview/gateway-api-compatibility.md" >}}) documentation. -We have more information regarding our [design principles](https://github.com/nginxinc/nginx-gateway-fabric/blob/v1.4.0/docs/developer/design-principles.md) in the project's GitHub repository. +We have more information regarding our [design principles](https://github.com/nginxinc/nginx-gateway-fabric/blob/v1.5.0/docs/developer/design-principles.md) in the project's GitHub repository. ## NGINX Gateway Fabric at a high level @@ -72,7 +72,7 @@ The following list describes the connections, preceeded by their types in parent 1. (HTTPS) - Read: _NGF_ reads the _Kubernetes API_ to get the latest versions of the resources in the cluster. - - Write: _NGF_ writes to the _Kubernetes API_ to update the handled resources' statuses and emit events. If there's more than one replica of _NGF_ and [leader election](https://github.com/nginxinc/nginx-gateway-fabric/tree/v1.4.0/charts/nginx-gateway-fabric#configuration) is enabled, only the _NGF_ pod that is leading will write statuses to the _Kubernetes API_. + - Write: _NGF_ writes to the _Kubernetes API_ to update the handled resources' statuses and emit events. If there's more than one replica of _NGF_ and [leader election](https://github.com/nginxinc/nginx-gateway-fabric/tree/v1.5.0/charts/nginx-gateway-fabric#configuration) is enabled, only the _NGF_ pod that is leading will write statuses to the _Kubernetes API_. 1. (HTTP, HTTPS) _Prometheus_ fetches the `controller-runtime` and NGINX metrics via an HTTP endpoint that _NGF_ exposes (`:9113/metrics` by default). Prometheus is **not** required by NGINX Gateway Fabric, and its endpoint can be turned off. 1. (File I/O) - Write: _NGF_ generates NGINX _configuration_ based on the cluster resources and writes them as `.conf` files to the mounted `nginx-conf` volume, located at `/etc/nginx/conf.d`. It also writes _TLS certificates_ and _keys_ from [TLS secrets](https://kubernetes.io/docs/concepts/configuration/secret/#tls-secrets) referenced in the accepted Gateway resource to the `nginx-secrets` volume at the path `/etc/nginx/secrets`. @@ -86,7 +86,7 @@ The following list describes the connections, preceeded by their types in parent 1. (File I/O) - Write: The _NGINX master_ writes to the auxiliary Unix sockets folder, which is located in the `/var/run/nginx` directory. - - Read: The _NGINX master_ reads the `nginx.conf` file from the `/etc/nginx` directory. This [file](https://github.com/nginxinc/nginx-gateway-fabric/blob/v1.4.0/internal/mode/static/nginx/conf/nginx.conf) contains the global and http configuration settings for NGINX. In addition, _NGINX master_ reads the NJS modules referenced in the configuration when it starts or during a reload. NJS modules are stored in the `/usr/lib/nginx/modules` directory. + - Read: The _NGINX master_ reads the `nginx.conf` file from the `/etc/nginx` directory. This [file](https://github.com/nginxinc/nginx-gateway-fabric/blob/v1.5.0/internal/mode/static/nginx/conf/nginx.conf) contains the global and http configuration settings for NGINX. In addition, _NGINX master_ reads the NJS modules referenced in the configuration when it starts or during a reload. NJS modules are stored in the `/usr/lib/nginx/modules` directory. 1. (File I/O) The _NGINX master_ sends logs to its _stdout_ and _stderr_, which are collected by the container runtime. 1. (File I/O) An _NGINX worker_ writes logs to its _stdout_ and _stderr_, which are collected by the container runtime. 1. (Signal) The _NGINX master_ controls the [lifecycle of _NGINX workers_](https://nginx.org/en/docs/control.html#reconfiguration) it creates workers with the new configuration and shutdowns workers with the old configuration. diff --git a/tests/Makefile b/tests/Makefile index 529e052322..3addb0843d 100644 --- a/tests/Makefile +++ b/tests/Makefile @@ -7,7 +7,7 @@ GINKGO_FLAGS = GINKGO_LABEL = GITHUB_OUTPUT = GW_API_VERSION ?= $(shell sed -n 's/.*ref=v\(.*\)/\1/p' ../config/crd/gateway-api/standard/kustomization.yaml)## Supported Gateway API version from current NGF -GW_API_PREV_VERSION ?= 1.1.0## Supported Gateway API version from previous NGF release +GW_API_PREV_VERSION ?= 1.2.0## Supported Gateway API version from previous NGF release GW_SERVICE_TYPE = NodePort## Service type to use for the gateway GW_SVC_GKE_INTERNAL = false NGF_VERSION ?= edge## NGF version to be tested