There are going to be times where you are working with a team of people.
There are going to be times where you cannot use Pantheon / Acquia and you are stuck with managing the server(s) and software (this includes drupal!)
In this instance, you have likely heard (or will likely hear) the following a number of times
"Could you please update the code on the dev site?"
"We need to push our changes to production."
which is quickly followed by
"HOLY @#@$%! Something broke! Revert it back!"
Don't you wish this could all be a bit (well...a lot) easier?
In this session, I will talk about Jenkins, a continuous integration tool that is very useful for testing your software and also for deploying it / managing it. We will go through 2 different scenarios:
1) Jenkins with Ægir (where we use fabric scripts to automatically drive deployments).
2) Jenkins with Capistrano (where we use pre-existing deployment management software to tie Jenkins and Drupal together).
In both instances, we are able to achieve a system that can perform code deployments, run updates, perform rollbacks, synchronize db/files between dev/staging/production/whateverelse and so much more.
To note: the setting up part is aimed at a person that is not scared to ssh into a server and perform tasks on the command line (but wants to get out of the habit of doing so). The button clicking is aimed at everyone else that you want using such a system without continually requesting it from the person that can do so.