powershelldba.de
REF: PSDB-SETUP-CLI-2026 SCOPE: Start-SqlSetup.ps1 STATUS: REMOVED
CLI

The headless CLI has been retired.

SQLSetupTool's GUI moved from PowerShell/WinForms to a compiled .NET tool (SQLSetupTool.exe). Start-SqlSetup.ps1 depended on the same PowerShell modules the old GUI used for configuration, validation and dependency handling; those were ported to C# and are no longer present as standalone .psm1 files, so the headless script can no longer run. It has been removed from the repository rather than shipped broken.

What this means

Unattended, scripted installs are not currently supported.

There is no replacement CLI yet. Every SQL Server install goes through the GUI wizard (Setup); there is currently no way to drive an install from a provisioning pipeline without clicking through it. If this matters for your use case, get in touch.

Known gap

AlwaysOn Availability Group setup.

The CLI's -AlwaysOn flag called Invoke-sqmAlwaysOnSetup from the separate sqmSQLTool module to create a full Availability Group after install, WSFC/node detection, listener creation, automatic seeding, secondary joins, login sync. The GUI never had an equivalent, so removing the CLI removes SQLSetupTool's only in-tool path to AG creation.

Workaround: the underlying function is unaffected and still works standalone, run it directly against an already-installed instance:

Import-Module sqmSQLTool
Invoke-sqmAlwaysOnSetup -AvailabilityGroupName ProdAG -Database AppDb

# Dry run first:
Invoke-sqmAlwaysOnSetup -AvailabilityGroupName ProdAG -Database AppDb -WhatIf

See the sqmSQLTool repository for the full Invoke-sqmAlwaysOnSetup / New-sqmAvailabilityGroup reference.