Skip to content

Commit 5d68ef3

Browse files
committed
Run Windows CI on a separate ReFS drive
(see astral-sh/uv#3522)
1 parent ce80347 commit 5d68ef3

File tree

1 file changed

+43
-1
lines changed

1 file changed

+43
-1
lines changed

.github/workflows/test.yml

Lines changed: 43 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ jobs:
1313
test:
1414
strategy:
1515
matrix:
16-
os: ["ubuntu-latest", "macos-14", "windows-latest"]
16+
os: ["ubuntu-latest", "macos-14"]
1717
runs-on: ${{ matrix.os }}
1818
timeout-minutes: 15
1919
steps:
@@ -25,3 +25,45 @@ jobs:
2525
run: cargo test --verbose --package fidget --lib
2626
- name: Run doc tests
2727
run: cargo test --verbose --package fidget --doc
28+
29+
test-windows:
30+
runs-on: windows-latest
31+
timeout-minutes: 15
32+
steps:
33+
- name: Create dev drive using ReFS
34+
run: |
35+
$Volume = New-VHD -Path C:/fidget_dev_drive.vhdx -SizeBytes 10GB |
36+
Mount-VHD -Passthru |
37+
Initialize-Disk -Passthru |
38+
New-Partition -AssignDriveLetter -UseMaximumSize |
39+
Format-Volume -FileSystem ReFS -Confirm:$false -Force
40+
Write-Output $Volume
41+
Write-Output "DEV_DRIVE=$($Volume.DriveLetter):" >> $env:GITHUB_ENV
42+
- uses: actions/checkout@v4
43+
- name: Copy repo to dev drive
44+
run: |
45+
Copy-Item -Path "${{ github.workspace }}" -Destination "${{ env.DEV_DRIVE }}/fidget" -Recurse
46+
- uses: Swatinem/rust-cache@v2
47+
with:
48+
workspaces: ${{ env.DEV_DRIVE }}/fidget
49+
env:
50+
CARGO_HOME: ${{ env.DEV_DRIVE }}/.cargo
51+
RUSTUP_HOME: ${{ env.DEV_DRIVE }}/.rustup
52+
- name: Build tests
53+
working-directory: ${{ env.DEV_DRIVE }}/fidget
54+
env:
55+
CARGO_HOME: ${{ env.DEV_DRIVE }}/.cargo
56+
RUSTUP_HOME: ${{ env.DEV_DRIVE }}/.rustup
57+
run: cargo test --verbose --package fidget --no-run
58+
- name: Run crate tests
59+
working-directory: ${{ env.DEV_DRIVE }}/fidget
60+
env:
61+
CARGO_HOME: ${{ env.DEV_DRIVE }}/.cargo
62+
RUSTUP_HOME: ${{ env.DEV_DRIVE }}/.rustup
63+
run: cargo test --verbose --package fidget --lib
64+
- name: Run doc tests
65+
working-directory: ${{ env.DEV_DRIVE }}/fidget
66+
env:
67+
CARGO_HOME: ${{ env.DEV_DRIVE }}/.cargo
68+
RUSTUP_HOME: ${{ env.DEV_DRIVE }}/.rustup
69+
run: cargo test --verbose --package fidget --doc

0 commit comments

Comments
 (0)