Création d'un modèle de cron-travail pour marionnette
Question
Je suis à peu près un novice en parlant Ruby. J'essaye d'écrire un modèle (.erb) pour Puppet
. Mon objectif est de baser sur cette variable:
$c_repo = 'repo1,repo1-condb,repo2,....'
Pour écrire un modèle, qui à son tour créera un fichier Cron-Job comme celui-ci:
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
....
Je peux en créer une valeur unique avec une seule valeur:
$c_repo = 'repo1'
43 2 * * * root /etc/zmfs/zmfs-check.sh <%= c_repo %> >> /var/log/zmfs.log 2>&1
Mais je ne peux pas comprendre comment créer la boucle de la liste. Toute aide grandement appréciée. Acclamations!!
La solution
Cela devrait fonctionner:
<% 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 -%>
Production:
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
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow