Skip to content

Commit 8b73afb

Browse files
authored
Merge branch 'main' into tests/nfr-tests-edge
2 parents 3b0a101 + d54377f commit 8b73afb

File tree

119 files changed

+2582
-2341
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

119 files changed

+2582
-2341
lines changed

.github/workflows/build.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -99,7 +99,7 @@ jobs:
9999

100100
- name: Docker meta
101101
id: meta
102-
uses: docker/metadata-action@8e5442c4ef9f78752691e2d8f8d19755c6f78e81 # v5.5.1
102+
uses: docker/metadata-action@369eb591f429131d6889c46b94e711f089e6ca96 # v5.6.1
103103
with:
104104
context: ${{ inputs.tag != '' && 'git' || 'workflow' }}
105105
images: |
@@ -163,15 +163,15 @@ jobs:
163163
164164
- name: Scan SBOM
165165
id: scan
166-
uses: anchore/scan-action@f2ba85e044c8f5e5014c9a539328a9c78d3bfa49 # v5.2.1
166+
uses: anchore/scan-action@869c549e657a088dc0441b08ce4fc0ecdac2bb65 # v5.3.0
167167
with:
168168
sbom: "sbom-${{ inputs.image }}.json"
169169
only-fixed: true
170170
add-cpes-if-none: true
171171
fail-build: false
172172

173173
- name: Upload scan result to GitHub Security tab
174-
uses: github/codeql-action/upload-sarif@396bb3e45325a47dd9ef434068033c6d5bb0d11a # v3.27.3
174+
uses: github/codeql-action/upload-sarif@f09c1c0a94de965c15400f5634aa42fac8fb8f88 # v3.27.5
175175
continue-on-error: true
176176
with:
177177
sarif_file: ${{ steps.scan.outputs.sarif }}

.github/workflows/ci.yml

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -59,7 +59,7 @@ jobs:
5959
- name: Output Variables
6060
id: vars
6161
run: |
62-
K8S_KIND_VERSION=v1.31.1 # renovate: datasource=docker depName=kindest/node
62+
K8S_KIND_VERSION=v1.31.2 # renovate: datasource=docker depName=kindest/node
6363
echo "go_path=$(go env GOPATH)" >> $GITHUB_OUTPUT
6464
echo "min_k8s_version=v1.25.16" >> $GITHUB_OUTPUT
6565
echo "k8s_latest=${K8S_KIND_VERSION}" >> $GITHUB_OUTPUT
@@ -94,7 +94,7 @@ jobs:
9494
run: make unit-test
9595

9696
- name: Upload coverage reports to Codecov
97-
uses: codecov/codecov-action@b9fd7d16f6d7d1b5d2bec1a2887e65ceed900238 # v4.6.0
97+
uses: codecov/codecov-action@015f24e6818733317a2da2edd6290ab26238649a # v5.0.7
9898
with:
9999
token: ${{ secrets.CODECOV_TOKEN }}
100100

@@ -122,7 +122,7 @@ jobs:
122122
run: npm --prefix ${{ github.workspace }}/internal/mode/static/nginx/modules install-ci-test
123123

124124
- name: Upload coverage reports to Codecov
125-
uses: codecov/codecov-action@b9fd7d16f6d7d1b5d2bec1a2887e65ceed900238 # v4.6.0
125+
uses: codecov/codecov-action@015f24e6818733317a2da2edd6290ab26238649a # v5.0.7
126126
with:
127127
token: ${{ secrets.CODECOV_TOKEN }}
128128

@@ -161,7 +161,7 @@ jobs:
161161
if: ${{ github.event_name == 'push' && github.ref != 'refs/heads/main' }}
162162

163163
- name: Download Syft
164-
uses: anchore/sbom-action/download-syft@fc46e51fd3cb168ffb36c6d1915723c47db58abb # v0.17.7
164+
uses: anchore/sbom-action/download-syft@55dc4ee22412511ee8c3142cbea40418e6cec693 # v0.17.8
165165
if: github.ref_type == 'tag'
166166

167167
- name: Install Cosign
@@ -171,7 +171,7 @@ jobs:
171171
- name: Build binary
172172
uses: goreleaser/goreleaser-action@9ed2f89a662bf1735a48bc8557fd212fa902bebf # v6.1.0
173173
with:
174-
version: v2.4.4 # renovate: datasource=github-tags depName=goreleaser/goreleaser
174+
version: v2.4.7 # renovate: datasource=github-tags depName=goreleaser/goreleaser
175175
args: ${{ github.ref_type == 'tag' && 'release' || 'build --snapshot' }} --clean
176176
env:
177177
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
@@ -238,6 +238,7 @@ jobs:
238238
with:
239239
image: ${{ matrix.image }}
240240
k8s-version: ${{ matrix.k8s-version }}
241+
secrets: inherit
241242
permissions:
242243
contents: read
243244

@@ -259,6 +260,7 @@ jobs:
259260
image: ${{ matrix.image }}
260261
k8s-version: ${{ matrix.k8s-version }}
261262
enable-experimental: ${{ matrix.enable-experimental }}
263+
secrets: inherit
262264
permissions:
263265
contents: write
264266

.github/workflows/codeql-analysis.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -44,13 +44,13 @@ jobs:
4444

4545
# Initializes the CodeQL tools for scanning.
4646
- name: Initialize CodeQL
47-
uses: github/codeql-action/init@396bb3e45325a47dd9ef434068033c6d5bb0d11a # v3.27.3
47+
uses: github/codeql-action/init@f09c1c0a94de965c15400f5634aa42fac8fb8f88 # v3.27.5
4848
with:
4949
languages: ${{ matrix.language }}
5050
build-mode: ${{ matrix.build-mode }}
5151
queries: security-and-quality
5252

5353
- name: Perform CodeQL Analysis
54-
uses: github/codeql-action/analyze@396bb3e45325a47dd9ef434068033c6d5bb0d11a # v3.27.3
54+
uses: github/codeql-action/analyze@f09c1c0a94de965c15400f5634aa42fac8fb8f88 # v3.27.5
5555
with:
5656
category: "/language:${{matrix.language}}"

.github/workflows/conformance.yml

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@ jobs:
2424
conformance-tests:
2525
name: Run Tests
2626
runs-on: ubuntu-24.04
27+
if: ${{ !github.event.pull_request.head.repo.fork || inputs.image != 'plus' }}
2728
permissions:
2829
contents: write # needed for uploading release artifacts
2930
env:
@@ -47,7 +48,7 @@ jobs:
4748

4849
- name: NGF Docker meta
4950
id: ngf-meta
50-
uses: docker/metadata-action@8e5442c4ef9f78752691e2d8f8d19755c6f78e81 # v5.5.1
51+
uses: docker/metadata-action@369eb591f429131d6889c46b94e711f089e6ca96 # v5.6.1
5152
with:
5253
images: |
5354
name=ghcr.io/nginxinc/nginx-gateway-fabric
@@ -60,7 +61,7 @@ jobs:
6061
6162
- name: NGINX Docker meta
6263
id: nginx-meta
63-
uses: docker/metadata-action@8e5442c4ef9f78752691e2d8f8d19755c6f78e81 # v5.5.1
64+
uses: docker/metadata-action@369eb591f429131d6889c46b94e711f089e6ca96 # v5.6.1
6465
with:
6566
images: |
6667
name=ghcr.io/nginxinc/nginx-gateway-fabric/${{ inputs.image == 'plus' && 'nginx-plus' || inputs.image }}
@@ -82,7 +83,7 @@ jobs:
8283
- name: Build binary
8384
uses: goreleaser/goreleaser-action@9ed2f89a662bf1735a48bc8557fd212fa902bebf # v6.1.0
8485
with:
85-
version: v2.4.4 # renovate: datasource=github-tags depName=goreleaser/goreleaser
86+
version: v2.4.7 # renovate: datasource=github-tags depName=goreleaser/goreleaser
8687
args: build --single-target --snapshot --clean
8788
env:
8889
TELEMETRY_ENDPOINT: "" # disables sending telemetry
@@ -135,6 +136,12 @@ jobs:
135136
kind create cluster --name ${{ github.run_id }} --image=kindest/node:${{ inputs.k8s-version }}
136137
kind load docker-image ${{ join(fromJSON(steps.ngf-meta.outputs.json).tags, ' ') }} ${{ join(fromJSON(steps.nginx-meta.outputs.json).tags, ' ') }} --name ${{ github.run_id }}
137138
139+
- name: Setup license file for plus
140+
if: ${{ inputs.image == 'plus' }}
141+
env:
142+
PLUS_LICENSE: ${{ secrets.JWT_PLUS_REGISTRY }}
143+
run: echo "${PLUS_LICENSE}" > license.jwt
144+
138145
- name: Setup conformance tests
139146
run: |
140147
ngf_prefix=ghcr.io/nginxinc/nginx-gateway-fabric

.github/workflows/dependency-review.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,6 @@ jobs:
1515
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
1616

1717
- name: "Dependency Review"
18-
uses: actions/dependency-review-action@4081bf99e2866ebe428fc0477b69eb4fcda7220a # v4.4.0
18+
uses: actions/dependency-review-action@3b139cfc5fae8b618d3eae3675e383bb1769c019 # v4.5.0
1919
with:
2020
config-file: "nginxinc/k8s-common/dependency-review-config.yml@main"

.github/workflows/functional.yml

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@ jobs:
2121
functional-tests:
2222
name: Run Tests
2323
runs-on: ubuntu-24.04
24+
if: ${{ !github.event.pull_request.head.repo.fork || inputs.image != 'plus' }}
2425
env:
2526
DOCKER_BUILD_SUMMARY: false
2627
steps:
@@ -42,7 +43,7 @@ jobs:
4243

4344
- name: NGF Docker meta
4445
id: ngf-meta
45-
uses: docker/metadata-action@8e5442c4ef9f78752691e2d8f8d19755c6f78e81 # v5.5.1
46+
uses: docker/metadata-action@369eb591f429131d6889c46b94e711f089e6ca96 # v5.6.1
4647
with:
4748
images: |
4849
name=ghcr.io/nginxinc/nginx-gateway-fabric
@@ -55,7 +56,7 @@ jobs:
5556
5657
- name: NGINX Docker meta
5758
id: nginx-meta
58-
uses: docker/metadata-action@8e5442c4ef9f78752691e2d8f8d19755c6f78e81 # v5.5.1
59+
uses: docker/metadata-action@369eb591f429131d6889c46b94e711f089e6ca96 # v5.6.1
5960
with:
6061
images: |
6162
name=ghcr.io/nginxinc/nginx-gateway-fabric/${{ inputs.image == 'plus' && 'nginx-plus' || inputs.image }}
@@ -69,7 +70,7 @@ jobs:
6970
- name: Build binary
7071
uses: goreleaser/goreleaser-action@9ed2f89a662bf1735a48bc8557fd212fa902bebf # v6.1.0
7172
with:
72-
version: v2.4.4 # renovate: datasource=github-tags depName=goreleaser/goreleaser
73+
version: v2.4.7 # renovate: datasource=github-tags depName=goreleaser/goreleaser
7374
args: build --single-target --snapshot --clean
7475
env:
7576
TELEMETRY_ENDPOINT: otel-collector-opentelemetry-collector.collector.svc.cluster.local:4317
@@ -100,6 +101,12 @@ jobs:
100101
NGINX_CONF_DIR=internal/mode/static/nginx/conf
101102
BUILD_AGENT=gha
102103
104+
- name: Setup license file for plus
105+
if: ${{ inputs.image == 'plus' }}
106+
env:
107+
PLUS_LICENSE: ${{ secrets.JWT_PLUS_REGISTRY }}
108+
run: echo "${PLUS_LICENSE}" > license.jwt
109+
103110
- name: Install cloud-provider-kind
104111
run: |
105112
CLOUD_PROVIDER_KIND_VERSION=v0.4.0 # renovate: datasource=github-tags depName=kubernetes-sigs/cloud-provider-kind

.github/workflows/helm.yml

Lines changed: 18 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ jobs:
1717
helm-tests-local:
1818
name: Helm Tests Local
1919
runs-on: ubuntu-24.04
20-
if: ${{ github.event_name != 'schedule' }}
20+
if: ${{ github.event_name != 'schedule' && (!github.event.pull_request.head.repo.fork || inputs.image != 'plus') }}
2121
steps:
2222
- name: Checkout Repository
2323
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
@@ -35,7 +35,7 @@ jobs:
3535

3636
- name: NGF Docker meta
3737
id: ngf-meta
38-
uses: docker/metadata-action@8e5442c4ef9f78752691e2d8f8d19755c6f78e81 # v5.5.1
38+
uses: docker/metadata-action@369eb591f429131d6889c46b94e711f089e6ca96 # v5.6.1
3939
with:
4040
images: |
4141
name=ghcr.io/nginxinc/nginx-gateway-fabric
@@ -48,7 +48,7 @@ jobs:
4848
4949
- name: NGINX Docker meta
5050
id: nginx-meta
51-
uses: docker/metadata-action@8e5442c4ef9f78752691e2d8f8d19755c6f78e81 # v5.5.1
51+
uses: docker/metadata-action@369eb591f429131d6889c46b94e711f089e6ca96 # v5.6.1
5252
with:
5353
images: |
5454
name=ghcr.io/nginxinc/nginx-gateway-fabric/${{ inputs.image == 'plus' && 'nginx-plus' || inputs.image }}
@@ -98,6 +98,15 @@ jobs:
9898
kind create cluster --name ${{ github.run_id }} --image=kindest/node:${{ inputs.k8s-version }}
9999
kind load docker-image ${{ join(fromJSON(steps.ngf-meta.outputs.json).tags, ' ') }} ${{ join(fromJSON(steps.nginx-meta.outputs.json).tags, ' ') }} --name ${{ github.run_id }}
100100
kubectl kustomize config/crd/gateway-api/standard | kubectl apply -f -
101+
kubectl create namespace nginx-gateway
102+
103+
- name: Create plus secret
104+
if: ${{ inputs.image == 'plus' }}
105+
env:
106+
PLUS_LICENSE: ${{ secrets.JWT_PLUS_REGISTRY }}
107+
run: |
108+
echo "${PLUS_LICENSE}" > license.jwt
109+
kubectl create secret generic nplus-license --from-file license.jwt -n nginx-gateway
101110
102111
- name: Set up Python
103112
uses: actions/setup-python@0b93645e9fea7318ecaed2b359559ac225c90a2b # v5.3.0
@@ -110,7 +119,7 @@ jobs:
110119

111120
- name: Install Chart
112121
run: |
113-
ct install --config .ct.yaml --helm-extra-set-args="--set=nginxGateway.image.tag=${{ steps.ngf-meta.outputs.version }} \
122+
ct install --config .ct.yaml --namespace nginx-gateway --helm-extra-set-args="--set=nginxGateway.image.tag=${{ steps.ngf-meta.outputs.version }} \
114123
--set=nginx.image.repository=ghcr.io/nginxinc/nginx-gateway-fabric/nginx${{ inputs.image == 'plus' && '-plus' || ''}} \
115124
--set=nginx.plus=${{ inputs.image == 'plus' }} \
116125
--set=nginx.image.tag=${{ steps.nginx-meta.outputs.version }} \
@@ -143,10 +152,14 @@ jobs:
143152
kubectl kustomize config/crd/gateway-api/standard | kubectl apply -f -
144153
kubectl create namespace nginx-gateway
145154
146-
- name: Create k8s secret
155+
- name: Create plus secrets
147156
if: ${{ inputs.image == 'plus' }}
157+
env:
158+
PLUS_LICENSE: ${{ secrets.JWT_PLUS_REGISTRY }}
148159
run: |
160+
echo "${PLUS_LICENSE}" > license.jwt
149161
kubectl create secret docker-registry nginx-plus-registry-secret --docker-server=private-registry.nginx.com --docker-username=${{ secrets.JWT_PLUS_REGISTRY }} --docker-password=none -n nginx-gateway
162+
kubectl create secret generic nplus-license --from-file license.jwt -n nginx-gateway
150163
151164
- name: Set up Python
152165
uses: actions/setup-python@0b93645e9fea7318ecaed2b359559ac225c90a2b # v5.3.0

.github/workflows/lint.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@ jobs:
4040
uses: golangci/golangci-lint-action@971e284b6050e8a5849b72094c50ab08da042db8 # v6.1.1
4141
with:
4242
working-directory: ${{ matrix.directory }}
43-
version: v1.61.0 # renovate: datasource=github-tags depName=golangci/golangci-lint
43+
version: v1.62.0 # renovate: datasource=github-tags depName=golangci/golangci-lint
4444

4545
njs-lint:
4646
name: NJS Lint
@@ -90,7 +90,7 @@ jobs:
9090
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
9191

9292
- name: Lint Markdown
93-
uses: DavidAnson/markdownlint-cli2-action@db43aef879112c3119a410d69f66701e0d530809 # v17.0.0
93+
uses: DavidAnson/markdownlint-cli2-action@eb5ca3ab411449c66620fe7f1b3c9e10547144b0 # v18.0.0
9494
with:
9595
config: .markdownlint-cli2.yaml
9696
globs: "**/*.md"

.github/workflows/nfr.yml

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -111,6 +111,12 @@ jobs:
111111
echo "GKE_NUM_NODES=12" >> vars.env
112112
echo "GKE_MACHINE_TYPE=n2d-standard-16" >> vars.env
113113
114+
- name: Setup license file for plus
115+
if: matrix.type == 'plus'
116+
env:
117+
PLUS_LICENSE: ${{ secrets.JWT_PLUS_REGISTRY }}
118+
run: echo "${PLUS_LICENSE}" > license.jwt
119+
114120
- name: Create GKE cluster
115121
working-directory: ./tests
116122
run: make create-gke-cluster CI=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@396bb3e45325a47dd9ef434068033c6d5bb0d11a # v3.27.3
63+
uses: github/codeql-action/upload-sarif@f09c1c0a94de965c15400f5634aa42fac8fb8f88 # v3.27.5
6464
with:
6565
sarif_file: results.sarif

0 commit comments

Comments
 (0)