ci comparison (romobos-2017)

55
COMPARISON OF DIFFERENT CI SERVICES 1 — Mobos 2017, comparison of different CI services

Upload: veaceslav-gaidarji

Post on 21-Jan-2018

187 views

Category:

Engineering


0 download

TRANSCRIPT

Page 1: CI comparison (Romobos-2017)

COMPARISON OF DIFFERENT CI SERVICES

1 — Mobos 2017, comparison of different CI services

Page 2: CI comparison (Romobos-2017)

ABOUT ME

VEACESLAV GAIDARJI (SLAVA)ANDROID DEPARTMENT MANAGER

@ ELLATION2 — Mobos 2017, comparison of different CI services

Page 3: CI comparison (Romobos-2017)

AGENDA

1. CI on mobile project

3 — Mobos 2017, comparison of different CI services

Page 4: CI comparison (Romobos-2017)

AGENDA

1. CI on mobile project2. Comparison

4 — Mobos 2017, comparison of different CI services

Page 5: CI comparison (Romobos-2017)

AGENDA

1. CI on mobile project2. Comparison3. Conclusion

5 — Mobos 2017, comparison of different CI services

Page 6: CI comparison (Romobos-2017)

CONTINOUSINTEGRATION

6 — Mobos 2017, comparison of different CI services

Page 7: CI comparison (Romobos-2017)

NO CI (MANUAL -!)

! (" -> #)7 — Mobos 2017, comparison of different CI services

Page 8: CI comparison (Romobos-2017)

NO CI (MANUAL -!)

! (" -> #,$)8 — Mobos 2017, comparison of different CI services

Page 9: CI comparison (Romobos-2017)

NO CI (MANUAL -!)

! (" -> #,$,%)

9 — Mobos 2017, comparison of different CI services

Page 10: CI comparison (Romobos-2017)

NO CI (MANUAL -!)

! (" -> #,$,%+ !")

10 — Mobos 2017, comparison of different CI services

Page 11: CI comparison (Romobos-2017)

NO CI (MANUAL -!)

! (" -> #,$,%+ !" + # + $)

11 — Mobos 2017, comparison of different CI services

Page 12: CI comparison (Romobos-2017)

CONTINUOUS INTEGRATION (AUTO +!)

☁ (! -> ",#,$+ !" + # + $)

12 — Mobos 2017, comparison of different CI services

Page 13: CI comparison (Romobos-2017)

CONTINUOUS INTEGRATION (AUTO +!)> ! build

> " unit tests

> # static code analysis

> $% UI tests

> & deploy

> ' notify13 — Mobos 2017, comparison of different CI services

Page 14: CI comparison (Romobos-2017)

SUCCESS!14 — Mobos 2017, comparison of different CI services

Page 15: CI comparison (Romobos-2017)

FAILURE!15 — Mobos 2017, comparison of different CI services

Page 16: CI comparison (Romobos-2017)

COMPARISON16 — Mobos 2017, comparison of different CI services

Page 17: CI comparison (Romobos-2017)

EXISTING CI'S17 — Mobos 2017, comparison of different CI services

Page 18: CI comparison (Romobos-2017)

EXISTING CI'S

> Jenkins> TeamCity> Gitlab CI> Travis CI> ... (10+)

18 — Mobos 2017, comparison of different CI services

Page 19: CI comparison (Romobos-2017)

WHICH ONE TO CHOOSE?

19 — Mobos 2017, comparison of different CI services

Page 20: CI comparison (Romobos-2017)

MY EXPERIENCE

> Jenkins - 2 years + contribution> Bitrise - 1.5 years + contribution

> Travis - 1.5 years

20 — Mobos 2017, comparison of different CI services

Page 21: CI comparison (Romobos-2017)

MY EXPERIENCE

> Jenkins - 2 years + contribution> Bitrise - 1.5 years + contribution

> Travis - 1.5 years> TeamCity, Circle CI, Shippable, BuddyBuild - basics

21 — Mobos 2017, comparison of different CI services

Page 22: CI comparison (Romobos-2017)

SHOW ME THE CODE!!!

22 — Mobos 2017, comparison of different CI services

Page 23: CI comparison (Romobos-2017)

HTTPS://GITHUB.COM/VGAIDARJI/CI-MATTERS

23 — Mobos 2017, comparison of different CI services

Page 24: CI comparison (Romobos-2017)

CHOICE #1 JENKINS

24 — Mobos 2017, comparison of different CI services

Page 25: CI comparison (Romobos-2017)

CHOICE #1 JENKINS

> self/cloud

25 — Mobos 2017, comparison of different CI services

Page 26: CI comparison (Romobos-2017)

CHOICE #1 JENKINS

> self/cloud> community

26 — Mobos 2017, comparison of different CI services

Page 27: CI comparison (Romobos-2017)

CHOICE #1 JENKINS

> self/cloud> community

> 1000+ integrations

27 — Mobos 2017, comparison of different CI services

Page 28: CI comparison (Romobos-2017)

CHOICE #1 JENKINS

> self/cloud> community

> 1000+ integrations> 0/XXX$

28 — Mobos 2017, comparison of different CI services

Page 29: CI comparison (Romobos-2017)

CHOICE #2 BITRISE

29 — Mobos 2017, comparison of different CI services

Page 30: CI comparison (Romobos-2017)

CHOICE #2 BITRISE

> cloud

30 — Mobos 2017, comparison of different CI services

Page 31: CI comparison (Romobos-2017)

CHOICE #2 BITRISE

> cloud> support

31 — Mobos 2017, comparison of different CI services

Page 32: CI comparison (Romobos-2017)

CHOICE #2 BITRISE

> cloud> support

> 50+ integrations

32 — Mobos 2017, comparison of different CI services

Page 33: CI comparison (Romobos-2017)

CHOICE #2 BITRISE

> cloud> support

> 50+ integrations> 50$/month

33 — Mobos 2017, comparison of different CI services

Page 34: CI comparison (Romobos-2017)

CHOICE #3 TRAVIS

34 — Mobos 2017, comparison of different CI services

Page 35: CI comparison (Romobos-2017)

CHOICE #3 TRAVIS

> cloud

35 — Mobos 2017, comparison of different CI services

Page 36: CI comparison (Romobos-2017)

CHOICE #3 TRAVIS

> cloud> community

36 — Mobos 2017, comparison of different CI services

Page 37: CI comparison (Romobos-2017)

CHOICE #3 TRAVIS

> cloud> community

> 10+ integrations

37 — Mobos 2017, comparison of different CI services

Page 38: CI comparison (Romobos-2017)

CHOICE #3 TRAVIS

> cloud> community

> 10+ integrations> 69$/month

38 — Mobos 2017, comparison of different CI services

Page 39: CI comparison (Romobos-2017)

CHOICE #4 TEAMCITY

39 — Mobos 2017, comparison of different CI services

Page 40: CI comparison (Romobos-2017)

CHOICE #4 TEAMCITY

> self/cloud

40 — Mobos 2017, comparison of different CI services

Page 41: CI comparison (Romobos-2017)

CHOICE #4 TEAMCITY

> self/cloud> documentation

41 — Mobos 2017, comparison of different CI services

Page 42: CI comparison (Romobos-2017)

CHOICE #4 TEAMCITY

> self/cloud> documentation

> 100+ integrations

42 — Mobos 2017, comparison of different CI services

Page 43: CI comparison (Romobos-2017)

CHOICE #4 TEAMCITY

> self/cloud> documentation

> 100+ integrations> 299$

43 — Mobos 2017, comparison of different CI services

Page 44: CI comparison (Romobos-2017)

CHOICE #5 CIRCLE CI

44 — Mobos 2017, comparison of different CI services

Page 45: CI comparison (Romobos-2017)

CHOICE #5 CIRCLE CI

CLOSE TO TRAVIS CI

45 — Mobos 2017, comparison of different CI services

Page 46: CI comparison (Romobos-2017)

CHOICE #5 CIRCLE CI

CLOSE TO TRAVIS CI> SSH

> parallel execution of tests> artifacts

46 — Mobos 2017, comparison of different CI services

Page 47: CI comparison (Romobos-2017)

CHOICE #6 BUDDYBUILD

47 — Mobos 2017, comparison of different CI services

Page 48: CI comparison (Romobos-2017)

CHOICE #6 BUDDYBUILD

'SUPER SMART'

48 — Mobos 2017, comparison of different CI services

Page 49: CI comparison (Romobos-2017)

CHOICE #7 SNAPCI

CLOSES IN 2017

49 — Mobos 2017, comparison of different CI services

Page 50: CI comparison (Romobos-2017)

SUMMARY

50 — Mobos 2017, comparison of different CI services

Page 51: CI comparison (Romobos-2017)

SUMMARY

1. Jenkins or TeamCity for complex workflow

51 — Mobos 2017, comparison of different CI services

Page 52: CI comparison (Romobos-2017)

SUMMARY

1. Jenkins or TeamCity for complex workflow2. Travis CI for OS projects (simple workflow)

52 — Mobos 2017, comparison of different CI services

Page 53: CI comparison (Romobos-2017)

SUMMARY

1. Jenkins or TeamCity for complex workflow2. Travis CI for OS projects (simple workflow)

3. Bitrise.io for any workflow

53 — Mobos 2017, comparison of different CI services

Page 54: CI comparison (Romobos-2017)

SUMMARY

1. Jenkins or TeamCity for complex workflow2. Travis CI for OS projects (simple workflow)

3. Bitrise.io for any workflow4. Smart but configurable and reliable

54 — Mobos 2017, comparison of different CI services

Page 55: CI comparison (Romobos-2017)

Q&A

EMAIL: [email protected]

GITHUB: VGAIDARJI/CI-MATTERS

BLOG: WWW.VGAIDARJI.ME55 — Mobos 2017, comparison of different CI services