For years I have been trying to spread the gosspel of bcfg2 because, while not perfect, I thought was a more complete system over Puppet or Chef. Bcfg2, however has some big warts of its own AND it never really caught on. In the past few months I've been slowing converting to SaltStack and it really is everything I ever dreamed of for a CM system. Fast, easy, real-time. Lovin' it.
http://docs.puppetlabs.com/references/latest/type.html
http://docs.opscode.com/resource.html
https://cfengine.com/archive/manuals/cf-manuals/cf2-Referenc...