@@ -21,11 +21,14 @@ jobs:
2121 name : call-build
2222 strategy :
2323 matrix :
24+ arch : [X64, ARM64]
2425 configuration : [Debug, Release]
2526 uses : codebeltnet/jobs-dotnet-build/.github/workflows/default.yml@v3
2627 with :
2728 configuration : ${{ matrix.configuration }}
2829 strong-name-key-filename : benchmarkdotnet.snk
30+ runs-on : ${{ matrix.arch == 'ARM64' && 'ubuntu-24.04-arm' || 'ubuntu-24.04' }}
31+ upload-build-artifact-name : build-${{ matrix.configuration }}-${{ matrix.arch }}
2932 secrets : inherit
3033
3134 pack :
@@ -38,26 +41,45 @@ jobs:
3841 with :
3942 configuration : ${{ matrix.configuration }}
4043 version : ${{ needs.build.outputs.version }}
44+ download-build-artifact-pattern : build-${{ matrix.configuration }}-X64
4145
42- test :
43- name : call-test
46+ test_linux :
47+ name : call-test-linux
4448 needs : [build]
4549 strategy :
4650 fail-fast : false
4751 matrix :
48- os : [ubuntu-24.04, windows-2025, ubuntu-24.04-arm, windows-11-arm]
4952 configuration : [Debug, Release]
53+ arch : [X64, ARM64]
5054 uses : codebeltnet/jobs-dotnet-test/.github/workflows/default.yml@v3
5155 with :
56+ runs-on : ${{ matrix.arch == 'ARM64' && 'ubuntu-24.04-arm' || 'ubuntu-24.04' }}
5257 configuration : ${{ matrix.configuration }}
53- runs-on : ${{ matrix.os }}
5458 build-switches : -p:SkipSignAssembly=true
5559 build : true # we need to build due to xUnitv3
5660 restore : true # we need to restore due to xUnitv3
61+ download-pattern : build-${{ matrix.configuration }}-${{ matrix.arch }}
62+
63+ test_windows :
64+ name : call-test-windows
65+ needs : [build]
66+ strategy :
67+ fail-fast : false
68+ matrix :
69+ configuration : [Debug, Release]
70+ arch : [X64, ARM64]
71+ uses : codebeltnet/jobs-dotnet-test/.github/workflows/default.yml@v3
72+ with :
73+ runs-on : ${{ matrix.arch == 'ARM64' && 'windows-11-arm' || 'windows-2025' }}
74+ configuration : ${{ matrix.configuration }}
75+ build-switches : -p:SkipSignAssembly=true
76+ build : true # we need to build due to xUnitv3
77+ restore : true # we need to restore due to xUnitv3
78+ download-pattern : build-${{ matrix.configuration }}-${{ matrix.arch }}
5779
5880 sonarcloud :
5981 name : call-sonarcloud
60- needs : [build, test ]
82+ needs : [build, test_linux, test_windows ]
6183 uses : codebeltnet/jobs-sonarcloud/.github/workflows/default.yml@v3
6284 with :
6385 organization : geekle
@@ -67,23 +89,23 @@ jobs:
6789
6890 codecov :
6991 name : call-codecov
70- needs : [build, test ]
92+ needs : [build, test_linux, test_windows ]
7193 uses : codebeltnet/jobs-codecov/.github/workflows/default.yml@v1
7294 with :
7395 repository : codebeltnet/benchmarkdotnet
7496 secrets : inherit
7597
7698 codeql :
7799 name : call-codeql
78- needs : [build, test ]
100+ needs : [build, test_linux, test_windows ]
79101 uses : codebeltnet/jobs-codeql/.github/workflows/default.yml@v3
80102 permissions :
81103 security-events : write
82104
83105 deploy :
84106 if : github.event_name != 'pull_request'
85107 name : call-nuget
86- needs : [build, pack, test , sonarcloud, codecov, codeql]
108+ needs : [build, pack, test_linux, test_windows , sonarcloud, codecov, codeql]
87109 uses : codebeltnet/jobs-nuget-push/.github/workflows/default.yml@v2
88110 with :
89111 version : ${{ needs.build.outputs.version }}
0 commit comments