@@ -112,7 +112,7 @@ jobs:
112
112
group : windows-build-${{ github.ref }}
113
113
cancel-in-progress : ${{ needs.ci-config.outputs.skip_concurrent == 'yes' }}
114
114
steps :
115
- - uses : actions/checkout@v3
115
+ - uses : actions/checkout@v4
116
116
- uses : git-for-windows/setup-git-for-windows-sdk@v1
117
117
- name : build
118
118
shell : bash
@@ -123,7 +123,7 @@ jobs:
123
123
- name : zip up tracked files
124
124
run : git archive -o artifacts/tracked.tar.gz HEAD
125
125
- name : upload tracked files and build artifacts
126
- uses : actions/upload-artifact@v3
126
+ uses : actions/upload-artifact@v4
127
127
with :
128
128
name : windows-artifacts
129
129
path : artifacts
@@ -140,7 +140,7 @@ jobs:
140
140
cancel-in-progress : ${{ needs.ci-config.outputs.skip_concurrent == 'yes' }}
141
141
steps :
142
142
- name : download tracked files and build artifacts
143
- uses : actions/download-artifact@v3
143
+ uses : actions/download-artifact@v4
144
144
with :
145
145
name : windows-artifacts
146
146
path : ${{github.workspace}}
@@ -157,7 +157,7 @@ jobs:
157
157
run : ci/print-test-failures.sh
158
158
- name : Upload failed tests' directories
159
159
if : failure() && env.FAILED_TEST_ARTIFACTS != ''
160
- uses : actions/upload-artifact@v3
160
+ uses : actions/upload-artifact@v4
161
161
with :
162
162
name : failed-tests-windows
163
163
path : ${{env.FAILED_TEST_ARTIFACTS}}
@@ -169,38 +169,37 @@ jobs:
169
169
NO_PERL : 1
170
170
GIT_CONFIG_PARAMETERS : " 'user.name=CI' 'user.email=ci@git'"
171
171
runs-on : windows-latest
172
+ strategy :
173
+ matrix :
174
+ arch : [x64, arm64]
172
175
concurrency :
173
- group : vs-build-${{ github.ref }}
176
+ group : vs-build-${{ github.ref }}-${{ matrix.arch }}
174
177
cancel-in-progress : ${{ needs.ci-config.outputs.skip_concurrent == 'yes' }}
175
178
steps :
176
- - uses : actions/checkout@v3
179
+ - uses : actions/checkout@v4
177
180
- uses : git-for-windows/setup-git-for-windows-sdk@v1
178
181
- name : initialize vcpkg
179
- uses : actions/checkout@v3
182
+ uses : actions/checkout@v4
180
183
with :
181
184
repository : ' microsoft/vcpkg'
182
185
path : ' compat/vcbuild/vcpkg'
183
186
- name : download vcpkg artifacts
184
- shell : powershell
185
- run : |
186
- $urlbase = "https://dev.azure.com/git/git/_apis/build/builds"
187
- $id = ((Invoke-WebRequest -UseBasicParsing "${urlbase}?definitions=9&statusFilter=completed&resultFilter=succeeded&`$top=1").content | ConvertFrom-JSON).value[0].id
188
- $downloadUrl = ((Invoke-WebRequest -UseBasicParsing "${urlbase}/$id/artifacts").content | ConvertFrom-JSON).value[0].resource.downloadUrl
189
- (New-Object Net.WebClient).DownloadFile($downloadUrl, "compat.zip")
190
- Expand-Archive compat.zip -DestinationPath . -Force
191
- Remove-Item compat.zip
187
+ uses : git-for-windows/get-azure-pipelines-artifact@v0
188
+ with :
189
+ repository : git/git
190
+ definitionId : 9
192
191
- name : add msbuild to PATH
193
192
uses : microsoft/setup-msbuild@v1
194
193
- name : copy dlls to root
195
194
shell : cmd
196
- run : compat\vcbuild\vcpkg_copy_dlls.bat release
195
+ run : compat\vcbuild\vcpkg_copy_dlls.bat release ${{ matrix.arch }}-windows
197
196
- name : generate Visual Studio solution
198
197
shell : bash
199
198
run : |
200
- cmake `pwd`/contrib/buildsystems/ -DCMAKE_PREFIX_PATH=`pwd`/compat/vcbuild/vcpkg/installed/x64 -windows \
201
- -DNO_GETTEXT=YesPlease -DPERL_TESTS=OFF -DPYTHON_TESTS=OFF -DCURL_NO_CURL_CMAKE=ON
199
+ cmake `pwd`/contrib/buildsystems/ -DCMAKE_PREFIX_PATH=`pwd`/compat/vcbuild/vcpkg/installed/${{ matrix.arch }} -windows \
200
+ -DNO_GETTEXT=YesPlease -DPERL_TESTS=OFF -DPYTHON_TESTS=OFF -DCURL_NO_CURL_CMAKE=ON -DCMAKE_GENERATOR_PLATFORM=${{ matrix.arch }} -DVCPKG_ARCH=${{ matrix.arch }}-windows -DHOST_CPU=${{ matrix.arch }}
202
201
- name : MSBuild
203
- run : msbuild git.sln -property:Configuration=Release -property:Platform=x64 -maxCpuCount:4 -property:PlatformToolset=v142
202
+ run : msbuild git.sln -property:Configuration=Release -property:Platform=${{ matrix.arch }} -maxCpuCount:4 -property:PlatformToolset=v142
204
203
- name : bundle artifact tar
205
204
shell : bash
206
205
env :
@@ -212,9 +211,9 @@ jobs:
212
211
- name : zip up tracked files
213
212
run : git archive -o artifacts/tracked.tar.gz HEAD
214
213
- name : upload tracked files and build artifacts
215
- uses : actions/upload-artifact@v3
214
+ uses : actions/upload-artifact@v4
216
215
with :
217
- name : vs-artifacts
216
+ name : vs-artifacts-${{ matrix.arch }}
218
217
path : artifacts
219
218
vs-test :
220
219
name : win+VS test
@@ -230,9 +229,9 @@ jobs:
230
229
steps :
231
230
- uses : git-for-windows/setup-git-for-windows-sdk@v1
232
231
- name : download tracked files and build artifacts
233
- uses : actions/download-artifact@v3
232
+ uses : actions/download-artifact@v4
234
233
with :
235
- name : vs-artifacts
234
+ name : vs-artifacts-x64
236
235
path : ${{github.workspace}}
237
236
- name : extract tracked files and build artifacts
238
237
shell : bash
@@ -248,7 +247,7 @@ jobs:
248
247
run : ci/print-test-failures.sh
249
248
- name : Upload failed tests' directories
250
249
if : failure() && env.FAILED_TEST_ARTIFACTS != ''
251
- uses : actions/upload-artifact@v3
250
+ uses : actions/upload-artifact@v4
252
251
with :
253
252
name : failed-tests-windows
254
253
path : ${{env.FAILED_TEST_ARTIFACTS}}
@@ -297,15 +296,15 @@ jobs:
297
296
runs_on_pool : ${{matrix.vector.pool}}
298
297
runs-on : ${{matrix.vector.pool}}
299
298
steps :
300
- - uses : actions/checkout@v3
299
+ - uses : actions/checkout@v4
301
300
- run : ci/install-dependencies.sh
302
301
- run : ci/run-build-and-tests.sh
303
302
- name : print test failures
304
303
if : failure() && env.FAILED_TEST_ARTIFACTS != ''
305
304
run : ci/print-test-failures.sh
306
305
- name : Upload failed tests' directories
307
306
if : failure() && env.FAILED_TEST_ARTIFACTS != ''
308
- uses : actions/upload-artifact@v3
307
+ uses : actions/upload-artifact@v4
309
308
with :
310
309
name : failed-tests-${{matrix.vector.jobname}}
311
310
path : ${{env.FAILED_TEST_ARTIFACTS}}
@@ -342,7 +341,7 @@ jobs:
342
341
runs-on : ubuntu-latest
343
342
container : ${{matrix.vector.image}}
344
343
steps :
345
- - uses : actions/checkout@v3
344
+ - uses : actions/checkout@v4
346
345
if : matrix.vector.jobname != 'linux32'
347
346
- uses : actions/checkout@v1
348
347
if : matrix.vector.jobname == 'linux32'
@@ -353,13 +352,13 @@ jobs:
353
352
run : ci/print-test-failures.sh
354
353
- name : Upload failed tests' directories
355
354
if : failure() && env.FAILED_TEST_ARTIFACTS != '' && matrix.vector.jobname != 'linux32'
356
- uses : actions/upload-artifact@v3
355
+ uses : actions/upload-artifact@v4
357
356
with :
358
357
name : failed-tests-${{matrix.vector.jobname}}
359
358
path : ${{env.FAILED_TEST_ARTIFACTS}}
360
359
- name : Upload failed tests' directories
361
360
if : failure() && env.FAILED_TEST_ARTIFACTS != '' && matrix.vector.jobname == 'linux32'
362
- uses : actions/upload-artifact@v1
361
+ uses : actions/upload-artifact@v4
363
362
with :
364
363
name : failed-tests-${{matrix.vector.jobname}}
365
364
path : ${{env.FAILED_TEST_ARTIFACTS}}
@@ -373,7 +372,7 @@ jobs:
373
372
group : static-analysis-${{ github.ref }}
374
373
cancel-in-progress : ${{ needs.ci-config.outputs.skip_concurrent == 'yes' }}
375
374
steps :
376
- - uses : actions/checkout@v3
375
+ - uses : actions/checkout@v4
377
376
- run : ci/install-dependencies.sh
378
377
- run : ci/run-static-analysis.sh
379
378
- run : ci/check-directional-formatting.bash
@@ -396,7 +395,7 @@ jobs:
396
395
artifact : sparse-20.04
397
396
- name : Install the current `sparse` package
398
397
run : sudo dpkg -i sparse-20.04/sparse_*.deb
399
- - uses : actions/checkout@v3
398
+ - uses : actions/checkout@v4
400
399
- name : Install other dependencies
401
400
run : ci/install-dependencies.sh
402
401
- run : make sparse
@@ -411,6 +410,6 @@ jobs:
411
410
jobname : Documentation
412
411
runs-on : ubuntu-latest
413
412
steps :
414
- - uses : actions/checkout@v3
413
+ - uses : actions/checkout@v4
415
414
- run : ci/install-dependencies.sh
416
415
- run : ci/test-documentation.sh
0 commit comments