Convert configurations to composite resources
Applies to: ✔️ Windows PowerShell 5.1
Before you enable Automation State Configuration, we would like you to know that a newer version of DSC is now generally available, managed by a feature of Azure Policy named guest configuration. The guest configuration service combines features of DSC Extension, Azure Automation State Configuration, and the most commonly requested features from customer feedback. Guest configuration also includes hybrid machine support through Arc-enabled servers.
This article refers to a solution that is maintained by the Open Source community and support is only available in the form of GitHub collaboration, not from Microsoft.
This article, explains on creating scenarios that manage groups of settings, after you get started with authoring configurations. Listed below are few examples:
- Create a web server
- Create a DNS server
- Create a server that runs SharePoint
- Configure a SQL cluster
- Manage firewall settings
- Manage password settings
We recommend that you package the configuration as a Composite Resource before you share it with others as creating composite resources for the first time can be a tedious effort.
Community project - CompositeResource
A CompositeResource is a community maintained solution that has been created to resolve this challenge. Composite Resource automates the process of creating a new module from your configuration.
Create a composite resource module
Follow the steps to create a composite resource module:
- Begin by dot sourcing the configuration script on your workstation (or build server) to ensure that it is loaded in memory.
- Use the function provided by the CompositeResource module to automate a conversion instead of running the configuration to generate a MOF file. Here, the cmdlet will load the contents of your configuration, gets the list of parameters, and generates a new module.
- After you generate a module, you can increment the version and add release notes each time you make changes and publish it to your own PowerShellGet repository.
- Use the module in the Composable Authoring Experience in Azure, or add them to DSC Configuration scripts to generate MOF files and upload the MOF files to Azure Automation.
- Register your servers from either on-premises or in Azureto pull configurations.
The latest update to the project has also published runbooks for Azure Automation to automate the process of importing configurations from the PowerShell Gallery.
- To understand PowerShell DSC, see Windows PowerShell Desired State Configuration overview.
- Find out about PowerShell DSC resources in DSC Resources.
- For details of Local Configuration Manager configuration, see Configuring the Local Configuration Manager.