[chef] Re: Re: Re: knife.rb cookbook_path with Berkshelf


Chronological Thread 
  • From: Ranjib Dey < >
  • To:
  • Subject: [chef] Re: Re: Re: knife.rb cookbook_path with Berkshelf
  • Date: Wed, 21 Aug 2013 12:34:27 -0700

you can specify any valid git rev iirc (i.e. branch, sha, tag etc), since berks uses the ~/.berkshelf/cookbooks as cache directory, it will store all the versions that you have specified in your berksfile.


On Wed, Aug 21, 2013 at 12:31 PM, Mark H. Nichols < " target="_blank"> > wrote:


On Aug 21, 2013, at 2:02 PM, Ranjib Dey < "> > wrote:

> berkshelf stores the cookbooks in a directory which has their version . So sudo cookbook will be stored as sudo-1.0.0. This wont work with chef, as it expects a directory named sudo. You need to invoke berkshelf install --path <some dir> and use <some dir>  as your cookbook_path.

Okay. I see that what I think of as 'ome_jboss' is actually 'one_jboss_23489h-daa338348c4d14e9e1abe693ecc98dfc6d412f5c'. Actually there are several ome_jboss cookbook versions, each with a different sha. All of our private cookbooks are individual Git repositories on GitHub and were populated into .berkshelf/cookbooks via a line like this in a Berksfile:

cookbook 'ome_jboss', github: 'kstateome/ome_jboss', protocol: :ssh

In reading the Berkshelf documentation I don't see a way to specify something other than the Git SHA to be appended to the resulting directory name.  Do I need to tag with the current version number all of our private cookbooks so that I can pull those specific versions into Berkshelf?

Thanks,
Mark





Archive powered by MHonArc 2.6.16.

§