是否有可能在属性文件中获取当前环境?

问题描述:

我愿做这样的事情:是否有可能在属性文件中获取当前环境?

属性/ default.rb

if node[:chef_environment] == 'dev' 
    include_attribute "mbev::dev" 
else 
    include_attribute "mbdev::production" 
end 

但看来,“节点”是当前节点的相同名称。

尝试node.chef_environment?这是一个返回值而不是属性的函数。

+1

不适用于最近版本的厨师(我有ChefDK 0.17.17) – sixty4bit

在一个属性文件中,我想你只想使用chef_environment,根据this发布在主厨邮件列表中,并由我独立确认。然后

你的属性文件应该是这样的:

if chef_environment == 'dev' 
    include_attribute "mbev::dev" 
else 
    include_attribute "mbdev::production" 
end 

node.chef_environment将在食谱工作。