Well, my gut feeling for
this is that it's because, when I promote a cookbook, I want all my
production servers to get that promotion. I don't want to have to
promote for each data center. I am specifically using my environments
to control cookbook code promotion and if I had a need, to key off the
name for organization-wide settings, like an integration URL that
differs across environments. For the record, when I say "promote a cookbook" I have 4 main cookbooks that represent server apps or profiles. Inside each of those cookbooks, the metadata points to the versions of supporting cookbooks it requires. So I pin versions of my 4 main profiles in the production env. I don't "promote" supporting cookbooks, but instead bump version numbers whenever I make a change so that the metadata version dependencies for each profile cookbook is very specific. Whatever secondary data container I settle on for dc-specific settings should be fairly static - local DNS, local package repos, whatever, requiring many fewer changes. I'm afraid this might have rambled a bit. I probably should write technical emails when I'm falling asleep. For the record, I appreciate everyone's input and have marked some of the Chef talks to also watch. I'm made this decision before and I've seen it made and disagreed with some implementations I've seen. My goal is to make the decision and not regret it in a few months. Sascha Torben Knerr wrote: " type="cite"> |
Archive powered by MHonArc 2.6.16.