fix(ci): write WinFsp registry key for winfsp-sys build script#234
Conversation
winfsp-sys build.rs reads HKLM\SOFTWARE\WOW6432Node\WinFsp\InstallDir to find WinFsp headers and libs. The MSI doesn't reliably write this registry key on GitHub Actions runners. Explicitly create the key after MSI install, with verification that lib/ and inc/ directories exist. Also removes WINFSP_INSTALL_DIR env var which winfsp-sys doesn't check. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> Entire-Checkpoint: fdcae8003e0c
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review infoConfiguration used: Path: .coderabbit.yaml Review profile: CHILL Plan: Pro 📒 Files selected for processing (1)
WalkthroughModifies the Windows staging deployment workflow to create/validate a WinFsp registry key and InstallDir, verify expected subdirectories, log the path, and remove the explicit Changes
Estimated code review effort🎯 2 (Simple) | ⏱️ ~10 minutes Possibly related PRs
🚥 Pre-merge checks | ✅ 3✅ Passed checks (3 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
Actionable comments posted: 1
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Inline comments:
In @.github/workflows/deploy-staging.yml:
- Around line 195-198: After reading the registry with Get-ItemProperty into
$regVal, explicitly assert that $regVal and $regVal.InstallDir exist and match
the expected $installDir (instead of only Write-Host); if the registry read
returned $null or InstallDir is empty or not equal to $installDir, throw an
error so the step fails fast. Update the block that uses Get-ItemProperty,
$regVal and the InstallDir checks to validate the retrieved value (and consider
removing -ErrorAction SilentlyContinue) before proceeding to the existing
Test-Path checks for "$installDir\lib" and "$installDir\inc".
Use -ErrorAction Stop and value comparison instead of SilentlyContinue to fail fast if the registry key wasn't persisted correctly. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> Entire-Checkpoint: 8c7de1c46cb7
Summary
winfsp-sysbuild.rs readsHKLM\SOFTWARE\WOW6432Node\WinFsp\InstallDirto locate WinFsp headers and libs — there is no env var fallbacklib/andinc/directories existWINFSP_INSTALL_DIRenv var from the previous PR (fix(ci): fix Windows desktop staging build and add Linux desktop build #232) whichwinfsp-sysdoesn't actually checkRoot cause
The
winfspcrate'ssystemfeature (enabled in Cargo.toml) triggers a registry lookup inwinfsp-sysbuild.rs. CI only runscargo check/cargo testwhich use the build-dependency (withoutsystemfeature, uses bundled libs). The stagingtauri buildis the first workflow to do a full release build with thesystemfeature.Test plan
🤖 Generated with Claude Code
Summary by CodeRabbit