xsqlserver
Version information
This version is compatible with:
- Puppet Enterprise 2023.2.x, 2023.1.x, 2023.0.x, 2021.7.x, 2021.6.x, 2021.5.x, 2021.4.x, 2021.3.x, 2021.2.x, 2021.1.x, 2021.0.x, 2019.8.x, 2019.7.x, 2019.5.x, 2019.4.x, 2019.3.x, 2019.2.x, 2019.1.x, 2019.0.x
- Puppet >= 6.0.0 < 8.0.0
Start using this module
Add this module to your Puppetfile:
mod 'dsc-xsqlserver', '9.1.0-0-0'
Learn more about managing modules with a PuppetfileDocumentation
xsqlserver
Table of Contents
Description
This is an auto-generated module, using the Puppet DSC Builder to vendor and expose the xSQLServer PowerShell module's DSC resources as Puppet resources. The functionality of this module comes entirely from the vendored PowerShell resources, which are pinned at v9.1.0.0. The PowerShell module describes itself like this:
Module with DSC Resources for deployment and configuration of Microsoft SQL Server. This module has been renamed to SqlServerDsc. Development of these resources will continue under that module. This specific module (xSQLServer) is now deprecated and use of SqlServerDsc is recommended.
For information on troubleshooting to determine whether any encountered problems are with the Puppet wrapper or the DSC resource, see the troubleshooting section below.
Requirements
This module, like all auto-generated Puppetized DSC modules, relies on two important technologies in the Puppet stack: the Puppet Resource API and the puppetlabs/pwshlib Puppet module.
The Resource API provides a simplified option for writing types and providers and is responsible for how this module is structured. The Resource API ships inside of Puppet starting with version 6. While it is technically possible to add the Resource API functionality to Puppet 5.5.x, the DSC functionality has not been tested in this setup. For more information on the Resource API, review the documentation.
The module also depends on the pwshlib module. This Puppet module includes two important things: the ruby-pwsh library for running PowerShell code from ruby and the base provider for DSC resources, which this module leverages.
All of the actual work being done to call the DSC resources vendored with this module is in this file from the pwshlib module. This is important for troubleshooting and bug reporting, but doesn't impact your use of the module except that the end result will be that nothing works, as the dependency is not installed alongside this module!
Long File Path Support
Several PowerShell modules with DSC Resources end up with very long file paths once vendored, many of which exceed the 260 character limit for file paths. Luckily in Windows 10 (build 1607+), Windows Server 2016 (build 1607+), and Windows Server 2019 there is now an option for supporting long file paths transparently!
We strongly recommend enabling long file path support on any machines using this module to avoid path length issues.
You can set this value using the Puppet registry_value
resource:
registry_value { 'HKLM\System\CurrentControlSet\Control\FileSystem\LongPathsEnabled':
ensure => 'present',
data => [1],
provider => 'registry',
type => 'dword',
}
You can also set this value outside of Puppet by following the Microsoft documentation.
Usage
You can specify any of the DSC resources from this module like a normal Puppet resource in your manifests. The examples below use DSC resources from from the PowerShellGet repository, regardless of what module you're looking at here; the syntax, not the specifics, is what's important.
For reference documentation about the DSC resources exposed in this module, see the Reference Forge tab, or the REFERENCE.md file.
# Include a meaningful title for your resource declaration
dsc_psrepository { 'Add team module repo':
dsc_name => 'foo',
dsc_ensure => present,
# This location is nonsense, can be any valid folder on your
# machine or in a share, any location the SourceLocation param
# for the DSC resource will accept.
dsc_sourcelocation => 'C:\Program Files',
# You must always pass an enum fully lower-cased;
# Puppet is case sensitive even when PowerShell isn't
dsc_installationpolicy => untrusted,
}
dsc_psrepository { 'Trust public gallery':
dsc_name => 'PSGallery',
dsc_ensure => present,
dsc_installationpolicy => trusted,
}
dsc_psmodule { 'Make Ruby manageable via uru':
dsc_name => 'RubyInstaller',
dsc_ensure => present,
}
Credentials
Credentials are always specified as a hash of the username and password for the account. The password must use the Puppet Sensitive type; this ensures that logs and reports redact the password, displaying it instead as <Sensitive [value redacted]>.
dsc_psrepository { 'PowerShell Gallery':
dsc_name => 'psgAllery',
dsc_installationpolicy => 'Trusted',
dsc_psdscrunascredential => {
user => 'apple',
password => Sensitive('foobar'),
},
}
Class-Based Resources
Class-based DSC Resources can be used like any other DSC Resource in this module, with one important note:
Due to a bug in calling class-based DSC Resources by path instead of module name, each call to Invoke-DscResource
needs to temporarily munge the system-level environment variable for PSModulePath
;
the variable is reset prior to the end of each invocation.
CIM Instances
Because the CIM instances for DSC resources are fully mapped, the types actually explain fairly precisely what the shape of each CIM instance has to be - and, moreover, the type definition means that you get checking at catalog compile time. Puppet parses CIM instances are structured hashes (or arrays of structured hashes) that explicitly declare their keys and the valid types of values for each key.
So, for the dsc_accesscontrolentry
property of the dsc_ntfsaccessentry
type, which has a MOF type of NTFSAccessControlList[]
, Puppet defines the CIM instance as:
Array[Struct[{
accesscontrolentry => Array[Struct[{
accesscontroltype => Enum['Allow', 'Deny'],
inheritance => Enum['This folder only', 'This folder subfolders and files', 'This folder and subfolders', 'This folder and files', 'Subfolders and files only', 'Subfolders only', 'Files only'],
ensure => Enum['Present', 'Absent'],
cim_instance_type => 'NTFSAccessControlEntry',
filesystemrights => Array[Enum['AppendData', 'ChangePermissions', 'CreateDirectories', 'CreateFiles', 'Delete', 'DeleteSubdirectoriesAndFiles', 'ExecuteFile', 'FullControl', 'ListDirectory', 'Modify', 'Read', 'ReadAndExecute', 'ReadAttributes', 'ReadData', 'ReadExtendedAttributes', 'ReadPermissions', 'Synchronize', 'TakeOwnership', 'Traverse', 'Write', 'WriteAttributes', 'WriteData', 'WriteExtendedAttributes']]
}]],
forceprincipal => Optional[Boolean],
principal => Optional[String],
}]]
A valid example of that in a puppet manifest looks like this:
dsc_accesscontrollist => [
{
accesscontrolentry => [
{
accesscontroltype => 'Allow',
inheritance => 'This folder only',
ensure => 'Present',
filesystemrights => 'ChangePermissions',
cim_instance_type => 'NTFSAccessControlEntry',
},
],
principal => 'veryRealUserName',
},
]
For more information about using a built module, check out our narrative documentation.
Properties
Note that the only properties specified in a resource declaration which are passed to Invoke-Dsc are all prepended with dsc.
If a property does _not start with dsc_ it is used to control how Puppet interacts with DSC/other Puppet resources - for example,
specifying a unique name for the resource for Puppet to distinguish between declarations or Puppet metaparameters (notifies,
before, etc).
Validation Mode
By default, these resources use the property validation mode, which checks whether or not the resource is in the desired state the same way most Puppet resources are validated;
by comparing the properties returned from the system with those specified in the manifest.
Sometimes, however, this is insufficient;
many DSC Resources return data that does not compare properly to the desired state (some are missing properties, others are malformed, some simply cannot be strictly compared).
In these cases, you can set the validation mode to resource
, which falls back on calling Invoke-DscResource
with the Test
method and trusts that result.
When using the resource
validation mode, the resource is tested once and will then treat all properties of that resource as in sync (if the result returned true
) or not in sync.
This loses the granularity of change reporting for the resource but prevents flapping and unexpected behavior.
# This will flap because the DSC resource never returns name in SecurityPolicyDsc v2.10.0.0
dsc_securityoption { 'Enforce Anonoymous SID Translation':
dsc_name => 'Enforce Anonymous SID Translation',
dsc_network_access_allow_anonymous_sid_name_translation => 'Disabled',
}
# This will idempotently apply
dsc_psrepository { 'PowerShell Gallery':
validation_mode => 'resource',
dsc_name => 'Enforce Anonymous SID Translation',
dsc_network_access_allow_anonymous_sid_name_translation => 'Disabled',
}
It is important to note that this feature is only supported with a version of puppetlabs-pwshlib
equal to or higher than 0.9.0
, in which the supporting code for the DSC Base Provider to implement custom insync was shipped.
Finally, while this module's metadata says that the supported Puppet versions are 6.0.0 and up, the implementation of the validation_mode
parameter relies on the custom_insync
feature of the Puppet Resource API.
The custom_insync
feature first shipped in the puppet-resource_api
version 1.8.14
, which itself is only included in Puppet versions equal to or newer than 6.23.0
and 7.8.0
for the 6x and 7x platforms respectively.
Using this module against older Puppet versions will result in a warning (example below) and only use the default property-by-property change reporting, regardless of the setting of validation_mode
.
Warning: Unknown feature detected: ["custom_insync"]
Troubleshooting
In general, there are three broad categories of problems:
- Problems with the way the underlying DSC resource works.
- Problems with the type definition, where you can't specify a valid set of properties for the DSC resource
- Problems with calling the underlying DSC resource - the parameters aren't being passed correctly or the resource can't be found
Unfortunately, problems with the way the underlying DSC resource works are something we can't help directly with. You'll need to file an issue with the upstream maintainers for the PowerShell module.
Problems with the type definition are when a value that should be valid according to the DSC resource's documentation and code is not accepted by the Puppet wrapper. If and when you run across one of these, please file an issue with the Puppet DSC Builder; this is where the conversion happens and once we know of a problem we can fix it and regenerate the Puppet modules. To help us identify the issue, please specify the DSC module, version, resource, property and values that are giving you issues. Once a fix is available we will regenerate and release updated versions of this Puppet wrapper.
Problems with calling the underlying DSC resource become apparent by comparing <value passed in in puppet>
with <value received by DSC>
.
In this case, please file an issue with the puppetlabs/pwshlib module, which is where the DSC base provider actually lives.
We'll investigate and prioritize a fix and update the puppetlabs/pwshlib module.
Updating to the pwshlib version with the fix will immediately take advantage of the improved functionality without waiting for this module to be reconverted and published.
For specific information on troubleshooting a generated module, check the troubleshooting guide for the puppet.dsc module.
Known Limitations
Currently, because of the way Puppet caches files on agents, use of the legacy puppetlabs-dsc
module is not compatible with this or any auto-generated DSC module.
Inclusion of both will lead to pluginsync conflicts.
Right now, if you have the same version of a PowerShell module with class-based DSC Resources in your PSModulePath as vendored in a Puppetized DSC Module, you cannot use those class-based DSC Resources from inside of Puppet due to a bug in DSC which prevents using a module by path reference instead of name. Instead, DSC will see that there are two DSC Resources for the same module and version and then error out.
Configuring the LCM
In order for a Puppetized DSC module to function, the DSC Local Configuration Manager (LCM) RefreshMode
must be set to either Push
or Disabled
.
The default value for RefreshMode
in WMF 5.0 and WMF 5.1 is Push
- so if it has not been set to anything else then there is no action needed on your part.
However if the value of the LCM has been set to anything other than Push
then the module will not function and so the value must either be changed back or disabled.
The Puppetized DSC modules use the Invoke-DscResource
cmdlet to invoke DSC Resources of the target machine.
If the RefreshMode
is set to Pull
, DSC Resources will only run from a DSC Pull Server - in this setting DSC does not allow any DSC Resources to be run interactively on the host.
Module Installation
If you're using this module with Puppet Enterprise and Code Manager, everything should "just work" - no errors or issues acquiring and deploying this or any Puppetized DSC module to nodes.
Unfortunately, due a bug in minitar which prevents it from unpacking archives with long file paths, both r10k
and serverless Puppet (via puppet module install
) methods of installing modules with long path names will fail.
In short, minitar is unable to unpack modules that contain long file paths (though it can create them).
As a workaround, you can retrieve DSC modules from the forge via PowerShell and 7zip:
$ModuleAuthor = 'dsc'
$ModuleName = 'xremotedesktopsessionhost'
$ModuleVersion = '2.0.0-0-1'
$ArchiveFileName = "$ModuleAuthor-$ModuleName-$ModuleVersion.tar.gz"
$DownloadUri = "https://forge.puppet.com/v3/files/$ArchiveFileName"
# Download the module tar.gz to the current directory
Invoke-WebRequest -Uri $DownloadUri -OutFile ./$ArchiveFileName
# Use 7zip to extract the module to the current directory
& 7z x $ArchiveFileName -so | & 7z x -aoa -si -ttar
Reference
Table of Contents
Resource types
dsc_xsqlserveralias
: The DSC xSQLServerAlias resource type. Automatically generated from version 9.1.0.0dsc_xsqlserveralwaysonavailabilitygroup
: The DSC xSQLServerAlwaysOnAvailabilityGroup resource type. Automatically generated from version 9.1.0.0dsc_xsqlserveralwaysonavailabilitygroupdatabasemembership
: The DSC xSQLServerAlwaysOnAvailabilityGroupDatabaseMembership resource type. Automatically generated from version 9.1.0.0dsc_xsqlserveralwaysonavailabilitygroupreplica
: The DSC xSQLServerAlwaysOnAvailabilityGroupReplica resource type. Automatically generated from version 9.1.0.0dsc_xsqlserveralwaysonservice
: The DSC xSQLServerAlwaysOnService resource type. Automatically generated from version 9.1.0.0dsc_xsqlserveravailabilitygrouplistener
: The DSC xSQLServerAvailabilityGroupListener resource type. Automatically generated from version 9.1.0.0dsc_xsqlserverconfiguration
: The DSC xSQLServerConfiguration resource type. Automatically generated from version 9.1.0.0dsc_xsqlserverdatabase
: The DSC xSQLServerDatabase resource type. Automatically generated from version 9.1.0.0dsc_xsqlserverdatabasedefaultlocation
: The DSC xSQLServerDatabaseDefaultLocation resource type. Automatically generated from version 9.1.0.0dsc_xsqlserverdatabaseowner
: The DSC xSQLServerDatabaseOwner resource type. Automatically generated from version 9.1.0.0dsc_xsqlserverdatabasepermission
: The DSC xSQLServerDatabasePermission resource type. Automatically generated from version 9.1.0.0dsc_xsqlserverdatabaserecoverymodel
: The DSC xSQLServerDatabaseRecoveryModel resource type. Automatically generated from version 9.1.0.0dsc_xsqlserverdatabaserole
: The DSC xSQLServerDatabaseRole resource type. Automatically generated from version 9.1.0.0dsc_xsqlserverendpoint
: The DSC xSQLServerEndpoint resource type. Automatically generated from version 9.1.0.0dsc_xsqlserverendpointpermission
: The DSC xSQLServerEndpointPermission resource type. Automatically generated from version 9.1.0.0dsc_xsqlserverendpointstate
: The DSC xSQLServerEndpointState resource type. Automatically generated from version 9.1.0.0dsc_xsqlserverfirewall
: The DSC xSQLServerFirewall resource type. Automatically generated from version 9.1.0.0dsc_xsqlserverlogin
: The DSC xSQLServerLogin resource type. Automatically generated from version 9.1.0.0dsc_xsqlservermaxdop
: The DSC xSQLServerMaxDop resource type. Automatically generated from version 9.1.0.0dsc_xsqlservermemory
: The DSC xSQLServerMemory resource type. Automatically generated from version 9.1.0.0dsc_xsqlservernetwork
: The DSC xSQLServerNetwork resource type. Automatically generated from version 9.1.0.0dsc_xsqlserverpermission
: The DSC xSQLServerPermission resource type. Automatically generated from version 9.1.0.0dsc_xsqlserverreplication
: The DSC xSQLServerReplication resource type. Automatically generated from version 9.1.0.0dsc_xsqlserverrole
: The DSC xSQLServerRole resource type. Automatically generated from version 9.1.0.0dsc_xsqlserverrsconfig
: The DSC xSQLServerRSConfig resource type. Automatically generated from version 9.1.0.0dsc_xsqlserverrssecureconnectionlevel
: The DSC xSQLServerRSSecureConnectionLevel resource type. Automatically generated from version 9.1.0.0dsc_xsqlserverscript
: The DSC xSQLServerScript resource type. Automatically generated from version 9.1.0.0dsc_xsqlserverserviceaccount
: The DSC xSQLServerServiceAccount resource type. Automatically generated from version 9.1.0.0dsc_xsqlserversetup
: The DSC xSQLServerSetup resource type. Automatically generated from version 9.1.0.0dsc_xwaitforavailabilitygroup
: The DSC xWaitForAvailabilityGroup resource type. Automatically generated from version 9.1.0.0
Resource types
dsc_xsqlserveralias
The DSC xSQLServerAlias resource type. Automatically generated from version 9.1.0.0
Properties
The following properties are available in the dsc_xsqlserveralias
type.
dsc_ensure
Data type: Optional[Enum['Present', 'Absent']]
Determines whether the alias should be added or removed. Default value is 'Present'
dsc_pipename
Data type: Optional[String]
Named Pipes path from the Get-TargetResource method.
dsc_protocol
Data type: Optional[Enum['TCP', 'NP']]
Protocol to use when connecting. Valid values are 'TCP' or 'NP' (Named Pipes). Default value is 'TCP'.
dsc_tcpport
Data type: Optional[Integer[0, 65535]]
The TCP port SQL is listening on. Only used when protocol is set to 'TCP'. Default value is port 1433.
dsc_usedynamictcpport
Data type: Optional[Boolean]
The UseDynamicTcpPort specify that the Net-Library will determine the port dynamically. The port specified in Port number will not be used. Default value is '$false'.
Parameters
The following parameters are available in the dsc_xsqlserveralias
type.
dsc_name
namevar
Data type: String
The name of Alias (e.g. svr01\inst01).
dsc_psdscrunascredential
Data type: Optional[Struct[{ user => String[1], password => Sensitive[String[1]] }]]
dsc_servername
namevar
Data type: String
The SQL Server you are aliasing (the NetBIOS name or FQDN).
name
namevar
Data type: String
Description of the purpose for this resource declaration.
validation_mode
Data type: Enum[property, resource]
Whether to check if the resource is in the desired state by property (default) or using Invoke-DscResource in Test mode (resource).
Default value: property
dsc_xsqlserveralwaysonavailabilitygroup
The DSC xSQLServerAlwaysOnAvailabilityGroup resource type. Automatically generated from version 9.1.0.0
Properties
The following properties are available in the dsc_xsqlserveralwaysonavailabilitygroup
type.
dsc_automatedbackuppreference
Data type: Optional[Enum['Primary', 'SecondaryOnly', 'Secondary', 'None']]
Specifies the automated backup preference for the availability group. Default is None
dsc_availabilitymode
Data type: Optional[Enum['AsynchronousCommit', 'SynchronousCommit']]
Specifies the replica availability mode. Default is 'AsynchronousCommit'.
dsc_backuppriority
Data type: Optional[Integer[0, 4294967295]]
Specifies the desired priority of the replicas in performing backups. The acceptable values for this parameter are: integers from 0 through 100. Of the set of replicas which are online and available, the replica that has the highest priority performs the backup. Default is 50.
dsc_basicavailabilitygroup
Data type: Optional[Boolean]
Specifies the type of availability group is Basic. This is only available is SQL Server 2016 and later and is ignored when applied to previous versions.
dsc_connectionmodeinprimaryrole
Data type: Optional[Enum['AllowAllConnections', 'AllowReadWriteConnections']]
Specifies how the availability replica handles connections when in the primary role.
dsc_connectionmodeinsecondaryrole
Data type: Optional[Enum['AllowNoConnections', 'AllowReadIntentConnectionsOnly', 'AllowAllConnections']]
Specifies how the availability replica handles connections when in the secondary role.
dsc_databasehealthtrigger
Data type: Optional[Boolean]
Specifies if the option Database Level Health Detection is enabled. This is only available is SQL Server 2016 and later and is ignored when applied to previous versions.
dsc_dtcsupportenabled
Data type: Optional[Boolean]
Specifies if the option Database DTC Support is enabled. This is only available is SQL Server 2016 and later and is ignored when applied to previous versions. This can't be altered once the Availability Group is created and is ignored if it is the case.
dsc_endpointhostname
Data type: Optional[String]
Specifies the hostname or IP address of the availability group replica endpoint. Default is the instance network name.
dsc_endpointport
Data type: Optional[Integer[0, 4294967295]]
Gets the port the database mirroring endpoint is listening on.
dsc_endpointurl
Data type: Optional[String]
Gets the Endpoint URL of the availability group replica endpoint.
dsc_ensure
Data type: Optional[Enum['Present', 'Absent']]
Specifies if the availability group should be present or absent. Default is Present.
dsc_failovermode
Data type: Optional[Enum['Automatic', 'Manual']]
Specifies the failover mode. Default is 'Manual'.
dsc_failureconditionlevel
Data type: Optional[Enum['OnServerDown', 'OnServerUnresponsive', 'OnCriticalServerErrors', 'OnModerateServerErrors', 'OnAnyQualifiedFailureCondition']]
Specifies the automatic failover behavior of the availability group.
dsc_healthchecktimeout
Data type: Optional[Integer[0, 4294967295]]
Specifies the length of time, in milliseconds, after which AlwaysOn availability groups declare an unresponsive server to be unhealthy. Default is 30000.
dsc_isactivenode
Data type: Optional[Boolean]
Determines if the current node is actively hosting the SQL Server instance.
dsc_processonlyonactivenode
Data type: Optional[Boolean]
Specifies that the resource will only determine if a change is needed if the target node is the active host of the SQL Server Instance.
dsc_sqlserver
Data type: String
Hostname of the SQL Server to be configured.
dsc_sqlservernetname
Data type: Optional[String]
Gets the hostname the SQL Server instance is listening on.
dsc_version
Data type: Optional[Integer[0, 4294967295]]
Gets the major version of the SQL Server instance.
Parameters
The following parameters are available in the dsc_xsqlserveralwaysonavailabilitygroup
type.
dsc_name
namevar
Data type: String
The name of the availability group.
dsc_psdscrunascredential
Data type: Optional[Struct[{ user => String[1], password => Sensitive[String[1]] }]]
dsc_sqlinstancename
namevar
Data type: String
Name of the SQL instance to be configured.
name
namevar
Data type: String
Description of the purpose for this resource declaration.
validation_mode
Data type: Enum[property, resource]
Whether to check if the resource is in the desired state by property (default) or using Invoke-DscResource in Test mode (resource).
Default value: property
dsc_xsqlserveralwaysonavailabilitygroupdatabasemembership
The DSC xSQLServerAlwaysOnAvailabilityGroupDatabaseMembership resource type. Automatically generated from version 9.1.0.0
Properties
The following properties are available in the dsc_xsqlserveralwaysonavailabilitygroupdatabasemembership
type.
dsc_backuppath
Data type: String
The path used to seed the availability group replicas. This should be a path that is accessible by all of the replicas
dsc_databasename
Data type: Array[String]
The name of the database(s) to add to the availability group. This accepts wildcards.
dsc_ensure
Data type: Optional[Enum['Present', 'Absent']]
Specifies the membership of the database(s) in the availability group. The options are: Present: The defined database(s) are added to the availability group. All other databases that may be a member of the availability group are ignored. Absent: The defined database(s) are removed from the availability group. All other databases that may be a member of the availability group are ignored. The default is 'Present'.
dsc_isactivenode
Data type: Optional[Boolean]
Determines if the current node is actively hosting the SQL Server instance.
dsc_matchdatabaseowner
Data type: Optional[Boolean]
If set to $true, this ensures the database owner of the database on the primary replica is the owner of the database on all secondary replicas. This requires the database owner is available as a login on all replicas and that the PSDscRunAsAccount has impersonate permissions. If set to $false, the owner of the database will be the PSDscRunAsAccount. The default is '$true'
dsc_processonlyonactivenode
Data type: Optional[Boolean]
Specifies that the resource will only determine if a change is needed if the target node is the active host of the SQL Server Instance.
Parameters
The following parameters are available in the dsc_xsqlserveralwaysonavailabilitygroupdatabasemembership
type.
dsc_availabilitygroupname
dsc_force
dsc_psdscrunascredential
dsc_sqlinstancename
dsc_sqlserver
name
validation_mode
dsc_availabilitygroupname
namevar
Data type: String
The name of the availability group in which to manage the database membership(s).
dsc_force
Data type: Optional[Boolean]
When used with 'Ensure = 'Present'' it ensures the specified database(s) are the only databases that are a member of the specified Availability Group. This parameter is ignored when 'Ensure' is 'Absent'.
dsc_psdscrunascredential
Data type: Optional[Struct[{ user => String[1], password => Sensitive[String[1]] }]]
dsc_sqlinstancename
namevar
Data type: String
Name of the SQL instance to be configured.
dsc_sqlserver
namevar
Data type: String
Hostname of the SQL Server where the primary replica of the availability group lives. If the availability group is not currently on this server, the resource will attempt to connect to the server where the primary replica lives.
name
namevar
Data type: String
Description of the purpose for this resource declaration.
validation_mode
Data type: Enum[property, resource]
Whether to check if the resource is in the desired state by property (default) or using Invoke-DscResource in Test mode (resource).
Default value: property
dsc_xsqlserveralwaysonavailabilitygroupreplica
The DSC xSQLServerAlwaysOnAvailabilityGroupReplica resource type. Automatically generated from version 9.1.0.0
Properties
The following properties are available in the dsc_xsqlserveralwaysonavailabilitygroupreplica
type.
dsc_availabilitymode
Data type: Optional[Enum['AsynchronousCommit', 'SynchronousCommit']]
Specifies the replica availability mode. Default is 'AsynchronousCommit'.
dsc_backuppriority
Data type: Optional[Integer[0, 4294967295]]
Specifies the desired priority of the replicas in performing backups. The acceptable values for this parameter are: integers from 0 through 100. Of the set of replicas which are online and available, the replica that has the highest priority performs the backup. Default is 50.
dsc_connectionmodeinprimaryrole
Data type: Optional[Enum['AllowAllConnections', 'AllowReadWriteConnections']]
Specifies how the availability replica handles connections when in the primary role.
dsc_connectionmodeinsecondaryrole
Data type: Optional[Enum['AllowNoConnections', 'AllowReadIntentConnectionsOnly', 'AllowAllConnections']]
Specifies how the availability replica handles connections when in the secondary role.
dsc_endpointhostname
Data type: Optional[String]
Specifies the hostname or IP address of the availability group replica endpoint. Default is the instance network name which is set in the code because the value can only be determined when connected to the SQL Instance.
dsc_endpointport
Data type: Optional[Integer[0, 65535]]
Output the network port the endpoint is listening on. Used by Get-TargetResource.
dsc_endpointurl
Data type: Optional[String]
Output the endpoint URL of the Availability Group Replica. Used by Get-TargetResource.
dsc_ensure
Data type: Optional[Enum['Present', 'Absent']]
Specifies if the availability group replica should be present or absent. Default is Present.
dsc_failovermode
Data type: Optional[Enum['Automatic', 'Manual']]
Specifies the failover mode. Default is 'Manual'.
dsc_isactivenode
Data type: Optional[Boolean]
Determines if the current node is actively hosting the SQL Server instance.
dsc_primaryreplicasqlinstancename
Data type: Optional[String]
Name of the SQL instance where the primary replica lives.
dsc_primaryreplicasqlserver
Data type: Optional[String]
Hostname of the SQL Server where the primary replica is expected to be active. If the primary replica is not found here, the resource will attempt to find the host that holds the primary replica and connect to it.
dsc_processonlyonactivenode
Data type: Optional[Boolean]
Specifies that the resource will only determine if a change is needed if the target node is the active host of the SQL Server instance.
dsc_readonlyroutingconnectionurl
Data type: Optional[String]
Specifies the fully-qualified domain name (FQDN) and port to use when routing to the replica for read only connections.
dsc_readonlyroutinglist
Data type: Optional[Array[String]]
Specifies an ordered list of replica server names that represent the probe sequence for connection director to use when redirecting read-only connections through this availability replica. This parameter applies if the availability replica is the current primary replica of the availability group.
dsc_sqlserver
Data type: String
Hostname of the SQL Server to be configured.
dsc_sqlservernetname
Data type: Optional[String]
Output the NetName property from the SQL Server object. Used by Get-TargetResource.
Parameters
The following parameters are available in the dsc_xsqlserveralwaysonavailabilitygroupreplica
type.
dsc_availabilitygroupname
dsc_name
dsc_psdscrunascredential
dsc_sqlinstancename
name
validation_mode
dsc_availabilitygroupname
namevar
Data type: String
The name of the availability group.
dsc_name
namevar
Data type: String
The name of the availability group replica. For named instances this must be in the following format SQLServer\InstanceName.
dsc_psdscrunascredential
Data type: Optional[Struct[{ user => String[1], password => Sensitive[String[1]] }]]
dsc_sqlinstancename
namevar
Data type: String
Name of the SQL instance to be configured.
name
namevar
Data type: String
Description of the purpose for this resource declaration.
validation_mode
Data type: Enum[property, resource]
Whether to check if the resource is in the desired state by property (default) or using Invoke-DscResource in Test mode (resource).
Default value: property
dsc_xsqlserveralwaysonservice
The DSC xSQLServerAlwaysOnService resource type. Automatically generated from version 9.1.0.0
Properties
The following properties are available in the dsc_xsqlserveralwaysonservice
type.
dsc_ensure
Data type: Enum['Present', 'Absent']
An enumerated value that describes if the SQL Server should have Always On high availability and disaster recovery (HADR) property enabled ('Present') or disabled ('Absent').
dsc_ishadrenabled
Data type: Optional[Boolean]
Returns the status of AlwaysOn high availability and disaster recovery (HADR).
dsc_restarttimeout
Data type: Optional[Integer[0, 4294967295]]
The length of time, in seconds, to wait for the service to restart. Default is 120 seconds.
Parameters
The following parameters are available in the dsc_xsqlserveralwaysonservice
type.
dsc_psdscrunascredential
Data type: Optional[Struct[{ user => String[1], password => Sensitive[String[1]] }]]
dsc_sqlinstancename
namevar
Data type: String
The name of the SQL instance to be configured.
dsc_sqlserver
namevar
Data type: String
The hostname of the SQL Server to be configured.
name
namevar
Data type: String
Description of the purpose for this resource declaration.
validation_mode
Data type: Enum[property, resource]
Whether to check if the resource is in the desired state by property (default) or using Invoke-DscResource in Test mode (resource).
Default value: property
dsc_xsqlserveravailabilitygrouplistener
The DSC xSQLServerAvailabilityGroupListener resource type. Automatically generated from version 9.1.0.0
Properties
The following properties are available in the dsc_xsqlserveravailabilitygrouplistener
type.
dsc_dhcp
Data type: Optional[Boolean]
If DHCP should be used for the availability group listener instead of static IP address.
dsc_ensure
Data type: Optional[Enum['Present', 'Absent']]
If the availability group listener should be present or absent. Default value is 'Present'.
dsc_ipaddress
Data type: Optional[Array[String]]
The IP address used for the availability group listener, in the format 192.168.10.45/255.255.252.0. If using DHCP, set to the first IP-address of the DHCP subnet, in the format 192.168.8.1/255.255.252.0. Must be valid in the cluster-allowed IP range.
dsc_name
Data type: String
The name of the availability group listener, max 15 characters. This name will be used as the Virtual Computer Object (VCO).
dsc_nodename
Data type: String
The host name or FQDN of the primary replica.
dsc_port
Data type: Optional[Integer[0, 65535]]
The port used for the availability group listener
Parameters
The following parameters are available in the dsc_xsqlserveravailabilitygrouplistener
type.
dsc_availabilitygroup
namevar
Data type: String
The name of the availability group to which the availability group listener is or will be connected.
dsc_instancename
namevar
Data type: String
The SQL Server instance name of the primary replica.
dsc_psdscrunascredential
Data type: Optional[Struct[{ user => String[1], password => Sensitive[String[1]] }]]
name
namevar
Data type: String
Description of the purpose for this resource declaration.
validation_mode
Data type: Enum[property, resource]
Whether to check if the resource is in the desired state by property (default) or using Invoke-DscResource in Test mode (resource).
Default value: property
dsc_xsqlserverconfiguration
The DSC xSQLServerConfiguration resource type. Automatically generated from version 9.1.0.0
Properties
The following properties are available in the dsc_xsqlserverconfiguration
type.
dsc_optionvalue
Data type: Integer[-2147483648, 2147483647]
The desired value of the SQL configuration option.
dsc_restartservice
Data type: Optional[Boolean]
Determines whether the instance should be restarted after updating the configuration option.
dsc_restarttimeout
Data type: Optional[Integer[-2147483648, 2147483647]]
The length of time, in seconds, to wait for the service to restart. Default is 120 seconds.
Parameters
The following parameters are available in the dsc_xsqlserverconfiguration
type.
dsc_optionname
namevar
Data type: String
The name of the SQL configuration option to be checked.
dsc_psdscrunascredential
Data type: Optional[Struct[{ user => String[1], password => Sensitive[String[1]] }]]
dsc_sqlinstancename
namevar
Data type: String
Name of the SQL instance to be configured.
dsc_sqlserver
namevar
Data type: String
The hostname of the SQL Server to be configured.
name
namevar
Data type: String
Description of the purpose for this resource declaration.
validation_mode
Data type: Enum[property, resource]
Whether to check if the resource is in the desired state by property (default) or using Invoke-DscResource in Test mode (resource).
Default value: property
dsc_xsqlserverdatabase
The DSC xSQLServerDatabase resource type. Automatically generated from version 9.1.0.0
Properties
The following properties are available in the dsc_xsqlserverdatabase
type.
dsc_collation
Data type: Optional[String]
The name of the SQL collation to use for the new database. Defaults to server collation.
dsc_ensure
Data type: Optional[Enum['Present', 'Absent']]
An enumerated value that describes if the database is added (Present) or dropped (Absent). Valid values are 'Present' or 'Absent'. Default Value is 'Present'.
Parameters
The following parameters are available in the dsc_xsqlserverdatabase
type.
dsc_name
namevar
Data type: String
The name of the SQL database.
dsc_psdscrunascredential
Data type: Optional[Struct[{ user => String[1], password => Sensitive[String[1]] }]]
dsc_sqlinstancename
namevar
Data type: String
The name of the SQL instance to be configured.
dsc_sqlserver
namevar
Data type: String
The host name of the SQL Server to be configured.
name
namevar
Data type: String
Description of the purpose for this resource declaration.
validation_mode
Data type: Enum[property, resource]
Whether to check if the resource is in the desired state by property (default) or using Invoke-DscResource in Test mode (resource).
Default value: property
dsc_xsqlserverdatabasedefaultlocation
The DSC xSQLServerDatabaseDefaultLocation resource type. Automatically generated from version 9.1.0.0
Properties
The following properties are available in the dsc_xsqlserverdatabasedefaultlocation
type.
dsc_isactivenode
Data type: Optional[Boolean]
Determines if the current node is actively hosting the SQL Server instance.
dsc_path
Data type: String
The path to the default directory to be configured.
dsc_processonlyonactivenode
Data type: Optional[Boolean]
Specifies that the resource will only determine if a change is needed if the target node is the active host of the SQL Server Instance.
dsc_restartservice
Data type: Optional[Boolean]
If set to $true then SQL Server and dependent services will be restarted if a change to the default location is made. The defaul value is $false.
Parameters
The following parameters are available in the dsc_xsqlserverdatabasedefaultlocation
type.
dsc_psdscrunascredential
Data type: Optional[Struct[{ user => String[1], password => Sensitive[String[1]] }]]
dsc_sqlinstancename
namevar
Data type: String
The name of the SQL instance to be configured.
dsc_sqlserver
namevar
Data type: String
The host name of the SQL Server to be configured.
dsc_type
namevar
Data type: Enum['Data', 'Log', 'Backup']
The type of database default location to be configured. { Data | Log | Backup }
name
namevar
Data type: String
Description of the purpose for this resource declaration.
validation_mode
Data type: Enum[property, resource]
Whether to check if the resource is in the desired state by property (default) or using Invoke-DscResource in Test mode (resource).
Default value: property
dsc_xsqlserverdatabaseowner
The DSC xSQLServerDatabaseOwner resource type. Automatically generated from version 9.1.0.0
Properties
The following properties are available in the dsc_xsqlserverdatabaseowner
type.
dsc_name
Data type: String
The name of the login that will become a owner of the desired sql database.
dsc_sqlinstancename
Data type: Optional[String]
The name of the SQL instance to be configured.
dsc_sqlserver
Data type: Optional[String]
The host name of the SQL Server to be configured.
Parameters
The following parameters are available in the dsc_xsqlserverdatabaseowner
type.
dsc_database
namevar
Data type: String
The name of database to be configured.
dsc_psdscrunascredential
Data type: Optional[Struct[{ user => String[1], password => Sensitive[String[1]] }]]
name
namevar
Data type: String
Description of the purpose for this resource declaration.
validation_mode
Data type: Enum[property, resource]
Whether to check if the resource is in the desired state by property (default) or using Invoke-DscResource in Test mode (resource).
Default value: property
dsc_xsqlserverdatabasepermission
The DSC xSQLServerDatabasePermission resource type. Automatically generated from version 9.1.0.0
Properties
The following properties are available in the dsc_xsqlserverdatabasepermission
type.
dsc_ensure
Data type: Optional[Enum['Present', 'Absent']]
If the values should be present or absent. Valid values are 'Present' or 'Absent'.
dsc_permissions
Data type: Array[String]
The set of permissions for the SQL database.
Parameters
The following parameters are available in the dsc_xsqlserverdatabasepermission
type.
dsc_database
dsc_name
dsc_permissionstate
dsc_psdscrunascredential
dsc_sqlinstancename
dsc_sqlserver
name
validation_mode
dsc_database
namevar
Data type: String
The name of the database.
dsc_name
namevar
Data type: String
The name of the user that should be granted or denied the permission.
dsc_permissionstate
namevar
Data type: Enum['Grant', 'Deny', 'GrantWithGrant']
The state of the permission. Valid values are 'Grant' or 'Deny'.
dsc_psdscrunascredential
Data type: Optional[Struct[{ user => String[1], password => Sensitive[String[1]] }]]
dsc_sqlinstancename
namevar
Data type: String
The name of the SQL instance to be configured.
dsc_sqlserver
namevar
Data type: String
The host name of the SQL Server to be configured.
name
namevar
Data type: String
Description of the purpose for this resource declaration.
validation_mode
Data type: Enum[property, resource]
Whether to check if the resource is in the desired state by property (default) or using Invoke-DscResource in Test mode (resource).
Default value: property
dsc_xsqlserverdatabaserecoverymodel
The DSC xSQLServerDatabaseRecoveryModel resource type. Automatically generated from version 9.1.0.0
Properties
The following properties are available in the dsc_xsqlserverdatabaserecoverymodel
type.
dsc_recoverymodel
Data type: Enum['Full', 'Simple', 'BulkLogged']
The recovery model to use for the database.
Parameters
The following parameters are available in the dsc_xsqlserverdatabaserecoverymodel
type.
dsc_name
namevar
Data type: String
The SQL database name
dsc_psdscrunascredential
Data type: Optional[Struct[{ user => String[1], password => Sensitive[String[1]] }]]
dsc_sqlinstancename
namevar
Data type: String
The name of the SQL instance to be configured.
dsc_sqlserver
namevar
Data type: String
The host name of the SQL Server to be configured.
name
namevar
Data type: String
Description of the purpose for this resource declaration.
validation_mode
Data type: Enum[property, resource]
Whether to check if the resource is in the desired state by property (default) or using Invoke-DscResource in Test mode (resource).
Default value: property
dsc_xsqlserverdatabaserole
The DSC xSQLServerDatabaseRole resource type. Automatically generated from version 9.1.0.0
Properties
The following properties are available in the dsc_xsqlserverdatabaserole
type.
dsc_ensure
Data type: Optional[Enum['Present', 'Absent']]
If 'Present' (the default value) then the login (user) will be added to the role(s). If 'Absent' then the login (user) will be removed from the role(s).
dsc_role
Data type: Array[String]
One or more roles to which the login (user) will be added or removed.
Parameters
The following parameters are available in the dsc_xsqlserverdatabaserole
type.
dsc_database
dsc_name
dsc_psdscrunascredential
dsc_sqlinstancename
dsc_sqlserver
name
validation_mode
dsc_database
namevar
Data type: String
The database in which the login (user) and role(s) exist.
dsc_name
namevar
Data type: String
The name of the login that will become a member, or removed as a member, of the role(s).
dsc_psdscrunascredential
Data type: Optional[Struct[{ user => String[1], password => Sensitive[String[1]] }]]
dsc_sqlinstancename
namevar
Data type: String
The name of the SQL instance to be configured.
dsc_sqlserver
namevar
Data type: String
The host name of the SQL Server to be configured.
name
namevar
Data type: String
Description of the purpose for this resource declaration.
validation_mode
Data type: Enum[property, resource]
Whether to check if the resource is in the desired state by property (default) or using Invoke-DscResource in Test mode (resource).
Default value: property
dsc_xsqlserverendpoint
The DSC xSQLServerEndpoint resource type. Automatically generated from version 9.1.0.0
Properties
The following properties are available in the dsc_xsqlserverendpoint
type.
dsc_ensure
Data type: Optional[Enum['Present', 'Absent']]
If the endpoint should be present or absent. Default values is 'Present'.
dsc_ipaddress
Data type: Optional[String]
The network IP address the endpoint is listening on. Default the endpoint will listen on any valid IP address.
dsc_port
Data type: Optional[Integer[0, 65535]]
The network port the endpoint is listening on. Default value is 5022.
dsc_sqlserver
Data type: Optional[String]
The host name of the SQL Server to be configured. Default value is $env:COMPUTERNAME.
Parameters
The following parameters are available in the dsc_xsqlserverendpoint
type.
dsc_endpointname
namevar
Data type: String
The name of the endpoint.
dsc_psdscrunascredential
Data type: Optional[Struct[{ user => String[1], password => Sensitive[String[1]] }]]
dsc_sqlinstancename
namevar
Data type: String
The name of the SQL instance to be configured.
name
namevar
Data type: String
Description of the purpose for this resource declaration.
validation_mode
Data type: Enum[property, resource]
Whether to check if the resource is in the desired state by property (default) or using Invoke-DscResource in Test mode (resource).
Default value: property
dsc_xsqlserverendpointpermission
The DSC xSQLServerEndpointPermission resource type. Automatically generated from version 9.1.0.0
Properties
The following properties are available in the dsc_xsqlserverendpointpermission
type.
dsc_ensure
Data type: Optional[Enum['Present', 'Absent']]
If the permission should be present or absent. Default value is 'Present'.
dsc_name
Data type: String
The name of the endpoint.
dsc_nodename
Data type: String
The host name of the SQL Server to be configured.
dsc_permission
Data type: Optional[Enum['CONNECT']]
The permission to set for the login. Valid value for permission are only CONNECT.
Parameters
The following parameters are available in the dsc_xsqlserverendpointpermission
type.
dsc_instancename
namevar
Data type: String
The name of the SQL instance to be configured.
dsc_principal
namevar
Data type: String
The login to which permission will be set.
dsc_psdscrunascredential
Data type: Optional[Struct[{ user => String[1], password => Sensitive[String[1]] }]]
name
namevar
Data type: String
Description of the purpose for this resource declaration.
validation_mode
Data type: Enum[property, resource]
Whether to check if the resource is in the desired state by property (default) or using Invoke-DscResource in Test mode (resource).
Default value: property
dsc_xsqlserverendpointstate
The DSC xSQLServerEndpointState resource type. Automatically generated from version 9.1.0.0
Properties
The following properties are available in the dsc_xsqlserverendpointstate
type.
dsc_nodename
Data type: Optional[String]
The host name of the SQL Server to be configured. Default value is $env:COMPUTERNAME.
dsc_state
Data type: Optional[Enum['Started', 'Stopped', 'Disabled']]
The state of the endpoint. Valid states are Started, Stopped or Disabled. Default value is 'Started'.
Parameters
The following parameters are available in the dsc_xsqlserverendpointstate
type.
dsc_instancename
namevar
Data type: String
The name of the SQL instance to be configured.
dsc_name
namevar
Data type: String
The name of the endpoint.
dsc_psdscrunascredential
Data type: Optional[Struct[{ user => String[1], password => Sensitive[String[1]] }]]
name
namevar
Data type: String
Description of the purpose for this resource declaration.
validation_mode
Data type: Enum[property, resource]
Whether to check if the resource is in the desired state by property (default) or using Invoke-DscResource in Test mode (resource).
Default value: property
dsc_xsqlserverfirewall
The DSC xSQLServerFirewall resource type. Automatically generated from version 9.1.0.0
Properties
The following properties are available in the dsc_xsqlserverfirewall
type.
dsc_analysisservicesfirewall
Data type: Optional[Boolean]
Is the firewall rule for Analysis Services enabled?
dsc_browserfirewall
Data type: Optional[Boolean]
Is the firewall rule for the Browser enabled?
dsc_databaseenginefirewall
Data type: Optional[Boolean]
Is the firewall rule for the Database Engine enabled?
dsc_ensure
Data type: Optional[Enum['Present', 'Absent']]
An enumerated value that describes if the SQL firewall rules are is expected to be enabled on the machine. Present {default} Absent
dsc_integrationservicesfirewall
Data type: Optional[Boolean]
Is the firewall rule for the Integration Services enabled?
dsc_reportingservicesfirewall
Data type: Optional[Boolean]
Is the firewall rule for Reporting Services enabled?
dsc_sourcepath
Data type: Optional[String]
UNC path to the root of the source files for installation.
Parameters
The following parameters are available in the dsc_xsqlserverfirewall
type.
dsc_features
namevar
Data type: String
SQL features to enable firewall rules for.
dsc_instancename
namevar
Data type: String
SQL instance to enable firewall rules for.
dsc_psdscrunascredential
Data type: Optional[Struct[{ user => String[1], password => Sensitive[String[1]] }]]
dsc_sourcecredential
Data type: Optional[Struct[{ user => String[1], password => Sensitive[String[1]] }]]
Credentials used to access the path set in the parameter 'SourcePath'.
name
namevar
Data type: String
Description of the purpose for this resource declaration.
validation_mode
Data type: Enum[property, resource]
Whether to check if the resource is in the desired state by property (default) or using Invoke-DscResource in Test mode (resource).
Default value: property
dsc_xsqlserverlogin
The DSC xSQLServerLogin resource type. Automatically generated from version 9.1.0.0
Properties
The following properties are available in the dsc_xsqlserverlogin
type.
dsc_disabled
Data type: Optional[Boolean]
Specifies if the login is disabled. Default is $false.
dsc_ensure
Data type: Optional[Enum['Present', 'Absent']]
The specified login is Present or Absent. Default is Present.
dsc_loginmustchangepassword
Data type: Optional[Boolean]
Specifies if the login is required to have its password change on the next login. Only applies to SQL Logins. Default is $true.
dsc_loginpasswordexpirationenabled
Data type: Optional[Boolean]
Specifies if the login password is required to expire in accordance to the operating system security policy. Only applies to SQL Logins. Default is $true.
dsc_loginpasswordpolicyenforced
Data type: Optional[Boolean]
Specifies if the login password is required to conform to the password policy specified in the system security policy. Only applies to SQL Logins. Default is $true.
dsc_logintype
Data type: Optional[Enum['WindowsUser', 'WindowsGroup', 'SqlLogin', 'Certificate', 'AsymmetricKey', 'ExternalUser', 'ExternalGroup']]
The type of login to be created. If LoginType is 'WindowsUser' or 'WindowsGroup' then provide the name in the format DOMAIN ame. Default is WindowsUser. Unsupported login types are Certificate, AsymmetricKey, ExternalUser, and ExternalGroup.
Parameters
The following parameters are available in the dsc_xsqlserverlogin
type.
dsc_logincredential
dsc_name
dsc_psdscrunascredential
dsc_sqlinstancename
dsc_sqlserver
name
validation_mode
dsc_logincredential
Data type: Optional[Struct[{ user => String[1], password => Sensitive[String[1]] }]]
If LoginType is 'SqlLogin' then a PSCredential is needed for the password to the login.
dsc_name
namevar
Data type: String
The name of the login.
dsc_psdscrunascredential
Data type: Optional[Struct[{ user => String[1], password => Sensitive[String[1]] }]]
dsc_sqlinstancename
namevar
Data type: String
Name of the SQL instance to be configured.
dsc_sqlserver
namevar
Data type: String
The hostname of the SQL Server to be configured.
name
namevar
Data type: String
Description of the purpose for this resource declaration.
validation_mode
Data type: Enum[property, resource]
Whether to check if the resource is in the desired state by property (default) or using Invoke-DscResource in Test mode (resource).
Default value: property
dsc_xsqlservermaxdop
The DSC xSQLServerMaxDop resource type. Automatically generated from version 9.1.0.0
Properties
The following properties are available in the dsc_xsqlservermaxdop
type.
dsc_dynamicalloc
Data type: Optional[Boolean]
If set to $true then max degree of parallelism will be dynamically configured. When this is set parameter is set to $true, the parameter MaxDop must be set to $null or not be configured.
dsc_ensure
Data type: Optional[Enum['Present', 'Absent']]
When set to 'Present' then max degree of parallelism will be set to either the value in parameter MaxDop or dynamically configured when parameter DynamicAlloc is set to $true. When set to 'Absent' max degree of parallelism will be set to 0 which means no limit in number of processors used in parallel plan execution.
dsc_isactivenode
Data type: Optional[Boolean]
Determines if the current node is actively hosting the SQL Server instance.
dsc_maxdop
Data type: Optional[Integer[-2147483648, 2147483647]]
A numeric value to limit the number of processors used in parallel plan execution.
dsc_processonlyonactivenode
Data type: Optional[Boolean]
Specifies that the resource will only determine if a change is needed if the target node is the active host of the SQL Server instance.
dsc_sqlserver
Data type: Optional[String]
The host name of the SQL Server to be configured. Default value is $env:COMPUTERNAME.
Parameters
The following parameters are available in the dsc_xsqlservermaxdop
type.
dsc_psdscrunascredential
Data type: Optional[Struct[{ user => String[1], password => Sensitive[String[1]] }]]
dsc_sqlinstancename
namevar
Data type: String
The name of the SQL instance to be configured.
name
namevar
Data type: String
Description of the purpose for this resource declaration.
validation_mode
Data type: Enum[property, resource]
Whether to check if the resource is in the desired state by property (default) or using Invoke-DscResource in Test mode (resource).
Default value: property
dsc_xsqlservermemory
The DSC xSQLServerMemory resource type. Automatically generated from version 9.1.0.0
Properties
The following properties are available in the dsc_xsqlservermemory
type.
dsc_dynamicalloc
Data type: Optional[Boolean]
If set to $true then max memory will be dynamically configured. When this is set parameter is set to $true, the parameter MaxMemory must be set to $null or not be configured. Default value is $false.
dsc_ensure
Data type: Optional[Enum['Present', 'Absent']]
When set to 'Present' then min and max memory will be set to either the value in parameter MinMemory and MaxMemory or dynamically configured when parameter DynamicAlloc is set to $true. When set to 'Absent' min and max memory will be set to default values. Default value is Present.
dsc_isactivenode
Data type: Optional[Boolean]
Determines if the current node is actively hosting the SQL Server instance.
dsc_maxmemory
Data type: Optional[Integer[-2147483648, 2147483647]]
Maximum amount of memory, in MB, in the buffer pool used by the instance of SQL Server.
dsc_minmemory
Data type: Optional[Integer[-2147483648, 2147483647]]
Minimum amount of memory, in MB, in the buffer pool used by the instance of SQL Server.
dsc_processonlyonactivenode
Data type: Optional[Boolean]
Specifies that the resource will only determine if a change is needed if the target node is the active host of the SQL Server instance.
dsc_sqlserver
Data type: Optional[String]
The host name of the SQL Server to be configured. Default value is $env:COMPUTERNAME.
Parameters
The following parameters are available in the dsc_xsqlservermemory
type.
dsc_psdscrunascredential
Data type: Optional[Struct[{ user => String[1], password => Sensitive[String[1]] }]]
dsc_sqlinstancename
namevar
Data type: String
The name of the SQL instance to be configured.
name
namevar
Data type: String
Description of the purpose for this resource declaration.
validation_mode
Data type: Enum[property, resource]
Whether to check if the resource is in the desired state by property (default) or using Invoke-DscResource in Test mode (resource).
Default value: property
dsc_xsqlservernetwork
The DSC xSQLServerNetwork resource type. Automatically generated from version 9.1.0.0
Properties
The following properties are available in the dsc_xsqlservernetwork
type.
dsc_isenabled
Data type: Optional[Boolean]
Enables or disables the network protocol.
dsc_protocolname
Data type: Enum['Tcp']
The name of network protocol to be configured. Only tcp is currently supported.
dsc_restartservice
Data type: Optional[Boolean]
If set to $true then SQL Server and dependent services will be restarted if a change to the configuration is made. The default value is $false.
dsc_restarttimeout
Data type: Optional[Integer[0, 65535]]
Timeout value for restarting the SQL Server services. The default value is 120 seconds.
dsc_sqlserver
Data type: Optional[String]
The host name of the SQL Server to be configured. Default value is $env:COMPUTERNAME.
dsc_tcpdynamicport
Data type: Optional[Boolean]
Specifies whether the SQL Server instance should use a dynamic port. Value cannot be set to 'True' if TcpPort is set to a non-empty string.
dsc_tcpport
Data type: Optional[String]
The TCP port(s) that SQL Server should be listening on. If the IP address should listen on more than one port, list all ports separated with a comma ('1433,1500,1501'). To use this parameter set TcpDynamicPorts to 'False'.
Parameters
The following parameters are available in the dsc_xsqlservernetwork
type.
dsc_instancename
namevar
Data type: String
The name of the SQL instance to be configured.
dsc_psdscrunascredential
Data type: Optional[Struct[{ user => String[1], password => Sensitive[String[1]] }]]
name
namevar
Data type: String
Description of the purpose for this resource declaration.
validation_mode
Data type: Enum[property, resource]
Whether to check if the resource is in the desired state by property (default) or using Invoke-DscResource in Test mode (resource).
Default value: property
dsc_xsqlserverpermission
The DSC xSQLServerPermission resource type. Automatically generated from version 9.1.0.0
Properties
The following properties are available in the dsc_xsqlserverpermission
type.
dsc_ensure
Data type: Optional[Enum['Present', 'Absent']]
If the permission should be present or absent. Default value is 'Present'.
dsc_nodename
Data type: Optional[String]
The host name of the SQL Server to be configured. Default value is $env:COMPUTERNAME.
dsc_permission
Data type: Optional[Array[Enum['ConnectSql', 'AlterAnyAvailabilityGroup', 'ViewServerState', 'AlterAnyEndPoint']]]
The permission to set for the login. Valid values are ConnectSql, AlterAnyAvailabilityGroup, ViewServerState or AlterAnyEndPoint.
Parameters
The following parameters are available in the dsc_xsqlserverpermission
type.
dsc_instancename
namevar
Data type: String
The name of the SQL instance to be configured.
dsc_principal
namevar
Data type: String
The login to which permission will be set.
dsc_psdscrunascredential
Data type: Optional[Struct[{ user => String[1], password => Sensitive[String[1]] }]]
name
namevar
Data type: String
Description of the purpose for this resource declaration.
validation_mode
Data type: Enum[property, resource]
Whether to check if the resource is in the desired state by property (default) or using Invoke-DscResource in Test mode (resource).
Default value: property
dsc_xsqlserverreplication
The DSC xSQLServerReplication resource type. Automatically generated from version 9.1.0.0
Properties
The following properties are available in the dsc_xsqlserverreplication
type.
dsc_distributiondbname
Data type: Optional[String]
Distribution database name
dsc_distributormode
Data type: Enum['Local', 'Remote']
dsc_ensure
Data type: Optional[Enum['Present', 'Absent']]
dsc_remotedistributor
Data type: Optional[String]
Distributor server name if configuring publisher with remote distributor
dsc_uninstallwithforce
Data type: Optional[Boolean]
Force flag for uninstall procedure
dsc_usetrustedconnection
Data type: Optional[Boolean]
Publisher security mode
dsc_workingdirectory
Data type: String
Publisher working directory
Parameters
The following parameters are available in the dsc_xsqlserverreplication
type.
dsc_adminlinkcredentials
Data type: Optional[Struct[{ user => String[1], password => Sensitive[String[1]] }]]
Distributor administration link password
dsc_instancename
namevar
Data type: String
SQL Server instance name where replication distribution will be configured
dsc_psdscrunascredential
Data type: Optional[Struct[{ user => String[1], password => Sensitive[String[1]] }]]
name
namevar
Data type: String
Description of the purpose for this resource declaration.
validation_mode
Data type: Enum[property, resource]
Whether to check if the resource is in the desired state by property (default) or using Invoke-DscResource in Test mode (resource).
Default value: property
dsc_xsqlserverrole
The DSC xSQLServerRole resource type. Automatically generated from version 9.1.0.0
Properties
The following properties are available in the dsc_xsqlserverrole
type.
dsc_ensure
Data type: Optional[Enum['Present', 'Absent']]
An enumerated value that describes if the server role is added (Present) or dropped (Absent). Default value is 'Present'.
dsc_members
Data type: Optional[Array[String]]
The members the server role should have. This parameter will replace all the current server role members with the specified members.
dsc_memberstoexclude
Data type: Optional[Array[String]]
The members the server role should exclude. This parameter will only remove members from a server role. Can only be used when parameter Ensure is set to 'Present'. Can not be used at the same time as parameter Members.
dsc_memberstoinclude
Data type: Optional[Array[String]]
The members the server role should include. This parameter will only add members to a server role. Can not be used at the same time as parameter Members.
Parameters
The following parameters are available in the dsc_xsqlserverrole
type.
dsc_psdscrunascredential
Data type: Optional[Struct[{ user => String[1], password => Sensitive[String[1]] }]]
dsc_serverrolename
namevar
Data type: String
The name of of SQL role to add or remove.
dsc_sqlinstancename
namevar
Data type: String
The name of the SQL instance to be configured.
dsc_sqlserver
namevar
Data type: String
The host name of the SQL Server to be configured.
name
namevar
Data type: String
Description of the purpose for this resource declaration.
validation_mode
Data type: Enum[property, resource]
Whether to check if the resource is in the desired state by property (default) or using Invoke-DscResource in Test mode (resource).
Default value: property
dsc_xsqlserverrsconfig
The DSC xSQLServerRSConfig resource type. Automatically generated from version 9.1.0.0
Properties
The following properties are available in the dsc_xsqlserverrsconfig
type.
dsc_isinitialized
Data type: Optional[Boolean]
Is the Reporting Services instance initialized.
dsc_reportserverreservedurl
Data type: Optional[Array[String]]
Report Server URL reservations. Optional. If not specified, 'http://+:80' URL reservation will be used.
dsc_reportservervirtualdirectory
Data type: Optional[String]
Report Server Web Service virtual directory. Optional.
dsc_reportsreservedurl
Data type: Optional[Array[String]]
Report Manager/Report Web App URL reservations. Optional. If not specified, 'http://+:80' URL reservation will be used.
dsc_reportsvirtualdirectory
Data type: Optional[String]
Report Manager/Report Web App virtual directory name. Optional.
dsc_rssqlinstancename
Data type: String
Name of the SQL Server instance to host the Reporting Service database.
dsc_rssqlserver
Data type: String
Name of the SQL Server to host the Reporting Service database.
Parameters
The following parameters are available in the dsc_xsqlserverrsconfig
type.
dsc_instancename
namevar
Data type: String
Name of the SQL Server Reporting Services instance to be configured.
dsc_psdscrunascredential
Data type: Optional[Struct[{ user => String[1], password => Sensitive[String[1]] }]]
name
namevar
Data type: String
Description of the purpose for this resource declaration.
validation_mode
Data type: Enum[property, resource]
Whether to check if the resource is in the desired state by property (default) or using Invoke-DscResource in Test mode (resource).
Default value: property
dsc_xsqlserverrssecureconnectionlevel
The DSC xSQLServerRSSecureConnectionLevel resource type. Automatically generated from version 9.1.0.0
Parameters
The following parameters are available in the dsc_xsqlserverrssecureconnectionlevel
type.
dsc_instancename
dsc_psdscrunascredential
dsc_secureconnectionlevel
dsc_sqladmincredential
name
validation_mode
dsc_instancename
namevar
Data type: String
SQL instance to set secure connection level for.
dsc_psdscrunascredential
Data type: Optional[Struct[{ user => String[1], password => Sensitive[String[1]] }]]
dsc_secureconnectionlevel
namevar
Data type: Integer[0, 65535]
SQL Server Reporting Service secure connection level.
dsc_sqladmincredential
Data type: Optional[Struct[{ user => String[1], password => Sensitive[String[1]] }]]
Credential with administrative permissions to the SQL instance.
name
namevar
Data type: String
Description of the purpose for this resource declaration.
validation_mode
Data type: Enum[property, resource]
Whether to check if the resource is in the desired state by property (default) or using Invoke-DscResource in Test mode (resource).
Default value: property
dsc_xsqlserverscript
The DSC xSQLServerScript resource type. Automatically generated from version 9.1.0.0
Properties
The following properties are available in the dsc_xsqlserverscript
type.
dsc_getresult
Data type: Optional[Array[String]]
Contains the values returned from the T-SQL script provided in the parameter 'GetFilePath' when cmdlet Get-DscConfiguration is run.
dsc_querytimeout
Data type: Optional[Integer[0, 4294967295]]
Specifies, as an integer, the number of seconds after which the T-SQL script execution will time out. In some SQL Server versions there is a bug in Invoke-Sqlcmd where the normal default value 0 (no timeout) is not respected and the default value is incorrectly set to 30 seconds.
dsc_variable
Data type: Optional[Array[String]]
Specifies, as a string array, a scripting variable for use in the sql script, and sets a value for the variable. Use a Windows PowerShell array to specify multiple variables and their values. For more information how to use this, please go to the help documentation for Invoke-Sqlcmd
Parameters
The following parameters are available in the dsc_xsqlserverscript
type.
dsc_credential
dsc_getfilepath
dsc_psdscrunascredential
dsc_serverinstance
dsc_setfilepath
dsc_testfilepath
name
validation_mode
dsc_credential
Data type: Optional[Struct[{ user => String[1], password => Sensitive[String[1]] }]]
The credentials to authenticate with, using SQL Authentication. To authenticate using Windows Authentication, assign the credentials to the built-in parameter 'PsDscRunAsCredential'. If both parameters 'Credential' and 'PsDscRunAsCredential' are not assigned, then SYSTEM account will be used to authenticate using Windows Authentication.
dsc_getfilepath
namevar
Data type: String
Path to the T-SQL file that will perform Get action. Any values returned by the T-SQL queries will also be returned by the cmdlet Get-DscConfiguration through the 'GetResult' property.
dsc_psdscrunascredential
Data type: Optional[Struct[{ user => String[1], password => Sensitive[String[1]] }]]
dsc_serverinstance
namevar
Data type: String
The name of an instance of the Database Engine. For a default instance, only specify the computer name. For a named instance, use the format ComputerName\InstanceName
dsc_setfilepath
namevar
Data type: String
Path to the T-SQL file that will perform Set action.
dsc_testfilepath
namevar
Data type: String
Path to the T-SQL file that will perform Test action. Any script that does not throw an error or returns null is evaluated to true. The cmdlet Invoke-Sqlcmd treats T-SQL Print statements as verbose text, and will not cause the test to return false.
name
namevar
Data type: String
Description of the purpose for this resource declaration.
validation_mode
Data type: Enum[property, resource]
Whether to check if the resource is in the desired state by property (default) or using Invoke-DscResource in Test mode (resource).
Default value: property
dsc_xsqlserverserviceaccount
The DSC xSQLServerServiceAccount resource type. Automatically generated from version 9.1.0.0
Properties
The following properties are available in the dsc_xsqlserverserviceaccount
type.
dsc_restartservice
Data type: Optional[Boolean]
Determines whether the service is automatically restarted.
Parameters
The following parameters are available in the dsc_xsqlserverserviceaccount
type.
dsc_force
dsc_psdscrunascredential
dsc_serviceaccount
dsc_servicetype
dsc_sqlinstancename
dsc_sqlserver
name
validation_mode
dsc_force
Data type: Optional[Boolean]
Forces the service account to be updated. Useful for password changes.
dsc_psdscrunascredential
Data type: Optional[Struct[{ user => String[1], password => Sensitive[String[1]] }]]
dsc_serviceaccount
Data type: Optional[Struct[{ user => String[1], password => Sensitive[String[1]] }]]
The service account that should be used when running the service.
dsc_servicetype
namevar
Data type: Enum['DatabaseEngine', 'SQLServerAgent', 'Search', 'IntegrationServices', 'AnalysisServices', 'ReportingServices', 'SQLServerBrowser', 'NotificationServices']
Type of service being managed.
dsc_sqlinstancename
namevar
Data type: String
Name of the SQL instance.
dsc_sqlserver
namevar
Data type: String
Hostname of the SQL Server.
name
namevar
Data type: String
Description of the purpose for this resource declaration.
validation_mode
Data type: Enum[property, resource]
Whether to check if the resource is in the desired state by property (default) or using Invoke-DscResource in Test mode (resource).
Default value: property
dsc_xsqlserversetup
The DSC xSQLServerSetup resource type. Automatically generated from version 9.1.0.0
Properties
The following properties are available in the dsc_xsqlserversetup
type.
dsc_action
Data type: Optional[Enum['Install', 'InstallFailoverCluster', 'AddNode', 'PrepareFailoverCluster', 'CompleteFailoverCluster']]
The action to be performed. Default value is 'Install'.
dsc_agtsvcaccountusername
Data type: Optional[String]
Output username for the SQL Agent service.
dsc_asbackupdir
Data type: Optional[String]
Path for Analysis Services backup files.
dsc_ascollation
Data type: Optional[String]
Collation for Analysis Services.
dsc_asconfigdir
Data type: Optional[String]
Path for Analysis Services config.
dsc_asdatadir
Data type: Optional[String]
Path for Analysis Services data files.
dsc_aslogdir
Data type: Optional[String]
Path for Analysis Services log files.
dsc_assvcaccountusername
Data type: Optional[String]
Output username for the Analysis Services service.
dsc_assysadminaccounts
Data type: Optional[Array[String]]
Array of accounts to be made Analysis Services admins.
dsc_astempdir
Data type: Optional[String]
Path for Analysis Services temp files.
dsc_browsersvcstartuptype
Data type: Optional[Enum['Automatic', 'Disabled', 'Manual']]
Specifies the startup mode for SQL Server Browser service.
dsc_errorreporting
Data type: Optional[String]
Enable error reporting.
dsc_failoverclustergroupname
Data type: Optional[String]
The name of the resource group to create for the clustered SQL Server instance. Default is 'SQL Server (InstanceName)'.
dsc_failoverclusteripaddress
Data type: Optional[Array[String]]
Array of IP Addresses to be assigned to the clustered SQL Server instance.
dsc_failoverclusternetworkname
Data type: Optional[String]
Host name to be assigned to the clustered SQL Server instance.
dsc_features
Data type: Optional[String]
SQL features to be installed.
dsc_forcereboot
Data type: Optional[Boolean]
Forces reboot.
dsc_ftsvcaccountusername
Data type: Optional[String]
Output username for the Full Text service.
dsc_installshareddir
Data type: Optional[String]
Installation path for shared SQL files.
dsc_installsharedwowdir
Data type: Optional[String]
Installation path for x86 shared SQL files.
dsc_installsqldatadir
Data type: Optional[String]
Root path for SQL database files.
dsc_instancedir
Data type: Optional[String]
Installation path for SQL instance files.
dsc_instanceid
Data type: Optional[String]
SQL instance ID, if different from InstanceName.
dsc_issvcaccountusername
Data type: Optional[String]
Output username for the Integration Services service.
dsc_productkey
Data type: Optional[String]
Product key for licensed installations.
dsc_rssvcaccountusername
Data type: Optional[String]
Output username for the Reporting Services service.
dsc_securitymode
Data type: Optional[String]
Security mode to apply to the SQL Server instance.
dsc_setupprocesstimeout
Data type: Optional[Integer[0, 4294967295]]
The timeout, in seconds, to wait for the setup process to finish. Default value is 7200 seconds (2 hours). If the setup process does not finish before this time, and error will be thrown.
dsc_sourcepath
Data type: Optional[String]
The path to the root of the source files for installation. I.e and UNC path to a shared resource. Environment variables can be used in the path.
dsc_sqlbackupdir
Data type: Optional[String]
Path for SQL backup files.
dsc_sqlcollation
Data type: Optional[String]
Collation for SQL.
dsc_sqlsvcaccountusername
Data type: Optional[String]
Output username for the SQL service.
dsc_sqlsysadminaccounts
Data type: Optional[Array[String]]
Array of accounts to be made SQL administrators.
dsc_sqltempdbdir
Data type: Optional[String]
Path for SQL TempDB files.
dsc_sqltempdblogdir
Data type: Optional[String]
Path for SQL TempDB log files.
dsc_sqluserdbdir
Data type: Optional[String]
Path for SQL database files.
dsc_sqluserdblogdir
Data type: Optional[String]
Path for SQL log files.
dsc_sqmreporting
Data type: Optional[String]
Enable customer experience reporting.
dsc_suppressreboot
Data type: Optional[Boolean]
Suppresses reboot.
dsc_updateenabled
Data type: Optional[String]
Enabled updates during installation.
dsc_updatesource
Data type: Optional[String]
Path to the source of updates to be applied during installation.
Parameters
The following parameters are available in the dsc_xsqlserversetup
type.
dsc_agtsvcaccount
dsc_assvcaccount
dsc_ftsvcaccount
dsc_instancename
dsc_issvcaccount
dsc_psdscrunascredential
dsc_rssvcaccount
dsc_sapwd
dsc_sourcecredential
dsc_sqlsvcaccount
name
validation_mode
dsc_agtsvcaccount
Data type: Optional[Struct[{ user => String[1], password => Sensitive[String[1]] }]]
Service account for the SQL Agent service.
dsc_assvcaccount
Data type: Optional[Struct[{ user => String[1], password => Sensitive[String[1]] }]]
Service account for Analysis Services service.
dsc_ftsvcaccount
Data type: Optional[Struct[{ user => String[1], password => Sensitive[String[1]] }]]
Service account for the Full Text service.
dsc_instancename
namevar
Data type: String
Name of the SQL instance to be installed.
dsc_issvcaccount
Data type: Optional[Struct[{ user => String[1], password => Sensitive[String[1]] }]]
Service account for Integration Services service.
dsc_psdscrunascredential
Data type: Optional[Struct[{ user => String[1], password => Sensitive[String[1]] }]]
dsc_rssvcaccount
Data type: Optional[Struct[{ user => String[1], password => Sensitive[String[1]] }]]
Service account for Reporting Services service.
dsc_sapwd
Data type: Optional[Struct[{ user => String[1], password => Sensitive[String[1]] }]]
SA password, if SecurityMode is set to 'SQL'.
dsc_sourcecredential
Data type: Optional[Struct[{ user => String[1], password => Sensitive[String[1]] }]]
Credentials used to access the path set in the parameter 'SourcePath'.
dsc_sqlsvcaccount
Data type: Optional[Struct[{ user => String[1], password => Sensitive[String[1]] }]]
Service account for the SQL service.
name
namevar
Data type: String
Description of the purpose for this resource declaration.
validation_mode
Data type: Enum[property, resource]
Whether to check if the resource is in the desired state by property (default) or using Invoke-DscResource in Test mode (resource).
Default value: property
dsc_xwaitforavailabilitygroup
The DSC xWaitForAvailabilityGroup resource type. Automatically generated from version 9.1.0.0
Properties
The following properties are available in the dsc_xwaitforavailabilitygroup
type.
dsc_groupexist
Data type: Optional[Boolean]
Returns $true if the cluster role/group exist, otherwise it returns $false. Used by Get-TargetResource.
dsc_retrycount
Data type: Optional[Integer[0, 4294967295]]
Maximum number of retries until the resource will timeout and throw an error. Default values is 30 times.
dsc_retryintervalsec
Data type: Optional[Integer[0, 18446744073709551615]]
The interval, in seconds, to check for the presence of the cluster role/group. Default value is 20 seconds. When the cluster role/group has been found the resource will wait for this amount of time once more before returning.
Parameters
The following parameters are available in the dsc_xwaitforavailabilitygroup
type.
dsc_name
namevar
Data type: String
Name of the cluster role/group to look for (normally the same as the Availability Group name).
dsc_psdscrunascredential
Data type: Optional[Struct[{ user => String[1], password => Sensitive[String[1]] }]]
name
namevar
Data type: String
Description of the purpose for this resource declaration.
validation_mode
Data type: Enum[property, resource]
Whether to check if the resource is in the desired state by property (default) or using Invoke-DscResource in Test mode (resource).
Default value: property
Change log for xSQLServer
Unreleased
9.1.0.0
- This module has been renamed to SqlServerDsc. Development of these resources will continue under that module. This specific module (xSQLServer) is now deprecated and use of SqlServerDsc is recommended. The only change between version 9.0.0.0 and 9.1.0.0 is the addition of this note to the description of the module. There are no other changes.
9.0.0.0
- Changes to xSQLServer
- Updated Pester syntax to v4
- Fixes broken links to issues in the CHANGELOG.md.
- Changes to xSQLServerDatabase
- Added parameter to specify collation for a database to be different from server collation (issue #767).
- Fixed unit tests for Get-TargetResource to ensure correctly testing return values (issue #849)
- Changes to xSQLServerAlwaysOnAvailabilityGroup
- Refactored the unit tests to allow them to be more user friendly and to test
additional SQLServer variations.
- Each test will utilize the Import-SQLModuleStub to ensure the correct module is loaded (issue #784).
- Fixed an issue when setting the SQLServer parameter to a Fully Qualified Domain Name (FQDN) (issue #468).
- Fixed the logic so that if a parameter is not supplied to the resource, the resource will not attempt to apply the defaults on subsequent checks (issue #517).
- Made the resource cluster aware. When ProcessOnlyOnActiveNode is specified, the resource will only determine if a change is needed if the target node is the active host of the SQL Server instance (issue #868).
- Refactored the unit tests to allow them to be more user friendly and to test
additional SQLServer variations.
- Changes to xSQLServerAlwaysOnAvailabilityGroupDatabaseMembership
- Made the resource cluster aware. When ProcessOnlyOnActiveNode is specified, the resource will only determine if a change is needed if the target node is the active host of the SQL Server instance (issue #869).
- Changes to xSQLServerAlwaysOnAvailabilityGroupReplica
- Made the resource cluster aware. When ProcessOnlyOnActiveNode is specified, the resource will only determine if a change is needed if the target node is the active host of the SQL Server instance (issue #870).
- Added the CommonTestHelper.psm1 to store common testing functions.
- Added the Import-SQLModuleStub function to ensure the correct version of the module stubs are loaded (issue #784).
- Changes to xSQLServerMemory
- Made the resource cluster aware. When ProcessOnlyOnActiveNode is specified, the resource will only determine if a change is needed if the target node is the active host of the SQL Server instance (issue #867).
- Changes to xSQLServerNetwork
- BREAKING CHANGE: Renamed parameter TcpDynamicPorts to TcpDynamicPort and changed type to Boolean (issue #534).
- Resolved issue when switching from dynamic to static port. configuration (issue #534).
- Added localization (en-US) for all strings in resource and unit tests (issue #618).
- Updated examples to reflect new parameters.
- Changes to xSQLServerRSConfig
- Added examples
- Added resource
- xSQLServerDatabaseDefaultLocation (issue #656)
- Changes to xSQLServerEndpointPermission
- Fixed a problem when running the tests locally in a PowerShell console it would ask for parameters (issue #897).
- Changes to xSQLServerAvailabilityGroupListener
- Fixed a problem when running the tests locally in a PowerShell console it would ask for parameters (issue #897).
- Changes to xSQLServerMaxDop
- Made the resource cluster aware. When ProcessOnlyOnActiveNode is specified, the resource will only determine if a change is needed if the target node is the active host of the SQL Server instance (issue #882).
8.2.0.0
- Changes to xSQLServer
- Updated appveyor.yml so that integration tests run in order and so that the SQLPS module folders are renamed to not disturb the units test, but can be renamed back by the integration tests xSQLServerSetup so that the integration tests can run successfully (issue #774).
- Changed so the maximum version to be installed is 4.0.6.0, when running unit tests in AppVeyor. Quick fix until we can resolve the unit tests (see issue #807).
- Moved the code block, that contains workarounds in appveyor.yml, so it is run during the install phase instead of the test phase.
- Fix problem with tests breaking with Pester 4.0.7 (issue #807).
- Changes to xSQLServerHelper
- Changes to Connect-SQL and Import-SQLPSModule
- Now it correctly loads the correct assemblies when SqlServer module is present (issue #649).
- Now SQLPS module will be correctly loaded (discovered) after installation of SQL Server. Previously resources depending on SQLPS module could fail because SQLPS was not found after installation because the PSModulePath environment variable in the (LCM) PowerShell session did not contain the new module path.
- Added new helper function "Test-ClusterPermissions" (issue #446).
- Changes to Connect-SQL and Import-SQLPSModule
- Changes to xSQLServerSetup
- Fixed an issue with trailing slashes in the 'UpdateSource' property (issue #720).
- Fixed so that the integration test renames back the SQLPS module folders if they was renamed by AppVeyor (in the appveyor.yml file) (issue #774).
- Fixed so integration test does not write warnings when SQLPS module is loaded (issue #798).
- Changes to integration tests.
- Moved the configuration block from the MSFT_xSQLServerSetup.Integration.Tests.ps1 to the MSFT_xSQLServerSetup.config.ps1 to align with the other integration test. And also get most of the configuration in one place.
- Changed the tests so that the local SqlInstall account is added as a member of the local administrators group.
- Changed the tests so that the local SqlInstall account is added as a member of the system administrators in SQL Server (Database Engine) - needed for the xSQLServerAlwaysOnService integration tests.
- Changed so that only one of the Modules-folder for the SQLPS PowerShell module for SQL Server 2016 is renamed back so it can be used with the integration tests. There was an issue when more than one SQLPS module was present (see more information in issue #806).
- Fixed wrong variable name for SQL service credential. It was using the integration test variable name instead of the parameter name.
- Added ErrorAction 'Stop' to the cmdlet Start-DscConfiguration (issue #824).
- Changes to xSQLServerAlwaysOnAvailabilityGroup
- Change the check of the values entered as parameter for BasicAvailabilityGroup. It is a boolean, hence it was not possible to disable the feature.
- Add possibility to enable/disable the feature DatabaseHealthTrigger (SQL Server 2016 or later only).
- Add possibility to enable the feature DtcSupportEnabled (SQL Server 2016 or later only). The feature currently can't be altered once the Availability Group is created.
- Use the new helper function "Test-ClusterPermissions".
- Refactored the unit tests to allow them to be more user friendly.
- Added the following read-only properties to the schema (issue #476)
- EndpointPort
- EndpointURL
- SQLServerNetName
- Version
- Use the Get-PrimaryReplicaServerObject helper function.
- Changes to xSQLServerAlwaysOnAvailabilityGroupReplica
- Fixed the formatting for the AvailabilityGroupNotFound error.
- Added the following read-only properties to the schema (issue #477)
- EndpointPort
- EndpointURL
- Use the new helper function "Test-ClusterPermissions".
- Use the Get-PrimaryReplicaServerObject helper function
- Changes to xSQLServerHelper
- Fixed Connect-SQL by ensuring the Status property returns 'Online' prior to returning the SQL Server object (issue #333).
- Changes to xSQLServerRole
- Running Get-DscConfiguration no longer throws an error saying property Members is not an array (issue #790).
- Changes to xSQLServerMaxDop
- Fixed error where Measure-Object cmdlet would fail claiming it could not find the specified property (issue #801)
- Changes to xSQLServerAlwaysOnService
- Added integration test (issue #736).
- Added ErrorAction 'Stop' to the cmdlet Start-DscConfiguration (issue #824).
- Added integration test (issue #736).
- Changes to SMO.cs
- Added default properties to the Server class
- AvailabilityGroups
- Databases
- EndpointCollection
- Added a new overload to the Login class
- Added default properties to the AvailabilityReplicas class
- AvailabilityDatabases
- AvailabilityReplicas
- Added default properties to the Server class
- Added new resource xSQLServerAccount (issue #706)
- Added localization support for all strings
- Added examples for usage
- Changes to xSQLServerRSConfig
- No longer returns a null value from Test-TargetResource when Reporting Services has not been initialized (issue #822).
- Fixed so that when two Reporting Services are installed for the same major version the resource does not throw an error (issue #819).
- Now the resource will restart the Reporting Services service after initializing (issue #592). This will enable the Reports site to work.
- Added integration test (issue #753).
- Added support for configuring URL reservations and virtual directory names (issue #570)
- Added resource
- xSQLServerDatabaseDefaultLocation (issue #656)
8.1.0.0
- Changes to xSQLServer
- Added back .markdownlint.json so that lint rule MD013 is enforced.
- Change the module to use the image 'Visual Studio 2017' as the build worker image for AppVeyor (issue #685).
- Minor style change in CommonResourceHelper. Added missing [Parameter()] on three parameters.
- Minor style changes to the unit tests for CommonResourceHelper.
- Changes to xSQLServerHelper
- Added Swedish localization (issue #695).
- Opt-in for module files common tests (issue #702).
- Removed Byte Order Mark (BOM) from the files; CommonResourceHelper.psm1, MSFT_xSQLServerAvailabilityGroupListener.psm1, MSFT_xSQLServerConfiguration.psm1, MSFT_xSQLServerEndpointPermission.psm1, MSFT_xSQLServerEndpointState.psm1, MSFT_xSQLServerNetwork.psm1, MSFT_xSQLServerPermission.psm1, MSFT_xSQLServerReplication.psm1, MSFT_xSQLServerScript.psm1, SQLPSStub.psm1, SQLServerStub.psm1.
- Opt-in for script files common tests (issue #707).
- Removed Byte Order Mark (BOM) from the files; DSCClusterSqlBuild.ps1, DSCFCISqlBuild.ps1, DSCSqlBuild.ps1, DSCSQLBuildEncrypted.ps1, SQLPush_SingleServer.ps1, 1-AddAvailabilityGroupListenerWithSameNameAsVCO.ps1, 2-AddAvailabilityGroupListenerWithDifferentNameAsVCO.ps1, 3-RemoveAvailabilityGroupListenerWithSameNameAsVCO.ps1, 4-RemoveAvailabilityGroupListenerWithDifferentNameAsVCO.ps1, 5-AddAvailabilityGroupListenerUsingDHCPWithDefaultServerSubnet.ps1, 6-AddAvailabilityGroupListenerUsingDHCPWithSpecificSubnet.ps1, 2-ConfigureInstanceToEnablePriorityBoost.ps1, 1-CreateEndpointWithDefaultValues.ps1, 2-CreateEndpointWithSpecificPortAndIPAddress.ps1, 3-RemoveEndpoint.ps1, 1-AddConnectPermission.ps1, 2-RemoveConnectPermission.ps1, 3-AddConnectPermissionToAlwaysOnPrimaryAndSecondaryReplicaEachWithDifferentSqlServiceAccounts.ps1, 4-RemoveConnectPermissionToAlwaysOnPrimaryAndSecondaryReplicaEachWithDifferentSqlServiceAccounts.ps1, 1-MakeSureEndpointIsStarted.ps1, 2-MakeSureEndpointIsStopped.ps1, 1-EnableTcpIpWithStaticPort.ps1, 2-EnableTcpIpWithDynamicPort.ps1, 1-AddServerPermissionForLogin.ps1, 2-RemoveServerPermissionForLogin.ps1, 1-ConfigureInstanceAsDistributor.ps1, 2-ConfigureInstanceAsPublisher.ps1, 1-WaitForASingleClusterGroup.ps1, 2-WaitForMultipleClusterGroups.ps1.
- Updated year to 2017 in license file (issue #711).
- Code style clean-up throughout the module to align against the Style Guideline.
- Fixed typos and the use of wrong parameters in unit tests which was found after release of new version of Pester (issue #773).
- Changes to xSQLServerAlwaysOnService
- Added resource description in README.md.
- Updated parameters descriptions in comment-based help, schema.mof and README.md.
- Changed the datatype of the parameter to Uint32 so the same datatype is used in both the Get-/Test-/Set-TargetResource functions as in the schema.mof (issue #688).
- Added read-only property IsHadrEnabled to schema.mof and the README.md (issue #687).
- Minor cleanup of code.
- Added examples (issue #633)
- 1-EnableAlwaysOn.ps1
- 2-DisableAlwaysOn.ps1
- Fixed PS Script Analyzer errors (issue #724)
- Casting the result of the property IsHadrEnabled to [System.Boolean] so that $null is never returned, which resulted in an exception (issue #763).
- Changes to xSQLServerDatabasePermission
- Fixed PS Script Analyzer errors (issue #725)
- Changes to xSQLServerScript
- Fixed PS Script Analyzer errors (issue #728)
- Changes to xSQLServerSetup
- Added Swedish localization (issue #695).
- Now Get-TargetResource correctly returns an array for property ASSysAdminAccounts, and no longer throws an error when there is just one Analysis Services administrator (issue #691).
- Added a simple integration test (issue #709).
- Fixed PS Script Analyzer errors (issue #729)
8.0.0.0
- BREAKING CHANGE: The module now requires WMF 5.
- This is required for class-based resources
- Added new resource
- xSQLServerAlwaysOnAvailabilityGroupDatabaseMembership
- Added localization support for all strings.
- Refactored as a MOF based resource due to challenges with Pester and testing in Powershell 5.
- Changes to xSQLServer
- BREAKING CHANGE: xSQLServer does no longer try to support WMF 4.0 (PowerShell 4.0) (issue #574). Minimum supported version of WMF is now 5.0 (PowerShell 5.0).
- BREAKING CHANGE: Removed deprecated resource xSQLAOGroupJoin (issue #457).
- BREAKING CHANGE: Removed deprecated resource xSQLAOGroupEnsure (issue #456).
- BREAKING CHANGE: Removed deprecated resource xSQLServerFailoverClusterSetup (issue #336).
- Updated PULL_REQUEST_TEMPLATE adding comment block around text. Also rearranged and updated texts (issue #572).
- Added common helper functions for HQRM localization, and added tests for the
helper functions.
- Get-LocalizedData
- New-InvalidResultException
- New-ObjectNotFoundException
- New-InvalidOperationException
- New-InvalidArgumentException
- Updated CONTRIBUTING.md describing the new localization helper functions.
- Fixed typos in xSQLServer.strings.psd1
- Fixed CodeCov badge links in README.md so that they point to the correct branch.
- Added VS Code workspace settings file with formatting settings matching the
Style Guideline (issue #645). That will make it possible inside VS Code to press
SHIFT+ALT+F, or press F1 and choose 'Format document' in the list. The
PowerShell code will then be formatted according to the Style Guideline
(although maybe not complete, but would help a long way).
- Removed powershell.codeFormatting.alignPropertyValuePairs setting since it does not align with the style guideline.
- Added powershell.codeFormatting.preset with a value of 'Custom' so that workspace formatting settings are honored (issue #665).
- Fixed lint error MD013 and MD036 in README.md.
- Updated .markdownlint.json to enable rule MD013 and MD036 to enforce those lint markdown rules in the common tests.
- Fixed lint error MD013 in CHANGELOG.md.
- Fixed lint error MD013 in CONTRIBUTING.md.
- Added code block around types in README.md.
- Updated copyright information in xSQLServer.psd1.
- Opt-in for markdown common tests (issue #668).
- The old markdown tests has been removed.
- Changes to xSQLServerHelper
- Removed helper function Grant-ServerPerms because the deprecated resource that was using it was removed.
- Removed helper function Grant-CNOPerms because the deprecated resource that was using it was removed.
- Removed helper function New-ListenerADObject because the deprecated resource that was using it was removed.
- Added tests for those helper functions that did not have tests.
- Test-SQLDscParameterState helper function can now correctly pass a CimInstance as DesiredValue.
- Test-SQLDscParameterState helper function will now output a warning message if the value type of a desired value is not supported.
- Added localization to helper functions (issue #641).
- Resolved the issue when using Write-Verbose in helper functions discussed in #641 where Write-Verbose wouldn't write out verbose messages unless using parameter Verbose.
- Moved localization strings from xSQLServer.strings.psd1 to xSQLServerHelper.strings.psd1.
- Changes to xSQLServerSetup
- BREAKING CHANGE: Replaced StartWin32Process helper function with the cmdlet Start-Process (issue #41, #93 and #126).
- BREAKING CHANGE: The parameter SetupCredential has been removed since it is no longer needed. This is because the resource now support the built-in PsDscRunAsCredential.
- BREAKING CHANGE: Now the resource supports using built-in PsDscRunAsCredential. If PsDscRunAsCredential is set, that username will be used as the first system administrator.
- BREAKING CHANGE: If the parameter PsDscRunAsCredential are not assigned any credentials then the resource will start the setup process as the SYSTEM account. When installing as the SYSTEM account, then parameter SQLSysAdminAccounts and ASSysAdminAccounts must be specified when installing feature Database Engine and Analysis Services respectively.
- When setup exits with the exit code 3010 a warning message is written to console telling that setup finished successfully, but a reboot is required (partly fixes issue #565).
- When setup exits with an exit code other than 0 or 3010 a warning message is written to console telling that setup finished with an error (partly fixes issue #580).
- Added a new parameter SetupProcessTimeout which defaults to 7200 seconds (2 hours). If the setup process has not finished before the timeout value in SetupProcessTimeout an error will be thrown (issue #566).
- Updated all examples to match the removal of SetupCredential.
- Updated (removed) severe known issues in README.md for resource xSQLServerSetup.
- Now all major version uses the same identifier to evaluate InstallSharedDir and InstallSharedWOWDir (issue #420).
- Now setup arguments that contain no value will be ignored, for example when InstallSharedDir and InstallSharedWOWDir path is already present on the target node, because of a previous installation (issue #639).
- Updated Get-TargetResource to correctly detect BOL, Conn, BC and other tools when they are installed without SQLENGINE (issue #591).
- Now it can detect Documentation Components correctly after the change in issue #591 (issue #628)
- Fixed bug that prevented Get-DscConfiguration from running without error. The return hash table fails if the $clusteredSqlIpAddress variable is not used. The schema expects a string array but it is initialized as just a null string, causing it to fail on Get-DscConfiguration (issue #393).
- Added localization support for all strings.
- Added a test to test some error handling for cluster installations.
- Added support for MDS feature install (issue #486)
- Fixed localization support for MDS feature (issue #671).
- Changes to xSQLServerRSConfig
- BREAKING CHANGE: Removed
$SQLAdminCredential
parameter. Use common parameterPsDscRunAsCredential
(WMF 5.0+) to run the resource under different credentials.PsDscRunAsCredential
Windows account must be a sysadmin on SQL Server (issue #568). - In addition, the resource no longer uses
Invoke-Command
cmdlet that was used to impersonate the Windows user specified by$SQLAdminCredential
. The call also needed CredSSP authentication to be enabled and configured on the target node, which complicated deployments in non-domain scenarios. UsingPsDscRunAsCredential
solves this problems for us. - Fixed virtual directory creation for SQL Server 2016 (issue #569).
- Added unit tests (issue #295).
- BREAKING CHANGE: Removed
- Changes to xSQLServerDatabase
- Changed the readme, SQLInstance should have been SQLInstanceName.
- Changes to xSQLServerScript
- Fixed bug with schema and variable mismatch for the Credential/Username parameter in the return statement (issue #661).
- Optional QueryTimeout parameter to specify sql script query execution timeout. Fixes issue #597
- Changes to xSQLServerAlwaysOnService
- Fixed typos in localization strings and in tests.
- Changes to xSQLServerAlwaysOnAvailabilityGroup
- Now it utilize the value of 'FailoverMode' to set the 'FailoverMode' property of the Availability Group instead of wrongly using the 'AvailabilityMode' property of the Availability Group.
7.1.0.0
- Changes to xSQLServerMemory
- Changed the way SQLServer parameter is passed from Test-TargetResource to Get-TargetResource so that the default value isn't lost (issue #576).
- Added condition to unit tests for when no SQLServer parameter is set.
- Changes to xSQLServerMaxDop
- Changed the way SQLServer parameter is passed from Test-TargetResource to Get-TargetResource so that the default value isn't lost (issue #576).
- Added condition to unit tests for when no SQLServer parameter is set.
- Changes to xWaitForAvailabilityGroup
- Updated README.md with a description for the resources and revised the parameter descriptions.
- The default value for RetryIntervalSec is now 20 seconds and the default value for RetryCount is now 30 times (issue #505).
- Cleaned up code and fixed PSSA rules warnings (issue #268).
- Added unit tests (issue #297).
- Added descriptive text to README.md that the account that runs the resource must have permission to run the cmdlet Get-ClusterGroup (issue #307).
- Added read-only parameter GroupExist which will return $true if the cluster role/group exist, otherwise it returns $false (issue #510).
- Added examples.
- Changes to xSQLServerPermission
- Cleaned up code, removed SupportsShouldProcess and fixed PSSA rules warnings (issue #241 and issue #262).
- It is now possible to add permissions to two or more logins on the same instance (issue #526).
- The parameter NodeName is no longer mandatory and has now the default value of $env:COMPUTERNAME.
- The parameter Ensure now has a default value of 'Present'.
- Updated README.md with a description for the resources and revised the parameter descriptions.
- Removed dependency of SQLPS provider (issue #482).
- Added ConnectSql permission. Now that permission can also be granted or revoked.
- Updated note in resource description to also mention ConnectSql permission.
- Changes to xSQLServerHelper module
- Removed helper function Get-SQLPSInstance and Get-SQLPSInstanceName because there is no resource using it any longer.
- Added four new helper functions.
- Register-SqlSmo, Register-SqlWmiManagement and Unregister-SqlAssemblies to handle the creation on the application domain and loading and unloading of the SMO and SqlWmiManagement assemblies.
- Get-SqlInstanceMajorVersion to get the major SQL version for a specific instance.
- Fixed typos in comment-based help
- Changes to xSQLServer
- Fixed typos in markdown files; CHANGELOG, CONTRIBUTING, README and ISSUE_TEMPLATE.
- Fixed typos in schema.mof files (and README.md).
- Updated some parameter description in schema.mof files on those that was found was not equal to README.md.
- Changes to xSQLServerAlwaysOnService
- Get-TargetResource should no longer fail silently with error 'Index operation failed; the array index evaluated to null.' (issue #519). Now if the Server.IsHadrEnabled property return neither $true or $false the Get-TargetResource function will throw an error.
- Changes to xSQLServerSetUp
- Updated xSQLServerSetup Module Get-Resource method to fix (issue #516 and #490).
- Added change to detect DQ, DQC, BOL, SDK features. Now the function Test-TargetResource returns true after calling set for DQ, DQC, BOL, SDK features (issue #516 and #490).
- Changes to xSQLServerAlwaysOnAvailabilityGroup
- Updated to return the exception raised when an error is thrown.
- Changes to xSQLServerAlwaysOnAvailabilityGroupReplica
- Updated to return the exception raised when an error is thrown.
- Updated parameter description for parameter Name, so that it says it must be in the format SQLServer\InstanceName for named instance (issue #548).
- Changes to xSQLServerLogin
- Added an optional boolean parameter Disabled. It can be used to enable/disable existing logins or create disabled logins (new logins are created as enabled by default).
- Changes to xSQLServerDatabaseRole
- Updated variable passed to Microsoft.SqlServer.Management.Smo.User constructor to fix issue #530
- Changes to xSQLServerNetwork
- Added optional parameter SQLServer with default value of $env:COMPUTERNAME (issue #528).
- Added optional parameter RestartTimeout with default value of 120 seconds.
- Now the resource supports restarting a sql server in a cluster (issue #527 and issue #455).
- Now the resource allows to set the parameter TcpDynamicPorts to a blank value (partly fixes issue #534). Setting a blank value for parameter TcpDynamicPorts together with a value for parameter TcpPort means that static port will be used.
- Now the resource will not call Alter() in the Set-TargetResource when there is no change necessary (issue #537).
- Updated example 1-EnableTcpIpOnCustomStaticPort.
- Added unit tests (issue #294).
- Refactored some of the code, cleaned up the rest and fixed PSSA rules warnings (issue #261).
- If parameter TcpDynamicPort is set to '0' at the same time as TcpPort is set the resource will now throw an error (issue #535).
- Added examples (issue #536).
- When TcpDynamicPorts is set to '0' the Test-TargetResource function will no longer fail each time (issue #564).
- Changes to xSQLServerRSConfig
- Replaced sqlcmd.exe usages with Invoke-Sqlcmd calls (issue #567).
- Changes to xSQLServerDatabasePermission
- Fixed code style, updated README.md and removed *-SqlDatabasePermission functions from xSQLServerHelper.psm1.
- Added the option 'GrantWithGrant' with gives the user grant rights, together with the ability to grant others the same right.
- Now the resource can revoke permission correctly (issue #454). When revoking 'GrantWithGrant', both the grantee and all the other users the grantee has granted the same permission to, will also get their permission revoked.
- Updated tests to cover Revoke().
- Changes to xSQLServerHelper
- The missing helper function ('Test-SPDSCObjectHasProperty'), that was referenced in the helper function Test-SQLDscParameterState, is now incorporated into Test-SQLDscParameterState (issue #589).
7.0.0.0
- Examples
- xSQLServerDatabaseRole
- 1-AddDatabaseRole.ps1
- 2-RemoveDatabaseRole.ps1
- xSQLServerRole
- 3-AddMembersToServerRole.ps1
- 4-MembersToIncludeInServerRole.ps1
- 5-MembersToExcludeInServerRole.ps1
- xSQLServerSetup
- 1-InstallDefaultInstanceSingleServer.ps1
- 2-InstallNamedInstanceSingleServer.ps1
- 3-InstallNamedInstanceSingleServerFromUncPathUsingSourceCredential.ps1
- 4-InstallNamedInstanceInFailoverClusterFirstNode.ps1
- 5-InstallNamedInstanceInFailoverClusterSecondNode.ps1
- xSQLServerReplication
- 1-ConfigureInstanceAsDistributor.ps1
- 2-ConfigureInstanceAsPublisher.ps1
- xSQLServerNetwork
- 1-EnableTcpIpOnCustomStaticPort.ps1
- xSQLServerAvailabilityGroupListener
- 1-AddAvailabilityGroupListenerWithSameNameAsVCO.ps1
- 2-AddAvailabilityGroupListenerWithDifferentNameAsVCO.ps1
- 3-RemoveAvailabilityGroupListenerWithSameNameAsVCO.ps1
- 4-RemoveAvailabilityGroupListenerWithDifferentNameAsVCO.ps1
- 5-AddAvailabilityGroupListenerUsingDHCPWithDefaultServerSubnet.ps1
- 6-AddAvailabilityGroupListenerUsingDHCPWithSpecificSubnet.ps1
- xSQLServerEndpointPermission
- 1-AddConnectPermission.ps1
- 2-RemoveConnectPermission.ps1
- 3-AddConnectPermissionToAlwaysOnPrimaryAndSecondaryReplicaEachWithDifferentSqlServiceAccounts.ps1
- 4-RemoveConnectPermissionToAlwaysOnPrimaryAndSecondaryReplicaEachWithDifferentSqlServiceAccounts.ps1
- xSQLServerPermission
- 1-AddServerPermissionForLogin.ps1
- 2-RemoveServerPermissionForLogin.ps1
- xSQLServerEndpointState
- 1-MakeSureEndpointIsStarted.ps1
- 2-MakeSureEndpointIsStopped.ps1
- xSQLServerConfiguration
- 1-ConfigureTwoInstancesOnTheSameServerToEnableClr.ps1
- 2-ConfigureInstanceToEnablePriorityBoost.ps1
- xSQLServerEndpoint
- 1-CreateEndpointWithDefaultValues.ps1
- 2-CreateEndpointWithSpecificPortAndIPAddress.ps1
- 3-RemoveEndpoint.ps1
- xSQLServerDatabaseRole
- Changes to xSQLServerDatabaseRole
- Fixed code style, added updated parameter descriptions to schema.mof and README.md.
- Changes to xSQLServer
- Raised the CodeCov target to 70% which is the minimum and required target for HQRM resource.
- Changes to xSQLServerRole
- BREAKING CHANGE: The resource has been reworked in it's entirely. Below
is what has changed.
- The mandatory parameters now also include ServerRoleName.
- The ServerRole parameter was before an array of server roles, now this parameter
is renamed to ServerRoleName and can only be set to one server role.
- ServerRoleName are no longer limited to built-in server roles. To add members to a built-in server role, set ServerRoleName to the name of the built-in server role.
- The ServerRoleName will be created when Ensure is set to 'Present' (if it does not already exist), or removed if Ensure is set to 'Absent'.
- Three new parameters are added; Members, MembersToInclude and MembersToExclude.
- Members can be set to one or more logins, and those will replace all the memberships in the server role.
- MembersToInclude and MembersToExclude can be set to one or more logins that will add or remove memberships, respectively, in the server role. MembersToInclude and MembersToExclude can not be used at the same time as parameter Members. But both MembersToInclude and MembersToExclude can be used together at the same time.
- BREAKING CHANGE: The resource has been reworked in it's entirely. Below
is what has changed.
- Changes to xSQLServerSetup
- Added a note to the README.md saying that it is not possible to add or remove features from a SQL Server failover cluster (issue #433).
- Changed so that it reports false if the desired state is not correct (issue #432).
- Added a test to make sure we always return false if a SQL Server failover cluster is missing features.
- Helper function Connect-SQLAnalysis
- Now has correct error handling, and throw does not used the unknown named parameter '-Message' (issue #436)
- Added tests for Connect-SQLAnalysis
- Changed to localized error messages.
- Minor changes to error handling.
- This adds better support for Addnode (issue #369).
- Now it skips cluster validation för add node (issue #442).
- Now it ignores parameters that are not allowed for action Addnode (issue #441).
- Added support for vNext CTP 1.4 (issue #472).
- Added new resource
- xSQLServerAlwaysOnAvailabilityGroupReplica
- Changes to xSQLServerDatabaseRecoveryModel
- Fixed code style, removed SQLServerDatabaseRecoveryModel functions from xSQLServerHelper.
- Changes to xSQLServerAlwaysOnAvailabilityGroup
- Fixed the permissions check loop so that it exits the loop after the function determines the required permissions are in place.
- Changes to xSQLServerAvailabilityGroupListener
- Removed the dependency of SQLPS provider (issue #460).
- Cleaned up code.
- Added test for more coverage.
- Fixed PSSA rule warnings (issue #255).
- Parameter Ensure now defaults to 'Present' (issue #450).
- Changes to xSQLServerFirewall
- Now it will correctly create rules when the resource is used for two or more instances on the same server (issue #461).
- Changes to xSQLServerEndpointPermission
- Added description to the README.md
- Cleaned up code (issue #257 and issue #231)
- Now the default value for Ensure is 'Present'.
- Removed dependency of SQLPS provider (issue #483).
- Refactored tests so they use less code.
- Changes to README.md
- Adding deprecated tag to xSQLServerFailoverClusterSetup, xSQLAOGroupEnsure and xSQLAOGroupJoin in README.md so it it more clear that these resources has been replaced by xSQLServerSetup, xSQLServerAlwaysOnAvailabilityGroup and xSQLServerAlwaysOnAvailabilityGroupReplica respectively.
- Changes to xSQLServerEndpoint
- BREAKING CHANGE: Now SQLInstanceName is mandatory, and is a key, so SQLInstanceName has no longer a default value (issue #279).
- BREAKING CHANGE: Parameter AuthorizedUser has been removed (issue #466, issue #275 and issue #80). Connect permissions can be set using the resource xSQLServerEndpointPermission.
- Optional parameter IpAddress has been added. Default is to listen on any valid IP-address. (issue #232)
- Parameter Port now has a default value of 5022.
- Parameter Ensure now defaults to 'Present'.
- Resource now supports changing IP address and changing port.
- Added unit tests (issue #289)
- Added examples.
- Changes to xSQLServerEndpointState
- Cleaned up code, removed SupportsShouldProcess and fixed PSSA rules warnings (issue #258 and issue #230).
- Now the default value for the parameter State is 'Started'.
- Updated README.md with a description for the resources and revised the parameter descriptions.
- Removed dependency of SQLPS provider (issue #481).
- The parameter NodeName is no longer mandatory and has now the default value of $env:COMPUTERNAME.
- The parameter Name is now a key so it is now possible to change the state on more than one endpoint on the same instance. Note: The resource still only supports Database Mirror endpoints at this time.
- Changes to xSQLServerHelper module
- Removing helper function Get-SQLAlwaysOnEndpoint because there is no resource using it any longer.
- BREAKING CHANGE: Changed helper function Import-SQLPSModule to support SqlServer module (issue #91). The SqlServer module is the preferred module so if it is found it will be used, and if not found an attempt will be done to load SQLPS module instead.
- Changes to xSQLServerScript
- Updated tests for this resource, because they failed when Import-SQLPSModule was updated.
6.0.0.0
- Changes to xSQLServerConfiguration
- BREAKING CHANGE: The parameter SQLInstanceName is now mandatory.
- Resource can now be used to define the configuration of two or more different DB instances on the same server.
- Changes to xSQLServerRole
- xSQLServerRole now correctly reports that the desired state is present when the login is already a member of the server roles.
- Added new resources
- xSQLServerAlwaysOnAvailabilityGroup
- Changes to xSQLServerSetup
- Properly checks for use of SQLSysAdminAccounts parameter in $PSBoundParameters. The test now also properly evaluates the setup argument for SQLSysAdminAccounts.
- xSQLServerSetup should now function correctly for the InstallFailoverCluster action, and also supports cluster shared volumes. Note that the AddNode action is not currently working.
- It now detects that feature Client Connectivity Tools (CONN) and Client Connectivity Backwards Compatibility Tools (BC) is installed.
- Now it can correctly determine the right cluster when only parameter InstallSQLDataDir is assigned a path (issue #401).
- Now the only mandatory path parameter is InstallSQLDataDir when installing Database Engine (issue #400).
- It now can handle mandatory parameters, and are not using wildcard to find the variables containing paths (issue #394).
- Changed so that instead of connection to localhost it is using $env:COMPUTERNAME as the host name to which it connects. And for cluster installation it uses the parameter FailoverClusterNetworkName as the host name to which it connects (issue #407).
- When called with Action = 'PrepareFailoverCluster', the SQLSysAdminAccounts and FailoverClusterGroup parameters are no longer passed to the setup process (issues #410 and 411).
- Solved the problem that InstanceDir and InstallSQLDataDir could not be set to just a qualifier, i.e 'E:' (issue #418). All paths (except SourcePath) can now be set to just the qualifier.
- Enables CodeCov.io code coverage reporting.
- Added badge for CodeCov.io to README.md.
- Examples
- xSQLServerMaxDop
- 1-SetMaxDopToOne.ps1
- 2-SetMaxDopToAuto.ps1
- 3-SetMaxDopToDefault.ps1
- xSQLServerMemory
- 1-SetMaxMemoryTo12GB.ps1
- 2-SetMaxMemoryToAuto.ps1
- 3-SetMinMaxMemoryToAuto.ps1
- 4-SetMaxMemoryToDefault.ps1
- xSQLServerDatabase
- 1-CreateDatabase.ps1
- 2-DeleteDatabase.ps1
- xSQLServerMaxDop
- Added tests for resources
- xSQLServerMaxDop
- xSQLServerMemory
- Changes to xSQLServerMemory
- BREAKING CHANGE: The mandatory parameter now include SQLInstanceName. The DynamicAlloc parameter is no longer mandatory
- Changes to xSQLServerDatabase
- When the system is not in desired state the Test-TargetResource will now output verbose messages saying so.
- Changes to xSQLServerDatabaseOwner
- Fixed code style, added updated parameter descriptions to schema.mof and README.md.
5.0.0.0
- Improvements how tests are initiated in AppVeyor
- Removed previous workaround (issue #201) from unit tests.
- Changes in appveyor.yml so that SQL modules are removed before common test is run.
- Now the deploy step are no longer failing when merging code into Dev. Neither is the deploy step failing if a contributor had AppVeyor connected to the fork of xSQLServer and pushing code to the fork.
- Changes to README.md
- Changed the contributing section to help new contributors.
- Added links for each resource so it is easier to navigate to the parameter list for each resource.
- Moved the list of resources in alphabetical order.
- Moved each resource parameter list into alphabetical order.
- Removed old text mentioning System Center.
- Now the correct product name is written in the installation section, and a typo was also fixed.
- Fixed a typo in the Requirements section.
- Added link to Examples folder in the Examples section.
- Change the layout of the README.md to closer match the one of PSDscResources
- Added more detailed text explaining what operating systems WMF5.0 can be installed on.
- Verified all resource schema files with the README.md and fixed some errors (descriptions was not verified).
- Added security requirements section for resource xSQLServerEndpoint and xSQLAOGroupEnsure.
- Changes to xSQLServerSetup
- The resource no longer uses Win32_Product WMI class when evaluating if SQL Server Management Studio is installed. See article kb974524 for more information.
- Now it uses CIM cmdlets to get information from WMI classes.
- Resolved all of the PSScriptAnalyzer warnings that was triggered in the common tests.
- Improvement for service accounts to enable support for Managed Service Accounts as well as other nt authority accounts
- Changes to the helper function Copy-ItemWithRoboCopy
- Robocopy is now started using Start-Process and the error handling has been improved.
- Robocopy now removes files at the destination path if they no longer exists at the source.
- Robocopy copies using unbuffered I/O when available (recommended for large files).
- Added a more descriptive text for the parameter
SourceCredential
to further explain how the parameter work. - BREAKING CHANGE: Removed parameter SourceFolder.
- BREAKING CHANGE: Removed default value "$PSScriptRoot....\" from parameter SourcePath.
- Old code, that no longer filled any function, has been replaced.
- Function
ResolvePath
has been replaced with[Environment]::ExpandEnvironmentVariables($SourcePath)
so that environment variables still can be used in Source Path. - Function
NetUse
has been replaced withNew-SmbMapping
andRemove-SmbMapping
.
- Function
- Renamed function
GetSQLVersion
toGet-SqlMajorVersion
. - BREAKING CHANGE: Renamed parameter PID to ProductKey to avoid collision with automatic variable $PID
- Changes to xSQLServerScript
- All credential parameters now also has the type [System.Management.Automation.Credential()] to better work with PowerShell 4.0.
- It is now possible to configure two instances on the same node, with the same script.
- Added to the description text for the parameter
Credential
describing how to authenticate using Windows Authentication. - Added examples to show how to authenticate using either SQL or Windows authentication.
- A recent issue showed that there is a known problem running this resource using PowerShell 4.0. For more information, see issue #273
- Changes to xSQLServerFirewall
- BREAKING CHANGE: Removed parameter SourceFolder.
- BREAKING CHANGE: Removed default value "$PSScriptRoot....\" from parameter SourcePath.
- Old code, that no longer filled any function, has been replaced.
- Function
ResolvePath
has been replaced with[Environment]::ExpandEnvironmentVariables($SourcePath)
so that environment variables still can be used in Source Path.
- Function
- Adding new optional parameter SourceCredential that can be used to authenticate against SourcePath.
- Solved PSSA rules errors in the code.
- Get-TargetResource no longer return $true when no products was installed.
- Changes to the unit test for resource
- xSQLServerSetup
- Added test coverage for helper function Copy-ItemWithRoboCopy
- xSQLServerSetup
- Changes to xSQLServerLogin
- Removed ShouldProcess statements
- Added the ability to enforce password policies on SQL logins
- Added common test (xSQLServerCommon.Tests) for xSQLServer module
- Now all markdown files will be style checked when tests are running in AppVeyor after sending in a pull request.
- Now all Examples will be tested by compiling to a .mof file after sending in a pull request.
- Changes to xSQLServerDatabaseOwner
- The example 'SetDatabaseOwner' can now compile, it wrongly had a
DependsOn
in the example.
- The example 'SetDatabaseOwner' can now compile, it wrongly had a
- Changes to SQLServerRole
- The examples 'AddServerRole' and 'RemoveServerRole' can now compile, it wrongly
had a
DependsOn
in the example.
- The examples 'AddServerRole' and 'RemoveServerRole' can now compile, it wrongly
had a
- Changes to CONTRIBUTING.md
- Added section 'Tests for examples files'
- Added section 'Tests for style check of Markdown files'
- Added section 'Documentation with Markdown'
- Added texts to section 'Tests'
- Changes to xSQLServerHelper
- added functions
- Get-SqlDatabaseRecoveryModel
- Set-SqlDatabaseRecoveryModel
- added functions
- Examples
- xSQLServerDatabaseRecoveryModel
- 1-SetDatabaseRecoveryModel.ps1
- xSQLServerDatabasePermission
- 1-GrantDatabasePermissions.ps1
- 2-RevokeDatabasePermissions.ps1
- 3-DenyDatabasePermissions.ps1
- xSQLServerFirewall
- 1-CreateInboundFirewallRules
- 2-RemoveInboundFirewallRules
- xSQLServerDatabaseRecoveryModel
- Added tests for resources
- xSQLServerDatabaseRecoveryModel
- xSQLServerDatabasePermissions
- xSQLServerFirewall
- Changes to xSQLServerDatabaseRecoveryModel
- BREAKING CHANGE: Renamed xSQLDatabaseRecoveryModel to xSQLServerDatabaseRecoveryModel to align with naming convention.
- BREAKING CHANGE: The mandatory parameters now include SQLServer, and SQLInstanceName.
- Changes to xSQLServerDatabasePermission
- BREAKING CHANGE: Renamed xSQLServerDatabasePermissions to xSQLServerDatabasePermission to align with naming convention.
- BREAKING CHANGE: The mandatory parameters now include PermissionState, SQLServer, and SQLInstanceName.
- Added support for clustered installations to xSQLServerSetup
- Migrated relevant code from xSQLServerFailoverClusterSetup
- Removed Get-WmiObject usage
- Clustered storage mapping now supports asymmetric cluster storage
- Added support for multi-subnet clusters
- Added localized error messages for cluster object mapping
- Updated README.md to reflect new parameters
- Updated description for xSQLServerFailoverClusterSetup to indicate it is deprecated.
- xPDT helper module
- Function GetxPDTVariable was removed since it no longer was used by any resources.
- File xPDT.xml was removed since it was not used by any resources, and did not provide any value to the module.
- Changes xSQLServerHelper module
- Removed the globally defined
$VerbosePreference = 'Continue'
from xSQLServerHelper. - Fixed a typo in a variable name in the function New-ListenerADObject.
- Now Restart-SqlService will correctly show the services it restarts. Also fixed PSSA warnings.
- Removed the globally defined
4.0.0.0
- Fixes in xSQLServerConfiguration
- Added support for clustered SQL instances.
- BREAKING CHANGE: Updated parameters to align with other resources (SQLServer / SQLInstanceName).
- Updated code to utilize CIM rather than WMI.
- Added tests for resources
- xSQLServerConfiguration
- xSQLServerSetup
- xSQLServerDatabaseRole
- xSQLAOGroupJoin
- xSQLServerHelper and moved the existing tests for Restart-SqlService to it.
- xSQLServerAlwaysOnService
- Fixes in xSQLAOGroupJoin
- Availability Group name now appears in the error message for a failed. Availability Group join attempt.
- Get-TargetResource now works with Get-DscConfiguration.
- Fixes in xSQLServerRole
- Updated Ensure parameter to 'Present' default value.
- Renamed helper functions -SqlServerRole to -SqlServerRoleMember.
- Changes to xSQLAlias
- Add UseDynamicTcpPort parameter for option "Dynamically determine port".
- Change Get-WmiObject to Get-CimInstance in Resource and associated pester file.
- Added CHANGELOG.md file.
- Added issue template file (ISSUE_TEMPLATE.md) for 'New Issue' and pull request template file (PULL_REQUEST_TEMPLATE.md) for 'New Pull Request'.
- Add Contributing.md file.
- Changes to xSQLServerSetup
- Now
Features
parameter is case-insensitive.
- Now
- BREAKING CHANGE: Removed xSQLServerPowerPlan from this module. The resource has been moved to xComputerManagement and is now called xPowerPlan.
- Changes and enhancements in xSQLServerDatabaseRole
- BREAKING CHANGE: Fixed so the same user can now be added to a role in one or
more databases, and/or one or more instances. Now the parameters
SQLServer
andSQLInstanceName
are mandatory. - Enhanced so the same user can now be added to more than one role
- BREAKING CHANGE: Fixed so the same user can now be added to a role in one or
more databases, and/or one or more instances. Now the parameters
- BREAKING CHANGE: Renamed xSQLAlias to xSQLServerAlias to align with naming convention.
- Changes to xSQLServerAlwaysOnService
- Added RestartTimeout parameter
- Fixed bug where the SQL Agent service did not get restarted after the IsHadrEnabled property was set.
- BREAKING CHANGE: The mandatory parameters now include Ensure, SQLServer, and SQLInstanceName. SQLServer and SQLInstanceName are keys which will be used to uniquely identify the resource which allows AlwaysOn to be enabled on multiple instances on the same machine.
- Moved Restart-SqlService from MSFT_xSQLServerConfiguration.psm1 to xSQLServerHelper.psm1.
3.0.0.0
- xSQLServerHelper
- added functions
- Test-SQLDscParameterState
- Get-SqlDatabaseOwner
- Set-SqlDatabaseOwner
- added functions
- Examples
- xSQLServerDatabaseOwner
- 1-SetDatabaseOwner.ps1
- xSQLServerDatabaseOwner
- Added tests for resources
- MSFT_xSQLServerDatabaseOwner
2.0.0.0
- Added resources
- xSQLServerReplication
- xSQLServerScript
- xSQLAlias
- xSQLServerRole
- Added tests for resources
- xSQLServerPermission
- xSQLServerEndpointState
- xSQLServerEndpointPermission
- xSQLServerAvailabilityGroupListener
- xSQLServerLogin
- xSQLAOGroupEnsure
- xSQLAlias
- xSQLServerRole
- Fixes in xSQLServerAvailabilityGroupListener
- In one case the Get-method did not report that DHCP was configured.
- Now the resource will throw 'Not supported' when IP is changed between Static and DHCP.
- Fixed an issue where sometimes the listener wasn't removed.
- Fixed the issue when trying to add a static IP to a listener was ignored.
- Fix in xSQLServerDatabase
- Fixed so dropping a database no longer throws an error
- BREAKING CHANGE: Fixed an issue where it was not possible to add the same database to two instances on the same server.
- BREAKING CHANGE: The name of the parameter Database has changed. It is now called Name.
- Fixes in xSQLAOGroupEnsure
- Added parameters to New-ListenerADObject to allow usage of a named instance.
- pass setup credential correctly
- Changes to xSQLServerLogin
- Fixed an issue when dropping logins.
- BREAKING CHANGE: Fixed an issue where it was not possible to add the same login to two instances on the same server.
- Changes to xSQLServerMaxDop
- BREAKING CHANGE: Made SQLInstance parameter a key so that multiple instances on the same server can be configured
1.8.0.0
- Converted appveyor.yml to install Pester from PSGallery instead of from Chocolatey.
- Added Support for SQL Server 2016
- xSQLAOGroupEnsure
- Fixed spelling mistake in AutoBackupPreference property
- Added BackupPriority property
- Added resources
- xSQLServerPermission
- xSQLServerEndpointState
- xSQLServerEndpointPermission
- xSQLServerAvailabilityGroupListener
- xSQLServerHelper
- added functions
- Import-SQLPSModule
- Get-SQLPSInstanceName
- Get-SQLPSInstance
- Get-SQLAlwaysOnEndpoint
- modified functions
- New-TerminatingError - added optional parameter
InnerException
to be able to give the user more information in the returned message
- New-TerminatingError - added optional parameter
- added functions
1.7.0.0
- Resources Added
- xSQLServerConfiguration
1.6.0.0
- Resources Added
- xSQLAOGroupEnsure
- xSQLAOGroupJoin
- xWaitForAvailabilityGroup
- xSQLServerEndPoint
- xSQLServerAlwaysOnService
- xSQLServerHelper
- added functions
- Connect-SQL
- New-VerboseMessage
- Grant-ServerPerms
- Grant-CNOPerms
- New-ListenerADObject
- added functions
- xSQLDatabaseRecoveryModel
- Updated Verbose statements to use new function New-VerboseMessage
- xSQLServerDatabase
- Updated Verbose statements to use new function New-VerboseMessage
- Removed ConnectSQL function and replaced with new Connect-SQL function
- xSQLServerDatabaseOwner
- Removed ConnectSQL function and replaced with new Connect-SQL function
- xSQLServerDatabasePermissions
- Removed ConnectSQL function and replaced with new Connect-SQL function
- xSQLServerDatabaseRole
- Removed ConnectSQL function and replaced with new Connect-SQL function
- xSQLServerLogin
- Removed ConnectSQL function and replaced with new Connect-SQL function
- xSQLServerMaxDop
- Updated Verbose statements to use new function New-VerboseMessage
- Removed ConnectSQL function and replaced with new Connect-SQL function
- xSQLServerMemory
- Updated Verbose statements to use new function New-VerboseMessage
- Removed ConnectSQL function and replaced with new Connect-SQL function
- xSQLServerPowerPlan
- Updated Verbose statements to use new function New-VerboseMessage
- Examples
- Added xSQLServerConfiguration resource example
1.5.0.0
- Added new resource xSQLServerDatabase that allows adding an empty database to a server
1.4.0.0
- Resources Added
- xSQLDatabaseRecoveryModeAdded
- xSQLServerDatabaseOwner
- xSQLServerDatabasePermissions
- xSQLServerDatabaseRole
- xSQLServerLogin
- xSQLServerMaxDop
- xSQLServerMemory
- xSQLServerPowerPlan
- xSQLServerDatabase
- xSQLServerSetup:
- Corrected bug in GetFirstItemPropertyValue to correctly handle registry keys with only one value.
- Added support for SQL Server
- 2008 R2 installation
- Removed default values for parameters, to avoid compatibility issues and setup errors
- Added Replication sub feature detection
- Added setup parameter BrowserSvcStartupType
- Change SourceFolder to Source to allow for multi version Support
- Add Source Credential for accessing source files
- Add Parameters for SQL Server configuration
- Add Parameters to SuppressReboot or ForceReboot
- xSQLServerFirewall
- Removed default values for parameters, to avoid compatibility issues
- Updated firewall rule name to not use 2012 version, since package supports 2008, 2012 and 2014 versions
- Additional of SQLHelper Function and error handling
- Change SourceFolder to Source to allow for multi version Support
- xSQLServerNetwork
- Added new resource that configures network settings.
- Currently supports only tcp network protocol
- Allows to enable and disable network protocol for specified instance service
- Allows to set custom or dynamic port values
- xSQLServerRSSecureConnectionLevel
- Additional of SQLHelper Function and error handling
- xSqlServerRSConfig
- xSQLServerFailoverClusterSetup
- Additional of SQLHelper Function and error handling
- Change SourceFolder to Source to allow for multi version Support
- Add Parameters to SuppressReboot or ForceReboot
- Examples
- Updated example files to use correct DebugMode parameter value ForceModuleImport, this is not boolean in WMF 5.0 RTM
- Added xSQLServerNetwork example
1.3.0.0
- xSqlServerSetup
- Make Features case-insensitive.
1.2.1.0
- Increased timeout for setup process to start to 60 seconds.
1.2.0.0
- Updated release with the following new resources
- xSQLServerFailoverClusterSetup
- xSQLServerRSConfig
1.1.0.0
- Initial release with the following resources
- xSQLServerSetup
- xSQLServerFirewall
- xSQLServerRSSecureConnectionLevel
Dependencies
- puppetlabs/pwshlib (>= 0.9.0 < 2.0.0)