Puppet Types and Providers (Paperback)
Dan Bode, Nan Liu
This book is intended for puppet users that understand the fundamentals and want to dive into Puppet internals. The goal of this book is to help people who already have some Puppet experience get more out of their deployments by implementing custom functionality on top of Puppet. Although most people typically interface with Puppet through its DSL, this DSL is really just an abstraction layer where the underlying components have been written in Ruby.