如何在puppet中的erb模板中获取数组索引

时间:2014-01-09 11:04:35

标签: erb puppet

我需要能够生成以下文件内容(用于zookeeper安装):

server.1=$zk.server1.full.hostname:2888:3888
server.2=$zk.server2.full.hostname:2888:3888
server.3=$zk.server3.full.hostname:2888:3888

当我有一组服务器主机名时(示例显示#of servers = 3)。我试过以下的事情:

<% @regionserver_list.each do |this_server| -%>
server.  =<%= this_server %>:2888:3888
<% end -%>

这似乎不正确,我正在努力获得数组索引(需要从1开始)。这里的要点是服务器列表是可变的,所以我不能使用解决方法暂时放置固定模板。我坚持这个,有人可以帮忙吗?

THX

1 个答案:

答案 0 :(得分:2)

这有效:

<% @quorumserver_list.to_enum.with_index(1).each do |this_server, idx| -%>
<%= "server.#{idx}=#{this_server}:2888:3888" %>
<% end -%>