Chef Newbie here ... please be gentle.
The team I'm working with is planning to use Chef for deployment, but our approach seems to have some issues and I think it might be partly a conceptual misunderstanding.
The project is Java with artifacts being created by Maven and deployed into Nexus. Each deployed artifact is uniquely identified by an SCM revision number (101 in the example below). No SNAPSHOT builds.
My current thinking is that we create a new Maven module in our existing project that contains all the needed Chef recipes. This way, the correct infrastructure configuration will always be tied to the correct code.
The Maven artifacts would be deployed by our build server to Nexus such as:
* web-client-1.5.101.war <-- for web server
* batch-client-1.5.101.jar <-- for batch server
* infrastructure-1.5.101.zip <-- chef recipes
Now here's where I get confused.
* Should an external Chef process (chef server?) be responsible for picking up a specific version of infrastructure.zip and running the recipes in it on the target machines?
* Should the recipes be stored apart from the code? But if so, how does it hang together with the deployable artifacts?
* Am i just thinking of this all wrong?
Thanks!
---
Nayan Hajratwala - 734.658.6032 - http://agileshrugged.com - @nhajratw
Archive powered by MHonArc 2.6.16.