Skip to content

v14.0.0-preview0011

Pre-release
Pre-release
Compare
Choose a tag to compare
@dscbot dscbot released this 12 May 19:46
7b0ba90

[v14.0.0-preview0011]

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.

  • SqlServerNetwork
    • This resource is now deprecated. The functionality is now covered by
      the resources SqlServerProtocol and SqlServerProtocolTcpIp.
  • SqlDatabaseOwner
    • This resource is now deprecated. The functionality is now covered by
      a property in the resource SqlDatabase (issue #966).
  • SqlDatabaseRecoveryModel
    • This resource is now deprecated. The functionality is now covered by
      a property in the resource SqlDatabase (issue #967).

Added

  • SqlServerDsc
    • Added new resource SqlServerProtocol (issue #1377).
    • Added new resource SqlServerProtocolTcpIp (issue #1378).
    • Fixing a problem with the latest ModuleBuild 1.7.0 that breaks the CI
      pipeline.
  • 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).
  • SqlServerReplication
  • SqlDatabase
    • The property OwnerName was added.
  • 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).
      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).
    • 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).
  • SqlAlwaysOnService
    • BREAKING CHANGE: The parameter ServerName is now non-mandatory and
      defaults to $env:COMPUTERNAME (issue #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).
    • 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).
    • Normalize parameter descriptive text for default values.
  • SqlDatabaseOwner
    • BREAKING CHANGE: Database changed to DatabaseName for consistency with
      other modules (issue #1484).
  • SqlDatabasePermission
    • BREAKING CHANGE: The parameter ServerName is now non-mandatory and
      defaults to $env:COMPUTERNAME (issue #319).
    • Normalize parameter descriptive text for default values.
    • BREAKING CHANGE: Database changed to DatabaseName for consistency with
      other modules (issue #1484).
  • SqlDatabaseRecoveryModel
    • BREAKING CHANGE: The parameter ServerName is now non-mandatory and
      defaults to $env:COMPUTERNAME (issue #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).
    • Normalize parameter descriptive text for default values.
    • BREAKING CHANGE: Database changed to DatabaseName for consistency with
      other modules (issue #1484).
  • SqlDatabaseUser
    • BREAKING CHANGE: The parameter ServerName is now non-mandatory and
      defaults to $env:COMPUTERNAME (issue #319).
    • Normalize parameter descriptive text for default values.
  • SqlServerConfiguration
    • BREAKING CHANGE: The parameter ServerName is now non-mandatory and
      defaults to $env:COMPUTERNAME (issue #319).
    • Normalize parameter descriptive text for default values.
  • SqlServerDatabaseMail
    • Normalize parameter descriptive text for default values.
  • SqlServerEndpoint
    • Normalize parameter descriptive text for default values.
  • SqlServerEndpointPermission
    • BREAKING CHANGE: The parameter ServerName is now non-mandatory and
      defaults to $env:COMPUTERNAME (issue #319).
    • Normalize parameter descriptive text for default values.
  • SqlServerLogin
    • BREAKING CHANGE: The parameter ServerName is now non-mandatory and
      defaults to $env:COMPUTERNAME (issue #319).
    • Normalize parameter descriptive text for default values.
  • SqlServerRole
    • BREAKING CHANGE: The parameter ServerName is now non-mandatory and
      defaults to $env:COMPUTERNAME (issue #319).
    • Normalize parameter descriptive text for default values.
  • SqlServiceAccount
    • BREAKING CHANGE: The parameter ServerName is now non-mandatory and
      defaults to $env:COMPUTERNAME (issue #319).
    • Normalize parameter descriptive text for default values.
  • SqlSetup
    • BREAKING CHANGE: Now if the parameter AgtSvcStartupType is not specified
      in the configuration the resource will no longer by default add an
      argument to setup.exe with a value of Automatic for the argument
      AGTSVCSTARTUPTYPE. If the parameter AgtSvcStartupType is not specified
      in the configuration there will be no setup argument added at all
      (issue #464).

Fixed

  • SqlServerDsc
    • The regular expression for minor-version-bump-message in the file
      GitVersion.yml was changed to only raise minor version when the
      commit message contain the word add, adds, minor, feature,
      or features.
    • Now code coverage is reported to Codecov, and a codecov.yml was added.
    • Updated to support DscResource.Common v0.7.1.
    • Changed to point to CONTRIBUTING.md on master branch to avoid "404 Page not found"
      (issue #1508).
  • SqlAGDatabase
    • Fixed unit tests that failed intermittently when running unit tests
      in PowerShell 7 (issue #1532).
    • Minor code style issue changes.
  • SqlAgentAlert
    • The parameter ServerName now throws when passing an empty string or
      null value (part of issue #319).
  • SqlAgentFailsafe
    • The parameter ServerName now throws when passing an empty string or
      null value (part of issue #319).
  • SqlAgentOperator
    • The parameter ServerName now throws when passing an empty string or
      null value (part of issue #319).
  • SqlAlias
    • BREAKING CHANGE: The parameter ServerName is now non-mandatory to
      prevent ping-pong behavior (issue #1502).
      The ServerName is not returned as an empty string when the protocol is
      Named Pipes.
  • SqlDatabase
    • Fixed missing parameter CompatibilityLevel in the README.md (and
      updated the description in the schema.mof).
  • SqlRs
    • Fix typo in the schema parameter SuppressRestart description
      and in the parameter description in the README.md.
  • SqlServerDatabaseMail
    • The parameter ServerName now throws when passing an empty string or
      null value (part of issue #319).
  • SqlServerEndpoint
    • The parameter ServerName now throws when passing an empty string or
      null value (part of issue #319).
  • SqlServerEndpointState
    • The parameter ServerName now throws when passing an empty string or
      null value (part of issue #319).
  • SqlServerPermission
    • The parameter ServerName now throws when passing an empty string or
      null value (part of issue #319).
  • SqlServerReplication
    • Enhanced the exception handling so it shows the inner exception error
      message that have the actual error that occurred.
    • Corrected the examples.
  • SqlSetup
    • Update integration tests to correctly detect sysadmins because of changes
      to the build worker.
    • The property SqlTempdbLogFileGrowth and SqlTempdbFileGrowth now returns
      the correct values. Previously the value of the growth was wrongly
      divided by 1KB even if the value was in percent. Now the value for growth
      is the sum of the average of MB and average of the percentage.
    • The function Get-TargetResource was changed so that the property
      SQLTempDBDir will now return the database tempdb's property
      PrimaryFilePath.
    • BREAKING CHANGE: Logic that was under feature flag DetectionSharedFeatures
      was made the default and old logic that was used to detect shared features
      was removed (issue #1290).
      This was implemented because the previous implementation did not work
      fully with SQL Server 2017.
    • Much of the code was refactored into units (functions) to be easier to test.
      Due to the size of the code the unit tests ran for an abnormal long time,
      after this refactoring the unit tests runs much quicker.