Hi,
Yesterday I released chef-runner [1] – a little tool that speeds up
development and testing of Chef recipes with Vagrant.
What is chef-runner?
- A fast alternative to the painfully slow
vagrant provision
. - Allows you to change infrastructure code and get immediate feedback.
- Integrates with Vim so you don’t have to leave your editor while
hacking on recipes.
There’s a demo video [2] that shows how chef-runner compares to
vagrant provision
in terms of speed.
How does it work?
- Directly executes Chef Solo over (plain) SSH without the overhead of
vagrant provision
. - Only applies the Chef recipe you’ve actually modified by overriding
Chef’s run list. - Integrates well with Vagrant: provisioning works as long the VM is
running and /vagrant is mounted. - Installs cookbook dependencies with Berkshelf and updates changes
with lightning-fast rsync.
I wrote chef-runner while working on the Practicing Ruby cookbook and
article [3]. The tool allowed me to do a lot of “exploratory
provisioning”. I hope some of you will benefit from it too.
Any feedback is welcome.
-Mathias
[1] https://github.com/mlafeldt/chef-runner
[2] https://vimeo.com/78769511
[3] http://tinyurl.com/pr-chef