【发布时间】:2012-08-10 22:17:30
【问题描述】:
我正在使用 puppet 为 ruby 程序提供一组常量。 我需要提供一组主机名,我的程序将在这些主机名上进行迭代。
在我之前使用的 bash 脚本中,我只是将其作为 puppet 变量
hosts => "host1,host2"
我作为 bash 脚本提供的
HOSTS=<%= hosts %>
显然这对 ruby 不太适用 - 我需要它的格式
hosts = ["host1","host2"]
因为
p hosts
和
puts my_array.inspect
提供输出
["host1","host2"]
我希望使用其中之一。 不幸的是,我终其一生都无法弄清楚如何做到这一点。 我已经尝试了以下各项:
<% p hosts %>
<% puts hosts.inspect %>
我发现某处他们指出我需要将“function_”放在函数调用前面......这似乎不起作用。我已经确定了一个迭代模型:
[<% hosts.each do |host| -%>"<%=host%>",<% end -%>]
这行得通,给我
["host1","host2",]
但是结尾的逗号感觉很草率。整个事情感觉马虎。有没有人有更好的方法?还是我所做的最好的选择?
【问题讨论】: