The June release of the DSC Resouce Kit is out!

This release includes 12 updated DSC resource modules and 20 new DSC resources. Since the last release on May 18, there have been 106 merged pull requests and 42 closed issues.

The modules updated in this release are:

SharePointDsc

xActiveDirectory

xCertificate

xComputerManagement

xDFS

xExchange

xFailOverCluster

xNetworking

xPSDesiredStateConfiguration

xSQLServer

xTimeZone

xWebAdministration

We also have our first ever community call for the DSC Resource Kit tomorrow 1-3PM PT! Join us to ask questions and give feedback about your experience with the DSC Resource Kit. You can read more about the call in the blog post here.

For a detailed list of what resources and fixes have been implemented, see the “What Has Recently Been Released?” section below.

We strongly encourage you to update to the newest version of all modules using the PowerShell Gallery, and don’t forget to give us your feedback in the comments below, on GitHub, or on Twitter (@PowerShell_Team)!

Where Can I Find All Released DSC Modules?

To see a list of all released DSC Resource Kit modules, go to the PowerShell Gallery and display all modules tagged as DSCResourceKit. You can also enter a module’s name in the search box in the upper right corner of the PowerShell Gallery to find a specific module.

Another way to find a specific module is to go directly to its URL on GitHub: http://www.powershellgallery.com/packages/< Module_Name > For example: http://www.powershellgallery.com/packages/xWebAdministration

Of course, you can also always use PowerShellGet (available in WMF 5.0) to find modules with DSC Resources:

# To list all modules that are part of the DSC Resource Kit Find-Module -Tag DSCResourceKit # To list all DSC resources from all sources Find-DscResource

How Can I Install DSC Resources From the PowerShell Gallery?

We recommend that you use PowerShellGet to install DSC resource modules:

Install-Module -Name <Module_Name>

For example:

Install-Module -Name xWebAdministration

If you have previous versions of modules installed, you can update them all by opening an elevated PowerShell prompt and using this command:

Update-Module

After installing the modules, you can discover all of the resources available to your local system by running:

Get-DscResource

As with the previous Resource Kits, all the resources are experimental. The “x” prefix in the names stands for experimental – which means these resources are provided AS IS and are not supported through any Microsoft support program or service.

If there is an issue for a module you are particularly concerned about, watch the version number of the module in the PowerShell Gallery for updates. You can also file an issue against the module on GitHub to request a fix.

How Can I Find DSC Modules on GitHub?

We’ve open-sourced the development of DSC resources on GitHub. You can see the most recent state of all resources by going to their GitHub pages at: https://github.com/PowerShell/< Module_Name > For example, for the xCertificate module, go to: https://github.com/PowerShell/xCertificate.

All DSC modules are also listed as submodules of the DscResources repository in the xDscResources folder so that you can see them in one place.

How Can I Contribute?

You are more than welcome to contribute to the development of DSC resource modules. There are several different ways you can help. You can create new DSC resources or modules, add test automation, improve documentation, fix existing issues, or open new ones. Most of the information you need to get started can be found in our contributing guide.

If you would like to help, please take a look at the list of open issues for the DscResources repository. You can also check issues opened for specific modules by going to: https://github.com/PowerShell/< Module_Name >/issues For example: https://github.com/PowerShell/xPSDesiredStateConfiguration/issues

Your help in developing DSC is much appreciated!

What Has Been Recently Released?

You can see a detailed summary of all recent changes in the table below. If you want to see a change log for previous versions, go to the GitHub repository page for a given module (see the “How Can I Find DSC Modules on GitHub?” section above for details).

Module Name Version Release Notes SharePointDsc 1.1.0.0 Added SPBlobCacheSettings, SPOfficeOnlineServerBinding, SPWebAppPermissions, SPServiceAppProxyGroup, SPWebAppProxyGroup and SPUserProfileServiceAppPermissions resources

SPUserProfileSyncService Remove Status field from Get-TargResource: not in MOF, redundant with Ensure

Improvement with SPInstallPrereqs on SPS2013 to accept 2008 R2 or 2012 SQL native client not only 2008 R2

Fixed a bug with SPTimerJobState that prevented a custom schedule being applied to a timer job

Fixed a bug with the detection of group principals vs. user principals in SPServiceAppSecurity and SPWebAppPolicy

Removed redundant value for KB2898850 from SPInstallPrereqs, also fixed old property name for DotNetFX

Fixed a bug with SPAlternateUrl that prevented the test method from returning “true” when a URL was absent if the optional URL property was specified in the config

Fixed bugs in SPAccessServiceApp and SPPerformancePointServiceApp with type names not being identified correctly

Added support for custom database name and server to SPPerformancePointServiceApp

Added solution level property to SPFarmSolution

Fixed a bug with SPSearchServiceApp that prevents the default crawl account from being managed after it is initially set

Removed dependency on Win32_Prouct from SPInstallPrereqs xActiveDirectory 2.12.0.0 xADDomainController: Customer identified two cases of incorrect variables being called in Verbose output messages. Corrected.

xADComputer: New resource added. xCertificate 2.1.0.0 Fixed xCertReq to support CA Root Name with spaces xComputerManagement 1.7.0.0 Added support for enabling or disabling scheduled tasks

The Name parameter resolves to $env:COMPUTERNAME when the value is localhost xDFS 3.1.0.0 MSFT_xDFSNamespaceServerConfiguration- resource added.

Corrected names of DFS Namespace sample files to indicate that they are setting Namespace roots and folders.

Removed Pester version from AppVeyor.yml. xExchange 1.8.0.0 Fixed PSSA issues in: MSFT_xExchClientAccessServer MSFT_xExchAntiMalwareScanning MSFT_xExchWaitForMailboxDatabase MSFT_xExchWebServicesVirtualDirectory MSFT_xExchExchangeCertificate MSFT_xExchWaitForDAG MSFT_xExchUMService MSFT_xExchUMCallRouterSettings MSFT_xExchReceiveConnector MSFT_xExchPowershellVirtualDirectory MSFT_xExchPopSettings MSFT_xExchOwaVirtualDirectory MSFT_xExchOutlookAnywhere MSFT_xExchOabVirtualDirectory MSFT_xExchMapiVirtualDirectory MSFT_xExchMailboxServer MSFT_xExchImapSettings MSFT_xExchExchangeServer MSFT_xExchEventLogLevel MSFT_xExchEcpVirtualDirectory MSFT_xExchDatabaseAvailabilityGroupNetwork MSFT_xExchDatabaseAvailabilityGroupMember MSFT_xExchDatabaseAvailabilityGroup

xFailOverCluster 1.4.0.0 xClusterDisk: Fixed Test-TargetResource logic xPSDesiredStateConfiguration 3.11.0.0 xRemoteFile: Added parameters: TimeoutSec Proxy ProxyCredential Added unit tests. Corrected Style Guidelines issues. Added Localization support. URI parameter supports File://. Get-TargetResource returns URI parameter. Fixed logging of error message reported when download fails. Added new example Sample_xRemoteFileUsingProxy.ps1.

Examples: Fixed missing newline at end of PullServerSetupTests.ps1.

xFileUpload: Added PSSA rule suppression attribute.

xPackageResource: Removed hardcoded ComputerName “localhost” parameter from Get-WMIObject to eliminate PSSA rule violation. The parameter is not required.

Added .gitignore to prevent DSCResource.Tests from being commited to repo.

Updated AppVeyor.yml to use WMF 5 build OS so that latest test methods work.

Updated xWebService resource to not deploy Devices.mdb if esent provider is used

Fixed $script:netsh parameter initialization in xWebService resource that was causing CIM exception when EnableFirewall flag was specified.

xService: Fixed a bug where, despite no state specified in the config, the resource test returns false if the service is not running Fixed bug in which Automatice StartupType did not match the “Auto” StartMode in Test-TargetResource.

xPackage: Fixes bug where CreateCheckRegValue was not being removed when uninstalling packages

Replaced New-NetFirewallRule cmdlets with netsh as this cmdlet is not available by default on some downlevel OS such as Windows 2012 R2 Core.

Added the xEnvironment resource

Added the xWindowsFeature resource

Added the xScript resource

Added the xUser resource

Added the xGroupSet resource

Added the xProcessSet resource

Added the xServiceSet resource

Added the xWindowsFeatureSet resource

Added the xWindowsOptionalFeatureSet resource

Merged the in-box Service resource with xService and added tests for xService

Merged the in-box Archive resource with xArchive and added tests for xArchive

Merged the in-box Group resource with xGroup and added tests for xGroup xNetworking 2.10.0.0 Added the following resources: MSFT_xNetAdapterBinding resource to enable/disable network adapter bindings.

Updated Sample_xIPAddress_*.ps1 examples to show correct usage of setting a Static IP address to prevent issue when DHCP assigned IP address already matches staticly assigned IP address. xSQLServer 1.7.0.0 Resources Added xSQLServerConfiguration

xTimeZone 1.5.0.0 Fixed localization problem with DSC configuration Test/Get xWebAdministration 1.12.0.0 xWebAppPool updates: Replaced 3 calls to Invoke-Expression with a call to a new helper function – Get-Property

updates: xWebsite updates: Bugfix for #131 The site name should be passed in as argument for Test-AuthenticationInfo Improved BindingInfo validation: the HostName property is required for use with Server Name Indication (i.e., when the SslFlags property is set to 1 or 3 ).

updates: Adding conditional logic to install the test helper module from the gallery if the user downloaded the module from the gallery.

Added xSSLSettings integration tests

integration tests Added fixes to xSSLSettings . Corrected spelling and formatting in base resource and tests. Added misc comments. Added ValidateSet to bindings param.

. Corrected spelling and formatting in base resource and tests. Added misc comments. Added ValidateSet to bindings param. Added xIISLogging resource which supports for the following options: LogPath LogFlags LogPeriod LogTruncateSize LoglocalTimeRollover LogFormat

resource which supports for the following options: Added IIS Logging to xWebsite which support for the following options: LogPath LogFlags LogPeriod LogTruncateSize LoglocalTimeRollover LogFormat

which support for the following options: Added xWebApplication integration tests

integration tests Added fixes to xWebApplication. Formatted resources to DSC StyleGuideLines, fixed logging statements, fixed incorrect Get-TargetResource param block, fixed Test-SslFlags validation, fixed unit test mocking of Test-SslFlags, added Ssl128 option to SslFlags

If you’re looking into using PowerShell DSC, have questions or issues with a current resource, or would like a new resource, let us know in the comments below, on Twitter (@PowerShell_Team), or by creating an issue on GitHub.

Katie Keim Software Engineer PowerShell Team @katiedsc (Twitter) @kwirkykat (GitHub)