@@ -21,14 +21,41 @@ jobs:
2121 matrix :
2222 os : [ubuntu-latest, ubuntu-24.04-arm, windows-latest, windows-11-arm, macos-13, macos-14]
2323 steps :
24- - uses : fox-it/dissect-workflow-templates/.github/actions/git-checkout@main
24+ - uses : actions/checkout@v4
25+ with :
26+ fetch-depth : 0
27+ lfs : true
28+
29+ - if : ${{ matrix.os == 'windows-11-arm' }}
30+ run : git lfs install
31+
32+ - name : Create LFS file list
33+ run : git lfs ls-files --long | cut -d ' ' -f1 | sort > .lfs-assets-id
34+
35+ - name : Cache LFS
36+ uses : actions/cache@v4
37+ with :
38+ path : .git/lfs
39+ key : lfs-${{ hashFiles('.lfs-assets-id') }}-v1
40+
41+ - name : Pull LFS
42+ run : git lfs pull
2543
2644 - if : runner.os == 'Linux' && runner.arch == 'X64'
2745 uses : docker/setup-qemu-action@v3
2846 with :
2947 platforms : all
3048
31- - run : curl https://sh.rustup.rs -sSf | sh -s -- -y --default-toolchain stable
49+ - if : ${{ matrix.os != 'windows-11-arm' }}
50+ run : curl https://sh.rustup.rs -sSf | sh -s -- -y --default-toolchain stable
51+
52+ - if : ${{ matrix.os == 'windows-11-arm' }}
53+ run : |
54+ Invoke-WebRequest -Uri "https://win.rustup.rs/aarch64" -OutFile "$env:TEMP\rustup-init.exe"
55+ & "$env:TEMP\rustup-init.exe" -y
56+ "$env:USERPROFILE\.cargo\bin" | Out-File -Append -Encoding ascii $env:GITHUB_PATH
57+ "CARGO_HOME=$env:USERPROFILE\.cargo" | Out-File -Append -Encoding ascii $env:GITHUB_ENV
58+ shell : pwsh
3259
3360 - uses : actions/setup-python@v5
3461 with :
3966 - run : python -m cibuildwheel --output-dir dist
4067 env :
4168 CIBW_ARCHS_LINUX : ${{ runner.arch == 'X64' && 'auto ppc64le s390x' || 'auto armv7l' }}
69+ CIBW_ARCHS_WINDOWS : ${{ runner.arch == 'X64' && 'AMD64 x86' || 'ARM64' }}
4270 CIBW_BEFORE_ALL_LINUX : curl -sSf https://sh.rustup.rs | sh -s -- -y
4371 CIBW_BEFORE_ALL_WINDOWS : ${{ runner.arch == 'X64' && 'rustup target add i686-pc-windows-msvc' || '' }}
4472 # Manually install setuptools-rust to enable building native wheels
0 commit comments