@@ -28,28 +28,6 @@ defaults:
2828 shell : bash
2929
3030jobs :
31- windows-case-sensitivity-probe :
32- runs-on : namespace-profile-windows-4c-8g
33- steps :
34- - name : Inspect case-sensitive directory support
35- shell : pwsh
36- run : |
37- Get-Volume | Format-Table DriveLetter, FileSystem, FileSystemLabel
38- $key = 'HKLM:\SYSTEM\CurrentControlSet\Control\FileSystem'
39- Get-ItemProperty -Path $key -Name NtfsEnableDirCaseSensitivity -ErrorAction SilentlyContinue
40- New-ItemProperty -Path $key -Name NtfsEnableDirCaseSensitivity -PropertyType DWord -Value 1 -Force | Out-Null
41- Get-ItemProperty -Path $key -Name NtfsEnableDirCaseSensitivity
42- foreach ($root in @([System.IO.Path]::GetTempPath(), $env:RUNNER_TEMP)) {
43- $probe = Join-Path $root ('vp-case-probe-' + [guid]::NewGuid().ToString('N'))
44- New-Item -ItemType Directory -Path $probe -Force | Out-Null
45- Write-Output "Testing $probe"
46- fsutil.exe fsinfo volumeinfo ([System.IO.Path]::GetPathRoot($probe))
47- fsutil.exe file setCaseSensitiveInfo $probe enable
48- Write-Output "setCaseSensitiveInfo exit: $LASTEXITCODE"
49- fsutil.exe file queryCaseSensitiveInfo $probe
50- }
51- exit 0
52-
5331 detect-changes :
5432 runs-on : ubuntu-latest
5533 permissions :
@@ -1057,15 +1035,6 @@ jobs:
10571035 - uses : taiki-e/checkout-action@7d1e50e93dc4fb3bba58f85018fadf77898aee8b # v1.4.2
10581036 - uses : ./.github/actions/clone
10591037
1060- # Windows Server images without WSL can leave per-directory NTFS case
1061- # sensitivity disabled. The shim regression fixture enables it on an
1062- # empty directory and asserts that differently cased names are distinct.
1063- - name : Enable per-directory NTFS case sensitivity
1064- shell : pwsh
1065- run : |
1066- New-ItemProperty -Path 'HKLM:\SYSTEM\CurrentControlSet\Control\FileSystem' `
1067- -Name NtfsEnableDirCaseSensitivity -PropertyType DWord -Value 1 -Force | Out-Null
1068-
10691038 # Route TEMP/TMP onto a Dev Drive (ReFS): staged fixture workspaces
10701039 # live under os.tmpdir() and must resolve pnpm junction reparse points
10711040 # cleanly. NTFS-on-C: preserves the junction-target backslashes during
@@ -1155,6 +1124,10 @@ jobs:
11551124 cargo-nextest nextest run --archive-file windows-snapshot-tests.tar.zst --workspace-remap . --no-fail-fast --partition hash:${{ matrix.shard }}/3
11561125 env :
11571126 RUST_BACKTRACE : ' 1'
1127+ # Rust's GetTempPath2 ignores TEMP/TMP under the SYSTEM account.
1128+ # Use the runner's NTFS workspace volume: C:\Windows\SystemTemp
1129+ # rejects the case-sensitive directory flag on these hosts.
1130+ SystemTemp : ${{ runner.temp }}
11581131 # Keep Windows env parity with the `test` recipe in justfile.
11591132 __COMPAT_LAYER : RunAsInvoker
11601133
0 commit comments