Introducing the ROS 2 Windows Chef Cookbook and CI Integration

Hello all,

It’s with great excitement and some relief that we are introducing the ROS 2 Windows Chef Cookbook. This cookbook provides the means of verifiably installing all ROS 2 dependencies on a Windows machine. As part of this work and continuing the work to move the Windows CI machines to run in a docker container, earlier this week we transitioned all Windows jobs on ci.ros2.org to build the docker container from this cookbook.

Chef is a configuration management tool and can be used to manage complex server infrastructure, but it can also be used as a single machine configuration utility with Chef-solo. The primary benefits of using a cookbook over a build script or manually installing dependencies is that these cookbooks provide means of verifying the installed software and only upgrading or installing components when necessary. They are also composable with other cookbooks and recipes.

The ROS 2 Windows cookbook is available on github where a README for setup and installation is also available. As part of the CI farm, these cookbooks are being verified on a daily basis.

These cookbooks capitalize on the infrastructure-as-code paradigm and allow all changes to be peer-reviewed and tested before being committed. These changes will further improve the reliability and ability to develop for ROS 2 on Windows.

Yours in difficult to google culinary terminology,
Stephen

8 Likes

Whoops, forgot to mention who “we” are. This was work done at Open Robotics with a lot of help from the operations group @nuclearsandwich, @cottsay and @jrivero.

3 Likes

Just want to send an extra :love_letter: to @brawner for the chef work:

Cinc Client finished, 66/74 resources updated in 11 minutes 36 seconds

Prior to the chef in docker work and Windows CI builds are now officially containerized and virtualized on ci.ros2.org before it we’d spend entire afternoons getting our Windows machines updated for CI and potentially entire days wrangling VMs for local development. Now, once you adjust to chef, it can happen in less than 30 minutes (adding in the time it takes to install Windows, chef, and Git). Thanks!

1 Like

FYI the github and README links don’t seem to be working. They seem empty. Thought they might be kinda important :slight_smile:

1 Like

I think the github link should point here?

Thanks for pointing out the missing links, I could have sworn I put them in correctly.

The Windows Chef Cookbook is available at:

The README for setting up your own windows machine with the cookbook can be found at:

The code for intergration into ci.ros2.org is available at the windows_docker_resources directory that @kneave posted.

Thanks
Stephen

1 Like