After releasing an unsupported version earlier this year, we are pleased to announce the release of
dsc_lite 1.0. We invite Windows users to try this alternative, and now supported, approach to managing nodes using Microsoft’s PowerShell DSC (Desired State Configuration) resources. With more granular control, this modules provides more flexibility for advanced users.
To help you get started with
dsc_lite, we’ve outlined a few key steps to take. Before we get to that, we’ll recap what the
dsc_lite module does. Please note that unlike some of our other modules that can be used as an easy way to learn a new technology, using
dsc_lite requires prior knowledge of PowerShell DSC.
Recap: What is
dsc_lite is one of the latest modules to come out of the Windows team here at Puppet. It is aimed at DSC practitioners who would like to use DSC in a more direct way through Puppet, and find our existing
dsc module too heavy (file sync). One of the the main reasons
dsc is like this is because everything you need, including DSC resources, is built into it. This design, while making it easier for users to start with DSC and Puppet, is difficult to maintain and update as all the resources that are included have different release cadences from Microsoft and the community. With the new
dsc_lite module, nothing is built into it, providing a lighter weight and more flexible alternative.
If I’m already using the
dsc module, should I switch to
Not necessarily. If you like having DSC resources built into the module, and the large size of
dsc is not a problem, there is no tangible benefit to switching to
dsc_lite. One thing to take into account is that the original
dsc module integrates better with Puppet. This is because its parameters are translated into Ruby type files, making it easier for Puppet to understand, and the authoring experience better for the user.
dsc_lite module also has fewer safety checks, in that it lacks the type files that allow Puppet to do DSC parameter and type validation. In other words,
dsc_lite is bowling with the bumpers down, and
dsc is bowling with the bumpers up.
Where to start
Before downloading the module, ensure that you have PowerShell 5.1 or greater installed on your servers. You can validate this by calling
$PSVersionTable in a PowerShell window.
Next, download the dsc_lite module from the Forge, and install like you would any other module. The README on the module page has all the detailed information on how to get started (more than this blog post!), how to add PowerShell Modules with Puppet, and how to form the DSC resources in Puppet code.
Give it a try, and as always, let us know what you think, on Slack or by filing a ticket in JIRA.
The Puppet Windows team is continually improving the experience for Windows sysadmins on the Forge. Check back for new releases and updates on our popular modules. Subscribe to modules to get notifications.
Claire Cadman is a technical writer at Puppet.