[chef-dev] Re: Re: dependency spaghetti


Chronological Thread 
  • From: Noah Kantrowitz < >
  • To: Bryan Taylor < >
  • Cc: Blake Irvin < >, " Dev" < >
  • Subject: [chef-dev] Re: Re: dependency spaghetti
  • Date: Wed, 2 Oct 2013 17:32:54 -0700

There has been a long running concept to turn #suggests into an optional form 
of #depends, so it would have the same effect as depends if the cookbook is 
found in terms of triggering a download and loading in the right order, but 
wouldn't cause a failure if that cookbook wasn't found. Maybe after I get 
this dialect stuff squared away I'll write up that patch :)

--Noah

On Oct 2, 2013, at 5:26 PM, Bryan Taylor 
< >
 wrote:

> 
> I agree. I'd like to see a notion of "conditional dependence", so that java 
> depends on windows OR me setting an opt-out flag that says I won't ever 
> windows.   I sometimes go in and edit these dependencies out of the 
> metadata before I load it to my chef server. It happens a lot with yum or 
> apt as well.
> 
> From: Blake Irvin 
> < >
> Date: Wednesday, October 2, 2013 6:17 PM
> To: 
> "
>  Dev" 
> < >
> Subject: [chef-dev] dependency spaghetti
> 
> (Please redirect me if this is the wrong list)
> 
> We seem to be in a place as a Chef community where the 'depends' feature of 
> cookbook metadata is getting used a little bit too freely.
> 
> For example, the 'java' cookbook includes a 'depends' for the 'windows' 
> cookbook - this means that I'm forced to download the 'windows' cookbook to 
> all of my *nix machines.  Messy at best.
> 
> Shouldn't we be using 'suggests'?  Or better yet, shouldn't we reserve 
> dependency for cases where a cookbook really *must* have another cookbook 
> available to it to compile (and, shouldn't we avoid tightly-coupled 
> dependencies whenever possible because we don't wan to be brittle)?
> 
> This is especially painful for us because we are currently seeing very slow 
> download rates from hosted Chef (about 60kbps), so downloading addt'l 
> cookbooks makes things noticeably slower.
> 
> (Another great example of dependency hell is installing the 'nagios' 
> cookbook, which requires 'apache', which requires 'php', which in turn 
> requires 'mysql' - yet it's not really true that all of these things are 
> intrinsically tied together - we are losing the things we've learned from 
> the Unix model and service-oriented architectures when we staple things to 
> each other this way.)
> 
> Okay, so that got a little bit ranty, but that's because I really like Chef 
> and I hate to see a slim, sexy, powerful tool get bloated and brittle for 
> no good reason.
> 
> Discuss!
> 
> 
> Blake

Attachment: signature.asc
Description: Message signed with OpenPGP using GPGMail




Archive powered by MHonArc 2.6.16.

§