Function Reference
This page is autogenerated; any changes will get overwritten (last generated on Tue Apr 01 04:04:55 +0200 2008)
There are two types of functions in Puppet: Statements and rvalues. Statements stand on their own and do not return arguments; they are used for performing stand-alone work like importing. Rvalues return values and can only be used in a statement requiring a value, such as an assignment or a case statement.
Here are the functions available in Puppet:
defined
Determine whether a given type is defined, either as a native type or a defined type, or whether a class is defined. This is useful for checking whether a class is defined and only including it if it is. This function can also test whether a resource has been defined, using resource references (e.g., if defined(File['/tmp/myfile'] { ... }). This function is unfortunately dependent on the parse order of the configuration when testing whether a resource is defined.
- Type: rvalue
file
Return the contents of a file. Multiple files can be passed, and the first file that exists will be read in.
- Type: rvalue
generate
Calls an external command and returns the results of the command. Any arguments are passed to the external command as arguments. If the generator does not exit with return code of 0, the generator is considered to have failed and a parse error is thrown. Generators can only have file separators, alphanumerics, dashes, and periods in them. This function will attempt to protect you from malicious generator calls (e.g., those with '..' in them), but it can never be entirely safe. No subshell is used to execute generators, so all shell metacharacters are passed directly to the generator.
- Type: rvalue
realize
Make a virtual object real. This is useful when you want to know the name of the virtual object and don't want to bother with a full collection. It is slightly faster than a collection, and, of course, is a bit shorter. You must pass the object using a reference; e.g.: realize User[luke].
- Type: statement
search
Add another namespace for this class to search. This allows you to create classes with sets of definitions and add those classes to another class's search path.
- Type: statement
tag
Add the specified tags to the containing class or definition. All contained objects will then acquire that tag, also.
- Type: statement
tagged
A boolean function that tells you whether the current container is tagged with the specified tags. The tags are ANDed, so that all of the specified tags must be included for the function to return true.
- Type: rvalue
template
Evaluate a template and return its value. See the templating docs for more information. Note that if multiple templates are specified, their output is all concatenated and returned as the output of the function.
- Type: rvalue
warning
Log a message on the server at level warning.
- Type: statement
This page autogenerated on Tue Apr 01 04:04:55 +0200 2008