Continuous integration - main principles

18
Lena Petsenchuk 23.04.2013 Continuous Integration

description

Continuous integration - main principles

Transcript of Continuous integration - main principles

Page 1: Continuous integration - main principles

Lena Petsenchuk23.04.2013

Continuous Integration

Page 2: Continuous integration - main principles

Agenda

Overview of

CI

Principles of

CI

Advantages

&

Disadvantages

of CI

Page 3: Continuous integration - main principles

Continuous Integration???

Page 4: Continuous integration - main principles

CI Proccess

Integrated machine

notifynotify

check outcheck out

check outcheck out monitor

monitor

check incheck in

check incheck in(commit)

(commit)

Page 5: Continuous integration - main principles

CI Principles

Page 6: Continuous integration - main principles

CI Principles

Maintain a code repository

Page 7: Continuous integration - main principles

Automate the build & deployment

CI Principles

Page 8: Continuous integration - main principles

Make the build self-testing

CI Principles

Page 9: Continuous integration - main principles

Everyone commits to the mainline everyday

CI Principles

Page 10: Continuous integration - main principles

Every commit to mainline should be built

CI Principles

Page 11: Continuous integration - main principles

Keep the build fast

CI Principles

Page 12: Continuous integration - main principles

Test in a clone of the production environment

CI Principles

Page 13: Continuous integration - main principles

Make it easy to get the latest executable

CI Principles

Page 14: Continuous integration - main principles

Everyone can see what’s happening

CI Principles

Page 15: Continuous integration - main principles

Advantages of CI

Easy to revert the codebase to a bug-free state

Continuous detection and fixing of integration

problems  

Early warning of broken/incompatible code

Early warning of conflicting changes

Immediate unit testing of all changes

Constant availability of a "current" build

Immediate feedback

Developing modular, less complex and high - quality

code

Page 16: Continuous integration - main principles

Disadvantages of CI

Initial setup time required

Well-developed test-suite required

Page 17: Continuous integration - main principles

Conclusion

Page 18: Continuous integration - main principles

Questions