Habitat and Windows

At the February Seattle Chef Meetup, I gave a presentation about the current state of Habitat on Windows. I showed the beginnings of a Habitat toolset with build plans that specifically target Windows applications. These plans include PowerShell Core, Visual Studio Build Tools, 7-Zip, WIX, .Net Core and Visual C++ redistributable binaries. You can watch a recording of the presentation below.

Habitat lets you easily package a Linux based application, export the HART package to Docker, and run it inside of a container. Imagine having a similar workflow for Windows containers! And of course, we want you to be able to build and run your traditional .Net full framework and IIS based applications on your existing VMs and bare metal too.

In this demo, I show a multi tiered ASP.NET Core application load balanced behind HAProxy. You will see how these tiers run as Habitat services on Windows and dynamically discover each other’s configuration. The demo really brings home the immutability of Habitat HART packages and how they can adapt to different runtime conditions. It also shows how Habitat can shine in a mixed environment supervising services on both Linux and Windows infrastructure to support a single stack.

Habitat will be an incredible tool for building, packaging, deploying and running applications on Windows. While this Windows work is not available for public consumption yet, it’s not far off and we are excited to give you a glimpse into what is coming. Make sure to check out the GitHub repository I used to demonstrate this functionality.

Want to learn more about Habitat? Get started with our step-by-step tutorials and then join the Habitat Slack team to interact with our rapidly growing community.

Matt Wrock

I am a software developer for Chef and much of my focus has been making Chef better on Windows. When not developing Chef code, I'm usually contributing to other projects in the Chef ecosystem. I regularly contribute to the WinRM gem and Vagrant, I am a member of the core Chocolatey team, author of Boxstarter and was an early contributor to Pester creating its Powershell Mocking functionality. I am a former Microsoft engineer and write regularly on Windows automation topics at hurryupandwait.io