Check if chef is running as chef-solo

chef-infra, chef-recipe, vagrant

Solution

Use the `Chef::Config` object:

unless Chef::Config[:solo]
  include_recipe 'a_recipe_that_requires_chef_server'
end

Problem

I'm using Vagrant and chef-solo to test my cookbooks, but I have one particular recipe that requires chef-server (it uses search). I'd like my default recipe to look like the following: ``` include_recipe 'some_recipe' include_recipe 'some_other_recipe' unless running_as_chef_solo? include_recipe 'a_recipe_that_requires_chef_server' end ``` How can I check whether chef is running as chef-solo from within a cookbook, so I can skip unsupported recipes?

Original source