Skip to content

Releases: dsccommunity/SqlServerDsc

v17.4.0-preview0008

09 Dec 19:59
443a52f

Choose a tag to compare

v17.4.0-preview0008 Pre-release
Pre-release

[v17.4.0-preview0008]

Added

  • Added public command Backup-SqlDscDatabase to perform database backups using
    SMO's Microsoft.SqlServer.Management.Smo.Backup class. Supports full,
    differential, and transaction log backups with options for compression,
    copy-only, checksum, and retention. Accepts both Server and Database objects
    via pipeline
    (issue #2365).
  • Set-SqlDscServerPermission
    • Added integration tests for negative test scenarios including invalid
      permission names and non-existent principals.
  • SqlPermission
    • Added integration tests for server role permissions to complement the
      existing login permission tests.
  • New-SqlDscDatabase
    • Added comprehensive set of settable database properties that were previously
      only available in Set-SqlDscDatabaseProperty
      (issue #2190).
  • Added public command Resume-SqlDscDatabase to bring a database online using
    SMO Database.SetOnline(). Supports Server and Database pipeline input
    (issue #2191).
  • Added public command Suspend-SqlDscDatabase to take a database offline using
    SMO Database.SetOffline(). Supports Server and Database pipeline input;
    includes Force to disconnect active users
    (issue #2192).

Changed

  • Renamed commands *-SqlDscBIReportServer to *-SqlDscPowerBIReportServer for
    clarity. The old names *-SqlDscBIReportServer and *-SqlDscPBIReportServer
    are available as aliases for backward compatibility
    (issue #2071).
  • SqlPermission
    • Refactored to use the new object-based server permission commands
      (Grant-SqlDscServerPermission, Deny-SqlDscServerPermission,
      Revoke-SqlDscServerPermission, and Get-SqlDscServerPermission)
      instead of the deprecated Set-SqlDscServerPermission command
      (issue #2159).
    • Updated documentation to clarify that the resource supports both logins
      and server roles as principals.
    • Added a note in documentation clarifying that if a name exists as both
      a login and a server role, the login will take precedence.
  • BREAKING CHANGE: Set-SqlDscServerPermission
    • Completely refactored to set exact server permissions for a principal. The
      command now accepts Login or ServerRole objects (same as Grant-SqlDscServerPermission,
      Deny-SqlDscServerPermission, and Revoke-SqlDscServerPermission) and uses
      -Grant, -GrantWithGrant, and -Deny parameters to specify the exact
      permissions that should exist within each specified category. Within a
      specified category, any existing permissions not listed are revoked;
      categories not specified are left unchanged. The command internally uses
      Get-SqlDscServerPermission, Grant-SqlDscServerPermission,
      Deny-SqlDscServerPermission, and Revoke-SqlDscServerPermission to
      achieve this
      (issue #2159).
  • Updated comment-based help .INPUTS and .OUTPUTS sections across all public
    commands and private functions to comply with DSC community style guidelines
    (issue #2103).
  • Set-SqlDscDatabaseProperty
    • Updated comment-based help to reference correct enum values.
    • Added SQL Server version requirements to version-specific parameter help.

Fixed

  • Set-SqlDscServerPermission
    • Fixed an issue where unspecified permission parameters would incorrectly
      revoke existing permissions. The command now only processes permission
      categories that are explicitly specified via parameters. For example,
      specifying only -Grant @() will now correctly revoke only Grant permissions
      while leaving GrantWithGrant and Deny permissions unchanged
      (issue #2159).
  • New-SqlDscDatabase
    • Fixed parameter types for database-scoped configuration properties from
      System.Boolean to Microsoft.SqlServer.Management.Smo.DatabaseScopedConfigurationOnOff
      to match SMO property types and support all valid values (Off, On, Primary)
      (issue #2190).
    • Fixed parameter types for boolean database properties from System.Boolean to
      System.Management.Automation.SwitchParameter to follow PowerShell best practices.
      (issue #2190).
  • New-SqlDscRole
    • Fixed duplicate verbose output by removing manual Write-Verbose call, as
      $PSCmdlet.ShouldProcess() already generates appropriate verbose output
      (issue #2156).
  • Set-SqlDscDatabaseProperty
    • Fixed parameter types for database-scoped configuration properties from
      System.Boolean to Microsoft.SqlServer.Management.Smo.DatabaseScopedConfigurationOnOff
      to match SMO property types and support all valid values (Off, On, Primary)
      (issue #2190).
    • Fixed parameter types for boolean database properties from System.Boolean to
      System.Management.Automation.SwitchParameter to follow PowerShell best practices.
      (issue #2190).

v17.4.0-preview0007

07 Dec 20:01
a2ec8dc

Choose a tag to compare

v17.4.0-preview0007 Pre-release
Pre-release

[v17.4.0-preview0007]

Added

  • Set-SqlDscServerPermission
    • Added integration tests for negative test scenarios including invalid
      permission names and non-existent principals.
  • SqlPermission
    • Added integration tests for server role permissions to complement the
      existing login permission tests.
  • New-SqlDscDatabase
    • Added comprehensive set of settable database properties that were previously
      only available in Set-SqlDscDatabaseProperty
      (issue #2190).
  • Added public command Resume-SqlDscDatabase to bring a database online using
    SMO Database.SetOnline(). Supports Server and Database pipeline input
    (issue #2191).
  • Added public command Suspend-SqlDscDatabase to take a database offline using
    SMO Database.SetOffline(). Supports Server and Database pipeline input;
    includes Force to disconnect active users
    (issue #2192).

Changed

  • Renamed commands *-SqlDscBIReportServer to *-SqlDscPowerBIReportServer for
    clarity. The old names *-SqlDscBIReportServer and *-SqlDscPBIReportServer
    are available as aliases for backward compatibility
    (issue #2071).
  • SqlPermission
    • Refactored to use the new object-based server permission commands
      (Grant-SqlDscServerPermission, Deny-SqlDscServerPermission,
      Revoke-SqlDscServerPermission, and Get-SqlDscServerPermission)
      instead of the deprecated Set-SqlDscServerPermission command
      (issue #2159).
    • Updated documentation to clarify that the resource supports both logins
      and server roles as principals.
    • Added a note in documentation clarifying that if a name exists as both
      a login and a server role, the login will take precedence.
  • BREAKING CHANGE: Set-SqlDscServerPermission
    • Completely refactored to set exact server permissions for a principal. The
      command now accepts Login or ServerRole objects (same as Grant-SqlDscServerPermission,
      Deny-SqlDscServerPermission, and Revoke-SqlDscServerPermission) and uses
      -Grant, -GrantWithGrant, and -Deny parameters to specify the exact
      permissions that should exist within each specified category. Within a
      specified category, any existing permissions not listed are revoked;
      categories not specified are left unchanged. The command internally uses
      Get-SqlDscServerPermission, Grant-SqlDscServerPermission,
      Deny-SqlDscServerPermission, and Revoke-SqlDscServerPermission to
      achieve this
      (issue #2159).
  • Updated comment-based help .INPUTS and .OUTPUTS sections across all public
    commands and private functions to comply with DSC community style guidelines
    (issue #2103).
  • Set-SqlDscDatabaseProperty
    • Updated comment-based help to reference correct enum values.
    • Added SQL Server version requirements to version-specific parameter help.

Fixed

  • Set-SqlDscServerPermission
    • Fixed an issue where unspecified permission parameters would incorrectly
      revoke existing permissions. The command now only processes permission
      categories that are explicitly specified via parameters. For example,
      specifying only -Grant @() will now correctly revoke only Grant permissions
      while leaving GrantWithGrant and Deny permissions unchanged
      (issue #2159).
  • New-SqlDscDatabase
    • Fixed parameter types for database-scoped configuration properties from
      System.Boolean to Microsoft.SqlServer.Management.Smo.DatabaseScopedConfigurationOnOff
      to match SMO property types and support all valid values (Off, On, Primary)
      (issue #2190).
    • Fixed parameter types for boolean database properties from System.Boolean to
      System.Management.Automation.SwitchParameter to follow PowerShell best practices.
      (issue #2190).
  • New-SqlDscRole
    • Fixed duplicate verbose output by removing manual Write-Verbose call, as
      $PSCmdlet.ShouldProcess() already generates appropriate verbose output
      (issue #2156).
  • Set-SqlDscDatabaseProperty
    • Fixed parameter types for database-scoped configuration properties from
      System.Boolean to Microsoft.SqlServer.Management.Smo.DatabaseScopedConfigurationOnOff
      to match SMO property types and support all valid values (Off, On, Primary)
      (issue #2190).
    • Fixed parameter types for boolean database properties from System.Boolean to
      System.Management.Automation.SwitchParameter to follow PowerShell best practices.
      (issue #2190).

v17.4.0-preview0006

07 Dec 15:46
d621ea4

Choose a tag to compare

v17.4.0-preview0006 Pre-release
Pre-release

[v17.4.0-preview0006]

Added

  • SqlPermission
    • Added integration tests for server role permissions to complement the
      existing login permission tests.
  • New-SqlDscDatabase
    • Added comprehensive set of settable database properties that were previously
      only available in Set-SqlDscDatabaseProperty
      (issue #2190).
  • Added public command Resume-SqlDscDatabase to bring a database online using
    SMO Database.SetOnline(). Supports Server and Database pipeline input
    (issue #2191).
  • Added public command Suspend-SqlDscDatabase to take a database offline using
    SMO Database.SetOffline(). Supports Server and Database pipeline input;
    includes Force to disconnect active users
    (issue #2192).

Changed

  • Renamed commands *-SqlDscBIReportServer to *-SqlDscPowerBIReportServer for
    clarity. The old names *-SqlDscBIReportServer and *-SqlDscPBIReportServer
    are available as aliases for backward compatibility
    (issue #2071).
  • SqlPermission
    • Refactored to use the new object-based server permission commands
      (Grant-SqlDscServerPermission, Deny-SqlDscServerPermission,
      Revoke-SqlDscServerPermission, and Get-SqlDscServerPermission)
      instead of the deprecated Set-SqlDscServerPermission command
      (issue #2159).
    • Updated documentation to clarify that the resource supports both logins
      and server roles as principals.
    • Added a note in documentation clarifying that if a name exists as both
      a login and a server role, the login will take precedence.
  • Updated comment-based help .INPUTS and .OUTPUTS sections across all public
    commands and private functions to comply with DSC community style guidelines
    (issue #2103).
  • Set-SqlDscDatabaseProperty
    • Updated comment-based help to reference correct enum values.
    • Added SQL Server version requirements to version-specific parameter help.

Fixed

  • New-SqlDscDatabase
    • Fixed parameter types for database-scoped configuration properties from
      System.Boolean to Microsoft.SqlServer.Management.Smo.DatabaseScopedConfigurationOnOff
      to match SMO property types and support all valid values (Off, On, Primary)
      (issue #2190).
    • Fixed parameter types for boolean database properties from System.Boolean to
      System.Management.Automation.SwitchParameter to follow PowerShell best practices.
      (issue #2190).
  • New-SqlDscRole
    • Fixed duplicate verbose output by removing manual Write-Verbose call, as
      $PSCmdlet.ShouldProcess() already generates appropriate verbose output
      (issue #2156).
  • Set-SqlDscDatabaseProperty
    • Fixed parameter types for database-scoped configuration properties from
      System.Boolean to Microsoft.SqlServer.Management.Smo.DatabaseScopedConfigurationOnOff
      to match SMO property types and support all valid values (Off, On, Primary)
      (issue #2190).
    • Fixed parameter types for boolean database properties from System.Boolean to
      System.Management.Automation.SwitchParameter to follow PowerShell best practices.
      (issue #2190).

v17.4.0-preview0005

07 Dec 12:25
1110653

Choose a tag to compare

v17.4.0-preview0005 Pre-release
Pre-release

[v17.4.0-preview0005]

Added

  • SqlPermission
    • Added integration tests for server role permissions to complement the
      existing login permission tests.
  • New-SqlDscDatabase
    • Added comprehensive set of settable database properties that were previously
      only available in Set-SqlDscDatabaseProperty
      (issue #2190).
  • Added public command Resume-SqlDscDatabase to bring a database online using
    SMO Database.SetOnline(). Supports Server and Database pipeline input
    (issue #2191).
  • Added public command Suspend-SqlDscDatabase to take a database offline using
    SMO Database.SetOffline(). Supports Server and Database pipeline input;
    includes Force to disconnect active users
    (issue #2192).

Changed

  • SqlPermission
    • Refactored to use the new object-based server permission commands
      (Grant-SqlDscServerPermission, Deny-SqlDscServerPermission,
      Revoke-SqlDscServerPermission, and Get-SqlDscServerPermission)
      instead of the deprecated Set-SqlDscServerPermission command
      (issue #2159).
    • Updated documentation to clarify that the resource supports both logins
      and server roles as principals.
    • Added a note in documentation clarifying that if a name exists as both
      a login and a server role, the login will take precedence.
  • Updated comment-based help .INPUTS and .OUTPUTS sections across all public
    commands and private functions to comply with DSC community style guidelines
    (issue #2103).
  • Set-SqlDscDatabaseProperty
    • Updated comment-based help to reference correct enum values.
    • Added SQL Server version requirements to version-specific parameter help.

Fixed

  • New-SqlDscDatabase
    • Fixed parameter types for database-scoped configuration properties from
      System.Boolean to Microsoft.SqlServer.Management.Smo.DatabaseScopedConfigurationOnOff
      to match SMO property types and support all valid values (Off, On, Primary)
      (issue #2190).
    • Fixed parameter types for boolean database properties from System.Boolean to
      System.Management.Automation.SwitchParameter to follow PowerShell best practices.
      (issue #2190).
  • New-SqlDscRole
    • Fixed duplicate verbose output by removing manual Write-Verbose call, as
      $PSCmdlet.ShouldProcess() already generates appropriate verbose output
      (issue #2156).
  • Set-SqlDscDatabaseProperty
    • Fixed parameter types for database-scoped configuration properties from
      System.Boolean to Microsoft.SqlServer.Management.Smo.DatabaseScopedConfigurationOnOff
      to match SMO property types and support all valid values (Off, On, Primary)
      (issue #2190).
    • Fixed parameter types for boolean database properties from System.Boolean to
      System.Management.Automation.SwitchParameter to follow PowerShell best practices.
      (issue #2190).

v17.4.0-preview0004

06 Dec 16:53
0037064

Choose a tag to compare

v17.4.0-preview0004 Pre-release
Pre-release

[v17.4.0-preview0004]

Added

  • New-SqlDscDatabase
    • Added comprehensive set of settable database properties that were previously
      only available in Set-SqlDscDatabaseProperty
      (issue #2190).
  • Added public command Resume-SqlDscDatabase to bring a database online using
    SMO Database.SetOnline(). Supports Server and Database pipeline input
    (issue #2191).
  • Added public command Suspend-SqlDscDatabase to take a database offline using
    SMO Database.SetOffline(). Supports Server and Database pipeline input;
    includes Force to disconnect active users
    (issue #2192).

Changed

  • SqlPermission
    • Refactored to use the new object-based server permission commands
      (Grant-SqlDscServerPermission, Deny-SqlDscServerPermission,
      Revoke-SqlDscServerPermission, and Get-SqlDscServerPermission)
      instead of the deprecated Set-SqlDscServerPermission command
      (issue #2159).
  • Updated comment-based help .INPUTS and .OUTPUTS sections across all public
    commands and private functions to comply with DSC community style guidelines
    (issue #2103).
  • Set-SqlDscDatabaseProperty
    • Updated comment-based help to reference correct enum values.
    • Added SQL Server version requirements to version-specific parameter help.

Fixed

  • New-SqlDscDatabase
    • Fixed parameter types for database-scoped configuration properties from
      System.Boolean to Microsoft.SqlServer.Management.Smo.DatabaseScopedConfigurationOnOff
      to match SMO property types and support all valid values (Off, On, Primary)
      (issue #2190).
    • Fixed parameter types for boolean database properties from System.Boolean to
      System.Management.Automation.SwitchParameter to follow PowerShell best practices.
      (issue #2190).
  • New-SqlDscRole
    • Fixed duplicate verbose output by removing manual Write-Verbose call, as
      $PSCmdlet.ShouldProcess() already generates appropriate verbose output
      (issue #2156).
  • Set-SqlDscDatabaseProperty
    • Fixed parameter types for database-scoped configuration properties from
      System.Boolean to Microsoft.SqlServer.Management.Smo.DatabaseScopedConfigurationOnOff
      to match SMO property types and support all valid values (Off, On, Primary)
      (issue #2190).
    • Fixed parameter types for boolean database properties from System.Boolean to
      System.Management.Automation.SwitchParameter to follow PowerShell best practices.
      (issue #2190).

v17.4.0-preview0003

05 Dec 21:34
918557f

Choose a tag to compare

v17.4.0-preview0003 Pre-release
Pre-release

[v17.4.0-preview0003]

Added

  • New-SqlDscDatabase
    • Added comprehensive set of settable database properties that were previously
      only available in Set-SqlDscDatabaseProperty
      (issue #2190).
  • Added public command Resume-SqlDscDatabase to bring a database online using
    SMO Database.SetOnline(). Supports Server and Database pipeline input
    (issue #2191).
  • Added public command Suspend-SqlDscDatabase to take a database offline using
    SMO Database.SetOffline(). Supports Server and Database pipeline input;
    includes Force to disconnect active users
    (issue #2192).

Changed

  • Updated comment-based help .INPUTS and .OUTPUTS sections across all public
    commands and private functions to comply with DSC community style guidelines
    (issue #2103).
  • Set-SqlDscDatabaseProperty
    • Updated comment-based help to reference correct enum values.
    • Added SQL Server version requirements to version-specific parameter help.

Fixed

  • New-SqlDscDatabase
    • Fixed parameter types for database-scoped configuration properties from
      System.Boolean to Microsoft.SqlServer.Management.Smo.DatabaseScopedConfigurationOnOff
      to match SMO property types and support all valid values (Off, On, Primary)
      (issue #2190).
    • Fixed parameter types for boolean database properties from System.Boolean to
      System.Management.Automation.SwitchParameter to follow PowerShell best practices.
      (issue #2190).
  • New-SqlDscRole
    • Fixed duplicate verbose output by removing manual Write-Verbose call, as
      $PSCmdlet.ShouldProcess() already generates appropriate verbose output
      (issue #2156).
  • Set-SqlDscDatabaseProperty
    • Fixed parameter types for database-scoped configuration properties from
      System.Boolean to Microsoft.SqlServer.Management.Smo.DatabaseScopedConfigurationOnOff
      to match SMO property types and support all valid values (Off, On, Primary)
      (issue #2190).
    • Fixed parameter types for boolean database properties from System.Boolean to
      System.Management.Automation.SwitchParameter to follow PowerShell best practices.
      (issue #2190).

v17.4.0-preview0002

05 Dec 12:19
78ece95

Choose a tag to compare

v17.4.0-preview0002 Pre-release
Pre-release

[v17.4.0-preview0002]

Added

  • New-SqlDscDatabase
    • Added comprehensive set of settable database properties that were previously
      only available in Set-SqlDscDatabaseProperty
      (issue #2190).
  • Added public command Resume-SqlDscDatabase to bring a database online using
    SMO Database.SetOnline(). Supports Server and Database pipeline input
    (issue #2191).
  • Added public command Suspend-SqlDscDatabase to take a database offline using
    SMO Database.SetOffline(). Supports Server and Database pipeline input;
    includes Force to disconnect active users
    (issue #2192).

Changed

  • Updated comment-based help .INPUTS and .OUTPUTS sections across all public
    commands and private functions to comply with DSC community style guidelines
    (issue #2103).
  • Set-SqlDscDatabaseProperty
    • Updated comment-based help to reference correct enum values.
    • Added SQL Server version requirements to version-specific parameter help.

Fixed

  • New-SqlDscDatabase
    • Fixed parameter types for database-scoped configuration properties from
      System.Boolean to Microsoft.SqlServer.Management.Smo.DatabaseScopedConfigurationOnOff
      to match SMO property types and support all valid values (Off, On, Primary)
      (issue #2190).
    • Fixed parameter types for boolean database properties from System.Boolean to
      System.Management.Automation.SwitchParameter to follow PowerShell best practices.
      (issue #2190).
  • Set-SqlDscDatabaseProperty
    • Fixed parameter types for database-scoped configuration properties from
      System.Boolean to Microsoft.SqlServer.Management.Smo.DatabaseScopedConfigurationOnOff
      to match SMO property types and support all valid values (Off, On, Primary)
      (issue #2190).
    • Fixed parameter types for boolean database properties from System.Boolean to
      System.Management.Automation.SwitchParameter to follow PowerShell best practices.
      (issue #2190).

v17.4.0-preview0001

03 Dec 21:54
79c0cc0

Choose a tag to compare

v17.4.0-preview0001 Pre-release
Pre-release

[v17.4.0-preview0001]

Added

  • New-SqlDscDatabase
    • Added comprehensive set of settable database properties that were previously
      only available in Set-SqlDscDatabaseProperty
      (issue #2190).
  • Added public command Resume-SqlDscDatabase to bring a database online using
    SMO Database.SetOnline(). Supports Server and Database pipeline input
    (issue #2191).
  • Added public command Suspend-SqlDscDatabase to take a database offline using
    SMO Database.SetOffline(). Supports Server and Database pipeline input;
    includes Force to disconnect active users
    (issue #2192).

Changed

  • Set-SqlDscDatabaseProperty
    • Updated comment-based help to reference correct enum values.
    • Added SQL Server version requirements to version-specific parameter help.

Fixed

  • New-SqlDscDatabase
    • Fixed parameter types for database-scoped configuration properties from
      System.Boolean to Microsoft.SqlServer.Management.Smo.DatabaseScopedConfigurationOnOff
      to match SMO property types and support all valid values (Off, On, Primary)
      (issue #2190).
    • Fixed parameter types for boolean database properties from System.Boolean to
      System.Management.Automation.SwitchParameter to follow PowerShell best practices.
      (issue #2190).
  • Set-SqlDscDatabaseProperty
    • Fixed parameter types for database-scoped configuration properties from
      System.Boolean to Microsoft.SqlServer.Management.Smo.DatabaseScopedConfigurationOnOff
      to match SMO property types and support all valid values (Off, On, Primary)
      (issue #2190).
    • Fixed parameter types for boolean database properties from System.Boolean to
      System.Management.Automation.SwitchParameter to follow PowerShell best practices.
      (issue #2190).

v17.3.0

01 Dec 08:28
752efb6

Choose a tag to compare

[v17.3.0]

Removed

  • BREAKING CHANGE: Removed public command Test-SqlDscDatabase. Use
    Test-SqlDscIsDatabase to check existence. For property checks, use
    Test-SqlDscDatabaseProperty. See issue #2201.
  • BREAKING CHANGE: Set-SqlDscDatabase
    • Removed parameter OwnerName issue #2177.
      Use the new command Set-SqlDscDatabaseOwner to change database ownership instead.
  • BREAKING CHANGE: Set-SqlDscDatabaseProperty
    • Removed parameters AzureEdition and AzureServiceObjective. Azure SQL Database
      service tier and SLO changes should be managed using Set-AzSqlDatabase from the
      Azure PowerShell module instead. See issue #2177.
    • Removed parameter DatabaseSnapshotBaseName. Database snapshots should be
      created using the New-SqlDscDatabaseSnapshot, or the New-SqlDscDatabase
      command with the -DatabaseSnapshotBaseName parameter.
    • Removed parameter DefaultSchema. Default schema is a user-level property,
      not a database-level property. See issue #2177.
    • Removed parameter IsLedger. Ledger status is read-only after database creation.
      Use New-SqlDscDatabase with the -IsLedger parameter to create ledger databases
      issue #2351.

Added

  • Added public command Enable-SqlDscDatabaseSnapshotIsolation to enable snapshot
    isolation for a database in a SQL Server Database Engine instance. This command
    uses the SMO SetSnapshotIsolation() method to enable row-versioning and snapshot
    isolation settings to optimize concurrency and consistency (issue #2329).
  • Added public command Disable-SqlDscDatabaseSnapshotIsolation to disable snapshot
    isolation for a database in a SQL Server Database Engine instance. This command
    uses the SMO SetSnapshotIsolation() method to disable row-versioning and snapshot
    isolation settings (issue #2329).
  • Added public command New-SqlDscDatabaseSnapshot to create database snapshots
    in a SQL Server Database Engine instance using SMO. This command provides an
    automated and DSC-friendly approach to snapshot management by leveraging
    New-SqlDscDatabase for the actual creation. The command now supports FileGroup
    and DataFile parameters to allow control over snapshot file placement and
    structure (issue #2341).
  • Added public command New-SqlDscFileGroup to create FileGroup objects for SQL
    Server databases. This command simplifies creating FileGroup objects that can be
    used with New-SqlDscDatabase and other database-related commands. The Database
    parameter is optional, allowing FileGroup objects to be created standalone and
    added to a Database later using Add-SqlDscFileGroup.
  • Added public command New-SqlDscDataFile to create DataFile objects for SQL
    Server FileGroups. This command simplifies creating DataFile objects with
    specified physical file paths, supporting both regular database files (.mdf, .ndf)
    and sparse files for database snapshots (.ss). The FileGroup parameter is
    mandatory, requiring DataFile objects to be created with an associated FileGroup.
  • Added public command Add-SqlDscFileGroup to add one or more FileGroup objects
    to a Database. This command provides a clean way to associate FileGroup objects
    with a Database after they have been created.
  • Added public command ConvertTo-SqlDscDataFile to convert DatabaseFileSpec
    objects to SMO DataFile objects.
  • Added public command ConvertTo-SqlDscFileGroup to convert DatabaseFileGroupSpec
    objects to SMO FileGroup objects.
  • Added class DatabaseFileSpec to define data file specifications without requiring
    a database or SMO context.
  • Added class DatabaseFileGroupSpec to define file group specifications with
    associated data files without requiring a database or SMO context.
  • New-SqlDscDatabase
    • Added FileGroup and DataFile parameters to allow specifying custom file
      locations and structure. These parameters apply to both regular databases and
      database snapshots, enabling control over file placement for snapshots (sparse
      files) and custom filegroup/datafile configuration for regular databases
      (issue #2341).
    • Added IsLedger parameter to support creating ledger databases at creation time.
      Ledger status is read-only after database creation and can only be set when
      creating a new database (issue #2351).
  • Added public command Set-SqlDscDatabaseOwner to change the owner of a SQL Server
    database issue #2177.
    This command uses the SMO SetOwner() method and supports both ServerObject
    and DatabaseObject parameter sets. This replaces the ownership changes
    previously done via the OwnerName parameter in Set-SqlDscDatabase.
  • Added public command Test-SqlDscIsDatabase to test if a database exists on a
    SQL Server Database Engine instance (issue #2201).
  • Added public command Get-SqlDscSetupLog to retrieve SQL Server setup bootstrap
    logs (Summary.txt) from the most recent setup operation. This command can be used
    interactively for troubleshooting or within integration tests to help diagnose
    setup failures. Integration tests have been updated to use this command instead
    of duplicated error handling code issue #2311.
  • Added script Remove-SqlServerFromCIImage.ps1 to remove pre-installed SQL Server
    components from Microsoft Hosted agents that conflict with PrepareImage operations.
    The script is now run automatically in the CI pipeline before PrepareImage tests
    to resolve Sysprep compatibility errors issue #2212.
  • Added integration tests for Complete-SqlDscImage command to ensure command
    reliability in prepared image installation workflows. The test runs in a separate
    pipeline job Integration_Test_Commands_SqlServer_PreparedImage with its own CI
    worker, and verifies the completion of SQL Server instances prepared using
    Install-SqlDscServer with the -PrepareImage parameter. The test includes
    scenarios with minimal parameters and various service account/directory
    configurations issue #2212.
  • Added integration test for Install-SqlDscServer with the -PrepareImage
    parameter set to support the prepared image installation workflow. This test
    (Install-SqlDscServer.Integration.PrepareImage.Tests.ps1) runs in the
    Integration_Test_Commands_SqlServer_PreparedImage pipeline job and prepares
    a DSCSQLTEST instance that is later completed by Complete-SqlDscImage tests
    issue #2212.
  • Added integration tests for Initialize-SqlDscRebuildDatabase command to ensure
    command reliability. The test runs in group 8, alongside Repair-SqlDscServer,
    to verify the rebuild database functionality on the DSCSQLTEST instance
    issue #2242.
  • Added integration tests for Repair-SqlDscServer command to ensure command
    reliability. The test runs in group 8, before Uninstall-SqlDscServer in
    group 9, to verify the repair functionality on the DSCSQLTEST instance
    issue #2238.
  • Added integration tests for ConvertTo-SqlDscServerPermission command to ensure
    command reliability issue #2207.
  • Added post-installation configuration integration test to configure SSL certificate
    support for SQL Server instance DSCSQLTEST in CI environment, enabling testing
    of encryption-related functionality. The new PostInstallationConfiguration
    integration test includes:
    • Self-signed SSL certificate creation and installation
    • Certificate configuration for SQL Server Database Engine
    • Service account permissions for certificate private key access
    • Certificate trust chain configuration
    • Verification that encryption is properly configured
    • Enabled previously skipped encryption tests in Invoke-SqlDscQuery
    • Added integration tests for Connect-SqlDscDatabaseEngine command to verify
      the -Encrypt parameter functionality
      issue #2290.
  • Added integration tests for Get-SqlDscDatabasePermission command to ensure
    database permission retrieval functions correctly in real environments
    issue #2221.
  • Added integration tests for Get-SqlDscManagedComputer command to ensure it
    functions correctly in real environments
    issue #2220.
  • Added integration tests for Remove-SqlDscAudit command to ensure it functions
    correctly in real environments
    issue #2241.
  • Added integration tests for ConvertFrom-SqlDscDatabasePermission command to
    ensure it functions correctly in real environments
    issue #2211.
  • Added integration tests for Get-SqlDscStartupParameter command to ensure it
    functions correctly in real environments
    [issue #2217](https://github.com/dsccommunity/SqlServerDsc/issu...
Read more

v17.3.0-preview0024

29 Nov 21:24
752efb6

Choose a tag to compare

v17.3.0-preview0024 Pre-release
Pre-release

[v17.3.0-preview0024]

Removed

  • BREAKING CHANGE: Removed public command Test-SqlDscDatabase. Use
    Test-SqlDscIsDatabase to check existence. For property checks, use
    Test-SqlDscDatabaseProperty. See issue #2201.
  • BREAKING CHANGE: Set-SqlDscDatabase
    • Removed parameter OwnerName issue #2177.
      Use the new command Set-SqlDscDatabaseOwner to change database ownership instead.
  • BREAKING CHANGE: Set-SqlDscDatabaseProperty
    • Removed parameters AzureEdition and AzureServiceObjective. Azure SQL Database
      service tier and SLO changes should be managed using Set-AzSqlDatabase from the
      Azure PowerShell module instead. See issue #2177.
    • Removed parameter DatabaseSnapshotBaseName. Database snapshots should be
      created using the New-SqlDscDatabaseSnapshot, or the New-SqlDscDatabase
      command with the -DatabaseSnapshotBaseName parameter.
    • Removed parameter DefaultSchema. Default schema is a user-level property,
      not a database-level property. See issue #2177.
    • Removed parameter IsLedger. Ledger status is read-only after database creation.
      Use New-SqlDscDatabase with the -IsLedger parameter to create ledger databases
      issue #2351.

Added

  • Added public command Enable-SqlDscDatabaseSnapshotIsolation to enable snapshot
    isolation for a database in a SQL Server Database Engine instance. This command
    uses the SMO SetSnapshotIsolation() method to enable row-versioning and snapshot
    isolation settings to optimize concurrency and consistency (issue #2329).
  • Added public command Disable-SqlDscDatabaseSnapshotIsolation to disable snapshot
    isolation for a database in a SQL Server Database Engine instance. This command
    uses the SMO SetSnapshotIsolation() method to disable row-versioning and snapshot
    isolation settings (issue #2329).
  • Added public command New-SqlDscDatabaseSnapshot to create database snapshots
    in a SQL Server Database Engine instance using SMO. This command provides an
    automated and DSC-friendly approach to snapshot management by leveraging
    New-SqlDscDatabase for the actual creation. The command now supports FileGroup
    and DataFile parameters to allow control over snapshot file placement and
    structure (issue #2341).
  • Added public command New-SqlDscFileGroup to create FileGroup objects for SQL
    Server databases. This command simplifies creating FileGroup objects that can be
    used with New-SqlDscDatabase and other database-related commands. The Database
    parameter is optional, allowing FileGroup objects to be created standalone and
    added to a Database later using Add-SqlDscFileGroup.
  • Added public command New-SqlDscDataFile to create DataFile objects for SQL
    Server FileGroups. This command simplifies creating DataFile objects with
    specified physical file paths, supporting both regular database files (.mdf, .ndf)
    and sparse files for database snapshots (.ss). The FileGroup parameter is
    mandatory, requiring DataFile objects to be created with an associated FileGroup.
  • Added public command Add-SqlDscFileGroup to add one or more FileGroup objects
    to a Database. This command provides a clean way to associate FileGroup objects
    with a Database after they have been created.
  • Added public command ConvertTo-SqlDscDataFile to convert DatabaseFileSpec
    objects to SMO DataFile objects.
  • Added public command ConvertTo-SqlDscFileGroup to convert DatabaseFileGroupSpec
    objects to SMO FileGroup objects.
  • Added class DatabaseFileSpec to define data file specifications without requiring
    a database or SMO context.
  • Added class DatabaseFileGroupSpec to define file group specifications with
    associated data files without requiring a database or SMO context.
  • New-SqlDscDatabase
    • Added FileGroup and DataFile parameters to allow specifying custom file
      locations and structure. These parameters apply to both regular databases and
      database snapshots, enabling control over file placement for snapshots (sparse
      files) and custom filegroup/datafile configuration for regular databases
      (issue #2341).
    • Added IsLedger parameter to support creating ledger databases at creation time.
      Ledger status is read-only after database creation and can only be set when
      creating a new database (issue #2351).
  • Added public command Set-SqlDscDatabaseOwner to change the owner of a SQL Server
    database issue #2177.
    This command uses the SMO SetOwner() method and supports both ServerObject
    and DatabaseObject parameter sets. This replaces the ownership changes
    previously done via the OwnerName parameter in Set-SqlDscDatabase.
  • Added public command Test-SqlDscIsDatabase to test if a database exists on a
    SQL Server Database Engine instance (issue #2201).
  • Added public command Get-SqlDscSetupLog to retrieve SQL Server setup bootstrap
    logs (Summary.txt) from the most recent setup operation. This command can be used
    interactively for troubleshooting or within integration tests to help diagnose
    setup failures. Integration tests have been updated to use this command instead
    of duplicated error handling code issue #2311.
  • Added script Remove-SqlServerFromCIImage.ps1 to remove pre-installed SQL Server
    components from Microsoft Hosted agents that conflict with PrepareImage operations.
    The script is now run automatically in the CI pipeline before PrepareImage tests
    to resolve Sysprep compatibility errors issue #2212.
  • Added integration tests for Complete-SqlDscImage command to ensure command
    reliability in prepared image installation workflows. The test runs in a separate
    pipeline job Integration_Test_Commands_SqlServer_PreparedImage with its own CI
    worker, and verifies the completion of SQL Server instances prepared using
    Install-SqlDscServer with the -PrepareImage parameter. The test includes
    scenarios with minimal parameters and various service account/directory
    configurations issue #2212.
  • Added integration test for Install-SqlDscServer with the -PrepareImage
    parameter set to support the prepared image installation workflow. This test
    (Install-SqlDscServer.Integration.PrepareImage.Tests.ps1) runs in the
    Integration_Test_Commands_SqlServer_PreparedImage pipeline job and prepares
    a DSCSQLTEST instance that is later completed by Complete-SqlDscImage tests
    issue #2212.
  • Added integration tests for Initialize-SqlDscRebuildDatabase command to ensure
    command reliability. The test runs in group 8, alongside Repair-SqlDscServer,
    to verify the rebuild database functionality on the DSCSQLTEST instance
    issue #2242.
  • Added integration tests for Repair-SqlDscServer command to ensure command
    reliability. The test runs in group 8, before Uninstall-SqlDscServer in
    group 9, to verify the repair functionality on the DSCSQLTEST instance
    issue #2238.
  • Added integration tests for ConvertTo-SqlDscServerPermission command to ensure
    command reliability issue #2207.
  • Added post-installation configuration integration test to configure SSL certificate
    support for SQL Server instance DSCSQLTEST in CI environment, enabling testing
    of encryption-related functionality. The new PostInstallationConfiguration
    integration test includes:
    • Self-signed SSL certificate creation and installation
    • Certificate configuration for SQL Server Database Engine
    • Service account permissions for certificate private key access
    • Certificate trust chain configuration
    • Verification that encryption is properly configured
    • Enabled previously skipped encryption tests in Invoke-SqlDscQuery
    • Added integration tests for Connect-SqlDscDatabaseEngine command to verify
      the -Encrypt parameter functionality
      issue #2290.
  • Added integration tests for Get-SqlDscDatabasePermission command to ensure
    database permission retrieval functions correctly in real environments
    issue #2221.
  • Added integration tests for Get-SqlDscManagedComputer command to ensure it
    functions correctly in real environments
    issue #2220.
  • Added integration tests for Remove-SqlDscAudit command to ensure it functions
    correctly in real environments
    issue #2241.
  • Added integration tests for ConvertFrom-SqlDscDatabasePermission command to
    ensure it functions correctly in real environments
    issue #2211.
  • Added integration tests for Get-SqlDscStartupParameter command to ensure it
    functions correctly in real environments
    [issue #2217](https://github.com/dsccommunity/SqlSe...
Read more