[chef] What is the cookbook development workflow in your team?


Chronological Thread 
  • From: Torben Knerr < >
  • To:
  • Subject: [chef] What is the cookbook development workflow in your team?
  • Date: Wed, 4 Jan 2012 20:58:00 +0100

Hi everybody,

Happy New Year! :-)

This is my first post to this mailing list. I'm trying to implement a proper workflow for developing cookbooks within a small team. Coming from a slightly different background (Java, Maven and the like) I'm looking for some experience on how to implement a typical develop/test/release cycle in a Chef environment.  

So, assuming you are developing cookbooks in a team, how would you go for adding a new feature to a cookbook:

 (a) develop -> test (using Vagrant/Chef Solo) -> repeat develop/fix/test cycle until done -> upload to team's chef server
 (b) develop -> test (upload to a private chef server) -> repeat develop/fix/test cycle until done -> upload to team's chef server
 (c) develop -> test (upload directly to team's chef server) -> repeat develop/fix/test cycle until done


I'm especially interested in:

 1) at which point in time do you share your sources (git push)?
    - are you working on feature branches, then merge + push when done?
    - when do you increase the cookbook version? in the commit where you merge back to master?
    - when do you create the tag? everytime you commit something on master?

 2) at which point in time do you upload the cookbook to the team's chef server (knife upload)?
    - whenever you want to test something?
    - strictly only after creating a tag (i.e. releases only)? 
    - do you always freeze uploaded cookbooks?
    - do you allow to overwrite cookbooks at all?

 3) how do you handle releases?
    - is every upload to the chef repository automatically a (public?) release for you? 
    - do you have the release process (roughly: "run tests -> create tag -> upload cookbook") automated?
    - how do you handle cookbook dependencies when you release? do you allow for versionless cookbook depends?


Eager to hear your experiences. Any help is appreciated!

Cheers,
Torben



Archive powered by MHonArc 2.6.16.

§