Upgrade to Pro — share decks privately, control downloads, hide ads and more …

CircleCI 2.0: Faster and more stable CI

CircleCI 2.0: Faster and more stable CI

potatotips 42

85cab5fdf09afe3ee78ce3667681915a?s=128

Keisuke Kobayashi

July 25, 2017
Tweet

Transcript

  1. CircleCI 2.0:
 Faster and more stable CI Keisuke Kobayashi /

    kobakei potatotips #42
  2. About Me • Keisuke Kobayashi • GitHub, Qiita: kobakei •

    Twitter: kobakei122 • Kyash, Inc. • ݸਓؒૹۚΞϓϦ
  3. Android CI

  4. CI is ۤߦ • ஗͍ • OOM • Jenkins͓͡͞Μ

  5. બ୒ࢶ • Jenkins • Circle CI • Wercker • bitrise.io

  6. બ୒ࢶ • Jenkins • Circle CI • Wercker • bitrise.io

    • Circle CI 2.0
  7. CircleCI 2.0 • Dockerαϙʔτ • ര଎ • OOM΋௚ͬͨ

  8. ͜Ε͕

  9. ͜͏ͳͬͨ

  10. ͜͏ͳͬͨ Ϗϧυ࣌ؒ60%୹ॖʂ

  11. Let’s try

  12. Migration from 1.0 • circle.yml —> .circleci/config.yml • YAMLͷίϚϯυ΋ҧ͏ •

    ҙ֎ʹ΋ެࣜͷ2.0༻YAML͕ͪΌΜͱಈ͘
  13. None
  14. DockerΠϝʔδࢦఆ
 (CircleCIఏڙ)

  15. ґଘؔ܎ͷΩϟογϡ

  16. ςετ࣮ߦ

  17. ͪΐͬͱ͚ͩखΛՃ͑Δ✍

  18. Crashlytics΁σϓϩΠ - deploy: name: Deploy APK command: | if [

    "${CIRCLE_BRANCH}" == "master" ]; then ./gradlew assembleDebug crashlyticsUploadDistributionDebug fi - store_artifacts: path: app/build/outputs destination: outputs
  19. tag pushͰδϣϒ͕૸Βͳ͍ • ະରԠΒ͍͠ʢϑΥʔϥϜ৘ใʣ • ͱΓ͋͑ͣ຤ඌʹ͜ΕΛ଍ͯ͠ճආͰ͖Δ deployment: fake_deploy_for_cci2: tag: /.*/

    commands: - echo "make tags run in 2.0"
  20. Thanks!