@@ -157,7 +157,7 @@ jobs:
157
157
run : build/shared/test.Magick.NET.sh
158
158
159
159
windows :
160
- name : Windows
160
+ name : ' Windows (Q8/Q16/Q16-HDRI) '
161
161
runs-on : windows-2022
162
162
163
163
permissions :
@@ -169,7 +169,7 @@ jobs:
169
169
fail-fast : false
170
170
matrix :
171
171
quantumName : [Q8, Q8-OpenMP, Q16, Q16-OpenMP, Q16-HDRI, Q16-HDRI-OpenMP]
172
- platformName : [x86, x64, arm64, Any CPU]
172
+ platformName : [x86, x64, Any CPU]
173
173
exclude :
174
174
- quantumName : Q8-OpenMP
175
175
platformName : x86
@@ -204,12 +204,87 @@ jobs:
204
204
working-directory : src/Magick.Native
205
205
206
206
- name : Build Magick.NET (Test)
207
- if : ${{ matrix.platformName != 'arm64' }}
208
207
run : ' ./build.Magick.NET.cmd ${{ matrix.quantumName }} "${{ matrix.platformName }}" Test'
209
208
working-directory : build/windows
210
209
211
210
- name : Test Magick.NET
212
- if : ${{ matrix.platformName != 'arm64' }}
211
+ run : ' ./test.Magick.NET.cmd ${{ matrix.quantumName }} "${{ matrix.platformName }}"'
212
+ working-directory : build/windows
213
+
214
+ - name : Build Magick.NET (Release)
215
+ run : ' ./build.Magick.NET.cmd ${{ matrix.quantumName }} "${{ matrix.platformName }}" Release'
216
+ working-directory : build/windows
217
+
218
+ - name : Set NuGet version
219
+ run : ./set.version.ps1
220
+ working-directory : publish
221
+
222
+ - name : Create NuGet package
223
+ run : ' ./publish.cmd ${{ matrix.quantumName }} "${{ matrix.platformName }}"'
224
+ working-directory : publish
225
+
226
+ - name : Azure CLI login with federated credential
227
+ if : github.event_name != 'pull_request'
228
+ uses : azure/login@v2
229
+ with :
230
+ client-id : ${{ secrets.AZURE_CLIENT_ID }}
231
+ tenant-id : ${{ secrets.AZURE_TENANT_ID }}
232
+ subscription-id : ${{ secrets.AZURE_SUBSCRIPTION_ID }}
233
+
234
+ - name : Sign NuGet package
235
+ if : ${{ github.event_name != 'pull_request' }}
236
+ run : sign code trusted-signing *.nupkg `
237
+ --trusted-signing-account ImageMagick `
238
+ --trusted-signing-certificate-profile ImageMagick `
239
+ --trusted-signing-endpoint https://eus.codesigning.azure.net `
240
+ --verbosity information
241
+ working-directory : publish/output
242
+
243
+ - name : Upload library
244
+ uses : actions/upload-artifact@v4
245
+ with :
246
+ name : ' Magick.NET-${{ matrix.quantumName }}-${{ matrix.platformName }}'
247
+ path : publish/output
248
+
249
+ windows_arm64 :
250
+ name : ' Windows (Q8/Q16/Q16-HDRI, arm64)'
251
+ runs-on : windows-11-arm
252
+
253
+ permissions :
254
+ id-token : write
255
+ contents : read
256
+ packages : read
257
+
258
+ strategy :
259
+ fail-fast : false
260
+ matrix :
261
+ quantumName : [Q8, Q8-OpenMP, Q16, Q16-OpenMP, Q16-HDRI, Q16-HDRI-OpenMP]
262
+ platformName : [arm64]
263
+
264
+ steps :
265
+
266
+ - name : Checkout
267
+ uses : actions/checkout@v4
268
+ with :
269
+ fetch-tags : true
270
+
271
+ - name : Install dependencies
272
+ run : ./install.dependencies.cmd
273
+ working-directory : build/windows
274
+
275
+ - name : Create nuget.config
276
+ run : ' ./create-nuget-config.cmd "dlemstra" "${{ secrets.GITHUB_TOKEN }}"'
277
+ working-directory : src/Magick.Native
278
+
279
+ - name : Install Magick.Native
280
+ run : ./install.cmd
281
+ working-directory : src/Magick.Native
282
+
283
+ - name : Build Magick.NET (Test)
284
+ run : ' ./build.Magick.NET.cmd ${{ matrix.quantumName }} "${{ matrix.platformName }}" Test'
285
+ working-directory : build/windows
286
+
287
+ - name : Test Magick.NET
213
288
run : ' ./test.Magick.NET.cmd ${{ matrix.quantumName }} "${{ matrix.platformName }}"'
214
289
working-directory : build/windows
215
290
0 commit comments