Skip to content

Commit 1c46c47

Browse files
committed
Merge branch 'main' into pgo-generate-ci
2 parents 994d2ef + a520f9b commit 1c46c47

Some content is hidden

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

57 files changed

+4019
-2202
lines changed

.github/workflows/ci.yml

Lines changed: 149 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -32,10 +32,10 @@ jobs:
3232
env:
3333
GOPROXY: "https://${{ secrets.ARTIFACTORY_USER }}:${{ secrets.ARTIFACTORY_TOKEN }}@azr.artifactory.f5net.com/artifactory/api/go/f5-nginx-go-dev"
3434
steps:
35-
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
35+
- uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
3636
with:
3737
fetch-tags: 'true'
38-
- uses: actions/setup-go@d35c59abb061a4a6fb18e82ac0862c26744d6ab5 # v5.5.0
38+
- uses: actions/setup-go@44694675825211faa026b3c33043df3e48a5fa00 # v6.0.0
3939
with:
4040
go-version-file: 'go.mod'
4141
cache: false
@@ -47,8 +47,8 @@ jobs:
4747
name: Lint
4848
runs-on: ubuntu-22.04
4949
steps:
50-
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
51-
- uses: actions/setup-go@d35c59abb061a4a6fb18e82ac0862c26744d6ab5 # v5.5.0
50+
- uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
51+
- uses: actions/setup-go@44694675825211faa026b3c33043df3e48a5fa00 # v6.0.0
5252
with:
5353
go-version-file: 'go.mod'
5454
cache: false
@@ -63,8 +63,8 @@ jobs:
6363
permissions:
6464
contents: write
6565
steps:
66-
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
67-
- uses: actions/setup-go@d35c59abb061a4a6fb18e82ac0862c26744d6ab5 # v5.5.0
66+
- uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
67+
- uses: actions/setup-go@44694675825211faa026b3c33043df3e48a5fa00 # v6.0.0
6868
with:
6969
go-version-file: 'go.mod'
7070
cache: false
@@ -83,8 +83,8 @@ jobs:
8383
name: Unit tests with race condition detection
8484
runs-on: ubuntu-22.04
8585
steps:
86-
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
87-
- uses: actions/setup-go@d35c59abb061a4a6fb18e82ac0862c26744d6ab5 # v5.5.0
86+
- uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
87+
- uses: actions/setup-go@44694675825211faa026b3c33043df3e48a5fa00 # v6.0.0
8888
with:
8989
go-version-file: 'go.mod'
9090
cache: false
@@ -95,10 +95,10 @@ jobs:
9595
name: Build Unsigned Snapshot
9696
runs-on: ubuntu-22.04
9797
steps:
98-
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
98+
- uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
9999
with:
100100
fetch-tags: 'true'
101-
- uses: actions/setup-go@d35c59abb061a4a6fb18e82ac0862c26744d6ab5 # v5.5.0
101+
- uses: actions/setup-go@44694675825211faa026b3c33043df3e48a5fa00 # v6.0.0
102102
with:
103103
go-version-file: 'go.mod'
104104
cache: false
@@ -128,13 +128,13 @@ jobs:
128128
- image: "alpine"
129129
version: "3.22"
130130
steps:
131-
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
132-
- uses: actions/setup-go@d35c59abb061a4a6fb18e82ac0862c26744d6ab5 # v5.5.0
131+
- uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
132+
- uses: actions/setup-go@44694675825211faa026b3c33043df3e48a5fa00 # v6.0.0
133133
with:
134134
go-version-file: 'go.mod'
135135
cache: false
136136
- name: Download Packages
137-
uses: actions/download-artifact@eaceaf801fd36c7dee90939fad912460b18a1ffe # v4.1.2
137+
uses: actions/download-artifact@634f93cb2916e3fdff6788551b99b062d0335ce0 # v5.0.0
138138
with:
139139
name: nginx-agent-unsigned-snapshots
140140
path: build
@@ -172,13 +172,13 @@ jobs:
172172
- image: "alpine"
173173
version: "3.22"
174174
steps:
175-
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
176-
- uses: actions/setup-go@d35c59abb061a4a6fb18e82ac0862c26744d6ab5 # v5.5.0
175+
- uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
176+
- uses: actions/setup-go@44694675825211faa026b3c33043df3e48a5fa00 # v6.0.0
177177
with:
178178
go-version-file: 'go.mod'
179179
cache: false
180180
- name: Download Packages
181-
uses: actions/download-artifact@eaceaf801fd36c7dee90939fad912460b18a1ffe # v4.1.2
181+
uses: actions/download-artifact@634f93cb2916e3fdff6788551b99b062d0335ce0 # v5.0.0
182182
with:
183183
name: nginx-agent-unsigned-snapshots
184184
path: build
@@ -223,13 +223,13 @@ jobs:
223223
version: "mainline"
224224
release: "alpine"
225225
steps:
226-
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
227-
- uses: actions/setup-go@d35c59abb061a4a6fb18e82ac0862c26744d6ab5 # v5.5.0
226+
- uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
227+
- uses: actions/setup-go@44694675825211faa026b3c33043df3e48a5fa00 # v6.0.0
228228
with:
229229
go-version-file: 'go.mod'
230230
cache: false
231231
- name: Download Packages
232-
uses: actions/download-artifact@eaceaf801fd36c7dee90939fad912460b18a1ffe # v4.1.2
232+
uses: actions/download-artifact@634f93cb2916e3fdff6788551b99b062d0335ce0 # v5.0.0
233233
with:
234234
name: nginx-agent-unsigned-snapshots
235235
path: build
@@ -284,13 +284,13 @@ jobs:
284284
release: "debian"
285285
path: "/nginx-plus/agent"
286286
steps:
287-
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
288-
- uses: actions/setup-go@d35c59abb061a4a6fb18e82ac0862c26744d6ab5 # v5.5.0
287+
- uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
288+
- uses: actions/setup-go@44694675825211faa026b3c33043df3e48a5fa00 # v6.0.0
289289
with:
290290
go-version-file: 'go.mod'
291291
cache: false
292292
- name: Download Packages
293-
uses: actions/download-artifact@eaceaf801fd36c7dee90939fad912460b18a1ffe # v4.1.2
293+
uses: actions/download-artifact@634f93cb2916e3fdff6788551b99b062d0335ce0 # v5.0.0
294294
with:
295295
name: nginx-agent-unsigned-snapshots
296296
path: build
@@ -323,14 +323,135 @@ jobs:
323323
if: always()
324324
run: bash ./scripts/dashboard/format_results.sh ${{job.status}} ${{github.job}}/${{matrix.container.image}}-${{matrix.container.version}} ${{github.workspace}}
325325

326+
oss-metrics-tests:
327+
name: Metrics Integration Tests - Official OSS Images
328+
needs: build-unsigned-snapshot
329+
if: ${{ !github.event.pull_request.head.repo.fork && !startsWith(github.head_ref, 'dependabot-') }}
330+
runs-on: ubuntu-22.04
331+
strategy:
332+
matrix:
333+
container:
334+
- image: "bookworm"
335+
version: "stable"
336+
release: "debian"
337+
- image: "bookworm"
338+
version: "mainline"
339+
release: "debian"
340+
- image: "alpine"
341+
version: "stable"
342+
release: "alpine"
343+
- image: "alpine"
344+
version: "mainline"
345+
release: "alpine"
346+
steps:
347+
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
348+
- uses: actions/setup-go@44694675825211faa026b3c33043df3e48a5fa00 # v6.0.0
349+
with:
350+
go-version-file: 'go.mod'
351+
cache: false
352+
- name: Download Packages
353+
uses: actions/download-artifact@eaceaf801fd36c7dee90939fad912460b18a1ffe # v4.1.2
354+
with:
355+
name: nginx-agent-unsigned-snapshots
356+
path: build
357+
358+
- name: Create Results Directory
359+
run: mkdir -p ${{ github.workspace }}/test/dashboard/logs/${{ github.job }}/${{matrix.container.image}}-${{matrix.container.version}}
360+
361+
- name: Start Promtail
362+
uses: ./.github/actions/start-promtail
363+
with:
364+
loki_url: ${{ secrets.LOKI_DASHBOARD_URL }}
365+
366+
- name: Run Integration Tests
367+
run: |
368+
go install github.com/goreleaser/nfpm/v2/cmd/nfpm@${{ env.NFPM_VERSION }}
369+
CONTAINER_NGINX_IMAGE_REGISTRY="docker-registry.nginx.com" \
370+
TAG="${{ matrix.container.version }}-${{ matrix.container.image }}" \
371+
OS_RELEASE="${{ matrix.container.release }}" OS_VERSION="${{ matrix.container.version }}" \
372+
make metrics-test | tee ${{github.workspace}}/test/dashboard/logs/${{github.job}}/${{matrix.container.image}}-${{matrix.container.version}}/raw_logs.log
373+
exit "${PIPESTATUS[0]}"
374+
375+
- name: Format Results
376+
if: always()
377+
run: bash ./scripts/dashboard/format_results.sh ${{job.status}} ${{github.job}}/${{matrix.container.image}}-${{matrix.container.version}} ${{github.workspace}}
378+
379+
plus-metrics-tests:
380+
name: Metrics Integration Tests - Official Plus Images
381+
needs: build-unsigned-snapshot
382+
if: ${{ !github.event.pull_request.head.repo.fork && !startsWith(github.head_ref, 'dependabot-') }}
383+
runs-on: ubuntu-22.04
384+
strategy:
385+
matrix:
386+
container:
387+
- image: "alpine"
388+
version: "3.22"
389+
plus: "r35"
390+
release: "alpine"
391+
path: "/nginx-plus/agent"
392+
- image: "alpine"
393+
version: "3.21"
394+
plus: "r34"
395+
release: "alpine"
396+
path: "/nginx-plus/agent"
397+
- image: "debian"
398+
version: "bookworm"
399+
plus: "r35"
400+
release: "debian"
401+
path: "/nginx-plus/agent"
402+
- image: "debian"
403+
version: "bookworm"
404+
plus: "r34"
405+
release: "debian"
406+
path: "/nginx-plus/agent"
407+
steps:
408+
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
409+
- uses: actions/setup-go@44694675825211faa026b3c33043df3e48a5fa00 # v6.0.0
410+
with:
411+
go-version-file: 'go.mod'
412+
cache: false
413+
- name: Download Packages
414+
uses: actions/download-artifact@eaceaf801fd36c7dee90939fad912460b18a1ffe # v4.1.2
415+
with:
416+
name: nginx-agent-unsigned-snapshots
417+
path: build
418+
- name: Login to Docker Registry
419+
uses: docker/login-action@9780b0c442fbb1117ed29e0efdff1e18412f7567 # v3.3.0
420+
with:
421+
registry: ${{ secrets.TEST_REGISTRY_URL }}
422+
username: ${{ secrets.REGISTRY_USERNAME }}
423+
password: ${{ secrets.REGISTRY_PASSWORD }}
424+
425+
- name: Create Results Directory
426+
run: mkdir -p ${{ github.workspace }}/test/dashboard/logs/${{ github.job }}/${{matrix.container.image}}-${{matrix.container.version}}
427+
428+
- name: Start Promtail
429+
uses: ./.github/actions/start-promtail
430+
with:
431+
loki_url: ${{ secrets.LOKI_DASHBOARD_URL }}
432+
433+
- name: Run Integration Tests
434+
run: |
435+
go install github.com/goreleaser/nfpm/v2/cmd/nfpm@${{ env.NFPM_VERSION }}
436+
CONTAINER_NGINX_IMAGE_REGISTRY="${{ secrets.TEST_REGISTRY_URL }}" \
437+
TAG="${{ matrix.container.plus }}-${{ matrix.container.image }}-${{ matrix.container.version }}" \
438+
OS_RELEASE="${{ matrix.container.release }}" OS_VERSION="${{ matrix.container.version }}" IMAGE_PATH="${{ matrix.container.path }}" \
439+
NGINX_LICENSE_JWT="${{ secrets.TEST_JWT }}" \
440+
make metrics-test | tee ${{github.workspace}}/test/dashboard/logs/${{github.job}}/${{matrix.container.image}}-${{matrix.container.version}}/raw_logs.log
441+
exit "${PIPESTATUS[0]}"
442+
443+
- name: Format Results
444+
if: always()
445+
run: bash ./scripts/dashboard/format_results.sh ${{job.status}} ${{github.job}}/${{matrix.container.image}}-${{matrix.container.version}} ${{github.workspace}}
446+
326447
performance-tests:
327448
name: Performance Tests
328449
runs-on: ubuntu-22.04
329450
permissions:
330451
contents: write
331452
steps:
332-
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
333-
- uses: actions/setup-go@d35c59abb061a4a6fb18e82ac0862c26744d6ab5 # v5.5.0
453+
- uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
454+
- uses: actions/setup-go@44694675825211faa026b3c33043df3e48a5fa00 # v6.0.0
334455
with:
335456
go-version-file: 'go.mod'
336457
cache: false
@@ -361,20 +482,20 @@ jobs:
361482
needs: build-unsigned-snapshot
362483

363484
steps:
364-
- uses: actions/checkout@0ad4b8fadaa221de15dcec353f45205ec38ea70b # v4.1.4
365-
- uses: actions/setup-go@d35c59abb061a4a6fb18e82ac0862c26744d6ab5 # v5.5.0
485+
- uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
486+
- uses: actions/setup-go@44694675825211faa026b3c33043df3e48a5fa00 # v6.0.0
366487
with:
367488
go-version-file: 'go.mod'
368489
cache: false
369490

370491
- name: Download Packages
371-
uses: actions/download-artifact@eaceaf801fd36c7dee90939fad912460b18a1ffe # v4.1.2
492+
uses: actions/download-artifact@634f93cb2916e3fdff6788551b99b062d0335ce0 # v5.0.0
372493
with:
373494
name: nginx-agent-unsigned-snapshots
374495
path: build
375496

376497
- name: Set up Docker Build
377-
uses: docker/setup-buildx-action@d70bba72b1f3fd22344832f00baa16ece964efeb # v3.3.0
498+
uses: docker/setup-buildx-action@e468171a9de216ec08956ac3ada2f0791b6bd435 # v3.11.1
378499

379500
- name: Set env
380501
run: echo "GO_VERSION=$(cat go.mod | grep toolchain | sed 's/toolchain //; s/go//')" >> $GITHUB_ENV

.github/workflows/codeql.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ jobs:
3232
docs_only: ${{ github.event.pull_request && steps.docs.outputs.docs_only == 'true' }}
3333
steps:
3434
- name: Checkout Repository
35-
uses: actions/checkout@0ad4b8fadaa221de15dcec353f45205ec38ea70b # v4.1.4
35+
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
3636
with:
3737
fetch-depth: 0
3838

.github/workflows/dependency-review.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -22,9 +22,9 @@ jobs:
2222
pull-requests: write # for actions/dependency-review-action to post comments
2323
steps:
2424
- name: "Checkout Repository"
25-
uses: actions/checkout@0ad4b8fadaa221de15dcec353f45205ec38ea70b # v4.1.4
25+
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
2626

2727
- name: "Dependency Review"
28-
uses: actions/dependency-review-action@bc41886e18ea39df68b1b1245f4184881938e050 # v4.7.2
28+
uses: actions/dependency-review-action@595b5aeba73380359d98a5e087f648dbb0edce1b # v4.7.3
2929
with:
3030
config-file: "nginxinc/k8s-common/dependency-review-config.yml@main"

.github/workflows/label-pr.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ jobs:
1414
pull-requests: write
1515
runs-on: ubuntu-22.04
1616
steps:
17-
- uses: release-drafter/release-drafter@09c613e259eb8d4e7c81c2cb00618eb5fc4575a7 # v5.25.0
17+
- uses: release-drafter/release-drafter@b1476f6e6eb133afa41ed8589daba6dc69b4d3f5 # v6.1.0
1818
with:
1919
disable-releaser: true
2020
env:

.github/workflows/release-branch.yml

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -67,7 +67,7 @@ jobs:
6767
create_pull_request: ${{steps.vars.outputs.create_pull_request }}
6868
steps:
6969
- name: Checkout Repository
70-
uses: actions/checkout@9bb56186c3b09b4f86b1c65136769dd318469633 # v4.1.2
70+
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
7171
with:
7272
ref: ${{ inputs.releaseBranch }}
7373

@@ -91,12 +91,12 @@ jobs:
9191
release_id: ${{ steps.vars.outputs.RELEASE_ID }}
9292
steps:
9393
- name: Checkout Repository
94-
uses: actions/checkout@9bb56186c3b09b4f86b1c65136769dd318469633 # v4.1.2
94+
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
9595
with:
9696
ref: ${{ inputs.releaseBranch }}
9797

9898
- name: Setup Node Environment
99-
uses: actions/setup-node@60edb5dd545a775178f52524783378180af0d1f8 # v4.0.2
99+
uses: actions/setup-node@a0853c24544627f65ddf259abe73b1d18a591444 # v5.0.0
100100

101101
- name: Create Draft Release
102102
if: ${{ needs.vars.outputs.github_release == 'true' }}
@@ -188,7 +188,7 @@ jobs:
188188
contents: write
189189
steps:
190190
- name: Checkout Repository
191-
uses: actions/checkout@9bb56186c3b09b4f86b1c65136769dd318469633 # v4.1.2
191+
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
192192
with:
193193
ref: ${{ inputs.releaseBranch }}
194194

@@ -213,12 +213,12 @@ jobs:
213213
contents: write # Needed to update a github release
214214
steps:
215215
- name: Checkout Repository
216-
uses: actions/checkout@9bb56186c3b09b4f86b1c65136769dd318469633 # v4.1.2
216+
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
217217
with:
218218
ref: ${{ inputs.releaseBranch }}
219219

220220
- name: Setup go
221-
uses: actions/setup-go@d35c59abb061a4a6fb18e82ac0862c26744d6ab5 # v5.5.0
221+
uses: actions/setup-go@44694675825211faa026b3c33043df3e48a5fa00 # v6.0.0
222222
with:
223223
go-version-file: 'go.mod'
224224
cache: false
@@ -233,7 +233,7 @@ jobs:
233233
nfpm --version
234234
235235
- name: Docker Buildx
236-
uses: docker/setup-buildx-action@d70bba72b1f3fd22344832f00baa16ece964efeb # v3.3.0
236+
uses: docker/setup-buildx-action@e468171a9de216ec08956ac3ada2f0791b6bd435 # v3.11.1
237237

238238
- name: Build Docker Image
239239
uses: docker/build-push-action@263435318d21b8e681c14492fe198d362a7d2c83 # v6.18.0
@@ -294,7 +294,7 @@ jobs:
294294
pull-requests: write
295295
steps:
296296
- name: Checkout Repository
297-
uses: actions/checkout@9bb56186c3b09b4f86b1c65136769dd318469633 # v4.1.2
297+
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
298298
with:
299299
ref: ${{ inputs.releaseBranch }}
300300

0 commit comments

Comments
 (0)