- From: Bryan Berry <
>
- To:
- Subject: [chef] conflict between using environments to manage cookbook releases and to manage application environments
- Date: Tue, 1 May 2012 10:47:19 +0200
Dear Chefs,
I am flummoxed by my conflicting needs for Chef environments. I currently have 2 environments:
_default
QA: cookbooks that I am testing, I know exactly which nodes are in here and they can tolerate a service restart or two. No important nodes belong to this environment
PROD: Only stable, tested cookbook versions here, the vast majority of nodes belong to this environment
on the other hand, my organization has 4, count 'em, 4 application_environments
PROD - production
QA - user-facing tests
TS - integration tests
DV - development servers
All of these servers should be using stable, tested cookbooks as my devs don't want to be disrupted by a misbehaving cookbook. Thus all of them belong to PROD chef_environment, besides the couple that I am using to test cookbooks at a given moment.
I currently manage application_environments with data bags that look like this
apps/esb.json
{
"pr": {
"database_schema": "production_schema"
},
"qa": {
"database_schema": "qa_schema"
}
. . . .
}
additionally, I add a top-level attribute to each node "app_env" that indicates which application_environment a node belongs to
Some cookbooks, such as the haproxy cookbook, treat chef_environments like application_environments
I would love to treat chef_environments like application_environments but that would completely break my workflow. How are others dealing w/ the issues I have brought up here?
- [chef] conflict between using environments to manage cookbook releases and to manage application environments, Bryan Berry, 05/01/2012
Archive powered by MHonArc 2.6.16.