berkshelf / vagrant-berkshelf

A Vagrant plugin to add Berkshelf integration to the Chef provisioners
Other
379 stars 100 forks source link

config.berkshelf.only does not work #259

Closed tknerr closed 9 years ago

tknerr commented 9 years ago

I'm trying to use vagrant-berkshelf for resolving multiple disjoint (top level) cookbooks that make up a multi-vm infrastructure.

The general approach is:

However, it does not work -- no cookbook dependencies are resolved and the shelf stays empty :-(

Here is a repro case: https://github.com/tknerr/sample-infrastructure-repo/pull/4

This is using vagrant-berkshelf 4.0.2 and berkshelf 3.2.3 on Win7

tknerr commented 9 years ago

Further debugging reveals the underlying berks command. Running it in isolation has the same effect (i.e. no cookbook dependencies being resolved):

C:\Repos\_github\sample-infrastructure-repo>W:\\tools\\chefdk\\bin/berks.BAT vendor W:/home/.berkshelf/vagrant-berkshelf/shelves/berkshelf20150125-92596-1mwya1q-app_v1 --berksfile C:/Repos/_github/sample-infrastructure-repo/Berksfile --only app_v1
Resolving cookbook dependencies...

Reducing the example to its essence, but still doesn't work:

C:\Repos\_github\sample-infrastructure-repo>berks vendor --only app_v1
Resolving cookbook dependencies...

Plain berks vendor without the --only flag works though:

C:\Repos\_github\sample-infrastructure-repo>berks vendor
Resolving cookbook dependencies...
Fetching 'sample-app' from source at ../_cookbooks/sample-toplevel-cookbook
Fetching cookbook index from https://supermarket.chef.io...
Using apache2 (3.0.0)
Using apt (2.6.1)
Using iptables (0.14.1)
Installing logrotate (1.8.0)
Using sample-app (0.2.1) from source at ../_cookbooks/sample-toplevel-cookbook
Vendoring apache2 (3.0.0) to C:/Repos/_github/sample-infrastructure-repo/berks-cookbooks/apache2
Vendoring apt (2.6.1) to C:/Repos/_github/sample-infrastructure-repo/berks-cookbooks/apt
Vendoring iptables (0.14.1) to C:/Repos/_github/sample-infrastructure-repo/berks-cookbooks/iptables
Vendoring logrotate (1.8.0) to C:/Repos/_github/sample-infrastructure-repo/berks-cookbooks/logrotate
Vendoring sample-app (0.2.1) to C:/Repos/_github/sample-infrastructure-repo/berks-cookbooks/sample-app
sethvargo commented 9 years ago

Seems like a bug in Berkshelf then?

tknerr commented 9 years ago

Yep, right. Created https://github.com/berkshelf/berkshelf/issues/1378

sethvargo commented 9 years ago

Closing since this is an upstream issue