@@ -26,14 +26,14 @@ jobs:
26
26
proxy-sanity-check :
27
27
name : Proxy Sanity Check
28
28
runs-on : ubuntu-22.04
29
- if : ${{ !github.event.pull_request.head.repo.fork }}
29
+ if : ${{ !github.event.pull_request.head.repo.fork && !startsWith(github.head_ref, 'dependabot-') }}
30
30
env :
31
31
GOPROXY : " https://${{ secrets.ARTIFACTORY_USER }}:${{ secrets.ARTIFACTORY_TOKEN }}@azr.artifactory.f5net.com/artifactory/api/go/f5-nginx-go-dev"
32
32
steps :
33
33
- uses : actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
34
34
with :
35
35
fetch-tags : ' true'
36
- - uses : actions/setup-go@0c52d547c9bc32b1aa3301fd7a9cb496313a4491 # v5.0 .0
36
+ - uses : actions/setup-go@d35c59abb061a4a6fb18e82ac0862c26744d6ab5 # v5.5 .0
37
37
with :
38
38
go-version-file : ' go.mod'
39
39
cache : false
46
46
runs-on : ubuntu-22.04
47
47
steps :
48
48
- uses : actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
49
- - uses : actions/setup-go@0c52d547c9bc32b1aa3301fd7a9cb496313a4491 # v5.0 .0
49
+ - uses : actions/setup-go@d35c59abb061a4a6fb18e82ac0862c26744d6ab5 # v5.5 .0
50
50
with :
51
51
go-version-file : ' go.mod'
52
52
cache : false
62
62
contents : write
63
63
steps :
64
64
- uses : actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
65
- - uses : actions/setup-go@0c52d547c9bc32b1aa3301fd7a9cb496313a4491 # v5.0 .0
65
+ - uses : actions/setup-go@d35c59abb061a4a6fb18e82ac0862c26744d6ab5 # v5.5 .0
66
66
with :
67
67
go-version-file : ' go.mod'
68
68
cache : false
82
82
runs-on : ubuntu-22.04
83
83
steps :
84
84
- uses : actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
85
- - uses : actions/setup-go@0c52d547c9bc32b1aa3301fd7a9cb496313a4491 # v5.0 .0
85
+ - uses : actions/setup-go@d35c59abb061a4a6fb18e82ac0862c26744d6ab5 # v5.5 .0
86
86
with :
87
87
go-version-file : ' go.mod'
88
88
cache : false
96
96
- uses : actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
97
97
with :
98
98
fetch-tags : ' true'
99
- - uses : actions/setup-go@0c52d547c9bc32b1aa3301fd7a9cb496313a4491 # v5.0 .0
99
+ - uses : actions/setup-go@d35c59abb061a4a6fb18e82ac0862c26744d6ab5 # v5.5 .0
100
100
with :
101
101
go-version-file : ' go.mod'
102
102
cache : false
@@ -106,7 +106,7 @@ jobs:
106
106
run : |
107
107
make clean local-deb-package local-rpm-package local-apk-package
108
108
- name : Upload Artifacts
109
- uses : actions/upload-artifact@5d5d22a31266ced268874388b861e4b58bb5c2f3 # v4.3.1
109
+ uses : actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2
110
110
with :
111
111
name : nginx-agent-unsigned-snapshots
112
112
path : build
@@ -127,7 +127,7 @@ jobs:
127
127
version : " 3.22"
128
128
steps :
129
129
- uses : actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
130
- - uses : actions/setup-go@0c52d547c9bc32b1aa3301fd7a9cb496313a4491 # v5.0 .0
130
+ - uses : actions/setup-go@d35c59abb061a4a6fb18e82ac0862c26744d6ab5 # v5.5 .0
131
131
with :
132
132
go-version-file : ' go.mod'
133
133
cache : false
@@ -136,16 +136,74 @@ jobs:
136
136
with :
137
137
name : nginx-agent-unsigned-snapshots
138
138
path : build
139
+
140
+ - name : Create Results Directory
141
+ run : mkdir -p ${{ github.workspace }}/test/dashboard/logs/${{ github.job }}/${{matrix.container.image}}-${{matrix.container.version}}
142
+
143
+ - name : Start Promtail
144
+ uses : ./.github/actions/start-promtail
145
+ with :
146
+ loki_url : ${{ secrets.LOKI_DASHBOARD_URL }}
147
+
139
148
- name : Run Integration Tests
140
149
run : |
141
150
go install github.com/goreleaser/nfpm/v2/cmd/nfpm@${{ env.NFPM_VERSION }}
142
151
OS_RELEASE="${{ matrix.container.image }}" OS_VERSION="${{ matrix.container.version }}" \
143
- make integration-test
152
+ make integration-test | tee ${{github.workspace}}/test/dashboard/logs/${{github.job}}/${{matrix.container.image}}-${{matrix.container.version}}/raw_logs.log
153
+ exit "${PIPESTATUS[0]}"
154
+
155
+ - name : Format Results
156
+ if : always()
157
+ run : bash ./scripts/dashboard/format_results.sh ${{job.status}} ${{github.job}}/${{matrix.container.image}}-${{matrix.container.version}} ${{github.workspace}}
158
+
159
+ upgrade-tests :
160
+ name : Upgrade Tests
161
+ needs : build-unsigned-snapshot
162
+ runs-on : ubuntu-22.04
163
+ strategy :
164
+ matrix :
165
+ container :
166
+ - image : " ubuntu"
167
+ version : " 24.04"
168
+ - image : " redhatenterprise"
169
+ version : " 9"
170
+ - image : " alpine"
171
+ version : " 3.22"
172
+ steps :
173
+ - uses : actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
174
+ - uses : actions/setup-go@d35c59abb061a4a6fb18e82ac0862c26744d6ab5 # v5.5.0
175
+ with :
176
+ go-version-file : ' go.mod'
177
+ cache : false
178
+ - name : Download Packages
179
+ uses : actions/download-artifact@eaceaf801fd36c7dee90939fad912460b18a1ffe # v4.1.2
180
+ with :
181
+ name : nginx-agent-unsigned-snapshots
182
+ path : build
183
+
184
+ - name : Create Results Directory
185
+ run : mkdir -p ${{ github.workspace }}/test/dashboard/logs/${{ github.job }}/${{matrix.container.image}}-${{matrix.container.version}}
186
+
187
+ - name : Start Promtail
188
+ uses : ./.github/actions/start-promtail
189
+ with :
190
+ loki_url : ${{ secrets.LOKI_DASHBOARD_URL }}
191
+
192
+ - name : Run Upgrade Tests
193
+ run : |
194
+ go install github.com/goreleaser/nfpm/v2/cmd/nfpm@${{ env.NFPM_VERSION }}
195
+ OS_RELEASE="${{ matrix.container.image }}" OS_VERSION="${{ matrix.container.version }}" \
196
+ make upgrade-test | tee ${{github.workspace}}/test/dashboard/logs/${{github.job}}/${{matrix.container.image}}-${{matrix.container.version}}/raw_logs.log
197
+ exit "${PIPESTATUS[0]}"
198
+
199
+ - name : Format Results
200
+ if : always()
201
+ run : bash ./scripts/dashboard/format_results.sh ${{job.status}} ${{github.job}}/${{matrix.container.image}}-${{matrix.container.version}} ${{github.workspace}}
144
202
145
203
official-oss-image-integration-tests :
146
204
name : Integration Tests - Official OSS Images
147
205
needs : build-unsigned-snapshot
148
- if : ${{ !github.event.pull_request.head.repo.fork && !startsWith(github.ref_name , 'dependabot/ ') }}
206
+ if : ${{ !github.event.pull_request.head.repo.fork && !startsWith(github.head_ref , 'dependabot- ') }}
149
207
runs-on : ubuntu-22.04
150
208
strategy :
151
209
matrix :
@@ -164,7 +222,7 @@ jobs:
164
222
release : " alpine"
165
223
steps :
166
224
- uses : actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
167
- - uses : actions/setup-go@0c52d547c9bc32b1aa3301fd7a9cb496313a4491 # v5.0 .0
225
+ - uses : actions/setup-go@d35c59abb061a4a6fb18e82ac0862c26744d6ab5 # v5.5 .0
168
226
with :
169
227
go-version-file : ' go.mod'
170
228
cache : false
@@ -173,45 +231,59 @@ jobs:
173
231
with :
174
232
name : nginx-agent-unsigned-snapshots
175
233
path : build
234
+
235
+ - name : Create Results Directory
236
+ run : mkdir -p ${{ github.workspace }}/test/dashboard/logs/${{ github.job }}/${{matrix.container.image}}-${{matrix.container.version}}
237
+
238
+ - name : Start Promtail
239
+ uses : ./.github/actions/start-promtail
240
+ with :
241
+ loki_url : ${{ secrets.LOKI_DASHBOARD_URL }}
242
+
176
243
- name : Run Integration Tests
177
244
run : |
178
245
go install github.com/goreleaser/nfpm/v2/cmd/nfpm@${{ env.NFPM_VERSION }}
179
246
CONTAINER_NGINX_IMAGE_REGISTRY="docker-registry.nginx.com" \
180
247
TAG="${{ matrix.container.version }}-${{ matrix.container.image }}" \
181
248
OS_RELEASE="${{ matrix.container.release }}" OS_VERSION="${{ matrix.container.version }}" \
182
- make official-image-integration-test
249
+ make official-image-integration-test | tee ${{github.workspace}}/test/dashboard/logs/${{github.job}}/${{matrix.container.image}}-${{matrix.container.version}}/raw_logs.log
250
+ exit "${PIPESTATUS[0]}"
251
+
252
+ - name : Format Results
253
+ if : always()
254
+ run : bash ./scripts/dashboard/format_results.sh ${{job.status}} ${{github.job}}/${{matrix.container.image}}-${{matrix.container.version}} ${{github.workspace}}
183
255
184
256
official-plus-image-integration-tests :
185
257
name : Integration Tests - Official Plus Images
186
258
needs : build-unsigned-snapshot
187
- if : ${{ !github.event.pull_request.head.repo.fork && !startsWith(github.ref_name , 'dependabot/ ') }}
259
+ if : ${{ !github.event.pull_request.head.repo.fork && !startsWith(github.head_ref , 'dependabot- ') }}
188
260
runs-on : ubuntu-22.04
189
261
strategy :
190
262
matrix :
191
263
container :
192
264
- image : " alpine"
193
- version : " 3.20 "
194
- plus : " r32 "
265
+ version : " 3.22 "
266
+ plus : " r35 "
195
267
release : " alpine"
196
268
path : " /nginx-plus/agent"
197
269
- image : " alpine"
198
- version : " 3.19 "
199
- plus : " r31 "
270
+ version : " 3.21 "
271
+ plus : " r34 "
200
272
release : " alpine"
201
273
path : " /nginx-plus/agent"
202
274
- image : " debian"
203
275
version : " bookworm"
204
- plus : " r32 "
276
+ plus : " r35 "
205
277
release : " debian"
206
278
path : " /nginx-plus/agent"
207
279
- image : " debian"
208
280
version : " bookworm"
209
- plus : " r31 "
281
+ plus : " r34 "
210
282
release : " debian"
211
283
path : " /nginx-plus/agent"
212
284
steps :
213
285
- uses : actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
214
- - uses : actions/setup-go@0c52d547c9bc32b1aa3301fd7a9cb496313a4491 # v5.0 .0
286
+ - uses : actions/setup-go@d35c59abb061a4a6fb18e82ac0862c26744d6ab5 # v5.5 .0
215
287
with :
216
288
go-version-file : ' go.mod'
217
289
cache : false
@@ -221,18 +293,33 @@ jobs:
221
293
name : nginx-agent-unsigned-snapshots
222
294
path : build
223
295
- name : Login to Docker Registry
224
- uses : docker/login-action@9780b0c442fbb1117ed29e0efdff1e18412f7567 # v3.3 .0
296
+ uses : docker/login-action@184bdaa0721073962dff0199f1fb9940f07167d1 # v3.5 .0
225
297
with :
226
- registry : ${{ secrets.REGISTRY_URL }}
298
+ registry : ${{ secrets.TEST_REGISTRY_URL }}
227
299
username : ${{ secrets.REGISTRY_USERNAME }}
228
300
password : ${{ secrets.REGISTRY_PASSWORD }}
301
+
302
+ - name : Create Results Directory
303
+ run : mkdir -p ${{ github.workspace }}/test/dashboard/logs/${{ github.job }}/${{matrix.container.image}}-${{matrix.container.version}}
304
+
305
+ - name : Start Promtail
306
+ uses : ./.github/actions/start-promtail
307
+ with :
308
+ loki_url : ${{ secrets.LOKI_DASHBOARD_URL }}
309
+
229
310
- name : Run Integration Tests
230
311
run : |
231
312
go install github.com/goreleaser/nfpm/v2/cmd/nfpm@${{ env.NFPM_VERSION }}
232
- CONTAINER_NGINX_IMAGE_REGISTRY="${{ secrets.REGISTRY_URL }}" \
313
+ CONTAINER_NGINX_IMAGE_REGISTRY="${{ secrets.TEST_REGISTRY_URL }}" \
233
314
TAG="${{ matrix.container.plus }}-${{ matrix.container.image }}-${{ matrix.container.version }}" \
234
315
OS_RELEASE="${{ matrix.container.release }}" OS_VERSION="${{ matrix.container.version }}" IMAGE_PATH="${{ matrix.container.path }}" \
235
- make official-image-integration-test
316
+ NGINX_LICENSE_JWT='${{ secrets.TEST_JWT }}' \
317
+ make official-image-integration-test | tee ${{github.workspace}}/test/dashboard/logs/${{github.job}}/${{matrix.container.image}}-${{matrix.container.version}}/raw_logs.log
318
+ exit "${PIPESTATUS[0]}"
319
+
320
+ - name : Format Results
321
+ if : always()
322
+ run : bash ./scripts/dashboard/format_results.sh ${{job.status}} ${{github.job}}/${{matrix.container.image}}-${{matrix.container.version}} ${{github.workspace}}
236
323
237
324
performance-tests :
238
325
name : Performance Tests
@@ -241,15 +328,15 @@ jobs:
241
328
contents : write
242
329
steps :
243
330
- uses : actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
244
- - uses : actions/setup-go@0c52d547c9bc32b1aa3301fd7a9cb496313a4491 # v5.0 .0
331
+ - uses : actions/setup-go@d35c59abb061a4a6fb18e82ac0862c26744d6ab5 # v5.5 .0
245
332
with :
246
333
go-version-file : ' go.mod'
247
334
cache : false
248
335
- name : Run Performance Tests
249
336
run : |
250
337
make performance-test
251
338
- name : Store benchmark result
252
- uses : benchmark-action/github-action-benchmark@4de1bed97a47495fc4c5404952da0499e31f5c29 # v1.20.3
339
+ uses : benchmark-action/github-action-benchmark@4bdcce38c94cec68da58d012ac24b7b1155efe8b # v1.20.7
253
340
with :
254
341
name : Compare Benchmark Results
255
342
tool : ' go'
@@ -265,15 +352,15 @@ jobs:
265
352
run : git push 'https://github-actions:${{ secrets.GITHUB_TOKEN }}@github.com/nginx/agent.git' benchmark-results:benchmark-results
266
353
load-tests :
267
354
name : Load Tests
268
- if : ${{ !github.event.pull_request.head.repo.fork && !startsWith(github.ref_name , 'dependabot/ ') }}
355
+ if : ${{ !github.event.pull_request.head.repo.fork && !startsWith(github.head_ref , 'dependabot- ') }}
269
356
permissions :
270
357
contents : write
271
358
runs-on : ubuntu-22.04
272
359
needs : build-unsigned-snapshot
273
360
274
361
steps :
275
362
- uses : actions/checkout@0ad4b8fadaa221de15dcec353f45205ec38ea70b # v4.1.4
276
- - uses : actions/setup-go@0c52d547c9bc32b1aa3301fd7a9cb496313a4491 # v5.0 .0
363
+ - uses : actions/setup-go@d35c59abb061a4a6fb18e82ac0862c26744d6ab5 # v5.5 .0
277
364
with :
278
365
go-version-file : ' go.mod'
279
366
cache : false
@@ -291,7 +378,7 @@ jobs:
291
378
run : echo "GO_VERSION=$(cat go.mod | grep toolchain | sed 's/toolchain //; s/go//')" >> $GITHUB_ENV
292
379
293
380
- name : Build Docker Image
294
- uses : docker/build-push-action@2cdde995de11925a030ce8070c3d77a52ffcf1c0 # v5.3 .0
381
+ uses : docker/build-push-action@263435318d21b8e681c14492fe198d362a7d2c83 # v6.18 .0
295
382
env :
296
383
GO_VERSION : ${{ env.GO_VERSION }}
297
384
with :
@@ -315,14 +402,14 @@ jobs:
315
402
echo "$results"
316
403
317
404
- name : Upload Load Test Results
318
- uses : actions/upload-artifact@5d5d22a31266ced268874388b861e4b58bb5c2f3 # v4.3.1
405
+ uses : actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2
319
406
with :
320
407
name : load-test-results
321
408
path : benchmarks.json
322
409
if-no-files-found : error
323
410
324
411
- name : Store benchmark result
325
- uses : benchmark-action/github-action-benchmark@4de1bed97a47495fc4c5404952da0499e31f5c29 # v1.20.3
412
+ uses : benchmark-action/github-action-benchmark@4bdcce38c94cec68da58d012ac24b7b1155efe8b # v1.20.7
326
413
with :
327
414
name : Compare Benchmark Results
328
415
tool : ' customSmallerIsBetter'
0 commit comments