DSC Resource Kit Wave 6 Is Here

DSC Resource Kit Wave 6 Is Here

Rate This
  • Comments 7

The DSC Resource Kit Wave 6 Is Available

The DSC Resource Kit Wave 6 has been released!

This wave contains 5 new DSC Resources, taking us up over 80 resources between the Resource Kit and what is shipping in Windows 8.1/Server 2012 R2.

In addition to these resources we are rolling out today, you may have noticed that the SafeHarbor example was posted after the last Reskit was released. Rather than wait for Reskit Wave 6, we posted SafeHarbor early. We will do this from time to time, but you can count on these monthly Reskit announcements to roll up what has changed.

In addition to the new resources, we have also made some updates to existing resources based on feedback we have received. As a result, we have updated several of the modules, all of which will show up using the link above. Here's
a link to the items updated 
in DSC Resource Kit Wave 6. You can also find them by using PowerShellGet.

Questions, Comments?

If you're looking into using PowerShell DSC, but are blocked by a lack of resources, let us know in the comments or the TechNet QA Section.

What's in this Wave?

This wave has added the following:

  • xRemoteDesktopAdmin configures Remote Desktop settings and configures the Windows firewall to support Remote Desktop
  • xAzureSqlDatabaseServerFirewallRule was added to the xAzure module, and creates Azure SQL Database Server Firewall Rules.
  • xFireFox and xChrome enable deploying those browsers to a Windows system.
  • xGroup has been added to xPsDesiredStateConfiguration, enhancing the in-box Group resource with support for cross-domain account lookup and UPN-formatted names.

As always, we must reiterate that these resources come without any guarantees.  The “x” prefix stands for experimental – which means these resources are provided AS IS and are not supported through any Microsoft support program or service. We will monitor the TechNet pages, take feedback, and may provide fixes moving forward.  Also, don’t forget to check out the community versions of many resources on PowerShell.Org's GitHub.

Details

After installing the modules, you can discover all of the resources available by using the Get-DSCResource cmdlet.  Here is a brief description of each resource (for more details on a resource, check out the TechNet pages). 

Module

Resource(s) 

Description 

xSafeHarbor

(none)

This is a sample configuration demonstrating how to set up a secure environment to run a particular application or service.

Note - some updates & bug fixes have been made since the original release.

xAzure

xAzureSqlDatabaseServerFirewallRule

Configures Azure SQL Database Server Firewall Rules.

xRemoteDesktopAdmin

xRemoteDesktopAdmin

This resource configures Remote Desktop settings and configures the Windows firewall to support Remote Desktop

xPsDesiredStateConfiguration

xGroup

Extends the in-box Group resource with support for cross-domain account lookup and UPN-formatted names used for identifying users, computers, and group domain-based accounts.

xChrome

xChrome

Deploys the Chrome browser

xFirefox

xFirefox

Deploys the Firefox browser

Updates

xAzureSqlDatabase

xPsDesiredStateConfiguration

xWaitForAdDomain

xSqlServerInstall

xFirewall

Bug fixes have been made to improve each of these items. Please see the individual topics for details.

 

Renaming Guidelines

When making changes to these resources, we urge the following practice:

  1. Update the following names by replacing MSFT with your company/community name and replacing the “x” with "c" (short for "Community") or another prefix of your choice:
    1. Module name (ex: xWebAdministration becomes cWebAdministration)
    2. Folder name (ex: MSFT_xWebsite becomes Contoso_cWebsite)
    3. Resource Name (ex: MSFT_xWebsite becomes Contoso_cWebsite)
    4. Resource Friendly Name (ex: xWebsite becomes cWebsite)
    5. MOF class name (ex: MSFT_xWebsite becomes Contoso_cWebsite)
    6. Filename for the <resource>.schema.mof (ex: MSFT_xWebsite.schema.mof becomes Contoso_cWebsite.schema.mof)
  2. Update module and metadata information in the module manifest
  3. Update any configuration that use these resources

 

We reserve resource and module names without prefixes ("x" or "c") for future use (e.g. "MSFT_WebAdministration" or "Website").  If the next version of Windows Server ships with a "Website" resource, we don't want to break any configurations that use any community modifications.  Please keep a prefix such as "c" on all community modifications. 

As specified in the license, you may copy or modify this resource as long as they are used on the Windows Platform.

 

Requirements

Note: The DSC Resource Kit requires at least Windows 8.1 or Windows Server 2012 R2 with update KB2883200 (aka the GA Update Rollup). You can check whether it is installed by running the following command:

PS C:\WINDOWS\system32> Get-HotFix -Id KB2883200

Source       Description      HotFixID     InstalledBy         InstalledOn             

------        -----------      --------     -----------         -----------             

MyMachine   Update          KB2883200     MyMachine\Admini... 9/30/2013 12:00:00AM   

For most modules, you can use them on supported down-level versions of Windows by installing WMF 4.0. Refer to these previous blog posts for more information on WMF 4.0 and issues with partial installation.

A few modules will require the use of WMF 5.0. You can confirm the requirements for each module on the individual blog topics that provide the details for the module.

 

Leave a Comment
  • Please add 2 and 1 and type the answer here:
  • Post
  • This is awesome - and very quick to market. Thanks!

    BTW: Where is the team announcement regarding the latest drop of V5. As utterly awesome as it is, I'd very surprised you guys haven't been crowing from the roof tops (well - at least a blog post to say it's there)!

  • Dear PowerShell Team,

    An interesting questions thread regarding the renaming guidelines and giving credit for community modifications of experimental DSC resources has been posted yesterday in the PowerShell.org DSC forum.

    powershell.org/.../custom-resource-custom-module

    I would like to ask if the PowerShell team would be so kind to provide an answer either on the forum post or as separate post on this blog.

    I think a definitive answer to this would be appreciated by many enthusiast looking into improving the DSC resources or adding new ones to the existing modules including myself.

    Thanks in advance

    Daniel

  • The xAzureStorage and xAzureVM modules are not considering China Azure (mooncake) situation and I found there are hard-coded strong like -MediaLocation "http://$StorageAccountName.blob.core.windows.net/vhds/$Name.vhd" in the script. just want to know how can I submit feedback or bugs for the Resouce Kit?

  • Hi

    I've used your examples and trying to create a custom DSC-Resource. Here I have one fundamental question about the 3 default funcion (get/set/test-targetresource)

    In the get-targetresource, I'm reading out all the current values of the system. Can I then in the Test-targetresource not just call "get-targetresource and I'm getting back the hashtable with all the current values? I've never seen this before in any example. Everyone is reading out the values again in "test-targetresource", WHY??

  • Hi

    I've used your examples and trying to create a custom DSC-Resource. Here I have one fundamental question about the 3 default funcion (get/set/test-targetresource)

    In the get-targetresource, I'm reading out all the current values of the system. Can I then in the Test-targetresource not just call "get-targetresource and I'm getting back the hashtable with all the current values? I've never seen this before in any example. Everyone is reading out the values again in "test-targetresource", WHY??

  • Lei,

    Right now, the best way to give feedback is to leave it on the resource's TechNet Q&A page.  It looks like you've already done that, and I can confirm that we've received the feedback.

    Thanks,

    John Slack

    Program Manager

    PowerShell Team

  • Noesberger,

    Your suggestion for using Get-TargetResource within Test-TargetResource is perfectly valid and a great way to write resources. This allows validation/testing of two scenarios with one shot and promotes code reuse.  The AD resources in the DSC Resource Kit use this pattern (e.g. xADDomain, xADDomainController).  It's also the approach Michael Greene has advocated in his blog (blogs.technet.com/.../powershell-dsc-blog-series-part-2-authoring-dsc-resources-when-cmdlets-already-exist.aspx).

    Thanks,

    John Slack

    Program Manager

    PowerShell Team

Page 1 of 1 (7 items)