criando um modelo de cron-job para Puppet
Pergunta
Sou praticamente um novato em falar Ruby.Estou tentando escrever um modelo (.erb) para Puppet
.Meu objetivo é com base nesta variável:
$c_repo = 'repo1,repo1-condb,repo2,....'
para escrever um modelo, que por sua vez criará um arquivo cron-job como este:
43 2 * * * root /etc/zmfs/zmfs-check.sh repo1 >> /var/log/zmfs.log 2>&1
45 2 * * * root /etc/zmfs/zmfs-check.sh repo1-condb >> /var/log/zmfs.log 2>&1
....
Posso criar um bastante simples com valor único:
$c_repo = 'repo1'
43 2 * * * root /etc/zmfs/zmfs-check.sh <%= c_repo %> >> /var/log/zmfs.log 2>&1
mas simplesmente não consigo descobrir como criar o loop para a lista.Qualquer ajuda muito apreciada.Saúde!!
Solução
Isso deve funcionar:
<% c_repo.split(',').each_with_index do |repo, i| -%>
<%= (i*2)%60 %> 2 * * * root /etc/zmfs/zmfs-check.sh <%= repo %> /var/log/zmfs.log 2>&1
<% end -%>
Saída:
0 2 * * * root /etc/zmfs/zmfs-check.sh repo1 /var/log/zmfs.log 2>&1
2 2 * * * root /etc/zmfs/zmfs-check.sh repo1-condb /var/log/zmfs.log 2>&1
4 2 * * * root /etc/zmfs/zmfs-check.sh repo2 /var/log/zmfs.log 2>&1
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow