Skip to content

Releases: dsccommunity/SqlServerDsc

v16.1.0-preview0005

17 Dec 14:05
92612af
Compare
Choose a tag to compare
v16.1.0-preview0005 Pre-release
Pre-release

[v16.1.0-preview0005]

Removed

  • SqlServerDsc
    • Removed Assert-ElevatedUser from private functions - Issue #1797
      • Assert-ElevatedUser added to DscResource.Common public functions - Issue #82

Added

  • SqlServerDsc
    • The following private functions were added to the module (see comment-based
      help for more information):
      • Assert-ElevatedUser
      • Assert-RequiredCommandParameter
      • Test-IsNumericType
      • Assert-SetupActionProperties
      • Invoke-SetupAction
    • The following public functions were added to the module (see comment-based
      help for more information):
      • Install-SqlDscServer
      • Uninstall-SqlDscServer
      • Add-SqlDscNode
      • Remove-SqlDscNode
      • Repair-SqlDscServer
      • Complete-SqlDscImage
      • Complete-SqlDscFailoverCluster
      • Initialize-SqlDscRebuildDatabase
    • New GitHub issue templates for proposing new public commands, proposing
      an enhancement to an existing command, or having a problem with an existing
      command.
    • Integration tests are now also run on SQL Server 2022 and SQL Server
      Reporting Services 2022.
    • Integration tests now wait for LCM after each It-block, not just at the
      end of a Context-block. Hopefully this will mitigate some of the intermittent
      errors we have seen when running the integration tests in the pipeline.
    • Use preview version of Pester to support the development of Pester as
      this is a code base with a diverse set of tests thar can help catch
      issues in Pester. If preview release of Pester prevents release we
      should temporary shift back to stable.
  • SqlDatabase
    • Added compatibility levels for SQL Server 2022 (major version 16).
  • SqlSetup
    • Paths for SQL Server 2022 are correctly returned by Get.

Changed

  • SqlServerDsc
    • Update Stale GitHub Action to v6.
    • Update to build module in separate folder under output.
    • Moved the build step of the pipeline to a Windows build worker when
      running in Azure DevOps.
  • Install-SqlServerDsc
    • No longer throws an exception when parameter AgtSvcAccount is not specified.
  • SqlAgReplica
    • Converted unit test to Pester 5.

Fixed

  • SqlServerDsc
    • Localized strings file en-US/SqlServerDsc.strings.psd1 no longer
      referencing the wrong module in a comment.
  • SqlAGReplica
    • No longer tries to enforce EndpointHostName when it is not part of the
      configuration (issue #1821).
    • Now Get-TargetResource always returns values for the properties Name
      and AvailabilityGroupName (issue #1822).
    • Now Test-TargetResource no longer test properties that cannot
      be enforced (issue #1822).

v16.1.0-preview0004

11 Dec 09:59
d5692e2
Compare
Choose a tag to compare
v16.1.0-preview0004 Pre-release
Pre-release

[v16.1.0-preview0004]

Removed

  • SqlServerDsc
    • Removed Assert-ElevatedUser from private functions - Issue #1797
      • Assert-ElevatedUser added to DscResource.Common public functions - Issue #82

Added

  • SqlServerDsc
    • The following private functions were added to the module (see comment-based
      help for more information):
      • Assert-ElevatedUser
      • Assert-RequiredCommandParameter
      • Test-IsNumericType
      • Assert-SetupActionProperties
      • Invoke-SetupAction
    • The following public functions were added to the module (see comment-based
      help for more information):
      • Install-SqlDscServer
      • Uninstall-SqlDscServer
      • Add-SqlDscNode
      • Remove-SqlDscNode
      • Repair-SqlDscServer
      • Complete-SqlDscImage
      • Complete-SqlDscFailoverCluster
      • Initialize-SqlDscRebuildDatabase
    • New GitHub issue templates for proposing new public commands, proposing
      an enhancement to an existing command, or having a problem with an existing
      command.
    • Integration tests are now also run on SQL Server 2022 and SQL Server
      Reporting Services 2022.
    • Integration tests now wait for LCM after each It-block, not just at the
      end of a Context-block. Hopefully this will mitigate some of the intermittent
      errors we have seen when running the integration tests in the pipeline.
    • Use preview version of Pester to support the development of Pester as
      this is a code base with a diverse set of tests thar can help catch
      issues in Pester. If preview release of Pester prevents release we
      should temporary shift back to stable.
  • SqlDatabase
    • Added compatibility levels for SQL Server 2022 (major version 16).
  • SqlSetup
    • Paths for SQL Server 2022 are correctly returned by Get.

Changed

  • SqlServerDsc
    • Update Stale GitHub Action to v6.
    • Update to build module in separate folder under output.
    • Moved the build step of the pipeline to a Windows build worker when
      running in Azure DevOps.
  • Install-SqlServerDsc
    • No longer throws an exception when parameter AgtSvcAccount is not specified.

Fixed

  • SqlServerDsc
    • Localized strings file en-US/SqlServerDsc.strings.psd1 no longer
      referencing the wrong module in a comment.

v16.1.0-preview0003

04 Dec 17:56
6c0e426
Compare
Choose a tag to compare
v16.1.0-preview0003 Pre-release
Pre-release

[v16.1.0-preview0003]

Added

  • SqlServerDsc
    • The following private functions were added to the module (see comment-based
      help for more information):
      • Assert-ElevatedUser
      • Assert-RequiredCommandParameter
      • Test-IsNumericType
      • Assert-SetupActionProperties
      • Invoke-SetupAction
    • The following public functions were added to the module (see comment-based
      help for more information):
      • Install-SqlDscServer
      • Uninstall-SqlDscServer
      • Add-SqlDscNode
      • Remove-SqlDscNode
      • Repair-SqlDscServer
      • Complete-SqlDscImage
      • Complete-SqlDscFailoverCluster
      • Initialize-SqlDscRebuildDatabase
    • New GitHub issue templates for proposing new public commands, proposing
      an enhancement to an existing command, or having a problem with an existing
      command.
    • Integration tests are now also run on SQL Server 2022 and SQL Server
      Reporting Services 2022.
    • Integration tests now wait for LCM after each It-block, not just at the
      end of a Context-block. Hopefully this will mitigate some of the intermittent
      errors we have seen when running the integration tests in the pipeline.
    • Use preview version of Pester to support the development of Pester as
      this is a code base with a diverse set of tests thar can help catch
      issues in Pester. If preview release of Pester prevents release we
      should temporary shift back to stable.
  • SqlDatabase
    • Added compatibility levels for SQL Server 2022 (major version 16).
  • SqlSetup
    • Paths for SQL Server 2022 are correctly returned by Get.

Changed

  • SqlServerDsc
    • Update Stale GitHub Action to v6.
    • Update to build module in separate folder under output.
    • Install-SqlServerDsc
      • No longer throws an exception when parameter AgtSvcAccount is not specified.

Fixed

  • SqlServerDsc
    • Localized strings file en-US/SqlServerDsc.strings.psd1 no longer
      referencing the wrong module in a comment.

v16.1.0-preview0002

26 Nov 15:13
a512eff
Compare
Choose a tag to compare
v16.1.0-preview0002 Pre-release
Pre-release

[v16.1.0-preview0002]

Added

  • SqlServerDsc
    • The following private functions were added to the module (see comment-based
      help for more information):
      • Assert-ElevatedUser
      • Assert-RequiredCommandParameter
      • Test-IsNumericType
      • Assert-SetupActionProperties
      • Invoke-SetupAction
    • The following public functions were added to the module (see comment-based
      help for more information):
      • Install-SqlDscServer
      • Uninstall-SqlDscServer
      • Add-SqlDscNode
      • Remove-SqlDscNode
      • Repair-SqlDscServer
      • Complete-SqlDscImage
      • Complete-SqlDscFailoverCluster
      • Initialize-SqlDscRebuildDatabase
    • New GitHub issue templates for proposing new public commands, proposing
      an enhancement to an existing command, or having a problem with an existing
      command.
    • Integration tests are now also run on SQL Server 2022.
  • SqlDatabase
    • Added compatibility levels for SQL Server 2022 (major version 16).
  • SqlSetup
    • Paths for SQL Server 2022 are correctly returned by Get.

Changed

  • SqlServerDsc
    • Update Stale GitHub Action to v6.
    • Update to build module in separate folder under output.

Fixed

  • SqlServerDsc
    • Localized strings file en-US/SqlServerDsc.strings.psd1 no longer
      referencing the wrong module in a comment.

v16.1.0-preview0001

24 Nov 08:51
1026d20
Compare
Choose a tag to compare
v16.1.0-preview0001 Pre-release
Pre-release

[v16.1.0-preview0001]

Added

  • SqlServerDsc
    • The following private functions were added to the module (see comment-based
      help for more information):
      • Assert-ElevatedUser
      • Assert-RequiredCommandParameter
      • Test-IsNumericType
      • Assert-SetupActionProperties
      • Invoke-SetupAction
    • The following public functions were added to the module (see comment-based
      help for more information):
      • Install-SqlDscServer
      • Uninstall-SqlDscServer
      • Add-SqlDscNode
      • Remove-SqlDscNode
      • Repair-SqlDscServer
      • Complete-SqlDscImage
      • Complete-SqlDscFailoverCluster
      • Initialize-SqlDscRebuildDatabase

Changed

  • SqlServerDsc
    • Update Stale GitHub Action to v6.
    • Update to build module in separate folder under output.

Fixed

  • SqlServerDsc
    • Localized strings file en-US/SqlServerDsc.strings.psd1 no longer
      referencing the wrong module in a comment.

v16.0.1-preview0001

11 Nov 20:04
22abcdb
Compare
Choose a tag to compare
v16.0.1-preview0001 Pre-release
Pre-release

[v16.0.1-preview0001]

Changed

  • SqlServerDsc
    • Update Stale GitHub Action to v6.
    • Update to build module in separate folder under output.

Fixed

  • SqlServerDsc
    • Localized strings file en-US/SqlServerDsc.strings.psd1 no longer
      referencing the wrong module in a comment.

v16.0.0

09 Sep 07:11
f61dd00
Compare
Choose a tag to compare

[v16.0.0]

Removed

  • The deprecated DSC resource SqlDatabaseOwner have been removed (and replaced
    by a property in SqlDatabase)
    (issue #1725).
  • The deprecated DSC resource SqlDatabaseRecoveryModel have been removed (and
    replaced by a property in SqlDatabase)
    (issue #1725).
  • The deprecated DSC resource SqlServerEndpointState have been removed (and
    replaced by a property in SqlEndpoint)
    (issue #1725).
  • The deprecated DSC resource SqlServerNetwork have been removed (and replaced by
    SqlProtocol
    and SqlProtocolTcpIp)
    (issue #1725).
  • CommonTestHelper
    • Remove the helper function Wait-ForIdleLcm since it has been moved
      to the module DscResource.Test.
    • Remove the helper function Get-InvalidOperationRecord since it has
      been moved to the module DscResource.Test.
    • Remove the helper function Get-InvalidResultRecord since it has been
      moved to the module DscResource.Test.

Added

  • SqlServerDsc
    • Added recommended VS Code extensions.
      • Added settings for VS Code extension Pester Test Adapter.
    • Added new Script Analyzer rules from the module Indented.ScriptAnalyzerRules
      to help development and review process. The rules that did not contradict
      the existing DSC Community rules and style guideline were added.
    • Added the Visual Studio Code extension Code Spell Checker to the list
      of recommended Visual Studio Code extensions.
    • Added a file prefix.ps1 which content is placed first in the built module
      (.psm1). This file imports dependent modules, and imports localized strings
      used by private and public commands.
    • The following classes were added to the module:
      • DatabasePermission - complex type for the DSC resource SqlDatabasePermission.
      • Ensure - Enum to be used for the property Ensure in class-based
        resources.
      • Reason - Used by method Get() to return the reason a property is not
        in desired state.
      • ResourceBase - class that can be inherited by class-based resource and
        provides functionality meant simplify the creating of class-based resource.
      • SqlResourceBase - class that can be inherited by class-based resource and
        provides default DSC properties and method for get a [Server]-object.
      • ServerPermission - complex type for the DSC resource SqlPermission.
    • The following private functions were added to the module (see comment-based
      help for more information):
      • ConvertFrom-CompareResult
      • ConvertTo-Reason
      • Get-ClassName
      • Get-DscProperty
      • Get-LocalizedDataRecursive
      • Test-ResourceHasDscProperty
      • Test-ResourceDscPropertyIsAssigned
    • The following public functions were added to the module (see comment-based
      help for more information):
      • Connect-SqlDscDatabaseEngine
      • ConvertFrom-SqlDscDatabasePermission
      • ConvertTo-SqlDscDatabasePermission
      • Get-SqlDscDatabasePermission
      • Set-SqlDscDatabasePermission
      • Test-SqlDscIsDatabasePrincipal
      • Test-SqlDscIsLogin
      • ConvertFrom-SqlDscServerPermission
      • ConvertTo-SqlDscServerPermission
      • Get-SqlDscServerPermission
      • Set-SqlDscServerPermission
      • Invoke-SqlDscQuery
      • Get-SqlDscAudit
      • New-SqlDscAudit
      • Set-SqlDscAudit
      • Remove-SqlDscAudit
      • Enable-SqlDscAudit
      • Disable-SqlDscAudit
    • Support for debugging of integration tests in AppVeyor.
      • Only run for pull requests
    • Add new resource SqlAudit.
  • CommonTestHelper
    • Import-SqlModuleStub
      • Added the optional parameter PasThru that, if used, will return the
        name of the stub module.
      • When removing stub modules from the session that is not supposed to
        be loaded, it uses Get-Module -All to look for previously loaded
        stub modules.
    • Remove-SqlModuleStub
      • Added a new helper function Remove-SqlModuleStub for tests to remove
        the PowerShell SqlServer stub module when a test has run.
  • SqlWindowsFirewall
    • Added integration tests for SqlWindowsFirewall (issue #747).
  • Get-DscProperty
    • Added parameter ExcludeName to exclude property names from being returned.

Changed

  • SqlServerDsc
    • Updated pipeline to use the build worker image 'ubuntu-latest'.
    • Switch to installing GitVersion using 'dotnet tool install' (issue #1732).
    • Bumped Stale task to v5 in the GitHub workflow.
    • Make it possible to publish code coverage on failed test runs, and
      when re-run a fail job.
    • Exclude Script Analyzer rule TypeNotFound in the file .vscode/analyzersettings.psd1.
    • Update CONTRIBUTING.md describing error handling in commands and class-based
      resources.
    • The QA tests are now run in Windows PowerShell due to a bug in PowerShell 7
      that makes class-based resource using inheritance to not work.
    • The QA test are excluding the rule TypeNotFound because it cannot
      run on the source files (there is a new issue that is tracking so this
      rule is only run on the built module).
    • The Pester code coverage has been switched to use the older functionality
      that uses breakpoints to calculate coverage. Newer functionality sometimes
      throw an exception when used in conjunction with class-based resources.¨
    • SMO stubs (used in the unit tests)
      • Was updated to remove a bug related to the type DatabasePermissionInfo
        when used with the type DatabasePermissionSet.
        The stubs suggested that the property PermissionType (of type DatabasePermissionSet)
        in DatabasePermissionInfo should have been a array DatabasePermissionSet[].
        This conflicted with real SMO as it does not pass an array, but instead
        a single DatabasePermissionSet. The stubs was modified to mimic the
        real SMO. At the same time some old mock code in the SMO stubs was removed
        as it was no longer in use.
      • Was updated to remove a bug related to the type ServerPermissionInfo
        when used with the type ServerPermissionSet. The stubs suggested that
        the property PermissionType (of type ServerPermissionSet)
        in ServerPermissionInfo should have been a array ServerPermissionSet[].
        This conflicted with real SMO as it does not pass an array, but instead
        a single ServerPermissionSet. The stubs was modified to mimic the
        real SMO. At the same time some old mock code in the SMO stubs was removed
        as it was no longer in use.
    • Updated integration tests README.md to describe how to use Appveyor to
      debug integration tests.
  • Wiki
    • add introduction and links to DSC technology
  • SqlServerDsc.Common
    • The parameter SetupCredential of the function Connect-SQL was renamed
      to Credential and the parameter name SetupCredential was made a
      parameter alias.
  • SqlLogin
    • BREAKING CHANGE: The parameters LoginMustChangePassword, LoginPasswordExpirationEnabled,
      and LoginPasswordPolicyEnforced no longer have a default value of $true.
      This means that when creating a new login, and not specifically setting
      these parameters to $true in the configuration, the login that is created
      will have these properties set to $false.
    • BREAKING CHANGE: LoginMustChangePassword, LoginPasswordExpirationEnabled,
      and LoginPasswordPolicyEnforced parameters no longer enforce default
      values (issue #1669).
  • SqlServerDsc
    • All tests have been converted to run in Pester 5 (Pester 4 can no
      longer be supported) (issue #1654).
    • Pipeline build and deploy now runs on Ubuntu 18.04, see more information
      in actions/runner-images#3287.
    • Update the pipeline file azure-pipelines.yml to use the latest version
      from the Sampler project.
  • SqlRs
    • BREAKING CHANGE: Now the Reporting Services is always restarted after
      the call to CIM method SetDatabaseConnection when setting up the
      Reporting Services. This so to try to finish the initialization of
      Reporting Services. This was prior only done for SQL Server Reporting
      Services 2019 (issue #1721).
    • Added some verbose messages to better indicate which CIM methods are run
      and when they are run.
    • Minor refactor to support running unit test with strict mode enabled.
  • SqlLogin
    • Only enforces optional parameter LoginType when it is specified in the
      configuration.
    • Only enforces optional parameters LoginPasswordExpirationEnabled and
      LoginPasswordPolicyEnforced for a SQL login when the parameters are
      specified in the configuration.
    • A localized string for an error message was updated to correctly reflect
      the code that says that to use a SQL login the authentication mode must
      be either Mixed or Normal, prio it just stated Mixed.
  • SqlSecureConnection
    • BREAKING CHANGE: Now Get-TargetResource returns the value 'Empty'
      for the p...
Read more

v16.0.0-preview0013

21 Aug 06:57
f61dd00
Compare
Choose a tag to compare
v16.0.0-preview0013 Pre-release
Pre-release

[v16.0.0-preview0013]

Removed

  • The deprecated DSC resource SqlDatabaseOwner have been removed (and replaced
    by a property in SqlDatabase)
    (issue #1725).
  • The deprecated DSC resource SqlDatabaseRecoveryModel have been removed (and
    replaced by a property in SqlDatabase)
    (issue #1725).
  • The deprecated DSC resource SqlServerEndpointState have been removed (and
    replaced by a property in SqlEndpoint)
    (issue #1725).
  • The deprecated DSC resource SqlServerNetwork have been removed (and replaced by
    SqlProtocol
    and SqlProtocolTcpIp)
    (issue #1725).
  • CommonTestHelper
    • Remove the helper function Wait-ForIdleLcm since it has been moved
      to the module DscResource.Test.
    • Remove the helper function Get-InvalidOperationRecord since it has
      been moved to the module DscResource.Test.
    • Remove the helper function Get-InvalidResultRecord since it has been
      moved to the module DscResource.Test.

Added

  • SqlServerDsc
    • Added recommended VS Code extensions.
      • Added settings for VS Code extension Pester Test Adapter.
    • Added new Script Analyzer rules from the module Indented.ScriptAnalyzerRules
      to help development and review process. The rules that did not contradict
      the existing DSC Community rules and style guideline were added.
    • Added the Visual Studio Code extension Code Spell Checker to the list
      of recommended Visual Studio Code extensions.
    • Added a file prefix.ps1 which content is placed first in the built module
      (.psm1). This file imports dependent modules, and imports localized strings
      used by private and public commands.
    • The following classes were added to the module:
      • DatabasePermission - complex type for the DSC resource SqlDatabasePermission.
      • Ensure - Enum to be used for the property Ensure in class-based
        resources.
      • Reason - Used by method Get() to return the reason a property is not
        in desired state.
      • ResourceBase - class that can be inherited by class-based resource and
        provides functionality meant simplify the creating of class-based resource.
      • SqlResourceBase - class that can be inherited by class-based resource and
        provides default DSC properties and method for get a [Server]-object.
      • ServerPermission - complex type for the DSC resource SqlPermission.
    • The following private functions were added to the module (see comment-based
      help for more information):
      • ConvertFrom-CompareResult
      • ConvertTo-Reason
      • Get-ClassName
      • Get-DscProperty
      • Get-LocalizedDataRecursive
      • Test-ResourceHasDscProperty
      • Test-ResourceDscPropertyIsAssigned
    • The following public functions were added to the module (see comment-based
      help for more information):
      • Connect-SqlDscDatabaseEngine
      • ConvertFrom-SqlDscDatabasePermission
      • ConvertTo-SqlDscDatabasePermission
      • Get-SqlDscDatabasePermission
      • Set-SqlDscDatabasePermission
      • Test-SqlDscIsDatabasePrincipal
      • Test-SqlDscIsLogin
      • ConvertFrom-SqlDscServerPermission
      • ConvertTo-SqlDscServerPermission
      • Get-SqlDscServerPermission
      • Set-SqlDscServerPermission
      • Invoke-SqlDscQuery
      • Get-SqlDscAudit
      • New-SqlDscAudit
      • Set-SqlDscAudit
      • Remove-SqlDscAudit
      • Enable-SqlDscAudit
      • Disable-SqlDscAudit
    • Support for debugging of integration tests in AppVeyor.
      • Only run for pull requests
    • Add new resource SqlAudit.
  • CommonTestHelper
    • Import-SqlModuleStub
      • Added the optional parameter PasThru that, if used, will return the
        name of the stub module.
      • When removing stub modules from the session that is not supposed to
        be loaded, it uses Get-Module -All to look for previously loaded
        stub modules.
    • Remove-SqlModuleStub
      • Added a new helper function Remove-SqlModuleStub for tests to remove
        the PowerShell SqlServer stub module when a test has run.
  • SqlWindowsFirewall
    • Added integration tests for SqlWindowsFirewall (issue #747).
  • Get-DscProperty
    • Added parameter ExcludeName to exclude property names from being returned.

Changed

  • SqlServerDsc
    • Updated pipeline to use the build worker image 'ubuntu-latest'.
    • Switch to installing GitVersion using 'dotnet tool install' (issue #1732).
    • Bumped Stale task to v5 in the GitHub workflow.
    • Make it possible to publish code coverage on failed test runs, and
      when re-run a fail job.
    • Exclude Script Analyzer rule TypeNotFound in the file .vscode/analyzersettings.psd1.
    • Update CONTRIBUTING.md describing error handling in commands and class-based
      resources.
    • The QA tests are now run in Windows PowerShell due to a bug in PowerShell 7
      that makes class-based resource using inheritance to not work.
    • The QA test are excluding the rule TypeNotFound because it cannot
      run on the source files (there is a new issue that is tracking so this
      rule is only run on the built module).
    • The Pester code coverage has been switched to use the older functionality
      that uses breakpoints to calculate coverage. Newer functionality sometimes
      throw an exception when used in conjunction with class-based resources.¨
    • SMO stubs (used in the unit tests)
      • Was updated to remove a bug related to the type DatabasePermissionInfo
        when used with the type DatabasePermissionSet.
        The stubs suggested that the property PermissionType (of type DatabasePermissionSet)
        in DatabasePermissionInfo should have been a array DatabasePermissionSet[].
        This conflicted with real SMO as it does not pass an array, but instead
        a single DatabasePermissionSet. The stubs was modified to mimic the
        real SMO. At the same time some old mock code in the SMO stubs was removed
        as it was no longer in use.
      • Was updated to remove a bug related to the type ServerPermissionInfo
        when used with the type ServerPermissionSet. The stubs suggested that
        the property PermissionType (of type ServerPermissionSet)
        in ServerPermissionInfo should have been a array ServerPermissionSet[].
        This conflicted with real SMO as it does not pass an array, but instead
        a single ServerPermissionSet. The stubs was modified to mimic the
        real SMO. At the same time some old mock code in the SMO stubs was removed
        as it was no longer in use.
    • Updated integration tests README.md to describe how to use Appveyor to
      debug integration tests.
  • Wiki
    • add introduction and links to DSC technology
  • SqlServerDsc.Common
    • The parameter SetupCredential of the function Connect-SQL was renamed
      to Credential and the parameter name SetupCredential was made a
      parameter alias.
  • SqlLogin
    • BREAKING CHANGE: The parameters LoginMustChangePassword, LoginPasswordExpirationEnabled,
      and LoginPasswordPolicyEnforced no longer have a default value of $true.
      This means that when creating a new login, and not specifically setting
      these parameters to $true in the configuration, the login that is created
      will have these properties set to $false.
    • BREAKING CHANGE: LoginMustChangePassword, LoginPasswordExpirationEnabled,
      and LoginPasswordPolicyEnforced parameters no longer enforce default
      values (issue #1669).
  • SqlServerDsc
    • All tests have been converted to run in Pester 5 (Pester 4 can no
      longer be supported) (issue #1654).
    • Pipeline build and deploy now runs on Ubuntu 18.04, see more information
      in actions/runner-images#3287.
    • Update the pipeline file azure-pipelines.yml to use the latest version
      from the Sampler project.
  • SqlRs
    • BREAKING CHANGE: Now the Reporting Services is always restarted after
      the call to CIM method SetDatabaseConnection when setting up the
      Reporting Services. This so to try to finish the initialization of
      Reporting Services. This was prior only done for SQL Server Reporting
      Services 2019 (issue #1721).
    • Added some verbose messages to better indicate which CIM methods are run
      and when they are run.
    • Minor refactor to support running unit test with strict mode enabled.
  • SqlLogin
    • Only enforces optional parameter LoginType when it is specified in the
      configuration.
    • Only enforces optional parameters LoginPasswordExpirationEnabled and
      LoginPasswordPolicyEnforced for a SQL login when the parameters are
      specified in the configuration.
    • A localized string for an error message was updated to correctly reflect
      the code that says that to use a SQL login the authentication mode must
      be either Mixed or Normal, prio it just stated Mixed.
  • SqlSecureConnection
    • BREAKING CHANGE: Now Get-TargetResource returns the value 'Empty'
      ...
Read more

v16.0.0-preview0012

13 Aug 14:19
87816b8
Compare
Choose a tag to compare
v16.0.0-preview0012 Pre-release
Pre-release

[v16.0.0-preview0012]

Removed

  • The deprecated DSC resource SqlDatabaseOwner have been removed (and replaced
    by a property in SqlDatabase)
    (issue #1725).
  • The deprecated DSC resource SqlDatabaseRecoveryModel have been removed (and
    replaced by a property in SqlDatabase)
    (issue #1725).
  • The deprecated DSC resource SqlServerEndpointState have been removed (and
    replaced by a property in SqlEndpoint)
    (issue #1725).
  • The deprecated DSC resource SqlServerNetwork have been removed (and replaced by
    SqlProtocol
    and SqlProtocolTcpIp)
    (issue #1725).
  • CommonTestHelper
    • Remove the helper function Wait-ForIdleLcm since it has been moved
      to the module DscResource.Test.
    • Remove the helper function Get-InvalidOperationRecord since it has
      been moved to the module DscResource.Test.
    • Remove the helper function Get-InvalidResultRecord since it has been
      moved to the module DscResource.Test.

Added

  • SqlServerDsc
    • Added recommended VS Code extensions.
      • Added settings for VS Code extension Pester Test Adapter.
    • Added new Script Analyzer rules from the module Indented.ScriptAnalyzerRules
      to help development and review process. The rules that did not contradict
      the existing DSC Community rules and style guideline were added.
    • Added the Visual Studio Code extension Code Spell Checker to the list
      of recommended Visual Studio Code extensions.
    • Added a file prefix.ps1 which content is placed first in the built module
      (.psm1). This file imports dependent modules, and imports localized strings
      used by private and public commands.
    • The following classes were added to the module:
      • DatabasePermission - complex type for the DSC resource SqlDatabasePermission.
      • Ensure - Enum to be used for the property Ensure in class-based
        resources.
      • Reason - Used by method Get() to return the reason a property is not
        in desired state.
      • ResourceBase - class that can be inherited by class-based resource and
        provides functionality meant simplify the creating of class-based resource.
      • SqlResourceBase - class that can be inherited by class-based resource and
        provides default DSC properties and method for get a [Server]-object.
      • ServerPermission - complex type for the DSC resource SqlPermission.
    • The following private functions were added to the module (see comment-based
      help for more information):
      • ConvertFrom-CompareResult
      • ConvertTo-Reason
      • Get-ClassName
      • Get-DscProperty
      • Get-LocalizedDataRecursive
      • Test-ResourceHasDscProperty
      • Test-ResourceDscPropertyIsAssigned
    • The following public functions were added to the module (see comment-based
      help for more information):
      • Connect-SqlDscDatabaseEngine
      • ConvertFrom-SqlDscDatabasePermission
      • ConvertTo-SqlDscDatabasePermission
      • Get-SqlDscDatabasePermission
      • Set-SqlDscDatabasePermission
      • Test-SqlDscIsDatabasePrincipal
      • Test-SqlDscIsLogin
      • ConvertFrom-SqlDscServerPermission
      • ConvertTo-SqlDscServerPermission
      • Get-SqlDscServerPermission
      • Set-SqlDscServerPermission
      • Invoke-SqlDscQuery
      • Get-SqlDscAudit
      • New-SqlDscAudit
      • Set-SqlDscAudit
      • Remove-SqlDscAudit
      • Enable-SqlDscAudit
      • Disable-SqlDscAudit
    • Support for debugging of integration tests in AppVeyor.
      • Only run for pull requests
    • Add new resource SqlAudit.
  • CommonTestHelper
    • Import-SqlModuleStub
      • Added the optional parameter PasThru that, if used, will return the
        name of the stub module.
      • When removing stub modules from the session that is not supposed to
        be loaded, it uses Get-Module -All to look for previously loaded
        stub modules.
    • Remove-SqlModuleStub
      • Added a new helper function Remove-SqlModuleStub for tests to remove
        the PowerShell SqlServer stub module when a test has run.
  • SqlWindowsFirewall
    • Added integration tests for SqlWindowsFirewall (issue #747).
  • Get-DscProperty
    • Added parameter ExcludeName to exclude property names from being returned.

Changed

  • SqlServerDsc
    • Updated pipeline to use the build worker image 'ubuntu-latest'.
    • Switch to installing GitVersion using 'dotnet tool install' (issue #1732).
    • Bumped Stale task to v5 in the GitHub workflow.
    • Make it possible to publish code coverage on failed test runs, and
      when re-run a fail job.
    • Exclude Script Analyzer rule TypeNotFound in the file .vscode/analyzersettings.psd1.
    • Update CONTRIBUTING.md describing error handling in commands and class-based
      resources.
    • The QA tests are now run in Windows PowerShell due to a bug in PowerShell 7
      that makes class-based resource using inheritance to not work.
    • The QA test are excluding the rule TypeNotFound because it cannot
      run on the source files (there is a new issue that is tracking so this
      rule is only run on the built module).
    • The Pester code coverage has been switched to use the older functionality
      that uses breakpoints to calculate coverage. Newer functionality sometimes
      throw an exception when used in conjunction with class-based resources.¨
    • SMO stubs (used in the unit tests)
      • Was updated to remove a bug related to the type DatabasePermissionInfo
        when used with the type DatabasePermissionSet.
        The stubs suggested that the property PermissionType (of type DatabasePermissionSet)
        in DatabasePermissionInfo should have been a array DatabasePermissionSet[].
        This conflicted with real SMO as it does not pass an array, but instead
        a single DatabasePermissionSet. The stubs was modified to mimic the
        real SMO. At the same time some old mock code in the SMO stubs was removed
        as it was no longer in use.
      • Was updated to remove a bug related to the type ServerPermissionInfo
        when used with the type ServerPermissionSet. The stubs suggested that
        the property PermissionType (of type ServerPermissionSet)
        in ServerPermissionInfo should have been a array ServerPermissionSet[].
        This conflicted with real SMO as it does not pass an array, but instead
        a single ServerPermissionSet. The stubs was modified to mimic the
        real SMO. At the same time some old mock code in the SMO stubs was removed
        as it was no longer in use.
    • Updated integration tests README.md to describe how to use Appveyor to
      debug integration tests.
  • Wiki
    • add introduction and links to DSC technology
  • SqlServerDsc.Common
    • The parameter SetupCredential of the function Connect-SQL was renamed
      to Credential and the parameter name SetupCredential was made a
      parameter alias.
  • SqlLogin
    • BREAKING CHANGE: The parameters LoginMustChangePassword, LoginPasswordExpirationEnabled,
      and LoginPasswordPolicyEnforced no longer have a default value of $true.
      This means that when creating a new login, and not specifically setting
      these parameters to $true in the configuration, the login that is created
      will have these properties set to $false.
    • BREAKING CHANGE: LoginMustChangePassword, LoginPasswordExpirationEnabled,
      and LoginPasswordPolicyEnforced parameters no longer enforce default
      values (issue #1669).
  • SqlServerDsc
    • All tests have been converted to run in Pester 5 (Pester 4 can no
      longer be supported) (issue #1654).
    • Pipeline build and deploy now runs on Ubuntu 18.04, see more information
      in actions/runner-images#3287.
    • Update the pipeline file azure-pipelines.yml to use the latest version
      from the Sampler project.
  • SqlRs
    • BREAKING CHANGE: Now the Reporting Services is always restarted after
      the call to CIM method SetDatabaseConnection when setting up the
      Reporting Services. This so to try to finish the initialization of
      Reporting Services. This was prior only done for SQL Server Reporting
      Services 2019 (issue #1721).
    • Added some verbose messages to better indicate which CIM methods are run
      and when they are run.
    • Minor refactor to support running unit test with strict mode enabled.
  • SqlLogin
    • Only enforces optional parameter LoginType when it is specified in the
      configuration.
    • Only enforces optional parameters LoginPasswordExpirationEnabled and
      LoginPasswordPolicyEnforced for a SQL login when the parameters are
      specified in the configuration.
    • A localized string for an error message was updated to correctly reflect
      the code that says that to use a SQL login the authentication mode must
      be either Mixed or Normal, prio it just stated Mixed.
  • SqlSecureConnection
    • BREAKING CHANGE: Now Get-TargetResource returns the value 'Empty'
      ...
Read more

v16.0.0-preview0011

13 Aug 09:23
d741244
Compare
Choose a tag to compare
v16.0.0-preview0011 Pre-release
Pre-release

[v16.0.0-preview0011]

Removed

  • The deprecated DSC resource SqlDatabaseOwner have been removed (and replaced
    by a property in SqlDatabase)
    (issue #1725).
  • The deprecated DSC resource SqlDatabaseRecoveryModel have been removed (and
    replaced by a property in SqlDatabase)
    (issue #1725).
  • The deprecated DSC resource SqlServerEndpointState have been removed (and
    replaced by a property in SqlEndpoint)
    (issue #1725).
  • The deprecated DSC resource SqlServerNetwork have been removed (and replaced by
    SqlProtocol
    and SqlProtocolTcpIp)
    (issue #1725).
  • CommonTestHelper
    • Remove the helper function Wait-ForIdleLcm since it has been moved
      to the module DscResource.Test.
    • Remove the helper function Get-InvalidOperationRecord since it has
      been moved to the module DscResource.Test.
    • Remove the helper function Get-InvalidResultRecord since it has been
      moved to the module DscResource.Test.

Added

  • SqlServerDsc
    • Added recommended VS Code extensions.
      • Added settings for VS Code extension Pester Test Adapter.
    • Added new Script Analyzer rules from the module Indented.ScriptAnalyzerRules
      to help development and review process. The rules that did not contradict
      the existing DSC Community rules and style guideline were added.
    • Added the Visual Studio Code extension Code Spell Checker to the list
      of recommended Visual Studio Code extensions.
    • Added a file prefix.ps1 which content is placed first in the built module
      (.psm1). This file imports dependent modules, and imports localized strings
      used by private and public commands.
    • The following classes were added to the module:
      • DatabasePermission - complex type for the DSC resource SqlDatabasePermission.
      • Ensure - Enum to be used for the property Ensure in class-based
        resources.
      • Reason - Used by method Get() to return the reason a property is not
        in desired state.
      • ResourceBase - class that can be inherited by class-based resource and
        provides functionality meant simplify the creating of class-based resource.
      • SqlResourceBase - class that can be inherited by class-based resource and
        provides default DSC properties and method for get a [Server]-object.
      • ServerPermission - complex type for the DSC resource SqlPermission.
    • The following private functions were added to the module (see comment-based
      help for more information):
      • ConvertFrom-CompareResult
      • ConvertTo-Reason
      • Get-ClassName
      • Get-DscProperty
      • Get-LocalizedDataRecursive
      • Test-ResourceHasDscProperty
      • Test-ResourceDscPropertyIsAssigned
    • The following public functions were added to the module (see comment-based
      help for more information):
      • Connect-SqlDscDatabaseEngine
      • ConvertFrom-SqlDscDatabasePermission
      • ConvertTo-SqlDscDatabasePermission
      • Get-SqlDscDatabasePermission
      • Set-SqlDscDatabasePermission
      • Test-SqlDscIsDatabasePrincipal
      • Test-SqlDscIsLogin
      • ConvertFrom-SqlDscServerPermission
      • ConvertTo-SqlDscServerPermission
      • Get-SqlDscServerPermission
      • Set-SqlDscServerPermission
      • Invoke-SqlDscQuery
      • Get-SqlDscAudit
      • New-SqlDscAudit
      • Set-SqlDscAudit
      • Remove-SqlDscAudit
      • Enable-SqlDscAudit
      • Disable-SqlDscAudit
    • Support for debugging of integration tests in AppVeyor.
      • Only run for pull requests
    • Add new resource SqlAudit.
  • CommonTestHelper
    • Import-SqlModuleStub
      • Added the optional parameter PasThru that, if used, will return the
        name of the stub module.
      • When removing stub modules from the session that is not supposed to
        be loaded, it uses Get-Module -All to look for previously loaded
        stub modules.
    • Remove-SqlModuleStub
      • Added a new helper function Remove-SqlModuleStub for tests to remove
        the PowerShell SqlServer stub module when a test has run.
  • SqlWindowsFirewall
    • Added integration tests for SqlWindowsFirewall (issue #747).
  • Get-DscProperty
    • Added parameter ExcludeName to exclude property names from being returned.

Changed

  • SqlServerDsc
    • Updated pipeline to use the build worker image 'ubuntu-latest'.
    • Switch to installing GitVersion using 'dotnet tool install' (issue #1732).
    • Bumped Stale task to v5 in the GitHub workflow.
    • Make it possible to publish code coverage on failed test runs, and
      when re-run a fail job.
    • Exclude Script Analyzer rule TypeNotFound in the file .vscode/analyzersettings.psd1.
    • Update CONTRIBUTING.md describing error handling in commands and class-based
      resources.
    • The QA tests are now run in Windows PowerShell due to a bug in PowerShell 7
      that makes class-based resource using inheritance to not work.
    • The QA test are excluding the rule TypeNotFound because it cannot
      run on the source files (there is a new issue that is tracking so this
      rule is only run on the built module).
    • The Pester code coverage has been switched to use the older functionality
      that uses breakpoints to calculate coverage. Newer functionality sometimes
      throw an exception when used in conjunction with class-based resources.¨
    • SMO stubs (used in the unit tests)
      • Was updated to remove a bug related to the type DatabasePermissionInfo
        when used with the type DatabasePermissionSet.
        The stubs suggested that the property PermissionType (of type DatabasePermissionSet)
        in DatabasePermissionInfo should have been a array DatabasePermissionSet[].
        This conflicted with real SMO as it does not pass an array, but instead
        a single DatabasePermissionSet. The stubs was modified to mimic the
        real SMO. At the same time some old mock code in the SMO stubs was removed
        as it was no longer in use.
      • Was updated to remove a bug related to the type ServerPermissionInfo
        when used with the type ServerPermissionSet. The stubs suggested that
        the property PermissionType (of type ServerPermissionSet)
        in ServerPermissionInfo should have been a array ServerPermissionSet[].
        This conflicted with real SMO as it does not pass an array, but instead
        a single ServerPermissionSet. The stubs was modified to mimic the
        real SMO. At the same time some old mock code in the SMO stubs was removed
        as it was no longer in use.
    • Updated integration tests README.md to describe how to use Appveyor to
      debug integration tests.
  • Wiki
    • add introduction and links to DSC technology
  • SqlServerDsc.Common
    • The parameter SetupCredential of the function Connect-SQL was renamed
      to Credential and the parameter name SetupCredential was made a
      parameter alias.
  • SqlLogin
    • BREAKING CHANGE: The parameters LoginMustChangePassword, LoginPasswordExpirationEnabled,
      and LoginPasswordPolicyEnforced no longer have a default value of $true.
      This means that when creating a new login, and not specifically setting
      these parameters to $true in the configuration, the login that is created
      will have these properties set to $false.
    • BREAKING CHANGE: LoginMustChangePassword, LoginPasswordExpirationEnabled,
      and LoginPasswordPolicyEnforced parameters no longer enforce default
      values (issue #1669).
  • SqlServerDsc
    • All tests have been converted to run in Pester 5 (Pester 4 can no
      longer be supported) (issue #1654).
    • Pipeline build and deploy now runs on Ubuntu 18.04, see more information
      in actions/runner-images#3287.
    • Update the pipeline file azure-pipelines.yml to use the latest version
      from the Sampler project.
  • SqlRs
    • BREAKING CHANGE: Now the Reporting Services is always restarted after
      the call to CIM method SetDatabaseConnection when setting up the
      Reporting Services. This so to try to finish the initialization of
      Reporting Services. This was prior only done for SQL Server Reporting
      Services 2019 (issue #1721).
    • Added some verbose messages to better indicate which CIM methods are run
      and when they are run.
    • Minor refactor to support running unit test with strict mode enabled.
  • SqlLogin
    • Only enforces optional parameter LoginType when it is specified in the
      configuration.
    • Only enforces optional parameters LoginPasswordExpirationEnabled and
      LoginPasswordPolicyEnforced for a SQL login when the parameters are
      specified in the configuration.
    • A localized string for an error message was updated to correctly reflect
      the code that says that to use a SQL login the authentication mode must
      be either Mixed or Normal, prio it just stated Mixed.
  • SqlSecureConnection
    • BREAKING CHANGE: Now Get-TargetResource returns the value 'Empty'
      ...
Read more