winget install --id=Microsoft.DSC -e
DSCv3 is the latest iteration of Microsoft's Desired State Configuration platform. DSCv3 is an open source command line application that abstracts the management of software components declaratively and idempotently. DSCv3 runs on Linux, macOS, and Windows without any external dependencies. With DSCv3, you can: - Author resources to manage your systems in any language - Invoke individual resources - Create configuration documents that define the desired state of a system
DSCv3 is an open-source command-line application designed for declarative and idempotent management of software components across Linux, macOS, and Windows systems without external dependencies.
Key Features:
Audience & Benefit:
Ideal for system administrators, DevOps engineers, and IT professionals seeking a flexible, scalable, and cross-platform solution to manage infrastructure configurations declaratively. By using DSCv3, users can ensure consistent system states across environments while leveraging any programming language for resource authoring.
Installable via winget, DSCv3 provides a modern approach to configuration management that aligns with contemporary DevOps practices.
> [!NOTE] > We welcome code contributions to this repository. For guidelines on how to contribute, > see our CONTRIBUTING.md. > Your feedback and participation help us improve DSCv3 for everyone.
DSCv3 is the latest iteration of Microsoft's Desired State Configuration platform. DSCv3 is an open source command line application that abstracts the management of software components declaratively and idempotently. DSCv3 runs on Linux, macOS, and Windows without any external dependencies.
With DSCv3, you can:
DSCv3 differs from PowerShell DSC in a few important ways:
Importantly, while DSCv3 represents a major change to the DSC platform, DSCv3 is able to invoke PowerShell DSC Resources, including script-based and class-based DSC Resources, as they exist today. The configuration documents aren't compatible, but all published PowerShell DSC Resources are. You can use PowerShell DSC resources in DSCv3 with both Windows PowerShell and PowerShell.
To install DSC v3:
PATH
.If you're new to DSC or configuration management, we recommend reviewing the documentation.
If you're already familiar with DSC or just want to start experimenting with v3, we recommend reviewing the Samples repository and the accompanying . The Samples repo is ready to accept Pull Requests, which is a great way to contribute while v3 is in early phases of development.
DSCv3 is a platform tool that abstracts the concerns for defining and invoking resources. Higher order tools, like Azure Machine Configuration, Azure Automanaged VM, and WinGet are early partners for DSCv3 as orchestration agents.
DSCv3 uses JSON schemas to define the structure of resources, configuration documents, and the outputs that DSCv3 returns. These schemas make it easier to integrate DSCv3 with other tools, because they standardize and document how to interface with DSCv3.
Please see our Code of Conduct before participating in this project.
For any security issues, please see our Security Policy.