SqlServerDsc.psd1
@{ # Version number of this module. moduleVersion = '14.0.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 = 'Module with DSC resources for deployment and configuration of Microsoft SQL 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 = @() # Cmdlets to export from this module CmdletsToExport = @() # Variables to export from this module VariablesToExport = @() # Aliases to export from this module AliasesToExport = @() DscResourcesToExport = @( 'SqlAG' 'SqlAGDatabase' 'SqlAgentAlert' 'SqlAgentFailsafe' 'SqlAgentOperator' 'SqlAGListener' 'SqlAGReplica' 'SqlAlias' 'SqlAlwaysOnService' 'SqlDatabase' 'SqlDatabaseDefaultLocation' 'SqlDatabaseOwner' 'SqlDatabasePermission' 'SqlDatabaseRecoveryModel' 'SqlDatabaseRole' 'SqlDatabaseUser' 'SqlRS' 'SqlRSSetup' 'SqlScript' 'SqlScriptQuery' 'SqlServerConfiguration' 'SqlServerDatabaseMail' 'SqlServerEndpoint' 'SqlServerEndpointPermission' 'SqlServerEndpointState' 'SqlServerLogin' 'SqlServerMaxDop' 'SqlServerMemory' 'SqlServerNetwork' 'SqlServerPermission' 'SqlServerProtocol' 'SqlServerProtocolTcpIp' 'SqlServerReplication' 'SqlServerRole' 'SqlServerSecureConnection' 'SqlServiceAccount' 'SqlSetup' '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 = 'preview0023' # Tags applied to this module. These help with module discovery in online galleries. Tags = @('DesiredStateConfiguration', 'DSC', 'DSCResourceKit', 'DSCResource') # A URL to the license for this module. LicenseUri = 'https://github.com/dsccommunity/SqlServerDsc/blob/master/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 = '## [14.0.0-preview0023] - 2020-06-10 ### Remove - SqlServerDsc - BREAKING CHANGE: Since the operating system Windows Server 2008 R2 and the product SQL Server 2008 R2 has gone end-of-life the DSC resources will no longer try to maintain compatibility with them. Moving forward, and including this release, there may be code changes that will break the resource on Windows Server 2008 R2 or with SQL Server 2008 R2 ([issue #1514](https://github.com/dsccommunity/SqlServerDsc/issues/1514)). ### Deprecated The documentation, examples, unit test, and integration tests have been removed for these deprecated resources. These resources will be removed in a future release. - SqlDatabaseOwner - This resource is now deprecated. The functionality is now covered by a property in the resource _SqlDatabase_ ([issue #966](https://github.com/dsccommunity/SqlServerDsc/issues/966)). - SqlDatabaseRecoveryModel - This resource is now deprecated. The functionality is now covered by a property in the resource _SqlDatabase_ ([issue #967](https://github.com/dsccommunity/SqlServerDsc/issues/967)). - SqlServerEndpointState - This resource is now deprecated. The functionality is covered by a property in the resource _SqlServerEndpoint_ ([issue #968](https://github.com/dsccommunity/SqlServerDsc/issues/968)). - SqlServerNetwork - This resource is now deprecated. The functionality is now covered by the resources _SqlServerProtocol_ and _SqlServerProtocolTcpIp_. ### Added - SqlSetup - Added support for major version upgrade ([issue #1561](https://github.com/dsccommunity/SqlServerDsc/issues/1561)). - SqlServerDsc - Added new resource SqlServerProtocol ([issue #1377](https://github.com/dsccommunity/SqlServerDsc/issues/1377)). - Added new resource SqlServerProtocolTcpIp ([issue #1378](https://github.com/dsccommunity/SqlServerDsc/issues/1378)). - Fixing a problem with the latest ModuleBuild 1.7.0 that breaks the CI pipeline. - Prepare repository for auto-documentation by adding README.md to each resource folder with the content from the root README.md. - SqlServerDsc.Common - Added function `Import-Assembly` that can help import an assembly into the PowerShell session. - Prepared unit tests to support Pester 5 so a minimal conversation is only needed later. - Updated `Import-SQLPSModule` to better support unit tests. - CommonTestHelper - Added the functions `Get-InvalidOperationRecord` and `Get-InvalidResultRecord` that is needed for evaluate localized error message strings for unit tests. - SqlServerEndpoint - BREAKING CHANGE: A new required property `EndpointType` was added to support different types of endpoints in the future. For now the only endpoint type that is supported is the database mirror endpoint type (`DatabaseMirroring`). - Added the property `State` to be able to specify if the endpoint should be running, stopped, or disabled. _This property was moved from the now_ _deprecated DSC resource `SqlServerEndpointState`_. - SqlSetup - A read only property `IsClustered` was added that can be used to determine if the instance is clustered. - Added the properties `NpEnabled` and `TcpEnabled` ([issue #1161](https://github.com/dsccommunity/SqlServerDsc/issues/1161)). - Added the property `UseEnglish` ([issue #1473](https://github.com/dsccommunity/SqlServerDsc/issues/1473)). - SqlServerReplication - Add integration tests ([issue #755](https://github.com/dsccommunity/SqlServerDsc/issues/755). - SqlDatabase - The property `OwnerName` was added. - SqlDatabasePermission - Now possible to change permissions for database user-defined roles (e.g. public) and database application roles ([issue #1498](https://github.com/dsccommunity/SqlServerDsc/issues/1498). - SqlServerDsc.Common - The helper function `Restart-SqlService` was improved to handle Failover Clusters better. Now the SQL Server service will only be taken offline and back online again if the service is online to begin with. - The helper function `Restart-SqlServer` learned the new parameter `OwnerNode`. The parameter `OwnerNode` takes an array of Cluster node names. Using this parameter the cluster group will only be taken offline and back online if the cluster group owner is one specified in this parameter. ### Changed - SqlServerDsc - Changed all resource prefixes from `MSFT_` to `DSC_` ([issue #1496](https://github.com/dsccommunity/SqlServerDsc/issues/1496)). _Deprecated resource has not changed prefix._ - All resources are now using the common module DscResource.Common. - When a PR is labelled with ''ready for merge'' it is no longer being marked as stale if the PR is not merged for 30 days (for example it is dependent on something else) ([issue #1504](https://github.com/dsccommunity/SqlServerDsc/issues/1504)). - Updated the CI pipeline to use latest version of the module ModuleBuilder. - Changed to use the property `NuGetVersionV2` from GitVersion in the CI pipeline. - The unit tests now run on PowerShell 7 to optimize the total run time. - SqlServerDsc.Common - The helper function `Invoke-InstallationMediaCopy` was changed to handle a breaking change in PowerShell 7 ([issue #1530](https://github.com/dsccommunity/SqlServerDsc/issues/1530)). - Removed the local helper function `Set-PSModulePath` as it was implemented in the module DscResource.Common. - CommonTestHelper - The test helper function `New-SQLSelfSignedCertificate` was changed to install the dependent module `PSPKI` through `RequiredModules.psd1`. - SqlAlwaysOnService - BREAKING CHANGE: The parameter `ServerName` is now non-mandatory and defaults to `$env:COMPUTERNAME` ([issue #319](https://github.com/dsccommunity/SqlServerDsc/issues/319)). - Normalize parameter descriptive text for default values. - SqlDatabase - BREAKING CHANGE: The parameter `ServerName` is now non-mandatory and defaults to `$env:COMPUTERNAME` ([issue #319](https://github.com/dsccommunity/SqlServerDsc/issues/319)). - BREAKING CHANGE: The non-mandatory parameters was removed from the function `Get-TargetResource` since they were not needed. - BREAKING CHANGE: The properties `CompatibilityLevel` and `Collation` are now only enforced if the are specified in the configuration. - Normalize parameter descriptive text for default values. - SqlDatabaseDefaultLocation - BREAKING CHANGE: The parameter `ServerName` is now non-mandatory and defaults to `$env:COMPUTERNAME` ([issue #319](https://github.com/dsccommunity/SqlServerDsc/issues/319)). - Normalize parameter descriptive text for default values. - SqlDatabaseOwner - BREAKING CHANGE: Database changed to DatabaseName for consistency with other modules ([issue #1484](https://github.com/dsccommunity/SqlServerDsc/issues/1484)). - SqlDatabasePermission - BREAKING CHANGE: The parameter `ServerName` is now non-mandatory and defaults to `$env:COMPUTERNAME` ([issue #319](https://github.com/dsccommunity/SqlServerDsc/issues/319)). - Normalize parameter descriptive text for default values. - BREAKING CHANGE: Database changed to DatabaseName for consistency with other modules ([issue #1484](https://github.com/dsccommunity/SqlServerDsc/issues/1484)). - BREAKING CHANGE: The resource no longer create the database user if it does not exist. Use the resource _SqlDatabaseUser_ to enforce that the database user exist in the database prior to setting permissions using this resource ([issue #848](https://github.com/dsccommunity/SqlServerDsc/issues/848)). - BREAKING CHANGE: The resource no longer checks if a login exist so that it is possible to set permissions for database users that does not have a login, e.g. the database user ''guest'' ([issue #1134](https://github.com/dsccommunity/SqlServerDsc/issues/1134)). - Updated examples. - Added integration tests ([issue #741](https://github.com/dsccommunity/SqlServerDsc/issues/741)). - Get-TargetResource will no longer throw an exception if the database does not exist. - SqlDatabaseRecoveryModel - BREAKING CHANGE: The parameter `ServerName` is now non-mandatory and defaults to `$env:COMPUTERNAME` ([issue #319](https://github.com/dsccommunity/SqlServerDsc/issues/319)). - Normalize parameter descriptive text for default values. - SqlDatabaseRole - BREAKING CHANGE: The parameter `ServerName` is now non-mandatory and defaults to `$env:COMPUTERNAME` ([issue #319](https://github.com/dsccommunity/SqlServerDsc/issues/319)). - Normalize parameter descriptive text for default values. - BREAKING CHANGE: Database changed to DatabaseName for consistency with other modules ([issue #1484](https://github.com/dsccommunity/SqlServerDsc/issues/1484)). - SqlDatabaseUser - BREAKING CHANGE: The parameter `ServerName` is now non-mandatory and defaults to `$env:COMPUTERNAME` ([issue #319](https://github.com/dsccommunity/SqlServerDsc/issues/319)). - Normalize parameter descriptive text for default values. - SqlScript - BREAKING CHANGE: The parameter `ServerInstance` is replaced by the two parameters `ServerName` and `InstanceName`. The parameter `InstanceName` is the only one mandatory which fixes the issue that it was possible to run the same script using different host names ([issue #925](https://github.com/dsccommunity/SqlServerDsc/issues/925)). - SqlScriptQuery - BREAKING CHANGE: The parameter `ServerInstance` is replaced by the two parameters `ServerName` and `InstanceName`. The parameter `InstanceName` is the only one mandatory which fixes the issue that it was possible to run the same query using different host names ([issue #925](https://github.com/dsccommunity/SqlServerDsc/issues/925)). - SqlServerCon' } # End of PSData hashtable } # End of PrivateData hashtable } |