Editor's note

DevOps has dominated the conversation within the IT community for a while -- but tools developed for Linux, often with no multi-OS functionality, have been a barrier to DevOps for Windows environments. With time came workarounds, and now tools -- such as Chocolatey package manager, Octopus Deploy and PowerShell Desired State Configuration -- that have helped bridge that divide.

This essential guide to DevOps for Windows covers the pipeline from start to finish, containerization and Microsoft's own Azure DevOps services.

1Version control and code management

Code management goes hand in hand with version control, for which Git, along with its companion repository GitHub, is the most popular open source service. Microsoft has increased its focus on DevOps for Windows through its $7.5 billion purchase of GitHub, along with its replacement of Visual Studio Team Services with Azure DevOps. Together, these tools enable Microsoft shops to automate code development through the planning, build and deployment stages.

2Automation and release management

On the other end of the pipeline is IT operations' role in DevOps for Windows through code deployment, monitoring and automation. Every process or action that an IT ops admin can automate should be automated. DevOps tools, such as Octopus Deploy for automated release management and the Chocolatey Windows package manager, enable IT admins in Microsoft shops to control code segmentation, access and deployment. In addition, Puppet handles configuration management with native Windows support and integration with PowerShell and dsc_lite.

3Windows containerization

The most popular containerization services, Docker and Kubernetes, were not designed with Windows in mind, nor did they debut with native Windows support. But with time -- and significant demand -- multiple containerization vendors released native Windows support or integration, and Windows containers were off. Microsoft's cloud platform, Azure, also offers container support priced by the second to enable cost-effective and efficient deployments.

4Azure Cloud DevOps

Microsoft Azure is one of the big three public cloud platforms, alongside AWS and Google Cloud Platform. Azure DevOps Services is a set of tools that enables developers and IT admins to configure a cloud-connected DevOps pipeline. Where Visual Studio Team Services operated under an antiquated release cycle, Azure DevOps Services enables DevOps shops to deploy application updates much more quickly -- and encompasses the full development half of the Windows DevOps pipeline.