Cenário: meu arquivo de configuração é definido por um .erbarquivo que inclui o trecho abaixo.
<% backupclients.each do |backup_files| -%>
Job {
Name = "Server"
JobDefs = "DefaultJob"
Client = <%= backup_files %>-fd
Pool = TeraMonth
Write Bootstrap = "/var/lib/bacula/<%= backup_files %>.bsr"
}
<% end -%>
O arquivo de configuração do servidor precisa de uma entrada repetida para cada host do cliente. Se eu fosse criar uma matriz simples, isso funcionaria sem problemas. O que eu quero fazer, no entanto, é que cada host se registre e colete os dados usando o <<| |>>pragma semelhante ao que se faria com os nagios_*tipos.
O exemplo padrão para isso envolve a exportação de um tipo.
class ssh {
@@sshkey { $hostname: type => dsa, key => $sshdsakey }
Sshkey <<| |>>
}
No entanto, não consigo descobrir como escrever um tipo ou fazer referência a ele de uma maneira que me permita ler essa matriz de valores do .erbmodelo. Existe uma maneira de usar recursos exportados em combinação com um loop variável em um .erbarquivo?