你能用Hiera在yaml文件中散列数组吗
我正在尝试使用puppetlabs mysql模块使用puppetlabs创建一个具有一组权限的mysql用户 我的yaml看起来像这样:你能用Hiera在yaml文件中散列数组吗,yaml,puppet,hiera,Yaml,Puppet,Hiera,我正在尝试使用puppetlabs mysql模块使用puppetlabs创建一个具有一组权限的mysql用户 我的yaml看起来像这样: mysqlgrants: testuser@%{::ipaddress}/*.* : ensure : 'present' options : ['GRANT'] privileges: ['SELECT','INSERT','UPDATE','DELETE'] table : '*.*'
mysqlgrants:
testuser@%{::ipaddress}/*.* :
ensure : 'present'
options : ['GRANT']
privileges: ['SELECT','INSERT','UPDATE','DELETE']
table : '*.*'
user : "testuser@%{::ipaddress}"
然后我使用hiera_散列函数对mysqlgrants进行操作。当privileges值为数组时,此错误出现,但当privileges值仅为单个值(例如,['ALL'])时,此错误可以忽略。有人知道为什么吗
谢谢,
Jason已解决:
要在值为数组的情况下使用hiera哈希键值,请使用:
mysqlgrants:
testuser@%{::ipaddress}/*.* :
ensure : 'present'
options : ['GRANT']
privileges:
- SELECT
- UPDATE
- INSERT
- DELETE
table : '*.*'
user : "testuser@%{::ipaddress}"
现在在清单中,您可以调用hiera_hash(mysql_grant,mysqlgrants),而不会出现语法错误在@PeterM meh上询问/回答这个问题可能会更好,我想这在Puppet的编程方面是错误的。@OP使用这个的清单是什么?请检查粘贴,YAML格式不正确,但此处可能存在格式错误。最后,不使用
['ALL']
时会产生什么错误?