我有一个可以在虚拟机或真机上运行的厨师食谱。我需要能够在厨师内部区分它们,因为我需要区别对待它们。我在互联网上找到了一些说我应该使用
的东西if node[:instance_role] == 'vagrant'
但这对我来说似乎不起作用。 node [:instance_role]只是空白。
你知道其他任何做法吗?
我使用chef_solo和vagrant配置
答案 0 :(得分:5)
在node['virtualization']
下查找有关VM运行时的信息。 Vagrant实际上并不是一个虚拟机系统,所以你不会看到任何相关内容。针对Vagrant特定行为的更好选择是在Vagrantfile中设置节点属性并在食谱代码中引用该属性。