Hacker News new | ask | show | jobs
by davnola 5814 days ago
I've recently started using chef for config management. It's Ruby, I'm Ruby so it was always going to win over Puppet there. Off the top off my head observations:

* Conceptually clean and very powerful

* Quick and easy to write new cookbooks from scratch, but the public repo of cookbooks is more useful for code examples than day-to-day use

* Documentation (the wiki) is patchy but improving

* The webui could do with some love (buggy, plus some useful tasks like executing a chef run are missing) and the CLI, knife, is a bit odd and bloated with stuff that belongs elsewhere

* The chef server stack (Merb, Solr, Couchdb) needs babysitting

* Bootstrapping is still a pain (ain't it always?)

* There are some inconsistencies and a bit of churn in the API

The Ruby DSL has some interesting quirks. Recipes are compiled in one phase and executed in a later phase. So just to make a simple log entry:

  ruby_block do
    block do
      Chef::Log.info("File created!")
    end
  end
Eww.

But overall it's an effective tool for an essential task.