Puppet Templating
Par pepin le vendredi, août 3 2018, 02:26 - Puppet - Lien permanent
La ou ansible utiliser jinja2 pour les templates, puppet utiliser ERB.
La documentation de puppet dit ceci sur les templates, mais voici un exemple d'utilisation résumant les cas les plus courant :
- template avec variables
- template avec nested loop
- template aec conditions (si variable définie)
dans /etc/puppet/code :
cat environments/production/manifests/site.pp
$nameservers = ['8.8.8.8','8.8.4.4'] $search = 'free.fr' $mydomain = 'pepiniere.local' file { '/etc/resolv.conf.new': ensure => file, owner => 'root', group => 'root', mode => '0644', content => template('resolver/resolv.conf.erb'), }
cat environments/production/modules/resolver/templates/resolv.conf.erb
# Resolv.conf generated by Puppet <% [@nameservers].flatten.each do |ns| -%> nameserver <%= ns %> <% end -%> <% unless @search.nil? -%> search <%= [@search].flatten[0..5].join(' ') %> <% end -%> <% unless @mydomain.nil? -%> domain <%= @mydomain %> <% end -%>