如何引用 Puppet 中哈希循环的当前迭代

如何引用 Puppet 中哈希循环的当前迭代

我有一个像这样的哈希

net:ip { '':
ip => {
    ip1 => {
       addr => '192.168.10.1',
       device => 'eth0',
    },
    ip2 => {
      addr => '192.168.50.10',
      device => 'eth10',
    },
}
}

在我的清单中我这样称呼

define net::ip (
$ip={},
) {
  ...
}

我的问题是如何引用哈希迭代的当前循环。我希望能够使用此清单中的“dev”字段,但由于哈希有 ip1、ip2,我无法知道它在哪个数字上?

谢谢丹

答案1

下面的例子可能会有所帮助。单独创建哈希并通过定义类型访问它。

  $foo = [{"addr" => "bar", "port" => "1"},                                     
          {"addr" => "bat", "port" => "2"}]                                     
  testmod::bar {$foo:}                                                          
  define testmod::bar () {                                                      
    $var1 = $name["addr"]                                                       
    $var2 = $name["port"]                                                       
    notify {"${var1}_${var2}": }                                                
  }      

相关内容