我有這樣的一個YAML hiera文件。木偶:遍歷一個hiera_hash模板
reg_connection:
toronto:
- host: apple.net
- port: 701
- user: george
- ssl: true
- allowed: banana,orange
texas:
- host: pink.net
- port: 702
- user: joel
- ssl: false
- allowed: blue,gree,red
我要訪問的主機,端口,用戶,SSL的值,並允許多倫多和得克薩斯州。
我有這個在我的清單:
$reg_connection= hiera_hash('reg_connection')
我有這個在我的模板:
<% reg_connection.keys().sort.each do |location| -%>
<%= location %>host=<%= location[host] %>
<%= location %>port=<%= location[port] %>
<%= location %>username=<%= location[user] %>
<%= location %>ssl.enable=<%= location[ssl] %>
<%= location %>allowed.list=<%= location[allowed] %>
<% end -%>
我想這對輸出配置的兩個街區在我的模板:一個是多倫多和一個爲得克薩斯。
我的木偶輸出表明,它並沒有對主機的值。我如何獲得該價值?
請注意'hiera_hash()'的目的是執行* hash-merge *查找。數據和結果必然是哈希值,但僅僅因爲你的值被認爲是一個哈希值並不意味着你需要或想要'hiera_hash()'。普通的'hiera()'函數會執行一個標準的優先級查找,如果這實際上是它發現的值的類型,它將返回一個哈希值。 –