如何使用木偶查找直接访问 hiera 哈希中的值?



假设有一个hiera哈希:

foo::bar:
key1: 'value1'
key2: 'value2'

是否有可能直接使用查找函数查找key1的值?

我想到了这样的事情:

class myclass (
String $value1 = lookup('foo::bar::key1'),
) {
...
}

我能解决这个问题的唯一方法是查找哈希并在以后使用hash['key1']访问值,但也许有一种更干净的方法来做到这一点。

不幸的是,在 Puppet 中没有办法仅使用lookup来做到这一点。

从根本上说,lookup通过查找与哈希键无关的 Hiera 键来工作。foo::bar::baz形式的 Hiera 键实际上是一个非结构化字符串 - 这并不意味着存在称为foofoo::bar的哈希。::只是键字符串的一部分 - 它不是哈希查找的语法糖,例如,在 JavaScript 中.

lookup记录在

https://puppet.com/docs/puppet/latest/hiera_automatic.html

这现在可以在 puppet(v6 及更高版本(中实现! 您使用点表示法

lookup('foo::bar.key1')

请参阅此处的木偶文档:https://puppet.com/docs/puppet/7/hiera_automatic.html#access_hash_array-elements_keysubkey_notation

相关内容

  • 没有找到相关文章

最新更新