Я использую 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",]
но запятая в конце кажется неаккуратной. все это кажется неряшливым. У кого-нибудь есть лучший способ? Или то, что я сделал, лучший вариант?