- From: Noah Kantrowitz <
>
- To:
- Subject: [chef] Re: Using Berkshelf 3 with multiple sources
- Date: Wed, 3 Sep 2014 15:43:41 -0700
On Sep 3, 2014, at 1:53 PM, Anton Koldaev
<
>
wrote:
>
Are there some good practices on using Chef with multiple sources?
>
>
Let's assume I have the following setup:
>
1. Private cookbooks repo
>
- apt v0.0.1
>
2. supermarket.getchef.com
>
- apt v0.0.2
>
3. Cookbook mycook depends on apt cookbook.
>
4. Both apt v0.0.1 and v0.0.2 are already installed(as dependencies of some
>
other cookbooks) in ~/.berkshelf/cookbooks
>
5. mycook/Berksfile:
>
source 'my-private-repo'
>
source 'supermarket'
>
metadata
>
>
In such setup `berks install` from 'mycoook' cookbook will always be using
>
the highest available version found in ~/.berkshelf/cookbooks, in this case
>
it's apt v0.0.2. It doesn't care about the order of sources in Berksfile. I
>
understand why it happens but it doesn't suit me.
>
>
To make Berkshelf using apt v.0.0.1 I can:
>
1. remove apt 0.0.2 from ~/.berkshelf/cookbooks
>
or
>
2. `berks vendor` cookbook in dir other than ~/.berkshelf/cookbooks
>
or
>
3. specify private source for 'apt' cookbook in Berksfile
>
or
>
4. specify v0.0.1 version for 'apt' cookbook in Berksfile
>
>
Since I have a lot of private cookbooks intersecting with community's
>
cookbooks specifying source or version in Berksfile for each dependent
>
cookbook is not a great idea.
>
Options 1 and 2 require extra actions instead of simple `berks install`.
>
>
Is there a better way of handling such workflow?
You just have to run your own berks-api server that has both the community
site and chef server sources configured. AFAIK Berks 3 only supports a single
API server at a time right now, though this might change in the future.
--Noah
Attachment:
signature.asc
Description: Message signed with OpenPGP using GPGMail
Archive powered by MHonArc 2.6.16.