Chef Data Bags和动态变量传递

时间:2015-02-13 03:27:40

标签: dynamic chef databags

我试图想办法让下面的代码工作;我尝试了各种方法,但是厨师 - 客户端在第3行开始运行。

lsf = "#{node[:env]}"+"_ls"
dsf = "#{node[:env]}"+"_ds"

dsTemplateBag = data_bag_item('configTemplates', "#{dsf}") 
lcTemplateBag = data_bag_item('configTemplates', "#{lsf}")

然而,在另一个测试配方中,我能够成功地完成以下工作:

env = "test"

dsTemplateBag = data_bag_item('configTemplates', "#{env}")

我对厨师很陌生,请有人可以告诉我如何让这个工作吗?

1 个答案:

答案 0 :(得分:1)

经过一点点调试后,我意识到有一个错字导致数据包无法正常使用;因此问题。

dsTemplateBag = data_bag_item('configTemplates', "#{node[:env]}_ls")
这对我有用。正如Tensibai在上面的评论中所说,混合连接和插值不是一个好习惯(我迫切希望它能够起作用!在我的辩护中)。