Invoke-DbaAdvancedInstall - Add /q switch for Server Core compatibility#9898
Conversation
Fixes #9707 SQL Server setup.exe on Windows Server Core requires the /q (quiet mode) command-line parameter to be passed directly to setup.exe, not just in the configuration file. This change adds the /q switch to the installation parameters to ensure compatibility with Server Core installations. Co-authored-by: Chrissy LeMaire <potatoqualitee@users.noreply.github.com>
Code Review - PR #9898SummaryThis PR adds the ✅ Positive Feedback1. Excellent Problem Analysis 2. Minimal, Surgical Change 3. Good Documentation 4. Backward Compatibility 5. PR Title Follows Convention 📋 Observations & Considerations1. Test Coverage Recommendation: Consider adding a test that verifies the 2. Code Style Check $installParams = $ArgumentList
$installParams += "/q"
$installParams += "/CONFIGURATIONFILE=\"$remoteConfig\""The code doesn't use splatting here, which is correct per CLAUDE.md since these are simple array additions, not cmdlet parameter calls. No style violations detected. 3. Backtick Usage 🔍 Security & PerformanceSecurity: No security concerns. The Performance: No performance impact. This is a command-line argument that affects the installation UI behavior, not execution time. Error Handling: The existing error handling in ✅ Final RecommendationAPPROVE - This is a clean, well-documented fix for a legitimate Windows Server Core compatibility issue. The change is minimal, safe, and solves the reported problem without introducing risk. The PR is ready to merge as-is. Optional enhancement would be to add a regression test, but given the mocked test environment and the simplicity of the fix, it's not strictly necessary. Great work on the investigation and fix! 🎉 |
andreasjordan
left a comment
There was a problem hiding this comment.
Looks good to me.
|
thank you! me as well. i dont reallly have a setup to test it but looked around and seems reasonable. im also surprised it wasnt there before. |
Summary
Adds the /q (quiet mode) command-line switch to SQL Server setup.exe invocation to fix installations on Windows Server Core.
Changes
Invoke-DbaAdvancedInstall.ps1to include/qparameter in the setup.exe command lineQUIET = "True"setting in the configuration fileFixes
Closes #9707
Windows Server Core requires the /q or /qs command-line parameter to be passed directly to setup.exe, not just in the configuration file. Per Microsoft's documentation:
🤖 Generated with Claude Code