The Best of the PowerShell Gallery, Right in Your Puppet Enterprise Console

PowerShell DSC might be the new kid on the block when it comes to configuration management, but it’s certainly not lacking in power. DSC resources offer unprecedented hooks into the Windows operating system and provide straightforward configuration functionality that will make your Unix coworkers green with envy. And now you can puppet module install any PowerShell Module with DSC Resources from the PowerShell Gallery and use it just like you would any other Puppet module. Describe what you need in Puppet’s effortlessly declarative language and then let Puppet do what it does best: abstract away the details and just make the changes you need.

There’s no need to set up a pull server, and no need to distribute the DSC Resources. Just classify your Windows nodes just like any other in your infrastructure. Write a profile class or use the Puppet Enterprise Console directly. And when you inspect the run reports later, you’ll see each parameter that’s changed and what values it changed from and to, which is something that no other tool on the market can do.

Best of all, when paired with Puppet’s VS Code extension, you’ll get all the IntelliSense goodness that you’ve come to expect as you’re writing your profile classes. Not only do you get context-sensitive syntax highlighting and autocompletion, but you’ll get parameter validation that knows what data types to use and even which values are acceptable – even if that comes from the underlying DSC resource!

To use a DSC module, simply add it to your Puppetfile and deployed it to your Puppet server. Then you can declare the DSC resources like any other Puppet code. For example, if you use the dsc-xinternetexplorerhomepage module to manage the homepage setting on user desktops, then you'd declare the resource in your Puppet code like this:

dsc_xinternetexplorerhomepage { 'homepage':
  dsc_ensure    => 'Present',
  dsc_startpage => '',

To discover the settings you can manage, you could run puppet resource describe dsc_xinternetexplorerhomepage on a representative system, or you could read the module's automatically generated reference page.

Not using Puppet Enterprise yet? See how easy it is to integrate across your infrastructure with powerful, scalable Puppet Enterprise. Desired state configuration has never been simpler — and better yet, you can try Puppet Enterprise for free with a trial that includes up to 10 nodes and no time limitations.

Puppet Enterprise comes with the support of a great community, along with endless ready-to-go modules in the Forge to help you accomplish your configuration management goals.


Further DSC Reading:

  • Read our documentation to learn more about using and troubleshooting DSC resources.