Итерация установленного числа раз с куклой - PullRequest
1 голос
/ 30 января 2020

Есть ли в марионетке метод, который будет повторять заданное количество раз? например, если я дам число «5», я бы хотел, чтобы он создал файл с именем 1,2,3,4,5 (это всего лишь пример, надеюсь, он объясняет вариант использования).

Это не то же самое, что каждая функция, которая будет перебирать каждый элемент массива, поскольку массив должен содержать 5 элементов. В ruby есть функция под названием times, но я не могу найти ничего похожего в кукольном.

Спасибо

1 Ответ

3 голосов
/ 30 января 2020

Согласно документации для функции range , правильная идиома для повторения заданного числа раз:

# notices 0, 1, 2, ... 9
Integer[0, 9].each |$x| {
  notice($x)
}

Функция range предназначена для генерации массива последовательных целых чисел или строк, а не итерации. Например, если вы хотите создать набор из 10 файлов, от file0 до file9, вы можете использовать

include stdlib

file { range('/tmp/file0', '/tmp/file9'):
  ensure => file,
}
...