Skip to content

Commit 0a9b6a5

Browse files
authored
Merge branch 'main' into tech-debt/telemetry-header
2 parents 0776f6e + b44b1a8 commit 0a9b6a5

26 files changed

+219
-50
lines changed

.github/workflows/build.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -170,7 +170,7 @@ jobs:
170170
fail-build: false
171171

172172
- name: Upload scan result to GitHub Security tab
173-
uses: github/codeql-action/upload-sarif@eb055d739abdc2e8de2e5f4ba1a8b246daa779aa # v3.26.0
173+
uses: github/codeql-action/upload-sarif@429e1977040da7a23b6822b13c129cd1ba93dbb2 # v3.26.2
174174
continue-on-error: true
175175
with:
176176
sarif_file: ${{ steps.scan.outputs.sarif }}

.github/workflows/ci.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -147,7 +147,7 @@ jobs:
147147
.github/.cache/buster-for-binary
148148
149149
- name: Create/Update Draft
150-
uses: lucacome/draft-release@8a63d32c79a171ae6048e614a8988f0ac3ed56d4 # v1.1.0
150+
uses: lucacome/draft-release@5d29432a46bff6c122cd4b07a1fb94e1bb158d34 # v1.1.1
151151
with:
152152
minor-label: "enhancement"
153153
major-label: "change"

.github/workflows/codeql-analysis.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,7 @@ jobs:
5252

5353
# Initializes the CodeQL tools for scanning.
5454
- name: Initialize CodeQL
55-
uses: github/codeql-action/init@eb055d739abdc2e8de2e5f4ba1a8b246daa779aa # v3.26.0
55+
uses: github/codeql-action/init@429e1977040da7a23b6822b13c129cd1ba93dbb2 # v3.26.2
5656
with:
5757
languages: ${{ matrix.language }}
5858
build-mode: ${{ matrix.build-mode }}
@@ -64,6 +64,6 @@ jobs:
6464
# queries: security-extended,security-and-quality
6565

6666
- name: Perform CodeQL Analysis
67-
uses: github/codeql-action/analyze@eb055d739abdc2e8de2e5f4ba1a8b246daa779aa # v3.26.0
67+
uses: github/codeql-action/analyze@429e1977040da7a23b6822b13c129cd1ba93dbb2 # v3.26.2
6868
with:
6969
category: "/language:${{matrix.language}}"

.github/workflows/docs-build-push.yml

Lines changed: 18 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,12 +18,29 @@ on:
1818
paths:
1919
- "site/**"
2020

21+
concurrency:
22+
group: ${{ github.ref_name }}-docs-push
23+
cancel-in-progress: true
24+
2125
permissions:
2226
contents: read
2327

2428
jobs:
29+
vars:
30+
runs-on: ubuntu-22.04
31+
outputs:
32+
azure_creds: ${{ steps.vars.outputs.defined }}
33+
steps:
34+
- name: Check if variable is set
35+
id: vars
36+
env:
37+
AZURE_CREDENTIALS: ${{ secrets.AZURE_CREDENTIALS_DOCS }}
38+
if: "${{ env.AZURE_CREDENTIALS != '' }}"
39+
run: echo "defined=true" >> $GITHUB_OUTPUT
40+
2541
call-docs-build-push:
26-
if: ${{ github.event.repository.fork == false }}
42+
needs: [vars]
43+
if: ${{ github.event.repository.fork == false && needs.vars.outputs.azure_creds == 'true' }}
2744
uses: nginxinc/docs-actions/.github/workflows/docs-build-push.yml@03a9a3808fcb77cd0c19d7fa5d59b25565dd1d6d # v1.0.2
2845
permissions:
2946
pull-requests: write # needed to write preview url comment to PR

.github/workflows/release-pr.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ jobs:
3535

3636
- name: Get Release Notes
3737
id: notes
38-
uses: lucacome/draft-release@8a63d32c79a171ae6048e614a8988f0ac3ed56d4 # v1.1.0
38+
uses: lucacome/draft-release@5d29432a46bff6c122cd4b07a1fb94e1bb158d34 # v1.1.1
3939
with:
4040
config-path: .github/release-notes.yml
4141
dry-run: true

.github/workflows/scorecards.yml

Lines changed: 1 addition & 1 deletion
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@eb055d739abdc2e8de2e5f4ba1a8b246daa779aa # v3.26.0
63+
uses: github/codeql-action/upload-sarif@429e1977040da7a23b6822b13c129cd1ba93dbb2 # v3.26.2
6464
with:
6565
sarif_file: results.sarif

build/Dockerfile

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
# syntax=docker/dockerfile:1.8
2-
FROM golang:1.22 AS builder
2+
FROM golang:1.23 AS builder
33

44
WORKDIR /go/src/github.com/nginxinc/nginx-gateway-fabric
55

@@ -9,7 +9,7 @@ RUN go mod download
99
COPY . /go/src/github.com/nginxinc/nginx-gateway-fabric
1010
RUN make build
1111

12-
FROM golang:1.22 AS ca-certs-provider
12+
FROM golang:1.23 AS ca-certs-provider
1313

1414
FROM alpine:3.20 AS capabilizer
1515
RUN apk add --no-cache libcap

debug/Dockerfile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
# syntax=docker/dockerfile:1.8
22
# This Dockerfile builds an image with the dlv debugger. See the debugging guide in the developer docs for details
33
# on how to use it.
4-
FROM golang:1.22-alpine AS builder
4+
FROM golang:1.23-alpine AS builder
55

66
RUN go install github.com/go-delve/delve/cmd/dlv@latest
77

go.mod

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ require (
1313
github.com/nginxinc/telemetry-exporter v0.1.1
1414
github.com/onsi/ginkgo/v2 v2.20.0
1515
github.com/onsi/gomega v1.34.1
16-
github.com/prometheus/client_golang v1.19.1
16+
github.com/prometheus/client_golang v1.20.0
1717
github.com/prometheus/common v0.55.0
1818
github.com/spf13/cobra v1.8.1
1919
github.com/spf13/pflag v1.0.5
@@ -32,7 +32,7 @@ require (
3232
require (
3333
github.com/beorn7/perks v1.0.1 // indirect
3434
github.com/cenkalti/backoff/v4 v4.3.0 // indirect
35-
github.com/cespare/xxhash/v2 v2.2.0 // indirect
35+
github.com/cespare/xxhash/v2 v2.3.0 // indirect
3636
github.com/davecgh/go-spew v1.1.1 // indirect
3737
github.com/emicklei/go-restful/v3 v3.12.0 // indirect
3838
github.com/evanphx/json-patch v5.7.0+incompatible // indirect
@@ -59,6 +59,7 @@ require (
5959
github.com/inconshreveable/mousetrap v1.1.0 // indirect
6060
github.com/josharian/intern v1.0.0 // indirect
6161
github.com/json-iterator/go v1.1.12 // indirect
62+
github.com/klauspost/compress v1.17.9 // indirect
6263
github.com/mailru/easyjson v0.7.7 // indirect
6364
github.com/mattn/go-colorable v0.1.13 // indirect
6465
github.com/mattn/go-isatty v0.0.20 // indirect

go.sum

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,8 @@ github.com/beorn7/perks v1.0.1 h1:VlbKKnNfV8bJzeqoa4cOKqO6bYr3WgKZxO8Z16+hsOM=
44
github.com/beorn7/perks v1.0.1/go.mod h1:G2ZrVWU2WbWT9wwq4/hrbKbnv/1ERSJQ0ibhJ6rlkpw=
55
github.com/cenkalti/backoff/v4 v4.3.0 h1:MyRJ/UdXutAwSAT+s3wNd7MfTIcy71VQueUuFK343L8=
66
github.com/cenkalti/backoff/v4 v4.3.0/go.mod h1:Y3VNntkOUPxTVeUxJ/G5vcM//AlwfmyYozVcomhLiZE=
7-
github.com/cespare/xxhash/v2 v2.2.0 h1:DC2CZ1Ep5Y4k3ZQ899DldepgrayRUGE6BBZ/cd9Cj44=
8-
github.com/cespare/xxhash/v2 v2.2.0/go.mod h1:VGX0DQ3Q6kWi7AoAeZDth3/j3BFtOZR5XLFGgcrjCOs=
7+
github.com/cespare/xxhash/v2 v2.3.0 h1:UL815xU9SqsFlibzuggzjXhog7bL6oX9BbNZnL2UFvs=
8+
github.com/cespare/xxhash/v2 v2.3.0/go.mod h1:VGX0DQ3Q6kWi7AoAeZDth3/j3BFtOZR5XLFGgcrjCOs=
99
github.com/cpuguy83/go-md2man/v2 v2.0.4/go.mod h1:tgQtvFlXSQOSOSIRvRPT7W67SCa46tRHOmNcaadrF8o=
1010
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
1111
github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c=
@@ -74,13 +74,17 @@ github.com/json-iterator/go v1.1.12 h1:PV8peI4a0ysnczrg+LtxykD8LfKY9ML6u2jnxaEnr
7474
github.com/json-iterator/go v1.1.12/go.mod h1:e30LSqwooZae/UwlEbR2852Gd8hjQvJoHmT4TnhNGBo=
7575
github.com/kisielk/errcheck v1.5.0/go.mod h1:pFxgyoBC7bSaBwPgfKdkLd5X25qrDl4LWUI2bnpBCr8=
7676
github.com/kisielk/gotool v1.0.0/go.mod h1:XhKaO+MFFWcvkIS/tQcRk01m1F5IRFswLeQ+oQHNcck=
77+
github.com/klauspost/compress v1.17.9 h1:6KIumPrER1LHsvBVuDa0r5xaG0Es51mhhB9BQB2qeMA=
78+
github.com/klauspost/compress v1.17.9/go.mod h1:Di0epgTjJY877eYKx5yC51cX2A2Vl2ibi7bDH9ttBbw=
7779
github.com/kr/pretty v0.2.0/go.mod h1:ipq/a2n7PKx3OHsz4KJII5eveXtPO4qwEXGdVfWzfnI=
7880
github.com/kr/pretty v0.3.1 h1:flRD4NNwYAUpkphVc1HcthR4KEIFJ65n8Mw5qdRn3LE=
7981
github.com/kr/pretty v0.3.1/go.mod h1:hoEshYVHaxMs3cyo3Yncou5ZscifuDolrwPKZanG3xk=
8082
github.com/kr/pty v1.1.1/go.mod h1:pFQYn66WHrOpPYNljwOMqo10TkYh1fy3cYio2l3bCsQ=
8183
github.com/kr/text v0.1.0/go.mod h1:4Jbv+DJW3UT/LiOwJeYQe1efqtUx/iVham/4vfdArNI=
8284
github.com/kr/text v0.2.0 h1:5Nx0Ya0ZqY2ygV366QzturHI13Jq95ApcVaJBhpS+AY=
8385
github.com/kr/text v0.2.0/go.mod h1:eLer722TekiGuMkidMxC/pM04lWEeraHUUmBw8l2grE=
86+
github.com/kylelemons/godebug v1.1.0 h1:RPNrshWIDI6G2gRW9EHilWtl7Z6Sb1BR0xunSBf0SNc=
87+
github.com/kylelemons/godebug v1.1.0/go.mod h1:9/0rRGxNHcop5bhtWyNeEfOS8JIWk580+fNqagV/RAw=
8488
github.com/mailru/easyjson v0.7.7 h1:UGYAvKxe3sBsEDzO8ZeWOSlIQfWFlxbzLZe7hwFURr0=
8589
github.com/mailru/easyjson v0.7.7/go.mod h1:xzfreul335JAWq5oZzymOObrkdz5UnU4kGfJJLY9Nlc=
8690
github.com/mattn/go-colorable v0.1.13 h1:fFA4WZxdEF4tXPZVKMLwD8oUnCTTo08duU7wxecdEvA=
@@ -116,8 +120,8 @@ github.com/pkg/errors v0.9.1 h1:FEBLx1zS214owpjy7qsBeixbURkuhQAwrK5UwLGTwt4=
116120
github.com/pkg/errors v0.9.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0=
117121
github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM=
118122
github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
119-
github.com/prometheus/client_golang v1.19.1 h1:wZWJDwK+NameRJuPGDhlnFgx8e8HN3XHQeLaYJFJBOE=
120-
github.com/prometheus/client_golang v1.19.1/go.mod h1:mP78NwGzrVks5S2H6ab8+ZZGJLZUq1hoULYBAYBw1Ho=
123+
github.com/prometheus/client_golang v1.20.0 h1:jBzTZ7B099Rg24tny+qngoynol8LtVYlA2bqx3vEloI=
124+
github.com/prometheus/client_golang v1.20.0/go.mod h1:PIEt8X02hGcP8JWbeHyeZ53Y/jReSnHgO035n//V5WE=
121125
github.com/prometheus/client_model v0.6.1 h1:ZKSh/rekM+n3CeS952MLRAdFwIKqeY8b62p8ais2e9E=
122126
github.com/prometheus/client_model v0.6.1/go.mod h1:OrxVMOVHjw3lKMa8+x6HeMGkHMQyHDk9E3jmP2AmGiY=
123127
github.com/prometheus/common v0.55.0 h1:KEi6DK7lXW/m7Ig5i47x0vRzuBsHuvJdi5ee6Y3G1dc=

internal/framework/controller/controller_suite_test.go

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@ import (
88
)
99

1010
func TestControllers(t *testing.T) {
11+
t.Parallel()
1112
RegisterFailHandler(Fail)
1213
RunSpecs(t, "Controller Suite")
1314
}

internal/framework/controller/filter/filter_test.go

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@ import (
88
)
99

1010
func TestCreateSingleResourceFilter(t *testing.T) {
11+
t.Parallel()
1112
targetNsName := types.NamespacedName{Namespace: "test", Name: "resource"}
1213

1314
g := NewWithT(t)
@@ -50,7 +51,9 @@ func TestCreateSingleResourceFilter(t *testing.T) {
5051
}
5152

5253
for _, test := range tests {
54+
test := test
5355
t.Run(test.name, func(t *testing.T) {
56+
t.Parallel()
5457
g := NewWithT(t)
5558
shouldProcess, msg := filter(test.nsname)
5659
g.Expect(shouldProcess).To(Equal(test.expectedShouldProcess))

internal/framework/controller/index/endpointslice_test.go

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@ import (
1111
)
1212

1313
func TestServiceNameIndexFunc(t *testing.T) {
14+
t.Parallel()
1415
testcases := []struct {
1516
msg string
1617
obj client.Object
@@ -42,13 +43,19 @@ func TestServiceNameIndexFunc(t *testing.T) {
4243
}
4344

4445
for _, tc := range testcases {
45-
g := NewWithT(t)
46-
output := ServiceNameIndexFunc(tc.obj)
47-
g.Expect(output).To(Equal(tc.expOutput))
46+
tc := tc
47+
t.Run(tc.msg, func(t *testing.T) {
48+
t.Parallel()
49+
g := NewWithT(t)
50+
51+
output := ServiceNameIndexFunc(tc.obj)
52+
g.Expect(output).To(Equal(tc.expOutput))
53+
})
4854
}
4955
}
5056

5157
func TestServiceNameIndexFuncPanics(t *testing.T) {
58+
t.Parallel()
5259
defer func() {
5360
g := NewWithT(t)
5461
g.Expect(recover()).ToNot(BeNil())

internal/framework/controller/predicate/annotation_test.go

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@ import (
1010
)
1111

1212
func TestAnnotationPredicate_Create(t *testing.T) {
13+
t.Parallel()
1314
annotation := "test"
1415

1516
tests := []struct {
@@ -58,7 +59,9 @@ func TestAnnotationPredicate_Create(t *testing.T) {
5859
p := AnnotationPredicate{Annotation: annotation}
5960

6061
for _, test := range tests {
62+
test := test
6163
t.Run(test.name, func(t *testing.T) {
64+
t.Parallel()
6265
g := NewWithT(t)
6366
update := p.Create(test.event)
6467
g.Expect(update).To(Equal(test.expUpdate))
@@ -67,6 +70,7 @@ func TestAnnotationPredicate_Create(t *testing.T) {
6770
}
6871

6972
func TestAnnotationPredicate_Update(t *testing.T) {
73+
t.Parallel()
7074
annotation := "test"
7175

7276
tests := []struct {
@@ -211,7 +215,9 @@ func TestAnnotationPredicate_Update(t *testing.T) {
211215
p := AnnotationPredicate{Annotation: annotation}
212216

213217
for _, test := range tests {
218+
test := test
214219
t.Run(test.name, func(t *testing.T) {
220+
t.Parallel()
215221
g := NewWithT(t)
216222
update := p.Update(test.event)
217223
g.Expect(update).To(Equal(test.expUpdate))

internal/framework/controller/predicate/gatewayclass_test.go

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ import (
99
)
1010

1111
func TestGatewayClassPredicate(t *testing.T) {
12+
t.Parallel()
1213
g := NewWithT(t)
1314

1415
p := GatewayClassPredicate{ControllerName: "nginx-ctlr"}

internal/framework/controller/predicate/service_test.go

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@ import (
1313
)
1414

1515
func TestServicePortsChangedPredicate_Update(t *testing.T) {
16+
t.Parallel()
1617
testcases := []struct {
1718
objectOld client.Object
1819
objectNew client.Object
@@ -227,7 +228,9 @@ func TestServicePortsChangedPredicate_Update(t *testing.T) {
227228
p := ServicePortsChangedPredicate{}
228229

229230
for _, tc := range testcases {
231+
tc := tc
230232
t.Run(tc.msg, func(t *testing.T) {
233+
t.Parallel()
231234
g := NewWithT(t)
232235
update := p.Update(event.UpdateEvent{
233236
ObjectOld: tc.objectOld,
@@ -240,6 +243,7 @@ func TestServicePortsChangedPredicate_Update(t *testing.T) {
240243
}
241244

242245
func TestServicePortsChangedPredicate(t *testing.T) {
246+
t.Parallel()
243247
g := NewWithT(t)
244248

245249
p := GatewayServicePredicate{}
@@ -250,6 +254,7 @@ func TestServicePortsChangedPredicate(t *testing.T) {
250254
}
251255

252256
func TestGatewayServicePredicate_Update(t *testing.T) {
257+
t.Parallel()
253258
testcases := []struct {
254259
objectOld client.Object
255260
objectNew client.Object
@@ -440,7 +445,9 @@ func TestGatewayServicePredicate_Update(t *testing.T) {
440445
p := GatewayServicePredicate{NSName: types.NamespacedName{Namespace: "nginx-gateway", Name: "nginx"}}
441446

442447
for _, tc := range testcases {
448+
tc := tc
443449
t.Run(tc.msg, func(t *testing.T) {
450+
t.Parallel()
444451
g := NewWithT(t)
445452
update := p.Update(event.UpdateEvent{
446453
ObjectOld: tc.objectOld,
@@ -453,6 +460,7 @@ func TestGatewayServicePredicate_Update(t *testing.T) {
453460
}
454461

455462
func TestGatewayServicePredicate(t *testing.T) {
463+
t.Parallel()
456464
g := NewWithT(t)
457465

458466
p := GatewayServicePredicate{}

internal/framework/controller/register_test.go

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@ import (
2727
)
2828

2929
func TestRegister(t *testing.T) {
30+
t.Parallel()
3031
type fakes struct {
3132
mgr *controllerfakes.FakeManager
3233
indexer *controllerfakes.FakeFieldIndexer
@@ -120,7 +121,9 @@ func TestRegister(t *testing.T) {
120121
}
121122

122123
for _, test := range tests {
124+
test := test
123125
t.Run(test.msg, func(t *testing.T) {
126+
t.Parallel()
124127
g := NewWithT(t)
125128

126129
newReconciler := func(c controller.ReconcilerConfig) *controller.Reconciler {

internal/framework/status/conditions_test.go

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ import (
99
)
1010

1111
func TestConditionsEqual(t *testing.T) {
12+
t.Parallel()
1213
getDefaultConds := func() []v1.Condition {
1314
return []v1.Condition{
1415
{
@@ -110,7 +111,9 @@ func TestConditionsEqual(t *testing.T) {
110111
}
111112

112113
for _, test := range tests {
114+
test := test
113115
t.Run(test.name, func(t *testing.T) {
116+
t.Parallel()
114117
g := NewWithT(t)
115118
equal := ConditionsEqual(test.prevConds, test.curConds)
116119
g.Expect(equal).To(Equal(test.expEqual))

internal/framework/status/status_suite_test.go

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@ import (
88
)
99

1010
func TestStatus(t *testing.T) {
11+
t.Parallel()
1112
RegisterFailHandler(Fail)
1213
RunSpecs(t, "Status Suite")
1314
}

internal/framework/status/updater_retry_test.go

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@ import (
1919
)
2020

2121
func TestNewRetryUpdateFunc(t *testing.T) {
22+
t.Parallel()
2223
tests := []struct {
2324
getReturns error
2425
updateReturns error
@@ -70,7 +71,9 @@ func TestNewRetryUpdateFunc(t *testing.T) {
7071
}
7172

7273
for _, test := range tests {
74+
test := test
7375
t.Run(test.name, func(t *testing.T) {
76+
t.Parallel()
7477
g := NewWithT(t)
7578

7679
fakeStatusUpdater := &statusfakes.FakeK8sUpdater{}

0 commit comments

Comments
 (0)