2929 schedule :
3030 - cron : ' 0 0 * * *' # Every day at midnight
3131
32+ permissions :
33+ contents : read
34+
3235jobs :
3336 build-windows :
3437 name : Build Windows
3538 runs-on : windows-2022
3639 steps :
37- - uses : actions/checkout@1af3b93b6815bc44a9784bd300feb67ff0d1eeb3 # v6.0.0
40+ - name : Harden the runner (Audit all outbound calls)
41+ uses : step-security/harden-runner@e3f713f2d8f53843e71c69a996d56f51aa9adfb9 # v2.14.1
42+ with :
43+ egress-policy : audit
44+
45+ - uses : actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
3846 with :
3947 persist-credentials : false
4048 - run : |
@@ -52,25 +60,25 @@ jobs:
5260 } else {
5361 & ./build-windows.ps1
5462 }
55- - uses : actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4 # v5 .0.0
63+ - uses : actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6 .0.0
5664 with :
5765 name : win-x64
5866 path : Yubico.NativeShims/win-x64/**
59- - uses : actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4 # v5 .0.0
67+ - uses : actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6 .0.0
6068 with :
6169 name : win-x86
6270 path : Yubico.NativeShims/win-x86/**
63- - uses : actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4 # v5 .0.0
71+ - uses : actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6 .0.0
6472 with :
6573 name : win-arm64
6674 path : Yubico.NativeShims/win-arm64/**
67- - uses : actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4 # v5 .0.0
75+ - uses : actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6 .0.0
6876 with :
6977 name : nuspec
7078 path : |
7179 Yubico.NativeShims/*.nuspec
7280 Yubico.NativeShims/readme.md
73- - uses : actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4 # v5 .0.0
81+ - uses : actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6 .0.0
7482 with :
7583 name : msbuild
7684 path : Yubico.NativeShims/msbuild/*
7987 name : Build Linux (amd64)
8088 runs-on : ubuntu-24.04
8189 steps :
82- - uses : actions/checkout@1af3b93b6815bc44a9784bd300feb67ff0d1eeb3 # v6.0.0
90+ - name : Harden the runner (Audit all outbound calls)
91+ uses : step-security/harden-runner@e3f713f2d8f53843e71c69a996d56f51aa9adfb9 # v2.14.1
92+ with :
93+ egress-policy : audit
94+
95+ - uses : actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
8396 with :
8497 persist-credentials : false
8598 - name : Install Zig (pinned version)
@@ -222,7 +235,7 @@ jobs:
222235 readelf -V *.so | grep GLIBC_2 | sort -u
223236 echo "✅ Binary compatible with Debian 10 (glibc 2.28)"
224237 '
225- - uses : actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4 # v5 .0.0
238+ - uses : actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6 .0.0
226239 with :
227240 name : linux-x64
228241 path : Yubico.NativeShims/linux-x64/*.so
@@ -231,7 +244,12 @@ jobs:
231244 name : Build Linux (arm64)
232245 runs-on : ubuntu-24.04
233246 steps :
234- - uses : actions/checkout@1af3b93b6815bc44a9784bd300feb67ff0d1eeb3 # v6.0.0
247+ - name : Harden the runner (Audit all outbound calls)
248+ uses : step-security/harden-runner@e3f713f2d8f53843e71c69a996d56f51aa9adfb9 # v2.14.1
249+ with :
250+ egress-policy : audit
251+
252+ - uses : actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
235253 with :
236254 persist-credentials : false
237255 - name : Install Zig (pinned version)
@@ -304,7 +322,7 @@ jobs:
304322 bash ./build-linux-arm64.sh
305323 fi
306324 - name : Set up QEMU for ARM64 testing
307- uses : docker/setup-qemu-action@v3
325+ uses : docker/setup-qemu-action@c7c53464625b32c7a7e944ae62b3e17d2b600130 # v3.7.0
308326 with :
309327 platforms : arm64
310328 - name : Test on Ubuntu 18.04 (glibc 2.27)
@@ -378,7 +396,7 @@ jobs:
378396 readelf -V *.so | grep GLIBC_2 | sort -u
379397 echo "✅ ARM64 binary compatible with Debian 10 (glibc 2.28)"
380398 '
381- - uses : actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4 # v5 .0.0
399+ - uses : actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6 .0.0
382400 with :
383401 name : linux-arm64
384402 path : Yubico.NativeShims/linux-arm64/*.so
@@ -387,7 +405,12 @@ jobs:
387405 name : Build macOS
388406 runs-on : macos-14
389407 steps :
390- - uses : actions/checkout@1af3b93b6815bc44a9784bd300feb67ff0d1eeb3 # v6.0.0
408+ - name : Harden the runner (Audit all outbound calls)
409+ uses : step-security/harden-runner@e3f713f2d8f53843e71c69a996d56f51aa9adfb9 # v2.14.1
410+ with :
411+ egress-policy : audit
412+
413+ - uses : actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
391414 with :
392415 persist-credentials : false
393416 - run : |
@@ -399,11 +422,11 @@ jobs:
399422 else
400423 sh ./build-macOS.sh
401424 fi
402- - uses : actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4 # v5 .0.0
425+ - uses : actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6 .0.0
403426 with :
404427 name : osx-x64
405428 path : Yubico.NativeShims/osx-x64/**
406- - uses : actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4 # v5 .0.0
429+ - uses : actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6 .0.0
407430 with :
408431 name : osx-arm64
409432 path : Yubico.NativeShims/osx-arm64/**
@@ -421,8 +444,13 @@ jobs:
421444 PACKAGE_VERSION : ${{ github.event.inputs.version != '' && github.event.inputs.version || '1.0.0' }}
422445 GITHUB_REPO_URL : https://github.com/${{ github.repository }}
423446 steps :
447+ - name : Harden the runner (Audit all outbound calls)
448+ uses : step-security/harden-runner@e3f713f2d8f53843e71c69a996d56f51aa9adfb9 # v2.14.1
449+ with :
450+ egress-policy : audit
451+
424452 - name : Download contents, set metadata and package
425- uses : actions/download-artifact@018cc2cf5baa6db3ef3c5f8a56943fffe632ef53 # v6 .0.0
453+ uses : actions/download-artifact@37930b1c2abaa49bbe596cd826c3c89aef350131 # v7 .0.0
426454 - run : |
427455 mv nuspec/*.nuspec .
428456 mv nuspec/readme.md .
@@ -437,13 +465,13 @@ jobs:
437465 - run : nuget pack Yubico.NativeShims.nuspec
438466
439467 - name : Upload Nuget Package
440- uses : actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4 # v5 .0.0
468+ uses : actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6 .0.0
441469 with :
442470 name : NuGet Package NativeShims
443471 path : Yubico.NativeShims.*.nupkg
444472
445473 - name : Generate artifact attestation
446- uses : actions/attest-build-provenance@977bb373ede98d70efdf65b84cb5f73e068dcc2a # v3.0 .0
474+ uses : actions/attest-build-provenance@96278af6caaf10aea03fd8d33a09a777ca52d62f # v3.2 .0
447475 with :
448476 subject-path : |
449477 Yubico.NativeShims/**/*.dll
@@ -460,7 +488,12 @@ jobs:
460488 packages : write
461489 if : ${{ github.event.inputs.push-to-dev == 'true' }}
462490 steps :
463- - uses : actions/download-artifact@018cc2cf5baa6db3ef3c5f8a56943fffe632ef53 # v6.0.0
491+ - name : Harden the runner (Audit all outbound calls)
492+ uses : step-security/harden-runner@e3f713f2d8f53843e71c69a996d56f51aa9adfb9 # v2.14.1
493+ with :
494+ egress-policy : audit
495+
496+ - uses : actions/download-artifact@37930b1c2abaa49bbe596cd826c3c89aef350131 # v7.0.0
464497 with :
465498 name : NuGet Package NativeShims
466499 - run : |
0 commit comments