Skip to content

There is no way to enable the necessary features of the SQL Server #3522

Closed as not planned

Description

Brief description of your issue

I'm using the WinGet configuration for installing some necessary applications with components by creating a Winget configuration (YAML) file and using that from the Dev Home. I did all of them except the SQL Server features. I'm able to install the SQL server, but I could not enable (Install) the "Full-text search" and "FileStream" features of the SQL Server.

Steps to reproduce

There is my configuration file. The first step is passing but the second is not:

#yaml-language-server: $schema=https://aka.ms/configuration-dsc-schema/0.2
properties:
  resources:
    - resource: Microsoft.WinGet.DSC/WinGetPackage
      id: sqlServerPackage
      directives:
        description: Install Microsoft SQL Server 2022 Developer
        allowPrerelease: true
      settings:
        id: Microsoft.SQLServer.2022.Developer
        source: winget
    - resource: Microsoft.SqlServerDsc/SqlServerFeature
      dependsOn:
        - sqlServerPackage
      directives:
        description: Enable necessary SQL Server features
      settings:
        features: 'SQLENGINE, FULLTEXT'
        filestreamlevel: 1
  configurationVersion: 0.2.0

Expected behavior

Somehow we should be doing that because a lot of times just installing the SQL Server is not enough to use that without enabling necessary features or changing the configuration.

Note: If there is a way to do that by a PowerShell script, please show me an example of how to call the PowerShell script from the winget Yamle configuration, until implementing (fixing) this functionality. I did not find any thing for that.

Actual behavior

It is failing from the second step without any errors.

Environment

I am using the latest version of WinGet and Windows 11

Activity

  1. added
    Issue-FeatureThis is a feature request for the Windows Package Manager client.
    and removed
    Needs-TriageIssue needs to be triaged
    on Aug 15, 2023
  2. stephengillie commented on Aug 15, 2023

    @stephengillie

    Feature request: Support configuration files. (We might already have this request in another Issue.)

  3. MirolimMajidov commented on Aug 16, 2023

    @MirolimMajidov
    Author

    Feature request: Support configuration files. (We might already have this request in another Issue.)

    Stephen Gillie (@stephengillie)
    Our company has close to 100 software engineers. So, we are planning to use the Dev Home to decrease the setting up the dev environments. As I said, we have prepared the configuration files to install and customize all necessary applications except the MS SQL Server. That means there is still manual work to install the SQL Server.

    You already said you have plans to implement this feature. How long do you think it might take?
    If it takes more than a week or a month, could you (someone else) show me a workaround until implementing this functionality?

  4. stephengillie commented on Aug 17, 2023

    @stephengillie

    Hi Mirolim Majidov (@MirolimMajidov),

    Thanks for explaining your situation and goals. I'm not sure even if this is on our roadmap currently. I'll defer to Demitrius Nelon (@denelon) for the best info about our future feature plans.

  5. denelon commented on Aug 18, 2023

    @denelon
    Collaborator

    Mirolim Majidov (@MirolimMajidov), I did a quick search for Microsoft.SqlServerDsc at the PowerShell gallery. I didn't see any results. Where did you locate that PowerShell module?

  6. denelon commented on Aug 18, 2023

    @denelon
    Collaborator

    There is a DSC Script Resource. The primary thing to be cautious of is to make sure your script is idempotent so it can be run multiple times without causing a failure or other unintended side effects.

  7. MirolimMajidov commented on Aug 31, 2023

    @MirolimMajidov
    Author

    Demitrius Nelon (@denelon) I'm not familiar with the Microsoft.SqlServerDsc, but it seems we can do that with DSC SqlServer script.

  8. denelon commented on Oct 13, 2023

    @denelon
    Collaborator

    Johan Ljunggren (@johlju) I'm not familiar with SQL DSC. Do you have any docs or anything we could point a user at?

    We could also work on a sample configuration over at Dev Home Sample Configurations.

  9. johlju commented on Oct 15, 2023

    @johlju

    I have no knowledge of how the configuration file mentioned above is used and where the source for Microsoft.SqlServerDsc/SqlServerFeature is comig from. Please provide more details. But I know it is not possible to enable features post-install, other than running install again with the correct arguments. The manifest Microsoft.SQLServer.2022.Developer.installer.yaml does not seem to have any argument options at all? A manifest needs to handle all of these arguments in a real scenario: https://learn.microsoft.com/en-us/sql/database-engine/install-windows/install-sql-server-from-the-command-prompt

    There is DSC resource SqlSetup that can install SQL Server: https://github.com/dsccommunity/SqlServerDsc/wiki/SqlSetup

    There are a command (Install-SqlDscServer) in SqlServerDsc that can install SQL Server using PowerShell: https://github.com/dsccommunity/SqlServerDsc/wiki/Install%E2%80%91SqlDscServer

    Not sure if this helps anything.

  10. johlju commented on Oct 15, 2023

    @johlju

    There is also a new DSC resource in the works that better work with the latests SQL Server (support more options): dsccommunity/SqlServerDsc#1912

  11. tristanbarcelon commented on Apr 3, 2025

    @tristanbarcelon

    @MirolimMajidov, I did a quick search for Microsoft.SqlServerDsc at the PowerShell gallery. I didn't see any results. Where did you locate that PowerShell module?

    This is the one I suggest you try: https://www.powershellgallery.com/packages/SqlServerDsc using SqlSetup DSC resource: https://github.com/dsccommunity/SqlServerDsc/wiki/SqlSetup

  12. denelon commented on Jul 27, 2026

    @denelon
    Collaborator

    Thanks for the detailed configuration and repro. This isn't really a WinGet-specific request, so we're going to close it here — but there are concrete paths to unblock the scenario.

    Issue summary

    • After installing SQL Server via Microsoft.WinGet.DSC/WinGetPackage, enabling features like Full-Text Search and FileStream via Microsoft.SqlServerDsc/SqlServerFeature fails silently. The ask is a way to enable SQL Server features from a WinGet Configuration file.

    Why this is out of scope for WinGet

    • WinGet Configuration is a host for DSC resources — it invokes whatever resources you reference and reports their results. Enabling SQL Server features is the responsibility of a DSC resource that knows how to configure SQL Server, not of WinGet itself. The failure here is in the resource layer, not in WinGet's configuration processing.

    Recommended paths

    1. Use the appropriate SQL Server DSC resource. Feature enablement (SQLENGINE, FULLTEXT, FileStream, etc.) is handled by the SqlServerDsc module's setup resource (e.g. SqlSetup) rather than a standalone "feature" resource. Behavior, bugs, and enhancement requests for that belong in that module's repo. If a suitable command-based DSC v3 resource for this scenario doesn't exist, authoring one (or filing for it) in the relevant DSC resource project is the right fix.
    2. Interim unblock with a Script resource. Until a resource cleanly covers your case, you can run the SQL Server setup with the desired feature flags from configuration using the Script resource (from PSDscResources), which lets you provide GetScript / TestScript / SetScript. Sketch:
        - resource: PSDscResources/Script
          dependsOn:
            - sqlServerPackage
          directives:
            description: Enable SQL Server features
          settings:
            GetScript: "@{ Result = '' }"
            TestScript: "return $false"
            SetScript: |
              # invoke SQL Server setup with the desired features, e.g.:
              & 'C:\path\to\setup.exe' /q /Action=Install /Features=FULLTEXT /FILESTREAMLEVEL=1 /IAcceptSQLServerLicenseTerms

    Since the request is about SQL Server feature configuration via a DSC resource rather than WinGet behavior, closing as not planned.

    Related

    • microsoft/winget-dsc (for authoring/adopting DSC resources)

    Drafted with the help of GitHub Copilot.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    Command-ConfigureIssue related to WinGet ConfigurationIssue-FeatureThis is a feature request for the Windows Package Manager client.

    Projects

    No projects

      Milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions