Templates 如何将2个数据包变量传递给模板厨师
我试图将两个数据包作为变量传递到一个模板中,但它以错误消息结束。有人知道如何将2个数据包传递给模板吗 配方Templates 如何将2个数据包变量传递给模板厨师,templates,chef-infra,databags,Templates,Chef Infra,Databags,我试图将两个数据包作为变量传递到一个模板中,但它以错误消息结束。有人知道如何将2个数据包传递给模板吗 配方 db = data_bag_item('dbconnect', 'connection') dbkey = data_bag_item('database', 'databasename') template '/etc/config.cnf' do source 'config.cnf.erb' action :create variables (
db = data_bag_item('dbconnect', 'connection')
dbkey = data_bag_item('database', 'databasename')
template '/etc/config.cnf' do
source 'config.cnf.erb'
action :create
variables (
:dbcon => db,
:dbk => dbkey
)
end
模板
connection = mysql://<%= @dbcon['dbuser'] %>:<%= @dbcon['dbpasswd'] %>@<%= @dbcon['dbname'] %>/<%= @dbk['dbname'] %>
connection=mysql://:@/
好的。我得到了答案。
我遗漏了变量中的{}括号
db = data_bag_item('dbconnect', 'connection')
dbkey = data_bag_item('database', 'databasename')
template '/etc/config.cnf' do
source 'config.cnf.erb'
action :create
variables ({
:dbcon => db,
:dbk => dbkey
})
end
您可以编辑您的问题以显示错误消息吗?您还可以包括数据包的结构吗?@Tensibai-see(示例中缺少了一个逗号)和另一个示例:-现在使用Ruby 1.9+时,您也可以使用“key:value”语法而不是“hash rocket”(“=>”)@Tensibai您可以在评论中少一些攻击性吗?感谢Hanks Ronald当我们将值作为字符串传递时(…)工作正常,但当我尝试传递数据包(或嵌套哈希)时,我需要({…})