Thanks to everyone who attended my session on Infrastructure as Code with Microsoft Azure at IT/Dev Connections in San Francisco. I hope you found the session useful and left knowing more than when you arrived. As promised in the session, here is a post detailing all the things I discussed during the session. Don’t forget if you have any questions or queries just reach out to me on Twitter.


You can download the presentation I did through the IT/Dev Connections app or website. Also don’t forget you have the session recording to look back on as well.


All of the scripts and commands I showed in the demos are on my GitHub. Here is a quick run through of what is what. I covered a fair amount through the scripts.

  • Deploy-DemoResources.ps1 – This script contains all the demo deployments in one file, you can execute them all from one place.
  • JSON – This folder contains the three azuredeploy.json files used to deploy the virtual network, resource lock and virtual machine used in the PowerShell script above.
  • Deploy-ActiveDirectory.ps1 – This script invokes a new resource group deployment of the JSON file used to deploy our two server Active Directory forest in Microsoft Azure.

Active Directory Deployment

I want to explain this section a little more rather than just link directly to the templates and files.

  • azuredeploy.json – This is the main template where the deployment will be targeted. It contains the main parameters for deployment as well as links to nested templates for deploying additional resources. This is really the hub of the deployment.
  • nestedtemplates – This folder contains templates, nested in the JSON above which allow the configuration and deployment of network resources and invoke the script that deploys the Windows components for Active Directory.
  • DSC – This folder contains a number of PowerShell DSC artifacts both scripts and Zip files for deployment and configuration of Active Directory. Some of the concepts in here were discussed in mny other session, Deep Dive into PowerShell Desired State Configuration with Microsoft Azure.


Don’t forget you can run template deployments using your own templates right from a URL. Just make sure you URL encode the path to the template, for example, to kick off a parameter collection for my Active Directory deployment, just use this link… Deploy to Azure

Here are the links I mentioned in the session as well: