- From: AJ Christensen <
>
- To: chef <
>
- Subject: [chef] Re: Cookbook Dependency Version Question
- Date: Thu, 16 May 2013 11:03:14 +1200
Any run list which combines cookbook1+2+3 in the same Environment will
not be satiable due to a constraint and the run will error during
run_list expansion phase prior to compilation.
Valid run_list combinations:
cookbook1 + cookbook2 (dependency)
cookbook1 + cookbook3 (dependency)
I would advise performing infrastructure-wide maintenance to bring any
legacy dependencies up to the latest matching. This may involve
updates to 'cookbook2'.
If this is not a possibility, then the run_lists / cookbooks can be
segregated with different Environments -- pin = 1.0.0 in environment1,
pin 2.0.0 in environment2, converge the nodes in different
environments with more flexible dependency restriction. I would only
advise making use of this in the interim while your systems are moved
toward stable consistent dependencies. Indeed, "don't do this"
category applies.
Anyone else have any suggestions?
Cheers,
AJ
On 16 May 2013 10:54,
<
>
wrote:
>
Ohai!,
>
>
Google and docs.opscode.com haven't yielded me any answers so hoping someone
>
might shed some light on how conflicting depedencies versions are handled.
>
The
>
recent discussions around wrapper cookbooks and library cookbooks had
>
sparked
>
some discussion for us, albeit the question is more general than the wrapper
>
cookbook stuff.
>
>
Given the following scenario:
>
* Cookbook1 with versions 1.0.0 and 2 on the chef server
>
* Cookbook2 has `depends "Cookbook1", "= 1.0.0"`
>
* Cookbook3 has `depends "Cookbook1", "= 2.0.0"`
>
>
From what I've seen in the cookbook cache, it seems that only one copy of
>
any
>
cookbook is every downloaded locally. If so I assume the above example false
>
into the "don't do this" category?
>
>
What is the best way to handle situations where you have multiple cookbooks
>
that might have a common dependency, but each of those cookbooks might want
>
a
>
different version of that dependency?
>
>
Thanks
Archive powered by MHonArc 2.6.16.