Configuration 如何在puppet中获取哈希值中的键

Configuration 如何在puppet中获取哈希值中的键,configuration,puppet,Configuration,Puppet,我不知道这是否可能。 我有这样一份清单: $some_external_value = 'pew_pew' $dict = { ensure => $ensure, configuration => { "random_name-${some_external_value}" => { command => 'python script.py config/random_name-${some_external_v

我不知道这是否可能。 我有这样一份清单:

$some_external_value = 'pew_pew'
$dict = {
    ensure => $ensure,
    configuration => {
         "random_name-${some_external_value}" => {
            command => 'python script.py config/random_name-${some_external_value}.cfg',
         },
         "some_other_name-${some_external_value}" => {
            command => 'python script.py config/some_other_name-${some_external_value}.cfg',
         },
         "without-external" => {
            command => "python script.py config/without-external.cfg",
            user => 'cluster',
         },
      }
}
notice ($dict["configuration"]["some_other_name-${some_external_value}"]["command"])
我明白了

是否有一些技巧只写一次键名,然后再引用它

"some_other_name-${some_external_value}" => {
     command => 'python script.py config/${wild_magic_variable_pasting_key_here}.cfg',
 },

你可能也可以用一辆自行车到达那里

…其中,ruby函数递归地用相应的键值替换
\uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu
标记

"some_other_name-${some_external_value}" => {
     command => 'python script.py config/${wild_magic_variable_pasting_key_here}.cfg',
 },
$orig_dict = {
  ...
  configuration => {
     "random_name-${some_external_value}" => {
        command => 'python script.py config/__KEY__.cfg',
     },
  ...
}

$dict = keysubst($orig_dict)