- From: Hedge Hog <
>
- To:
- Subject: [chef] Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Centralized cookbook-library repos vs distributed cookbook repos
- Date: Fri, 16 Apr 2010 08:35:10 +1000
- Domainkey-signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :content-type:content-transfer-encoding; b=kHh+KZByLGhQBZOOxOlaHczksc3s3ymsInLZo/+d9qfaY53IjUhMpDwC2CQ9fC7eM4 RLTTlLyklkzPChJVqrcNdkFtQ+fRPrnxi1IBN3hX+6JstH69V/SaeJz+xnpKh824l5Jk y7FyoLGDalpI+oxKuc9lsHalf/CaOhkotsmbs=
On Fri, Apr 16, 2010 at 7:43 AM, Adam Jacob
<
>
wrote:
>
On Wed, Apr 14, 2010 at 7:08 PM, Hedge Hog
>
<
>
>
wrote:
>
> This approach still preserves different cookbook-libraries as separate
>
> silo's.
>
> Simply becasue it still ties dependency management to repo organisation.
>
>
Yes - the places where a given cookbook lives as a unit of
>
collaboration is a separate silo.
>
>
There is also a dependency management problem, but we have the
>
ground-work already to solve that.
>
>
More on it in a sec.
>
>
> OK, this is getting clearer to me :)
>
>
>
> I think we are getting side tracked by the fact that cookbook library
>
> repo organization is being used to proxy for a dependency management
>
> solution.
>
> However, library repos are being justified/defended as easy to
>
> maintain in terms of VCS effort and _not_ dependency management
>
> effort!
>
> In my mind the two activities should be separate but have become conflated
>
> :(
>
> I don't think VCS used has anything to do with dependency management.
>
>
I agree.
>
>
> In reality the real reason for prefering library repos is _not_ that
>
> library repos are easier to _maintain_, rather cookbook dependencies
>
> are easier to _enforce_.
>
> Changing to cookbook repos will raise the same issues in CVS, hg, etc.
>
> - If you are not going to enforce cookbook-library silos, how do you
>
> manage cookbook dependencies?
>
>
>
> The cost of cookbook library repos is giving up distributed cookbook
>
> development and maintenance/admin burdens, having cookbook library
>
> silos develop indepently, etc all outlined in earlier emails
>
> The benefit of cookbook library repos is trivial dependency magement:
>
> Solve dependencies by getting all cookbooks from this cookbook-library
>
> and no others.
>
>
>
> The proposal to elevate cookbooks to repos is to try and create a low
>
> pain path for cookbook contributions to flow _around_ the community,
>
> rather than just up-and-down different cookbook-library silos.
>
> To do this we'd need a dependency management approach that works for
>
> Chef's users and use cases.
>
>
I think there is a third way, which is that we already have a
>
publishing platform for cookbooks, and the cookbooks themselves have
>
dependencies. I've extended the vendor stuff I wrote before, so that
>
it now downloads and vendors the first cookbook, and then reads the
>
metadata and repeats the process recursively for all the dependencies:
>
>
% ./knife cookbook site vendor wordpress 0.5.0 -d
>
>
Now grabs wordpress and all it's dependencies, giving you a tree like this:
>
>
% ls -la cookbooks
>
total 8
>
drwxr-xr-x 8 adam adam 272 Apr 15 14:32 ./
>
drwxr-xr-x 11 adam adam 374 Apr 15 14:32 ../
>
-rw-r--r-- 1 adam adam 151 Apr 15 14:32 README
>
drwxr-xr-x 10 adam adam 340 Mar 10 16:43 apache2/
>
drwxr-xr-x 11 adam adam 374 Apr 15 14:32 mysql/
>
drwxr-xr-x 7 adam adam 238 Feb 26 14:35 openssl/
>
drwxr-xr-x 8 adam adam 272 Apr 15 14:32 php/
>
drwxr-xr-x 8 adam adam 272 Apr 15 14:32 wordpress/
>
>
% git branch
>
chef-vendor-apache2
>
chef-vendor-mysql
>
chef-vendor-openssl
>
chef-vendor-php
>
chef-vendor-wordpress
>
* master
>
>
% git tag
>
chef-vendor-apache2-0.10.1
>
chef-vendor-mysql-0.15.0
>
chef-vendor-openssl-0.1.0
>
chef-vendor-php-0.7.0
>
chef-vendor-wordpress-0.5.0
>
>
If we start publishing cookbooks and specifying dependencies in
>
metadata, and extend the cookbooks site to allow the upstream
>
developers to put the source control end-point for development in,
>
we'll have versioned cookbooks, with dependency management, along with
>
the mechanisms required to live on the bleeding edge. And it'll be
>
discoverable.
>
>
Sound good?
>
>
> So it seems that the debate over cookbook repo approach really has
>
> little (nothing?) to do with the effort involved in managing repos and
>
> everything to do with the effort required by the dependency magaement
>
> solution adopted.
>
> Which really should be discussed in a separte thread:
>
> 'Freeing cookbook dependency management from source repo organization'
>
>
>
> Thoughts?
>
>
I think we agree. There are (at least) 3 things here:
>
>
1) How do you discover cookbooks you want to use
>
2) How do you track them over time, and potentially make site-specific
>
changes, and track *those* over time.
>
3) How do you track and resolve the dependencies one cookbook has on another
>
>
I think I've got the 'knife cookbook site vendor' stuff far enough
>
that it does all 3 of these based on the cookbook site information
>
today, and we can focus on adding in the functionality we need to
>
cover the remaining use cases.
>
>
You?
>
Sounds good.
Regular work can be a real PITA - give me 24hrs and I should have an
example alternative to discuss/evaluate :)
Regards
>
Adam
>
>
--
>
Opscode, Inc.
>
Adam Jacob, CTO
>
T: (206) 508-7449 E:
>
>
--
πόλλ' οἶδ ἀλώπηξ, ἀλλ' ἐχῖνος ἓν μέγα
[The fox knows many things, but the hedgehog knows one big thing.]
Archilochus, Greek poet (c. 680 BC – c. 645 BC)
http://wiki.hedgehogshiatus.com
- [chef] Re: Re: Re: Re: Re: Re: Re: Centralized cookbook-library repos vs distributed cookbook repos, (continued)
- [chef] Re: Re: Re: Re: Re: Re: Re: Centralized cookbook-library repos vs distributed cookbook repos, Hedge Hog, 04/13/2010
- [chef] Re: Re: Re: Re: Re: Re: Re: Re: Centralized cookbook-library repos vs distributed cookbook repos, Adam Jacob, 04/14/2010
- [chef] Re: Re: Re: Re: Re: Re: Re: Re: Re: Centralized cookbook-library repos vs distributed cookbook repos, Alex Soto, 04/14/2010
- [chef] Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Centralized cookbook-library repos vs distributed cookbook repos, Adam Jacob, 04/14/2010
- [chef] Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Centralized cookbook-library repos vs distributed cookbook repos, Alex Soto, 04/14/2010
- [chef] Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Centralized cookbook-library repos vs distributed cookbook repos, Adam Jacob, 04/14/2010
- [chef] Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Centralized cookbook-library repos vs distributed cookbook repos, dreamcat four, 04/14/2010
- [chef] Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Centralized cookbook-library repos vs distributed cookbook repos, Adam Jacob, 04/15/2010
- [chef] Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Centralized cookbook-library repos vs distributed cookbook repos, Hedge Hog, 04/14/2010
- [chef] Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Centralized cookbook-library repos vs distributed cookbook repos, Adam Jacob, 04/15/2010
- [chef] Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Centralized cookbook-library repos vs distributed cookbook repos, Hedge Hog, 04/15/2010
- [chef] Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Centralized cookbook-library repos vs distributed cookbook repos, Hedge Hog, 04/14/2010
- [chef] Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Centralized cookbook-library repos vs distributed cookbook repos, Adam Jacob, 04/15/2010
- [chef] Re: Re: Re: Re: Re: Re: Re: Centralized cookbook-library repos vs distributed cookbook repos, Ringo De Smet, 04/14/2010
- [chef] Re: Re: Re: Re: Re: Re: Re: Re: Centralized cookbook-library repos vs distributed cookbook repos, dreamcat four, 04/14/2010
- [chef] Re: Re: Re: Re: Re: Re: Re: Re: Re: Centralized cookbook-library repos vs distributed cookbook repos, Adam Jacob, 04/14/2010
Archive powered by MHonArc 2.6.16.