Вопрос

Я в значительной степени новичок в разговоре на Ruby.Я пытаюсь написать шаблон (.erb) для Puppet.Моя цель состоит в том, чтобы на основе этой переменной:

$c_repo = 'repo1,repo1-condb,repo2,....'

написать шаблон, который, в свою очередь, создаст файл cron-job, подобный этому:

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
....

Однако я могу создать довольно простой файл с одним значением:

$c_repo = 'repo1'
43 2 * * * root /etc/zmfs/zmfs-check.sh <%= c_repo %> >> /var/log/zmfs.log 2>&1

но просто не могу понять, как создать цикл для списка.Любая помощь очень ценится.Ваше здоровье!!

Это было полезно?

Решение

Это должно сработать:

<% 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 -%>

Выходной сигнал:

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
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top