Hi all,
I just remembered adding this wiki page a little while back, but not padding it out yet, http://wiki.opscode.com/display/chef/Cookbook+Workflows. I thought it would be a good place to list all of the different cookbook workflows, maybe use cases, pros/cons. Am I duplicating something that already exists in a place that glaringly obvious to everyone but me?
If not, would love the addition of other workflows I havenāt listed yet. Iām hoping to get a chance to pad out the others soon.
Anthony Goddard
Woods Hole Marine Biological Laboratory
This looks really great. The more ābest practicesā documentation out there
the better. Iād love to know of any more out there. Thanks Anthony!
Kevin Harvey
Web Developer
kcharvey@gmail.com
On Tue, Jan 31, 2012 at 9:08 AM, Anthony Goddard agoddard@mbl.edu wrote:
Hi all,
I just remembered adding this wiki page a little while back, but not
padding it out yet,
http://wiki.opscode.com/display/chef/Cookbook+Workflows. I thought it
would be a good place to list all of the different cookbook workflows,
maybe use cases, pros/cons. Am I duplicating something that already exists
in a place that glaringly obvious to everyone but me?
If not, would love
the addition of other workflows I havenāt listed yet. Iām hoping to get a
chance to pad out the others soon.
Anthony Goddard
Woods Hole Marine Biological Laboratory
Great idea! I would also be interested in collecting best practices,
especially concerning the cookbook development workflows. So far I did not
find any valuable information except on this mailing list 
We had some discussions about the topic recently on this list:
http://lists.opscode.com/sympa/arc/chef/2012-01/msg00046.html
http://lists.opscode.com/sympa/arc/chef/2012-01/msg00090.html
Donāt know if that fits for every situation, but currently I would consider
this as a ābest practiceā:
- cookbooks should be versioned independently, thus they need their own git
repositories.
- for pulling together a sound baseline of independently versioned
cookbooks you can use either git submodules or librarian.
- a concept of explicit SNAPSHOT versions (as in maven) would be useful
during development. As there are no explicit SNAPSHOT versions, you can
still agree on a convention, e.g. each X.Y.Z version with an odd Z number
is considered a āSNAPSHOTā
Cheers,
Torben
On Tue, Jan 31, 2012 at 3:23 PM, Kevin Harvey kcharvey@gmail.com wrote:
This looks really great. The more ābest practicesā documentation out there
the better. Iād love to know of any more out there. Thanks Anthony!
Kevin Harvey
Web Developer
kcharvey@gmail.com
On Tue, Jan 31, 2012 at 9:08 AM, Anthony Goddard agoddard@mbl.edu wrote:
Hi all,
I just remembered adding this wiki page a little while back, but not
padding it out yet,
http://wiki.opscode.com/display/chef/Cookbook+Workflows. I thought it
would be a good place to list all of the different cookbook workflows,
maybe use cases, pros/cons. Am I duplicating something that already exists
in a place that glaringly obvious to everyone but me?
If not, would love
the addition of other workflows I havenāt listed yet. Iām hoping to get a
chance to pad out the others soon.
Anthony Goddard
Woods Hole Marine Biological Laboratory
On Jan 31, 2012, at 10:51 AM, Torben Knerr wrote:
Great idea! I would also be interested in collecting best practices, especially concerning the cookbook development workflows. So far I did not find any valuable information except on this mailing list 
We had some discussions about the topic recently on this list:
http://lists.opscode.com/sympa/arc/chef/2012-01/msg00046.html
http://lists.opscode.com/sympa/arc/chef/2012-01/msg00090.html
Donāt forget about some of the knife plugins that are oriented around cookbook workflows, like āknife-sporkā (from the folks at Etsy) and others found at http://wiki.opscode.com/display/chef/Community+Plugins.
ā
Brad Knowles bknowles@ihiji.com
SAGE Level IV, Chef Level 0.0.1
Hi,
On Wed, Feb 1, 2012 at 3:51 AM, Torben Knerr ukio@gmx.de wrote:
- for pulling together a sound baseline of independently versioned cookbooks
you can use either git submodules or librarian.
Another alternative that is working well for us is to use braid [1] to
manage external repositories. Braid describes itself as ābraid is a
simple tool to help track git or svn repositories inside a git
repository.ā
The really nice thing that it has over other alternatives is that you
can easily push changes back from the local repo back to the source
repo. An example usage is
add remote repo
braid add git@github.com:realityforge/chef-glassfish.git cookbooks/glassfish
ā¦
pull changes from remote repo
braid update cookbooks/glassfish
ā¦
vi cookbooks/glassfish/README.rdoc
ā¦
diff changes of local repo against remote repo
braid diff cookbooks/glassfish
ā¦
push changes of local repo back to remote repo
braid push cookbooks/glassfish
So far this has worked better for us than anything else.
[1] https://github.com/evilchelu/braid/wiki
ā
Cheers,
Peter Donald