SqlServerDsc.psd1
@{ # Script module or binary module file associated with this manifest. RootModule = 'SqlServerDsc.psm1' # Version number of this module. ModuleVersion = '17.2.0' # ID used to uniquely identify this module GUID = '693ee082-ed36-45a7-b490-88b07c86b42f' # Author of this module Author = 'DSC Community' # Company or vendor of this module CompanyName = 'DSC Community' # Copyright statement for this module Copyright = 'Copyright the DSC Community contributors. All rights reserved.' # Description of the functionality provided by this module Description = 'This module contains commands and DSC resources for deployment and configuration of Microsoft SQL Server, SQL Server Reporting Services and Power BI Report Server.' # Minimum version of the Windows PowerShell engine required by this module PowerShellVersion = '5.0' # Minimum version of the common language runtime (CLR) required by this module CLRVersion = '4.0' # Functions to export from this module FunctionsToExport = @('Add-SqlDscNode','Add-SqlDscTraceFlag','Assert-SqlDscLogin','Complete-SqlDscFailoverCluster','Complete-SqlDscImage','Connect-SqlDscDatabaseEngine','ConvertFrom-SqlDscDatabasePermission','ConvertFrom-SqlDscServerPermission','ConvertTo-SqlDscDatabasePermission','ConvertTo-SqlDscEditionName','ConvertTo-SqlDscServerPermission','Disable-SqlDscAudit','Disable-SqlDscLogin','Disconnect-SqlDscDatabaseEngine','Enable-SqlDscAudit','Enable-SqlDscLogin','Get-SqlDscAgentAlert','Get-SqlDscAudit','Get-SqlDscConfigurationOption','Get-SqlDscDatabasePermission','Get-SqlDscInstalledInstance','Get-SqlDscLogin','Get-SqlDscManagedComputer','Get-SqlDscManagedComputerService','Get-SqlDscPreferredModule','Get-SqlDscRole','Get-SqlDscRSSetupConfiguration','Get-SqlDscServerPermission','Get-SqlDscStartupParameter','Get-SqlDscTraceFlag','Import-SqlDscPreferredModule','Initialize-SqlDscRebuildDatabase','Install-SqlDscBIReportServer','Install-SqlDscReportingService','Install-SqlDscServer','Invoke-SqlDscQuery','New-SqlDscAgentAlert','New-SqlDscAudit','New-SqlDscLogin','New-SqlDscRole','Remove-SqlDscAgentAlert','Remove-SqlDscAudit','Remove-SqlDscLogin','Remove-SqlDscNode','Remove-SqlDscRole','Remove-SqlDscTraceFlag','Repair-SqlDscBIReportServer','Repair-SqlDscReportingService','Repair-SqlDscServer','Save-SqlDscSqlServerMediaFile','Set-SqlDscAgentAlert','Set-SqlDscAudit','Set-SqlDscDatabasePermission','Set-SqlDscServerPermission','Set-SqlDscStartupParameter','Set-SqlDscTraceFlag','Test-SqlDscAgentAlert','Test-SqlDscIsDatabasePrincipal','Test-SqlDscIsLogin','Test-SqlDscIsLoginEnabled','Test-SqlDscIsRole','Test-SqlDscIsSupportedFeature','Test-SqlDscRSInstalled','Uninstall-SqlDscBIReportServer','Uninstall-SqlDscReportingService','Uninstall-SqlDscServer') # Cmdlets to export from this module # Use wildcard to avoid PSDesiredStateConfiguration 2.0.7 filtering class-based DSC resources (see #2109). CmdletsToExport = '*' # Variables to export from this module VariablesToExport = @() # Aliases to export from this module AliasesToExport = @() DscResourcesToExport = @('SqlAudit','SqlDatabasePermission','SqlPermission','SqlRSSetup','SqlAG','SqlAGDatabase','SqlAgentAlert','SqlAgentFailsafe','SqlAgentOperator','SqlAGListener','SqlAGReplica','SqlAlias','SqlAlwaysOnService','SqlConfiguration','SqlDatabase','SqlDatabaseDefaultLocation','SqlDatabaseMail','SqlDatabaseObjectPermission','SqlDatabaseRole','SqlDatabaseUser','SqlEndpoint','SqlEndpointPermission','SqlLogin','SqlMaxDop','SqlMemory','SqlProtocol','SqlProtocolTcpIp','SqlReplication','SqlRole','SqlRS','SqlScript','SqlScriptQuery','SqlSecureConnection','SqlServiceAccount','SqlSetup','SqlTraceFlag','SqlWaitForAG','SqlWindowsFirewall') RequiredAssemblies = @() # Private data to pass to the module specified in RootModule/ModuleToProcess. This may also contain a PSData hashtable with additional module metadata used by PowerShell. PrivateData = @{ PSData = @{ # Set to a prerelease string value if the release should be a prerelease. Prerelease = 'preview0005' # Tags applied to this module. These help with module discovery in online galleries. Tags = @('DesiredStateConfiguration', 'DSC', 'DSCResourceKit', 'DSCResource', 'SqlServer', 'PowerBI', 'ReportingServices', 'ReportServer') # A URL to the license for this module. LicenseUri = 'https://github.com/dsccommunity/SqlServerDsc/blob/main/LICENSE' # A URL to the main website for this project. ProjectUri = 'https://github.com/dsccommunity/SqlServerDsc' # A URL to an icon representing this module. IconUri = 'https://dsccommunity.org/images/DSC_Logo_300p.png' # ReleaseNotes of this module ReleaseNotes = '## [17.2.0-preview0005] - 2025-08-25 ### Fixed - Make sure tests forcibly imports the module being tested to avoid AI failing when testing changes. - Fixed Azure DevOps pipeline conditions that were preventing DSC resource integration tests from running when they should by removing incorrect quotes around boolean values. ### Added - Added setup workflow for GitHub Copilot. - Switch the workflow to use Linux. - Attempt to unshallow the Copilot branch - Improved AI instructions. - Enhanced workflow with proper environment variable configuration and DSCv3 verification. - Fixed environment variable persistence by using $GITHUB_ENV instead of job-level env declaration. - `Assert-SqlDscLogin` - Added new public command to validate that a specified SQL Server principal is a login. - `Enable-SqlDscLogin` - Added new public command to enable a SQL Server login. - `Disable-SqlDscLogin` - Added new public command to disable a SQL Server login. - `Test-SqlDscIsLoginEnabled` - Added new public command to test whether a SQL Server login is enabled. Throws a terminating error if the specified principal does not exist as a login. - Supports pipeline input and provides detailed error messages with localization. - Uses `Test-SqlDscIsLogin` command for login validation following module patterns. - Added `Get-SqlDscLogin`, `Get-SqlDscRole`, `New-SqlDscLogin`, `New-SqlDscRole`, `Remove-SqlDscRole`, and `Remove-SqlDscLogin` commands for retrieving and managing SQL Server logins and roles with support for refresh, pipeline input, and ShouldProcess. - Added `Get-SqlDscAgentAlert`, `New-SqlDscAgentAlert`, `Set-SqlDscAgentAlert`, `Remove-SqlDscAgentAlert`, and `Test-SqlDscAgentAlert` to manage SQL Agent alerts on a Database Engine instance. ### Changed - Refactored GitHub Copilot workflow setup to be module-agnostic via MODULE_NAME environment variable, includes full-history detection, uses idempotent .NET tool install, and adds Linux dependency handling ([issue #2127](https://github.com/dsccommunity/SqlServerDsc/issues/2127)). - Module now outputs a verbose message instead of a warning when the SMO dependency module is missing during import to work around a DSC v3 issue. - VS Code tasks configuration was improved to support AI. - `Prerequisites` tests - Added creation of `SqlIntegrationTest` local Windows user for integration testing. - `tests/Integration/Commands/README.md` - Added documentation for `SqlIntegrationTest` user and `IntegrationTestSqlLogin` login. - Added run order information for `New-SqlDscLogin` integration test. - `azure-pipelines.yml` - Remove `windows-2019` images fixes [#2106](https://github.com/dsccommunity/SqlServerDsc/issues/2106). - Move individual tasks to `windows-latest`. - Added integration tests for `Assert-SqlDscLogin` command in Group 2. - Added conditional logic to skip DSC resource integration tests when changes don''t affect DSC resources, improving CI/CD performance for non-DSC changes. - `SqlServerDsc.psd1` - Set `CmdletsToExport` to `*` in module manifest to fix issue [#2109](https://github.com/dsccommunity/SqlServerDsc/issues/2109). - Added optimization for DSC resource integration tests - Created `.build/Test-ShouldRunDscResourceIntegrationTests.ps1` to analyze git changes and decide when DSC resource integration tests are needed. - DSC resource integration test stages now run only when changes affect DSC resources, public commands used by resources, or related components. - Unit tests, QA tests, and command integration tests continue to run for all changes. - Bump actions/checkout task to v5. - `.build/Test-ShouldRunDscResourceIntegrationTests.ps1` - Improved performance by adding an early optimization to check for changes under the configured SourcePath before expensive analysis. - Moved public command discovery to only run when source changes are detected. - `.build/README.md` - Added flow diagram showing decision process for DSC resource integration tests. - Improved documentation with optimized analysis workflow description. - DSC community style guidelines - Added requirement to follow guidelines over existing code patterns. - Improved markdown, pester, powershell, and changelog instructions. - Fixed `Ignore` that seems in edge-cases fail. - Improved markdown and changelog instructions. ' } # End of PSData hashtable } # End of PrivateData hashtable } |