My experience with automating CI farms has been considerably harder than
dedicated application or data base servers. I have automated both jenkins &
GoCD with Chef in past. Now I use GoCD exclusively. My advice will be:
- Start with the community jenkins cookbook, see how far those take you.
- There are bits and pieces of jenkins that are in xml and changes with
jenkins server’s lifespan (i.e. jenkins itself writes xml bits on those
files), but the initial bits has to be seeded for automation. I had written
xml_file cookbook to deal with those scenarios (some parts are managed by
chef) - Do not automate the bits that changes frequently (certain plugins), or
substantial information is not available. Automating those tend to hose the
system or gives non-idempotent resources.
hth
ranjib