Skip to content

v16.1.0-preview0012

Pre-release
Pre-release
Compare
Choose a tag to compare
@dscbot dscbot released this 24 Jan 17:26
86869cd

[v16.1.0-preview0012]

Removed

  • SqlServerDsc
    • Removed Assert-ElevatedUser from private functions (issue #1797).
      • Assert-ElevatedUser added to DscResource.Common public functions
        (issue #82).
    • Removed Test-IsNumericType from private functions (issue #1795).
      • Test-IsNumericType added to DscResource.Common public functions
        (issue #87).
    • Removed Test-ServiceAccountRequirePassword from private functions (issue #1794
      • Replaced by Test-AccountRequirePassword that was added to DscResource.Common
        public functions (issue #93).
    • Removed Assert-RequiredCommandParameter from private functions (issue #1796).
      • Replaced by Assert-BoundParameter (part of DscResource.Common)
        that had a new parameter set added (issue #92).
    • Removed private function Test-ResourceDscPropertyIsAssigned and
      Test-ResourceHasDscProperty. Both are replaced by Test-DscProperty
      which is now part of the module DscResource.Common.
    • Removed private function Get-DscProperty. It is replaced by Get-DscProperty
      which is now part of the module DscResource.Common.
    • The class ResourceBase and Reason has been removed, they are now
      part of the module DscResource.Base.
    • The enum Ensure has been removed, is is now part of the module
      DscResource.Base.
    • The private functions that the class ResourceBase depended on has been
      moved to the module DscResource.Base.
      • ConvertFrom-CompareResult
      • ConvertTo-Reason
      • Get-ClassName
      • Get-LocalizedDataRecursive
    • Added documentation how to generate stub modules for the unit tests.
      The documentation can be found in 'tests/Unit/Stubs`.

Added

  • SqlServerDsc
    • The following private functions were added to the module (see comment-based
      help for more information):
      • 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.
    • Add the GitHub App Pull Request Quantifier as an experiment to see if it
      brings any value (issue #1811).
      • Updated thresholds, and label names and colors.
    • New QA tests for public commands and private functions.
  • SqlDatabase
    • Added compatibility levels for SQL Server 2022 (major version 16).
  • SqlSetup
    • Paths for SQL Server 2022 are correctly returned by Get.
  • SqlRS
    • Added optional parameter Encrypt. Parameter Encrypt controls whether
      the connection used by `Invoke-SqlCmd should enforce encryption. This
      parameter can only be used together with the module SqlServer v22.x
      (minimum v22.0.49-preview). The parameter will be ignored if an older
      major versions of the module SqlServer is used.
  • SqlScript
    • Added optional parameter Encrypt. Parameter Encrypt controls whether
      the connection used by `Invoke-SqlCmd should enforce encryption. This
      parameter can only be used together with the module SqlServer v22.x
      (minimum v22.0.49-preview). The parameter will be ignored if an older
      major versions of the module SqlServer is used.
  • SqlScriptQuery
    • Added optional parameter Encrypt. Parameter Encrypt controls whether
      the connection used by `Invoke-SqlCmd should enforce encryption. This
      parameter can only be used together with the module SqlServer v22.x
      (minimum v22.0.49-preview). The parameter will be ignored if an older
      major versions of the module SqlServer is used.
  • The public commands Add-SqlDscNode, Complete-SqlDscFailoverCluster,
    Complete-SqlDscImage, Install-SqlDscServer, and Repair-SqlDscServer
    now support the setup argument ProductCoveredBySA (issue #1798).

Changed

  • SqlServerDsc
    • Update Stale GitHub Action to v7.
    • 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.
    • Class-based resources now uses the parent class ResourceBase from the
      module DscResource.Base (issue #1790).
    • Settings for the Visual Studio Code extension Pester Tests was changed
      to be able to run all unit tests, and all tests run by the extension
      are now run in a separate process to be able to handle changes in
      class-based resources.
    • The AppVeyor configuration file was updated to include the possibility
      to run integration tests for SQL Server 2022.
    • The stubs in SqlServerStub.psm1 are now based on the commands from the
      module SqlServer v22.0.49-preview.
  • Install-SqlServerDsc
    • No longer throws an exception when parameter AgtSvcAccount is not specified.
  • SqlAgReplica
    • Converted unit test to Pester 5.
    • Update-AvailabilityGroupReplica to trigger once within Set-TargetResource
      for all AvailabilityReplica changes.
  • Private function Invoke-SetupAction (issue #1798).
    • Was changed to support the SQL Server 2022 GA feature AzureExtension
      (that replaced the feature name ARC).
    • Support the setup argument ProductCoveredBySA.
    • No longer supports the argument OnBoardSQLToARC as it was removed in
      SQL Server 2022 GA.
  • Install-SqlDscServer
    • Was changed to support the SQL Server 2022 GA feature AzureExtension
      (that replaced the feature name ARC) (issue #1798).
  • Uninstall-SqlDscServer
    • Was changed to support the SQL Server 2022 GA feature AzureExtension
      (that replaced the feature name ARC) (issue #1798).
  • SqlReplication
    • The resource now supports SQL Server 2022. The resource will require
      the module SqlServer v22.0.49-preview or newer when used against an
      SQL Server 2022 instance (issue #1801).
  • SqlProtocol
    • The resource now supports SQL Server 2022. The resource will require
      the module SqlServer v22.0.49-preview or newer when used against an
      SQL Server 2022 instance (issue #1802).
  • SqlProtocolTcpIp
    • The resource now supports SQL Server 2022. The resource will require
      the module SqlServer v22.0.49-preview or newer when used against an
      SQL Server 2022 instance (issue #1805).
  • SqlServiceAccount
    • The resource now supports SQL Server 2022. The resource will require
      the module SqlServer v22.0.49-preview or newer when used against an
      SQL Server 2022 instance (issue #1800).
  • SqlSetup
    • Integration tests now used SqlServer module version 22.0.49-preview
      when running against SQL Server 2022, when testing SQL Server 2016,
      SQL Server 2017, and SQL Server 2019 the module version 21.1.18256
      is used.
    • Integration tests now supports installing preview versions of the module
      SqlServer.
  • SqlServerDsc.Common
    • Import-SQLPSModule
      • Small changed to the localized string verbose message when the preferred
        module (SqlServer) is not found.
    • Invoke-SqlScript
      • Added the optional parameter Encrypt which controls whether the connection
        used by Invoke-SqlCmd should enforce encryption. This parameter can
        only be used together with the module SqlServer v22.x (minimum
        v22.0.49-preview). The parameter will be ignored if an older major
        versions of the module SqlServer is used.
    • Connect-SQL
      • Was updated to handle both -ErrorAction 'Stop' and -ErrorAction 'SilentlyContinue'
        when passed to the command (issue #1837).

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).