I just encountered Chef, which is a 'systems integration framework' like puppet that allows you to manage configuration and much more across many machines. I've been using puppet for quite a while and love it, although as stated here, I find the puppet Domain Specific Language (DSL) very restrictive. There have been so many times I have wanted to do something reasonably simple for a fully-fledged programming language, that has either been impossible, impractical, or completely un-intuitive to accomplish with puppet. No, I don't have an example - next time it happens I'll blog.
In any case, Chef seeks to address this problem by giving you full-strength ruby, and is written by some long-term members of the puppet community. Apparently puppet has made the decision to stay away from a full programming language, hence Chef. Puppet has the momentum at the moment but this may be worth watching.