Skip to content

Commit 672ef34

Browse files
committed
Fix markdown lint issues
1 parent 62a1a7d commit 672ef34

File tree

5 files changed

+40
-36
lines changed

5 files changed

+40
-36
lines changed

README.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -45,10 +45,10 @@ from the main branch.
4545
The table below summarizes the options regarding the images, manifests, documentation and examples and gives your links
4646
to the correct versions:
4747

48-
| Version | Description | Installation Manifests | Documentation and Examples |
49-
|----------------|------------------------------------------|--------------------------------------------------------------------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------|
50-
| Latest release | For production use | [Manifests](https://github.com/nginx/nginx-gateway-fabric/tree/v2.2.1/deploy). | [Documentation](https://docs.nginx.com/nginx-gateway-fabric). [Examples](https://github.com/nginx/nginx-gateway-fabric/tree/v2.2.1/examples). |
51-
| 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). |
48+
| Version | Description | Installation Manifests | Documentation and Examples |
49+
| ------- | ----------- | ---------------------- | -------------------------- |
50+
| Latest release | For production use | [Manifests](https://github.com/nginx/nginx-gateway-fabric/tree/v2.2.1/deploy). | [Documentation](https://docs.nginx.com/nginx-gateway-fabric). [Examples](https://github.com/nginx/nginx-gateway-fabric/tree/v2.2.1/examples). |
51+
| 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
5454

charts/nginx-gateway-fabric/README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -194,7 +194,7 @@ The following table lists the configurable parameters of the NGINX Gateway Fabri
194194
> Viewing the `values.yaml` file directly can show all available options.
195195
196196
| Key | Description | Type | Default |
197-
|-----|-------------|------|---------|
197+
| ----- | ------------- | ------ | --------- |
198198
| `certGenerator` | The certGenerator section contains the configuration for the cert-generator Job. | object | `{"affinity":{},"agentTLSSecretName":"agent-tls","annotations":{},"enable":true,"nodeSelector":{},"overwrite":false,"serverTLSSecretName":"server-tls","tolerations":[],"topologySpreadConstraints":[],"ttlSecondsAfterFinished":30}` |
199199
| `certGenerator.affinity` | The affinity of the cert-generator pod. | object | `{}` |
200200
| `certGenerator.agentTLSSecretName` | The name of the base Secret containing TLS CA, certificate, and key for the NGINX Agent to securely communicate with the NGINX Gateway Fabric control plane. Must exist in the same namespace that the NGINX Gateway Fabric control plane is running in (default namespace: nginx-gateway). | string | `"agent-tls"` |

docs/proposals/authentication-filter.md

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -37,11 +37,11 @@ This document also focus on HTTP Basic Authentication and JWT Authentication. Ot
3737

3838
### Understanding NGINX authentication methods
3939

40-
| **Authentication Method** | **OSS** | **Plus** | **NGINX Module** | **Details** |
41-
|-------------------------------|--------------|----------------|----------------------------------|--------------------------------------------------------------------|
42-
| **HTTP Basic Authentication** | | | [ngx_http_auth_basic](https://nginx.org/en/docs/http/ngx_http_auth_basic_module.html) | Requires a username and password sent in an HTTP header. |
43-
| **JWT (JSON Web Token)** | | | [ngx_http_auth_jwt_module](https://nginx.org/en/docs/http/ngx_http_auth_jwt_module.html) | Tokens are used for stateless authentication between client and server. |
44-
| **OpenID Connect** | | | [ngx_http_oidc_module](https://nginx.org/en/docs/http/ngx_http_oidc_module.html)| Allows authentication through third-party providers like Google. |
40+
| **Authentication Method** | **OSS** | **Plus** | **NGINX Module** | **Details** |
41+
| ------------------------------- | -------------- | ---------------- | ---------------------------------- | -------------------------------------------------------------------- |
42+
| **HTTP Basic Authentication** ||| [ngx_http_auth_basic](https://nginx.org/en/docs/http/ngx_http_auth_basic_module.html) | Requires a username and password sent in an HTTP header. |
43+
| **JWT (JSON Web Token)** ||| [ngx_http_auth_jwt_module](https://nginx.org/en/docs/http/ngx_http_auth_jwt_module.html) | Tokens are used for stateless authentication between client and server. |
44+
| **OpenID Connect** ||| [ngx_http_oidc_module](https://nginx.org/en/docs/http/ngx_http_oidc_module.html) | Allows authentication through third-party providers like Google. |
4545

4646
### Understanding authentication terminology
4747

@@ -427,20 +427,23 @@ user:$apr1$prQ3Bh4t$A6bmTv7VgmemGe5eqR61j0
427427
```
428428

429429
Use these options in the `htpasswd` command for stronger hashing algorithims:
430+
430431
```bash
431432
-2 Force SHA-256 hashing of the password (secure).
432433
-5 Force SHA-512 hashing of the password (secure).
433434
-B Force bcrypt hashing of the password (very secure).
434435
```
435436

436437
You can then run this command to generate the secret from the `auth` file:
438+
437439
```bash
438440
kubectl create secret generic basic-auth --from-file=auth
439441
```
440442

441443
Note: `auth` will be the default key for secrets referenced `AuthenticationFilters` of `Type: Basic`.
442444

443445
Example secret:
446+
444447
```yaml
445448
apiVersion: v1
446449
kind: Secret

docs/proposals/nap-waf.md

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -716,17 +716,17 @@ According to the [Policy and Metaresources GEP](https://gateway-api.sigs.k8s.io/
716716

717717
The `Accepted` Condition must be populated on the `WAFPolicy` CRD using the reasons defined in the [PolicyCondition API](https://github.com/kubernetes-sigs/gateway-api/blob/main/apis/v1alpha2/policy_types.go). Below are example implementation-specific reasons that describe the lifecycle phases and potential issues encountered while processing the policy:
718718

719-
| **Reason** | **Description** | **Example Message** |
720-
|---------------------------|---------------------------------------------------------------------------------------------------|-------------------------------------------------------------------|
721-
| **PolicySourceInvalid** | The `policySource` contains invalid or incomplete information. | "The policy source is invalid. Ensure fileLocation is correct." |
722-
| **PolicyFetchError** | Failed to fetch the policy due to network issues, authentication problems, or source misconfiguration. | "Failed to fetch policy bundle due to a network issue or invalid credentials." |
723-
| **PolicyIntegrityInvalid**| Checksum verification failed for the fetched policy bundle. | "Policy integrity check failed because of a checksum mismatch." |
724-
| **PolicyValidationError** | The WAF policy bundle failed schema or format validation for NGINX App Protect WAF. | "The policy bundle did not pass schema validation. Update the policy and retry compilation." |
725-
| **PolicyDeployed** | The policy was successfully deployed to the NGINX Data Plane (Pods). | "The policy has been successfully deployed and is now protecting the targeted resources." |
726-
| **PolicyDeployedUpdate** | An updated version of the policy was successfully deployed to the NGINX Data Plane (Pods) after polling or change detection. | "The policy has been updated and successfully redeployed to the targeted resources." |
727-
| **PolicyDeploymentError** | The data plane (NGINX Pods) failed to apply the policy. | "Failed to deploy the WAF policy to the NGINX Pods." |
728-
| **AuthenticationError** | Authentication to the external store (e.g., S3, HTTP) failed. | "Authentication error while trying to fetch the policy bundle." |
729-
| **PolicyConfigError** | The policy configuration prevents proper processing. | "The policy configuration is incomplete or incorrectly formatted. Correct the configuration and retry." |
719+
| **Reason** | **Description** | **Example Message** |
720+
| ---------- | --------------- | ------------------- |
721+
| **PolicySourceInvalid** | The `policySource` contains invalid or incomplete information. | "The policy source is invalid. Ensure fileLocation is correct." |
722+
| **PolicyFetchError** | Failed to fetch the policy due to network issues, authentication problems, or source misconfiguration. | "Failed to fetch policy bundle due to a network issue or invalid credentials." |
723+
| **PolicyIntegrityInvalid** | Checksum verification failed for the fetched policy bundle. | "Policy integrity check failed because of a checksum mismatch." |
724+
| **PolicyValidationError** | The WAF policy bundle failed schema or format validation for NGINX App Protect WAF. | "The policy bundle did not pass schema validation. Update the policy and retry compilation." |
725+
| **PolicyDeployed** | The policy was successfully deployed to the NGINX Data Plane (Pods). | "The policy has been successfully deployed and is now protecting the targeted resources." |
726+
| **PolicyDeployedUpdate** | An updated version of the policy was successfully deployed to the NGINX Data Plane (Pods) after polling or change detection. | "The policy has been updated and successfully redeployed to the targeted resources." |
727+
| **PolicyDeploymentError** | The data plane (NGINX Pods) failed to apply the policy. | "Failed to deploy the WAF policy to the NGINX Pods." |
728+
| **AuthenticationError** | Authentication to the external store (e.g., S3, HTTP) failed. | "Authentication error while trying to fetch the policy bundle." |
729+
| **PolicyConfigError** | The policy configuration prevents proper processing. | "The policy configuration is incomplete or incorrectly formatted. Correct the configuration and retry." |
730730

731731
### Example Status Conditions in `WAFPolicy`
732732

docs/proposals/session-persistence.md

Lines changed: 16 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -129,16 +129,16 @@ Users can configure [sessionPersistence](https://gateway-api.sigs.k8s.io/referen
129129

130130
#### Mapping the Gateway API fields to NGINX directives
131131

132-
| Spec Field | NGINX Directive | Notes / Limitations |
133-
|----------------------------------------|----------------------------|-------------------------------------------------------------------------------------------------------------------------------------|
134-
| `sessionName` | `name` | Direct mapping to `sticky cookie` name. |
135-
| `absoluteTimeout` | `expires` | Only used when `cookieConfig.lifetimeType=Permanent`; not enforced for `Session` cookies. |
136-
| `idleTimeout` | _not supported_ | NGINX does not support idle-based invalidation for sticky cookies. Sessions expire only when the cookie expires or the session ends.|
137-
| `type` | `cookie` | Only cookie-based persistence is supported. If Header is specified, the sessionPersistence spec is ignored and a warning/status message is reported on the route, but the route itself remains valid. |
138-
| `cookieConfig.lifetimeType=Session` | _no `expires` set_ | Session cookies expire when the browser session ends. |
139-
| `cookieConfig.lifetimeType=Permanent` | `expires=<absoluteTimeout>`| Cookie persists until the specified timeout. `absoluteTimeout` is required when `lifetimeType` is `Permanent`. |
140-
| no matching spec field | _no `domain` attribute_ | Cookies are host-only for both `HTTPRoute` and `GRPCRoute`. |
141-
| no matching spec field | `path` | Behavior is described separately for `HTTPRoute` below. |
132+
| Spec Field | NGINX Directive | Notes / Limitations |
133+
| ---------- | --------------- | ------------------- |
134+
| `sessionName` | `name` | Direct mapping to `sticky cookie` name. |
135+
| `absoluteTimeout` | `expires` | Only used when `cookieConfig.lifetimeType=Permanent`; not enforced for `Session` cookies. |
136+
| `idleTimeout` | _not supported_ | NGINX does not support idle-based invalidation for sticky cookies. Sessions expire only when the cookie expires or the session ends. |
137+
| `type` | `cookie` | Only cookie-based persistence is supported. If Header is specified, the sessionPersistence spec is ignored and a warning/status message is reported on the route, but the route itself remains valid. |
138+
| `cookieConfig.lifetimeType=Session` | _no `expires` set_ | Session cookies expire when the browser session ends. |
139+
| `cookieConfig.lifetimeType=Permanent` | `expires=<absoluteTimeout>` | Cookie persists until the specified timeout. `absoluteTimeout` is required when `lifetimeType` is `Permanent`. |
140+
| no matching spec field | _no `domain` attribute_ | Cookies are host-only for both `HTTPRoute` and `GRPCRoute`. |
141+
| no matching spec field | `path` | Behavior is described separately for `HTTPRoute` below. |
142142

143143
#### Domain and Path selection for Routes
144144

@@ -148,11 +148,12 @@ For **HTTPRoutes**, we do not set the `domain` attribute. Deriving a broader dom
148148

149149
To determine the cookie `path` for HTTPRoutes, we handle the simple case where there is a single path match as follows:
150150

151-
| Path Value | Path Match Type | Cookie `Path` Value | Cookie Match Expectations |
152-
|-------------------------------------|-----------------|---------------------|---------------------------------------------------------------------------------------------------------------------------------------------------|
153-
| `/hello-exact` | Exact | `/hello-exact` | Cookie header is sent for `/hello-exact` path only. |
154-
| `/hello-prefix` | Prefix | `/hello-prefix` | Cookie header is sent for `/hello-prefix` and any subpath starting with `/hello-prefix` (e.g. `/hello-prefix/foo`). |
155-
| `/hello-regex/[a-zA-Z0-9_-]+$` | Regex | `/hello-regex` | No `path` attribute is set for pathType `RegularExpression` |
151+
| Path Value | Path Match Type | Cookie `Path` Value | Cookie Match Expectations |
152+
| ---------- | --------------- | -------------------
153+
| ------------------------- |
154+
| `/hello-exact` | Exact | `/hello-exact` | Cookie header is sent for `/hello-exact` path only. |
155+
| `/hello-prefix` | Prefix | `/hello-prefix` | Cookie header is sent for `/hello-prefix` and any subpath starting with `/hello-prefix` (e.g. `/hello-prefix/foo`). |
156+
| `/hello-regex/[a-zA-Z0-9_-]+$` | Regex | `/hello-regex` | No `path` attribute is set for pathType `RegularExpression` |
156157

157158
When there are multiple path matches that share the same sessionPersistence configuration, we derive a single cookie path by computing the longest common prefix that ends on a path-segment boundary `/`. If no non-empty common prefix on a segment boundary exists, we fall back to `/` which is allowing all paths.
158159

0 commit comments

Comments
 (0)