Skip to content
This repository has been archived by the owner. It is now read-only.
master
Go to file
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

README.md

Build status

InvokeDSC

InvokeDSC is a JSON based DSL for creating and managing infrastructure with DSC resources.

Overview

Allows you to declaratively define your infrastructure within JSON configuration documents. InvokeDSC converts those json documents to PSCustomObjects that Invoke-DSCResource can consume. By doing this it removes the need for PowerShell configuration documents and the .mof documents it generates. Which results in more flexibility and removes the need of a single .mof document that declares the end state of your infrastructure.

test run output

JSON Configuration File

{
    "Modules":{
        "xPSDesiredStateConfiguration":"8.0.0.0"
    },
   "DSCResourcesToExecute":{
        "DevOpsGroup":{
            "dscResourceName":"xGroup",
            "GroupName":"DevOps",
            "ensure":"Present"
        }
   }
}

Commands

  • ConvertTo-Dsc
  • Invoke-Dsc
  • Invoke-DscConfiguration

Examples

Invoke-DscConfiguration

Invoke-DscConfiguration -Path 'c:\config.json'
$config = @"
{
    "Modules":{
        "xPSDesiredStateConfiguration":"8.0.0.0"
    },
   "DSCResourcesToExecute":{
        "DevOpsGroup":{
            "dscResourceName":"xGroup",
            "GroupName":"DevOps",
            "ensure":"Present"
        }
   }
}
"@

Invoke-DscConfiguration -InputObject $config

ConvertTo-Dsc

ConvertTo-Dsc -Path 'c:\json\example.json'
$config = @"
{
    "Modules":{
        "xPSDesiredStateConfiguration":"8.0.0.0"
    },
   "DSCResourcesToExecute":{
        "DevOpsGroup":{
            "dscResourceName":"xGroup",
            "GroupName":"DevOps",
            "ensure":"Present"
        }
   }
}
"@

ConvertTo-Dsc -InputObject $config

Invoke-Dsc

$r = ConvertTo-Dsc -Path 'c:\config.json'
Invoke-Dsc -Resource $r

Credits

POSHOrigin by Brandon Olin

Ansible-win_dsc by Trond Hindenes

Steven Murawski

Jaigene Kang

About

PowerShell module for Invoking DSC from json

Topics

Resources

License

Releases

No releases published

Packages

No packages published