我试图从来自Foreman的yaml结构中获取一个元素,yaml如下所示:
nodes:
host1:
ip: xxx.xxx.xxx
cdir: bbb.bbb.bbb
interface: aaa
host2:
ip: yyy.yyy.yyy
cdir: bbb.bbb.bbb
interface: aaa
这个yaml是在Foreman上声明的,它在模板中使用:
<%= @nodes[0][name] %> IPaddr2::<%= @nodes[0]['ip'] %>/<%= @nodes[0]['cidr'] %>/<%= @nodes[0]['interface'] -%>
它在清单上定义:
class heartbeat {
template_resources => 'site/heartbeat/resources.erb'
}
在这种情况下,我只需要应用第一个元素。谢谢你的快速回答。
干杯
我找到了答案,
<% key = @nodes.keys[0] -%>
<%= key %> IPaddr2::<%= @nodes[key]['ip'] %>/<%= @nodes[key]['cidr'] %>/<%= @nodes[key]['interface'] %>
干杯