Puppet (funkce)
Puppet umožňuje při generování manifestů používat také funkce. Kromě integrovaných funkcí lze vytvořit a používat také vlastní funkce.
Volání funkce bez parametru
define funkce {
notify { "Do funkce je předán pouze parametr - $name":; }
}
funkce { 'jmeno':; }
|
Výsledkem zavolání této funkce by bylo pouze vypsání textového řetězce 'Do funkce je předán pouze parametr - jmeno' do logu klienta (přes notify). Nicméně k demonstraci výsledku tento jednoduchý příklad stačí.
Je-li místo konkrétního jména předáno pole, nebo proměnná, která pole obsahuje, volá se funkce pro každou položku pole zvlášť, přičemž obsah proměnné $name
bude vždy odpovídat této položce. Více v následujícím příkladu.
Volání funkce s parametrem
Funkci lze volat také s parametrem.
Výsledkem výše uvedeného kódu by byly následující vypsané řetězce:
Přehled vestavěných funkcí
Toto je pouze úzký výběr námi používaných funkcí. Pro kompletní dokumentaci viz Docs:Type Reference na oficiálních stránkách stránkách http://puppetlabs.com |
file
Funkce se dá použít v podmínkách vložení pravdivostní hodnoty do proměnné, kterou lze následně využít v podmínkách.
$etckeeper = file('/etc/.git')
Vrací True pokud na na straně agenta existuje /etc/.git
.
include
inline_template
Puppet (funkce) inline template
regsubst
require
split
Funkce rozseká obsah proměnné, která je předaná jako první parametr. Jako rozdělovací řetězec použije řetězec, který následuje jako parametr druhý.
$sekana = split($retezec,",")