Вывод массива ruby ​​через шаблон erb

Я использую puppet для предоставления набора констант для ruby-программы. Мне нужно предоставить массив имен хостов, по которым будет выполняться моя программа.

В сценарии bash, который я использовал до этого, у меня была просто марионеточная переменная

hosts => "host1,host2"

который я предоставил скрипту bash как

HOSTS=<%= hosts %>

очевидно, это не совсем сработает для ruby ​​-мне нужно в формате

hosts = ["host1","host2"]

с

p hosts

и

puts my_array.inspect

обеспечить вывод

["host1","host2"]

Я надеялся использовать один из них. К сожалению, я не могу в жизни понять, как это сделать. Я пробовал каждое из следующих:

<% p hosts %>
<% puts hosts.inspect %>

Я нашел где-то, где они указали, что мне нужно поставить «функция _» перед вызовами функций... это, похоже, не работает. Я остановился на итеративной модели :

[<% hosts.each do |host| -%>"<%=host%>",<% end -%>]

. это работает, давая мне

["host1","host2",]

но запятая в конце кажется неаккуратной. все это кажется неряшливым. У кого-нибудь есть лучший способ? Или то, что я сделал, лучший вариант?

5
задан Hitch 10 August 2012 в 22:17
поделиться