@@ -182,7 +182,7 @@ jobs:
182182 - name : Store
183183 id : store
184184 if : needs.file-check.outputs.run == 'true'
185- uses : actions/upload-artifact@v6 .0.0
185+ uses : actions/upload-artifact@v7 .0.0
186186 with :
187187 name : dist-tarball
188188 path : artifacts/*.tar.gz
@@ -313,7 +313,7 @@ jobs:
313313 - name : Store
314314 id : store
315315 if : needs.file-check.outputs.run == 'true'
316- uses : actions/upload-artifact@v6 .0.0
316+ uses : actions/upload-artifact@v7 .0.0
317317 with :
318318 name : dist-static-${{ matrix.arch }}
319319 path : artifacts/*.gz.run
@@ -380,13 +380,13 @@ jobs:
380380 - name : Sign Agent Code
381381 id : sign-agent
382382 if : needs.file-check.outputs.run == 'true' && github.event_name != 'pull_request'
383- uses : azure/trusted -signing-action@v0.5.11
383+ uses : azure/artifact -signing-action@v1.1.0
384384 with :
385385 azure-tenant-id : ${{ secrets.CODE_SIGNING_TENNANT_ID }}
386386 azure-client-id : ${{ secrets.CODE_SIGNING_CLIENT_ID }}
387387 azure-client-secret : ${{ secrets.CODE_SIGNING_CLIENT_SECRET }}
388388 endpoint : " https://eus.codesigning.azure.net/"
389- trusted- signing-account-name : Netdata
389+ signing-account-name : Netdata
390390 certificate-profile-name : Netdata
391391 files-folder : ${{ github.workspace }}\build
392392 files-folder-filter : exe,dll,sys
@@ -403,13 +403,13 @@ jobs:
403403 - name : Sign Installer
404404 id : sign-installer
405405 if : needs.file-check.outputs.run == 'true' && github.event_name != 'pull_request'
406- uses : azure/trusted -signing-action@v0.5.11
406+ uses : azure/artifact -signing-action@v1.1.0
407407 with :
408408 azure-tenant-id : ${{ secrets.CODE_SIGNING_TENNANT_ID }}
409409 azure-client-id : ${{ secrets.CODE_SIGNING_CLIENT_ID }}
410410 azure-client-secret : ${{ secrets.CODE_SIGNING_CLIENT_SECRET }}
411411 endpoint : " https://eus.codesigning.azure.net/"
412- trusted- signing-account-name : Netdata
412+ signing-account-name : Netdata
413413 certificate-profile-name : Netdata
414414 files-folder : ${{ github.workspace }}\packaging\windows
415415 files-folder-filter : msi
@@ -418,7 +418,7 @@ jobs:
418418 timestamp-digest : SHA256
419419 - name : Upload Installer
420420 id : upload
421- uses : actions/upload-artifact@v6 .0.0
421+ uses : actions/upload-artifact@v7 .0.0
422422 with :
423423 name : windows-x86_64-installer
424424 path : packaging\windows\netdata*.msi
@@ -450,6 +450,75 @@ jobs:
450450 && needs.file-check.outputs.run == 'true'
451451 }}
452452
453+ windows-test : # Test the Windows installer
454+ name : Test Windows installer
455+ runs-on : windows-latest
456+ needs :
457+ - windows-build
458+ - file-check
459+ steps :
460+ - name : Skip Check
461+ id : skip
462+ if : needs.file-check.outputs.run != 'true'
463+ run : Write-Output "SKIPPED"
464+ - name : Checkout
465+ uses : actions/checkout@v6
466+ id : checkout
467+ if : needs.file-check.outputs.run == 'true'
468+ with :
469+ submodules : false
470+ lfs : false
471+ - name : Retrieve Windows Artifacts
472+ id : fetch-windows
473+ if : needs.file-check.outputs.run == 'true'
474+ uses : Wandalen/wretry.action@v3
475+ with :
476+ action : actions/download-artifact@v4
477+ with : |
478+ pattern: windows-*-installer
479+ path: dist-artifacts
480+ merge-multiple: true
481+ attempt_limit : 3
482+ attempt_delay : 2000
483+ - name : Install Netdata
484+ id : install-netdata
485+ if : needs.file-check.outputs.run == 'true'
486+ run : |
487+ $installerProc = Start-Process "msiexec" "/qn /i `"$PWD\dist-artifacts\netdata-x64.msi`" /l* `"$PWD\msi.log`" NDDRVINST=0" -Wait -NoNewWindow -PassThru
488+ Write-Output "Exit Code: $installerProc.ExitCode"
489+ Get-Content "$PWD\msi.log"
490+ $successCodes = @(0, 3010)
491+ if ($installerProc.ExitCode -notin $successCodes) {
492+ exit 1
493+ }
494+ - name : Check agent linking
495+ id : linker-check
496+ if : needs.file-check.outputs.run == 'true'
497+ run : ./.github/scripts/windows-linker-check.ps1
498+ - name : Failure Notification
499+ uses : rtCamp/action-slack-notify@v2
500+ env :
501+ SLACK_COLOR : ' danger'
502+ SLACK_FOOTER : ' '
503+ SLACK_ICON_EMOJI : ' :github-actions:'
504+ SLACK_TITLE : ' Windows install test failed:'
505+ SLACK_USERNAME : ' GitHub Actions'
506+ SLACK_MESSAGE : |-
507+ ${{ github.repository }}: Windows install test failed.
508+ Checkout agent sources: ${{ steps.checkout.outcome }}
509+ Fetch Windows installers: ${{ steps.fetch-windows.outcome }}
510+ Install Netdata: ${{ steps.install-netdata.outcome }}
511+ Check agent linking: ${{ steps.linker-check.outcome }}
512+ SLACK_WEBHOOK : ${{ secrets.SLACK_WEBHOOK_URL }}
513+ if : >-
514+ ${{
515+ failure()
516+ && startsWith(github.ref, 'refs/heads/master')
517+ && github.event_name != 'pull_request'
518+ && github.repository == 'netdata/netdata'
519+ && needs.file-check.outputs.run == 'true'
520+ }}
521+
453522 prepare-upload : # Consolidate the artifacts for uploading or releasing.
454523 name : Prepare Artifacts
455524 runs-on : ubuntu-latest
@@ -508,7 +577,7 @@ jobs:
508577 - name : Store Artifacts
509578 id : store
510579 if : needs.file-check.outputs.run == 'true'
511- uses : actions/upload-artifact@v6 .0.0
580+ uses : actions/upload-artifact@v7 .0.0
512581 with :
513582 name : final-artifacts
514583 path : artifacts/*
@@ -754,6 +823,7 @@ jobs:
754823 if : github.event_name == 'workflow_dispatch' && github.event.inputs.type == 'nightly' && github.repository == 'netdata/netdata'
755824 needs :
756825 - prepare-upload
826+ - windows-test
757827 - artifact-verification-dist
758828 - artifact-verification-static
759829 steps :
@@ -889,6 +959,7 @@ jobs:
889959 needs :
890960 - artifact-verification-dist
891961 - artifact-verification-static
962+ - windows-test
892963 - normalize-tag
893964 steps :
894965 - name : Checkout
@@ -1018,7 +1089,7 @@ jobs:
10181089 submodules : recursive
10191090 - name : Setup Buildx
10201091 id : buildx
1021- uses : docker/setup-buildx-action@v3
1092+ uses : docker/setup-buildx-action@v4
10221093 - name : Build test environment
10231094 id : build
10241095 uses : Wandalen/wretry.action@v3
0 commit comments