Puppet Best Practices: Design Patterns For Main... May 2026
These are the high-level descriptions of a machine's function (e.g., role::app_server ). A node should ideally have only one role . 2. Separation of Code and Data (Hiera)
Use Hiera to provide defaults and overrides based on facts like environment or OS. Puppet Best Practices: Design Patterns for Main...
These are the building blocks (e.g., puppetlabs-apache ). They handle the "how" but shouldn't contain business-specific data. These are the high-level descriptions of a machine's
A good module follows the : it should do one thing and do it well. Puppet Best Practices - The Swiss Bay Separation of Code and Data (Hiera) Use Hiera
Puppet Best Practices: Design Patterns for Maintainable Code
3. Coding Practices. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . The Swiss Bay
This is the "gold standard" for Puppet abstraction. It separates your technology-specific code from your business logic, making your codebase modular and readable.