Skip to content

Commit 8ce27a7

Browse files
authored
Merge branch 'main' into docs/helm-docs
2 parents daf7e5e + fc2ed96 commit 8ce27a7

File tree

11 files changed

+96
-21
lines changed

11 files changed

+96
-21
lines changed

.github/workflows/build.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -152,7 +152,7 @@ jobs:
152152
fail-build: false
153153

154154
- name: Upload scan result to GitHub Security tab
155-
uses: github/codeql-action/upload-sarif@f079b8493333aace61c81488f8bd40919487bd9f # v3.25.7
155+
uses: github/codeql-action/upload-sarif@2e230e8fe0ad3a14a340ad0815ddb96d599d2aff # v3.25.8
156156
continue-on-error: true
157157
with:
158158
sarif_file: ${{ steps.scan.outputs.sarif }}

.github/workflows/codeql-analysis.yml

+3-3
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,7 @@ jobs:
4444

4545
# Initializes the CodeQL tools for scanning.
4646
- name: Initialize CodeQL
47-
uses: github/codeql-action/init@f079b8493333aace61c81488f8bd40919487bd9f # v3.25.7
47+
uses: github/codeql-action/init@2e230e8fe0ad3a14a340ad0815ddb96d599d2aff # v3.25.8
4848
with:
4949
languages: ${{ matrix.language }}
5050
# If you wish to specify custom queries, you can do so here or in a config file.
@@ -63,7 +63,7 @@ jobs:
6363
# Autobuild attempts to build any compiled languages (C/C++, C#, Go, Java, or Swift).
6464
# If this step fails, then you should remove it and run the build manually (see below)
6565
- name: Autobuild
66-
uses: github/codeql-action/autobuild@f079b8493333aace61c81488f8bd40919487bd9f # v3.25.7
66+
uses: github/codeql-action/autobuild@2e230e8fe0ad3a14a340ad0815ddb96d599d2aff # v3.25.8
6767

6868
# ℹ️ Command-line programs to run using the OS shell.
6969
# 📚 See https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_idstepsrun
@@ -76,6 +76,6 @@ jobs:
7676
# ./location_of_script_within_repo/buildscript.sh
7777

7878
- name: Perform CodeQL Analysis
79-
uses: github/codeql-action/analyze@f079b8493333aace61c81488f8bd40919487bd9f # v3.25.7
79+
uses: github/codeql-action/analyze@2e230e8fe0ad3a14a340ad0815ddb96d599d2aff # v3.25.8
8080
with:
8181
category: "/language:${{matrix.language}}"

.github/workflows/lint.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -77,7 +77,7 @@ jobs:
7777
- name: Checkout Repository
7878
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6
7979

80-
- uses: reviewdog/action-actionlint@4797143fa54b2306fe78646b48cfa10395506635 # v1.47.0
80+
- uses: reviewdog/action-actionlint@fd627997c9688c2f39e13917aed23873c031b834 # v1.48.0
8181
with:
8282
actionlint_flags: -shellcheck ""
8383

.github/workflows/scorecards.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -60,6 +60,6 @@ jobs:
6060

6161
# Upload the results to GitHub's code scanning dashboard.
6262
- name: "Upload to code-scanning"
63-
uses: github/codeql-action/upload-sarif@f079b8493333aace61c81488f8bd40919487bd9f # v3.25.7
63+
uses: github/codeql-action/upload-sarif@2e230e8fe0ad3a14a340ad0815ddb96d599d2aff # v3.25.8
6464
with:
6565
sarif_file: results.sarif

.pre-commit-config.yaml

+1-1
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ repos:
2424
exclude: (^examples/|^docs/|.*_test.go$)
2525

2626
- repo: https://github.com/gitleaks/gitleaks
27-
rev: v8.18.2
27+
rev: v8.18.3
2828
hooks:
2929
- id: gitleaks
3030

docs/developer/release-process.md

+3-2
Original file line numberDiff line numberDiff line change
@@ -30,15 +30,16 @@ To create a new release, follow these steps:
3030
3. Test the main branch for release-readiness. For that, use the `edge` containers, which are built from the main
3131
branch, and run the following:
3232
1. Run the [example applications](/examples) manually and verify their correctness.
33-
2. Kick off the [NFR workflow](https://github.com/nginxinc/nginx-gateway-fabric/actions/nfr.yml) in the browser. For `image_tag`, use `edge`, and for `version`, use the upcoming `X.Y.Z` NGF version. This will run all of the NFR tests which are automated and open a PR with the results files when it is complete. Review this PR and make any necessary changes before merging.
33+
2. Kick off the [NFR workflow](https://github.com/nginxinc/nginx-gateway-fabric/actions/workflows/nfr.yml) in the browser. For `image_tag`, use `edge`, and for `version`, use the upcoming `X.Y.Z` NGF version. This will run all of the NFR tests which are automated and open a PR with the results files when it is complete. Review this PR and make any necessary changes before merging.
3434
4. If a problem is found, prepare a fix PR, merge it into the main branch and return to the previous step.
3535
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.
3636
6. If a compatibility issue is found, add a note to the release notes explaining that the previous version is not supported.
3737
7. Create a release branch following the `release-X.Y` naming convention.
38-
8. Run the [Release PR](./../../.github/workflows/release-pr.yml) workflow to update the repo files for the release. Then there are a few manual steps to complete:
38+
8. Run the [Release PR](https://github.com/nginxinc/nginx-gateway-fabric/actions/workflows/release-pr.yml) workflow to update the repo files for the release. Then there are a few manual steps to complete:
3939
1. Update the tag of NGF container images used in the [provisioner manifest](/tests/conformance/provisioner/provisioner.yaml).
4040
2. Update the [README](/README.md) to include information about the release.
4141
3. Update the [changelog](/CHANGELOG.md). There is going to be a new blank section generated by the automation that needs to be adjusted accordingly.
42+
At the top there will be a list of all PRs that are labeled with `release-notes`.
4243
The changelog includes only important (from the user perspective)
4344
changes to NGF. This is in contrast with the autogenerated full changelog, which is created in the next
4445
step. As a starting point, copy the important features, bug fixes, and dependencies from the autogenerated

go.mod

+2-2
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ require (
1313
github.com/onsi/ginkgo/v2 v2.19.0
1414
github.com/onsi/gomega v1.33.1
1515
github.com/prometheus/client_golang v1.19.1
16-
github.com/prometheus/common v0.53.0
16+
github.com/prometheus/common v0.54.0
1717
github.com/spf13/cobra v1.8.0
1818
github.com/spf13/pflag v1.0.5
1919
go.opentelemetry.io/otel v1.27.0
@@ -65,7 +65,7 @@ require (
6565
github.com/modern-go/reflect2 v1.0.2 // indirect
6666
github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822 // indirect
6767
github.com/pkg/errors v0.9.1 // indirect
68-
github.com/prometheus/client_model v0.6.0 // indirect
68+
github.com/prometheus/client_model v0.6.1 // indirect
6969
github.com/prometheus/procfs v0.12.0 // indirect
7070
go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.27.0 // indirect
7171
go.opentelemetry.io/otel/metric v1.27.0 // indirect

go.sum

+4-4
Original file line numberDiff line numberDiff line change
@@ -109,10 +109,10 @@ github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZb
109109
github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
110110
github.com/prometheus/client_golang v1.19.1 h1:wZWJDwK+NameRJuPGDhlnFgx8e8HN3XHQeLaYJFJBOE=
111111
github.com/prometheus/client_golang v1.19.1/go.mod h1:mP78NwGzrVks5S2H6ab8+ZZGJLZUq1hoULYBAYBw1Ho=
112-
github.com/prometheus/client_model v0.6.0 h1:k1v3CzpSRUTrKMppY35TLwPvxHqBu0bYgxZzqGIgaos=
113-
github.com/prometheus/client_model v0.6.0/go.mod h1:NTQHnmxFpouOD0DpvP4XujX3CdOAGQPoaGhyTchlyt8=
114-
github.com/prometheus/common v0.53.0 h1:U2pL9w9nmJwJDa4qqLQ3ZaePJ6ZTwt7cMD3AG3+aLCE=
115-
github.com/prometheus/common v0.53.0/go.mod h1:BrxBKv3FWBIGXw89Mg1AeBq7FSyRzXWI3l3e7W3RN5U=
112+
github.com/prometheus/client_model v0.6.1 h1:ZKSh/rekM+n3CeS952MLRAdFwIKqeY8b62p8ais2e9E=
113+
github.com/prometheus/client_model v0.6.1/go.mod h1:OrxVMOVHjw3lKMa8+x6HeMGkHMQyHDk9E3jmP2AmGiY=
114+
github.com/prometheus/common v0.54.0 h1:ZlZy0BgJhTwVZUn7dLOkwCZHUkrAqd3WYtcFCWnM1D8=
115+
github.com/prometheus/common v0.54.0/go.mod h1:/TQgMJP5CuVYveyT7n/0Ix8yLNNXy9yRSkhnLTHPDIQ=
116116
github.com/prometheus/procfs v0.12.0 h1:jluTpSng7V9hY0O2R9DzzJHYb2xULk9VTR1V1R/k6Bo=
117117
github.com/prometheus/procfs v0.12.0/go.mod h1:pcuDEFsWDnvcgNzo4EEweacyhjeA9Zk3cnaOZAZEfOo=
118118
github.com/rogpeppe/go-internal v1.12.0 h1:exVL4IDcn6na9z1rAb56Vxr+CgyK3nn3O+epU5NdKM8=

site/content/how-to/monitoring/troubleshooting.md

+74
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,80 @@ docs: "DOCS-1419"
99

1010
This topic describes possible issues users might encounter when using NGINX Gateway Fabric. When possible, suggested workarounds are provided.
1111

12+
### General troubleshooting
13+
14+
When investigating a problem or requesting help, there are important data points that can be collected to help understand what issues may exist.
15+
16+
##### Resource status
17+
18+
To check the status of a resource, use `kubectl describe`. This example checks the status of the `coffee` HTTPRoute, which has an error:
19+
20+
```shell
21+
kubectl describe httproutes.gateway.networking.k8s.io coffee [-n namespace]
22+
```
23+
24+
```text
25+
...
26+
Status:
27+
Parents:
28+
Conditions:
29+
Last Transition Time: 2024-05-31T17:20:51Z
30+
Message: The route is accepted
31+
Observed Generation: 4
32+
Reason: Accepted
33+
Status: True
34+
Type: Accepted
35+
Last Transition Time: 2024-05-31T17:20:51Z
36+
Message: spec.rules[0].backendRefs[0].name: Not found: "bad-backend"
37+
Observed Generation: 4
38+
Reason: BackendNotFound
39+
Status: False
40+
Type: ResolvedRefs
41+
Controller Name: gateway.nginx.org/nginx-gateway-controller
42+
Parent Ref:
43+
Group: gateway.networking.k8s.io
44+
Kind: Gateway
45+
Name: gateway
46+
Namespace: default
47+
Section Name: http
48+
```
49+
50+
If a resource has errors relating to its configuration or relationship to other resources, they can likely be read in the status. The `ObservedGeneration` in the status should match the `ObservedGeneration` of the resource. Otherwise, this could mean that the resource hasn't been processed yet or that the status failed to update.
51+
52+
##### Events
53+
54+
Events created by NGINX Gateway Fabric or other Kubernetes components could indicate system or configuration issues. To see events:
55+
56+
```shell
57+
kubectl get events [-n namespace]
58+
```
59+
60+
For example, a warning event when the NginxGateway configuration CRD is deleted:
61+
62+
```text
63+
kubectl -n nginx-gateway get event
64+
LAST SEEN TYPE REASON OBJECT MESSAGE
65+
5s Warning ResourceDeleted nginxgateway/ngf-config NginxGateway configuration was deleted; using defaults
66+
```
67+
68+
##### Logs
69+
70+
Logs from the NGINX Gateway Fabric control plane and data plane can contain information that isn't available to status or events. These can include errors in processing or passing traffic.
71+
72+
To see logs for the control plane container:
73+
74+
```shell
75+
kubectl -n nginx-gateway logs <ngf-pod-name> -c nginx-gateway
76+
```
77+
78+
To see logs for the data plane container:
79+
80+
```shell
81+
kubectl -n nginx-gateway logs <ngf-pod-name> -c nginx
82+
```
83+
84+
You can see logs for a crashed or killed container by adding the `-p` flag to the above commands.
85+
1286
### NGINX fails to reload
1387

1488
#### Description

tests/go.mod

+2-2
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ require (
77
github.com/onsi/ginkgo/v2 v2.19.0
88
github.com/onsi/gomega v1.33.1
99
github.com/prometheus/client_golang v1.19.1
10-
github.com/prometheus/common v0.53.0
10+
github.com/prometheus/common v0.54.0
1111
github.com/tsenart/vegeta/v12 v12.11.1
1212
k8s.io/api v0.30.1
1313
k8s.io/apiextensions-apiserver v0.30.1
@@ -52,7 +52,7 @@ require (
5252
github.com/mxk/go-flowrate v0.0.0-20140419014527-cca7078d478f // indirect
5353
github.com/pkg/errors v0.9.1 // indirect
5454
github.com/pmezard/go-difflib v1.0.0 // indirect
55-
github.com/prometheus/client_model v0.6.0 // indirect
55+
github.com/prometheus/client_model v0.6.1 // indirect
5656
github.com/prometheus/procfs v0.12.0 // indirect
5757
github.com/rs/dnscache v0.0.0-20211102005908-e0241e321417 // indirect
5858
github.com/spf13/pflag v1.0.5 // indirect

tests/go.sum

+4-4
Original file line numberDiff line numberDiff line change
@@ -96,10 +96,10 @@ github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZb
9696
github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
9797
github.com/prometheus/client_golang v1.19.1 h1:wZWJDwK+NameRJuPGDhlnFgx8e8HN3XHQeLaYJFJBOE=
9898
github.com/prometheus/client_golang v1.19.1/go.mod h1:mP78NwGzrVks5S2H6ab8+ZZGJLZUq1hoULYBAYBw1Ho=
99-
github.com/prometheus/client_model v0.6.0 h1:k1v3CzpSRUTrKMppY35TLwPvxHqBu0bYgxZzqGIgaos=
100-
github.com/prometheus/client_model v0.6.0/go.mod h1:NTQHnmxFpouOD0DpvP4XujX3CdOAGQPoaGhyTchlyt8=
101-
github.com/prometheus/common v0.53.0 h1:U2pL9w9nmJwJDa4qqLQ3ZaePJ6ZTwt7cMD3AG3+aLCE=
102-
github.com/prometheus/common v0.53.0/go.mod h1:BrxBKv3FWBIGXw89Mg1AeBq7FSyRzXWI3l3e7W3RN5U=
99+
github.com/prometheus/client_model v0.6.1 h1:ZKSh/rekM+n3CeS952MLRAdFwIKqeY8b62p8ais2e9E=
100+
github.com/prometheus/client_model v0.6.1/go.mod h1:OrxVMOVHjw3lKMa8+x6HeMGkHMQyHDk9E3jmP2AmGiY=
101+
github.com/prometheus/common v0.54.0 h1:ZlZy0BgJhTwVZUn7dLOkwCZHUkrAqd3WYtcFCWnM1D8=
102+
github.com/prometheus/common v0.54.0/go.mod h1:/TQgMJP5CuVYveyT7n/0Ix8yLNNXy9yRSkhnLTHPDIQ=
103103
github.com/prometheus/procfs v0.12.0 h1:jluTpSng7V9hY0O2R9DzzJHYb2xULk9VTR1V1R/k6Bo=
104104
github.com/prometheus/procfs v0.12.0/go.mod h1:pcuDEFsWDnvcgNzo4EEweacyhjeA9Zk3cnaOZAZEfOo=
105105
github.com/rogpeppe/go-internal v1.11.0 h1:cWPaGQEPrBb5/AsnsZesgZZ9yb1OQ+GOISoDNXVBh4M=

0 commit comments

Comments
 (0)