这是我的global.yaml文件
---
puppet:
running: 'running'
atboot: true
当我运行“ hiera --config hiera.yaml puppet”时,输出为
{"running"=>"running", "atboot"=>true}
这是预期的输出。
但是当我尝试通过运行“ hiera --config hiera.yaml puppet :: running”来访问内部值时,我得到的值为nil。 我的hiera版本是3.0.6。
答案 0 :(得分:1)
您误解了puppet::running
是键名,而您似乎想要puppet.running
。
如果您有一个common.yaml文件,其内容为:
---
puppet:
running: running
atboot: true
puppet::running: foo
在最新的Puppet 5和6中,您可以尝试执行此操作(记住,不建议使用hiera CLI命令,而是要使用puppet查找):
$ puppet lookup puppet
---
running: running
atboot: true
$ puppet lookup puppet::running
--- foo
$ puppet lookup puppet.running
--- running
或者,在您的Puppet版本中:
$ hiera puppet
{"running"=>"running", "atboot"=>true}
$ hiera puppet::running
foo
$ hiera puppet.running
running