Chapter 10. Writing Puppet Plugins
Puppet is impressively extendable. Almost every key component of the software can be extended and replaced by the code provided by users.
Most of the time, we can use modules to distribute our code to clients. However, Puppet goes a step further; surprising things are possible, for example, with the indirector and its termini (somehow strange words that are going to be clearer in the following pages).
This chapter is about understanding and extending Puppet code. We are going to review the following topics:
- Anatomy of a Puppet run; what happens under the hood
- What are Puppet extension alternatives
- How to develop custom functions
- How to develop custom facts
- How to develop custom types and providers
- How to develop custom report handlers
- How to develop custom faces
The subject is large; we are going to have an overview and show examples that let us dive in some details. For more information about how Puppet works and its inner beauties, check these great...