Writing custom puppet modules

Custom functions overview Puppet includes many built-in functions, and more are available in modules on the Forge.You can also write your own custom functions. Writing custom functions in the Puppet language You can write simple custom functions in the Puppet language, to transform data and construct values. A function can optionally take one or more parameters as arguments.

Create great Puppet modules by following best practices and guidelines.. This guide is intended to provide an approachable introduction to module best practices. Before you begin, we recommend that you are familiar enough with Puppet that you have a basic understanding of the language, you know what constitutes a class, and you understand the basic module structure.

A call to a custom function behaves the same as a call to any built-in Puppet function, and resolves to the function's returned value. After a function is written and available in a module where the autoloader can find it, you can call that function, either from a Puppet manifest that lists the containing module as a dependency, or from your main manifest.

Modules contain Puppet classes, defined types, tasks, task plans, functions, resource types and providers, and plug-ins such as custom types or facts. Modules must be installed in the Puppet modulepath. Puppet loads all content from every module in …


 · Nothing beats the experience of writing your own Puppet modules from scratch. In this course, you will learn how to setup Puppet Enterprise, use the Puppet console, write simple RSpec tests, and deploy your modules to the Forge.

Writing Custom Function There are few things which one needs to keep in mind before writing a function. In Puppet, functions are executed by compilers which means all the functions run on Puppet master and they don’t need to deal with any of the Puppet client for the same.

Puppet modules are the fundamental building block of puppet and are used for abstracting away the differences between different platforms. A good module for some software should not define how you want the software but provide an API so that the software can be used on multiple platforms without needing to know the intricacies of that platform.

For information on how to add custom facts to modules, see Module plug-in types. Writing facts with simple resolutions Most facts are resolved all at the same time, without any need to merge data from different sources.


 · After setting up Puppet in an agent/master configuration, you may need some help writing Puppet manifests and modules. In order to use Puppet effectively, you must understand how manifests and modules are constructed. This tutorial covers Puppet code