title: Chef-solo can't find cookbook with Vagrant and Windows
body: <p>I'm attempting to manage a windows web server with the chef 'iis' cookbook and vagrant. </p>
  
  <p>When I attempt to run chef-solo, it throws an error that the cookbook is not found. </p>
  
  <p>The error message:</p>
  
  <pre><code>sowens-MBP:vagrant-windows sowen$ vagrant provision
  ==&gt; default: Running provisioner: chef_solo...
  ==&gt; default: Vagrant does not support detecting whether Chef is installed
  ==&gt; default: for the guest OS running in the machine. Vagrant will assume it is
  ==&gt; default: installed and attempt to continue.
  Generating chef JSON and uploading...
  ==&gt; default: Running chef-solo...
  ==&gt; default: [2015-02-10T16:18:24-08:00] INFO: *** Chef 12.0.3 ***
  ==&gt; default: [2015-02-10T16:18:24-08:00] INFO: Chef-client pid: 2508
  ==&gt; default: [2015-02-10T16:18:30-08:00] INFO: Setting the run_list to ["recipe[example-webserver2012]"] from CLI options
  ==&gt; default:
  ==&gt; default: [2015-02-10T16:18:30-08:00] INFO: Run List is [recipe[example-webserver2012]]
  ==&gt; default: [2015-02-10T16:18:30-08:00] INFO: Run List expands to [example-webserver2012]
  ==&gt; default: [2015-02-10T16:18:30-08:00] INFO: Starting Chef Run for vagrant-2012-r2.nv.com
  ==&gt; default: [2015-02-10T16:18:30-08:00] INFO: Running start handlers
  ==&gt; default: [2015-02-10T16:18:30-08:00] INFO: Start handlers complete.
  ==&gt; default: [2015-02-10T16:18:30-08:00] ERROR: Running exception handlers
  ==&gt; default:
  ==&gt; default: [2015-02-10T16:18:30-08:00] ERROR: Exception handlers complete
  ==&gt; default: [2015-02-10T16:18:30-08:00] FATAL: Stacktrace dumped to C:/var/chef/cache/chef-stacktrace.out
  ==&gt; default: [2015-02-10T16:18:30-08:00] FATAL: Chef::Exceptions::CookbookNotFound: Cookbook iis not found. If you're loading iis from another cookbook, make sure you configure the dependency in your metadata
  Chef never successfully completed! Any errors should be visible in the
  output above. Please fix your recipes so that they properly complete.
  </code></pre>
  
  <p>Vagrantfile: </p>
  
  <pre><code># -*- mode: ruby -*-
  # vi: set ft=ruby :
  
  VAGRANTFILE_API_VERSION = "2"
  
  Vagrant.configure(2) do |config|
    config.vm.box = "lmayorga1980/windows-2012r2"
    config.vm.communicator = "winrm"
    config.vm.network "forwarded_port", host: 3389, guest: 3389
    config.vm.provider "virtualbox" do |v|
      v.cpus = 2
      v.memory = 2048
    end
  
    # Provisioning
    config.vm.provision "chef_solo" do |chef|
      # chef.cookbooks_path = ['C:\vagrant']
      chef.add_recipe "example-webserver2012"
    end
  end
  </code></pre>
  
  <p>Berksfile</p>
  
  <pre><code>source "https://supermarket.chef.io"
  
  metadata
  
  cookbook 'iis'
  </code></pre>
  
  <p>metadata.rb</p>
  
  <pre><code>name 'foobar'
  ...
  depends 'iis'
  </code></pre>
  
  <p>recipes/default.rb</p>
  
  <pre><code>iis_site 'Default Web Site' do
    action [:stop, :delete]
  end
  </code></pre>
  
  <p>The entire directory structure looks like this:
  The cookbook was created with <code>berks cookbook example-webserver2012</code>. 
  There are 2 vagrant files, I'm using the one in the top level. </p>
  
  <pre><code>$ tree vagrant-windows/
  vagrant-windows/
  ├── Vagrantfile
  └── cookbooks
      └── example-webserver2012
          ├── Berksfile
          ├── Berksfile.lock
          ├── CHANGELOG.md
          ├── Gemfile
          ├── Gemfile.lock
          ├── LICENSE
          ├── README.md
          ├── Thorfile
          ├── Vagrantfile
          ├── attributes
          ├── chefignore
          ├── files
          │   └── default
          ├── libraries
          ├── metadata.rb
          ├── providers
          ├── recipes
          │   └── default.rb
          ├── resources
          ├── templates
          │   └── default
          └── test
              └── integration
  </code></pre>
  
  <p>Why is cookbook 'iis' not found? </p>