我试图在某处定义一个变量(可能在环境文件下)并在我的配方中使用/调用它以便我可以获取它的值,如果我更改环境文件(已定义具有不同值的相同变量) )然后我可以使用具有不同变量值的相同配方(在环境下定义)
有些人可以帮助我理解如何在环境下定义变量/属性,然后如何在配方文件中调用它
我试图在环境文件下定义属性,如下所示
"DB_IP":"xx.xx.xx.XX","BOX_NAME":"AIX2Wd4109",
并试图按照下面的方法打电话
BOX_NAME = json['defaults']['BOX_NAME']
DB_IP = json['defaults']['DB_IP']
但是在运行knife
命令时,值没有提升,得到如下错误
Chef Client failed. 0 resources updated in 5.975572324 seconds←[0m
[2016-01-19T13:15:57+00:00] ERROR: uninitialized constant Chef::Recipe::BOX_NAME
答案 0 :(得分:0)
回应上述评论,这才是真正的答案:
访问这些节点属性的方法是node['DB_IP']
和node['BOX_NAME']
。
我同意你应该继续学习学习厨师教程,它涵盖了与Chef合作的基础知识。