Concatena o número arbitrário de modelos no Puppet

1

Gostaria de usar template() para concatenar alguns arquivos. Eu li esta questão , o que é bom se você souber exatamente quantos arquivos você deseja concatenar. E se eu tiver apenas uma matriz de nomes de arquivos de entrada?

$files = ['mymod/a.erb', 'mymod/b.erb', 'mymod/c.erb']

file { "/var/foo/final":
  content => template ($files)  # <-- error, can't convert Array to String
}

Eu gostaria de evitar ter que escrever uma função de analisador.

    
por Coderer 27.03.2015 / 16:49

1 resposta

3

Isso não é possível no momento. Houve uma edição Puppet enviada para ela e uma correção proposta mas não parece haver qualquer pressa para implementá-la.

Como possível alternativa, você pode ter um modelo que inclua outros:

<% @template_array.each do |val| -%>
<% scope.function_template(val) %>
<% end -%>

Avisar, eu não testei isso, mas acredito que deve funcionar.

    
por 27.03.2015 / 17:09

Tags