2. What is CI? A development methodology of daily development integration verified by automated build
3. Doing CI Integrate your code Automated Build Run Tests Deploy to various places (Test, Staging) Review failures to integrate Do this continuously On every check-in Every X minutes
4. Why we should do CI? developers detect and fix integration problems continuously - avoiding last-minute chaos at release dates early warning of broken/incompatible code early warning of conflicting changes constant availability of a "current" build for testing, demo, or release purposes immediate feedback to developers on the quality, functionality, or system-wide impact of code they are writing
5. Build Automation No human interaction needed Try Gets latest source version Compiles all configurations Run all unit tests Run all automated functional/Integration tests Deploy to Test, Stage Report Success Catch (Exception) Report Failure Compile failed Test failed