Get Puppet Enterprise First 10 nodes are free!
Try it now
Request a demo
Automate IT and infrastructure, manage complex workflows, and mitigate risk at scale.
Try the full-featured Puppet Enterprise for free on 10 nodes.
Puppet Comply Find and prevent compliance failures
Compliance Enforcement Modules Remediate to stay in compliance
Continuous Delivery for Puppet Enterprise Build, test, and deploy infrastructure as code faster and easier
Content & Modules Pre-built scripts to automate common tasks
CentOS EOL Here’s how to secure your CentOS infrastructure – even after EOL.
Find thousands of component modules built by the community and guidance on using them in your own infrastructure.
Visit Puppet Forge >>
Open Source PuppetPerfect for individuals and small infrastructure
BoltAutomate tasks in orchestration workflows
See all open source projects >>
Contribute to open source projects >>
You know and love PowerShell DSC, which means you probably use PowerShell Gallery to find new scripts, modules, and resources to use with it. But did you know that you can install PowerShell modules using Puppet – and then use them just like a Puppet module? Read on to find out how to get the best of PowerShell Gallery, right from your Puppet Enterprise console.
Table of Contents
PowerShell Gallery is the central repository for PowerShell modules and scripts, including PowerShell DSC. PowerShell Gallery makes it so you don't have to create new scripts every time you want to use PowerShell for something new.
Microsoft launched the PowerShell Gallery in 2015 as a central repository for PowerShell modules, scripts, and Desired State Configuration (DSC) resources. Over time, it's expanded with package management integrations, security updates, and community support. Devs and sysadmins publish PowerShell modules and scripts to the PowerShell Gallery, where other users can download and install them for use in their own PowerShell DSC.
Learn more about the benefits of using PowerShell for automation >>
PowerShell Gallery is great because it makes PowerShell DSC more versatile and easier to use. You can find, share, vet, version, install, and update new PowerShell modules created and supported by the PowerShell community – all from one place.
PowerShell DSC resources offer unprecedented hooks into the Windows operating system and provide straightforward configuration functionality that will make your Unix coworkers green with envy.
The best part? You can use PowerShell Gallery with Puppet Enterprise to make DSC resources even easier to find and use for Windows automation.
You can now puppet module install any PowerShell Module with DSC Resources from the PowerShell Gallery and then simply use it just like you would any other Puppet module.
puppet module install
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.
Puppet can take an existing PowerShell Module and build a Puppet module out of it. Basically, it makes it so you can use PowerShell Modules exactly like you use Puppet modules.
It will package up all of its DSC resources and then wrap the Puppet Resource API around it so you can invoke it just like any other module. This means you no longer need to be concerned with the under-the-hood implementation details. You don't need to care which tools were invoked to effect a change. Just 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.
For more on using Puppet to install modules from the PowerShell Gallery, head to the Forge. There, you can filter by your OS and Puppet version to find the right ones for your use case.
Click here to browse DSC modules on the Puppet Forge >>
Have you developed your own DSC resource? You can package it into a Puppet module using the Puppet Development Kit (PDK) and by following these instructions.
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 wrapped DSC resource!
Of course we don't expect you to adopt new automation tools completely on your own. Check out these other resources.
Check out Puppet and say goodbye to the tedium of manual work as your IT Ops and InfoSec teams configure and harden your Windows infrastructure. Not using Puppet Enterprise yet? Get started today!
START PUPPET TRIAL
Community and Developer Relations Lead, Puppet by Perforce