"DSL" entries
The Puppet design philosophy
Explore the declarative, idempotent, and stateless Puppet DSL.
Puppet Best Practices, author Chris Barbour discusses the philosophy behind using Puppet effectively.
Read more…
It can be very easy to get started with Puppet, but scaling it effectively can be a challenge. In this early release excerpt from Before we begin to explore practical best practices with Puppet, it’s valuable to understand the reasoning behind these recommendations.
Puppet can be somewhat alien to technologists who have a background in automation scripting. Where most of our scripts are procedural, Puppet is declarative. While a declarative language has many major advantages for configuration management, it does impose some interesting restrictions on the approaches we use to solve common problems.
Although Puppet’s design philosophy may not be the most exciting topic to begin this book, it drives many of the practices in the coming chapters. Understanding that philosophy will help contextualize many of the recommendations covered.