1- name : Asp.Versioning Ext. CI/CD Pipeline
1+ name : Asp.Versioning Ext. CI Pipeline
22on :
33 pull_request :
44 branches : [main]
@@ -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 : versioning.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 :
3033 GCP_TOKEN : ${{ secrets.GCP_TOKEN }}
3134 GCP_BUCKETNAME : ${{ secrets.GCP_BUCKETNAME }}
@@ -40,26 +43,45 @@ jobs:
4043 with :
4144 configuration : ${{ matrix.configuration }}
4245 version : ${{ needs.build.outputs.version }}
46+ download-build-artifact-pattern : build-${{ matrix.configuration }}-X64
4347
44- test :
45- name : call-test
48+ test_linux :
49+ name : call-test-linux
4650 needs : [build]
4751 strategy :
4852 fail-fast : false
4953 matrix :
50- os : [ubuntu-24.04, windows-2025, ubuntu-24.04-arm, windows-11-arm ]
54+ arch : [X64, ARM64 ]
5155 configuration : [Debug, Release]
5256 uses : codebeltnet/jobs-dotnet-test/.github/workflows/default.yml@v3
5357 with :
58+ runs-on : ${{ matrix.arch == 'ARM64' && 'ubuntu-24.04-arm' || 'ubuntu-24.04' }}
5459 configuration : ${{ matrix.configuration }}
55- runs-on : ${{ matrix.os }}
5660 build-switches : -p:SkipSignAssembly=true
5761 restore : true
5862 build : true # needed for xunitv3
63+ download-pattern : build-${{ matrix.configuration }}-${{ matrix.arch }}
64+
65+ test_windows :
66+ name : call-test-windows
67+ needs : [build]
68+ strategy :
69+ fail-fast : false
70+ matrix :
71+ arch : [X64, ARM64]
72+ configuration : [Debug, Release]
73+ uses : codebeltnet/jobs-dotnet-test/.github/workflows/default.yml@v3
74+ with :
75+ runs-on : ${{ matrix.arch == 'ARM64' && 'windows-11-arm' || 'windows-2025' }}
76+ configuration : ${{ matrix.configuration }}
77+ build-switches : -p:SkipSignAssembly=true
78+ restore : true
79+ build : true # needed for xunitv3
80+ download-pattern : build-${{ matrix.configuration }}-${{ matrix.arch }}
5981
6082 sonarcloud :
6183 name : call-sonarcloud
62- needs : [build,test ]
84+ needs : [build,test_linux,test_windows ]
6385 uses : codebeltnet/jobs-sonarcloud/.github/workflows/default.yml@v3
6486 with :
6587 organization : geekle
@@ -69,23 +91,23 @@ jobs:
6991
7092 codecov :
7193 name : call-codecov
72- needs : [build,test ]
94+ needs : [build,test_linux,test_windows ]
7395 uses : codebeltnet/jobs-codecov/.github/workflows/default.yml@v1
7496 with :
7597 repository : codebeltnet/asp-versioning
7698 secrets : inherit
7799
78100 codeql :
79101 name : call-codeql
80- needs : [build,test ]
102+ needs : [build,test_linux,test_windows ]
81103 uses : codebeltnet/jobs-codeql/.github/workflows/default.yml@v3
82104 permissions :
83105 security-events : write
84106
85107 deploy :
86108 if : github.event_name != 'pull_request'
87109 name : call-nuget
88- needs : [build, pack, test , sonarcloud, codecov, codeql]
110+ needs : [build, pack, test_linux, test_windows , sonarcloud, codecov, codeql]
89111 uses : codebeltnet/jobs-nuget-push/.github/workflows/default.yml@v2
90112 with :
91113 version : ${{ needs.build.outputs.version }}
0 commit comments