ビルド時間を1分短くするためにやったこと

 ビルド時間を1分短くするためにやったこと

B8f695167d115eef9f32399b1c9261df?s=128

Yuki Mima

July 25, 2017
Tweet

Transcript

  1. Ϗϧυ࣌ؒΛ1෼୹͘͢Δ ͨΊʹ΍ͬͨ͜ͱ potatotips #42 @amyu_san

  2. about me ▸ Mima Yuki ▸ @amyu_san ▸ https://github.com/amyu

  3. https://github.com/recruit-lifestyle/WaveSwipeRefreshLayout

  4. લఏ ▸ gradle-version=3.4.1 ▸ min-sdk-version=16 ▸ multidex ։ൃதͷࠩ෼ϏϧυͰ2෼͙Β͍

  5. ΍ͬͨ͜ͱ ▸ GradleͷόʔδϣϯΛ4.0΁ ▸ ಛఆͷGradle taskͷmin sdk versionΛ21΁ ▸ multidexͷ଎౓޲্ͷͨΊ

  6. Gradle 4.0΁ ▸ ./gradlew wrapper —gradle-version=4.0.0
 (gradle2.4↑) ▸ org.gradle.caching=true
 in

    gradle.properties ͜ΕͰ30ඵ͘Β͍୹ॖ
  7. ಛఆͷGradle TaskͷMin SDK VersionΛ21΁ ▸ debug buildTypesͷͱ͖ͷΈminSdkVersion=21ʹ͍ͨ͠ ▸ buildTypes಺ͰminSdkVersionΛมߋͰ͖ͳ͍ Gradle

    Task RequestΛ؂ࢹ͠ŊbuildTypes ͰઃఆϑΝΠϧͷಡΈࠐΈΛม͑Δ
  8. None
  9. ͜ΕͰ30ඵ͘Β͍୹ॖ

  10. ߹ܭͰ1෼͘Β͍୹ॖ

  11. 1೔10ϏϧυͰ10෼ 365೔Ͱ3650෼(60࣌ؒ) 10೥Ͱ36500෼…

  12. ༨ஊ : ͦͷDeploygate഑෍ŊࠓඞཁͰ͔͢?

  13. ༨ஊ : ͦͷDeploygate഑෍ŊࠓඞཁͰ͔͢? ▸ CIͷϦιʔεΛଟ͘࢖͏ ▸ assemble task͕ී௨ʹ௕͍ ▸ ଞŊࣗͷνʔϜͰCI଴͕ͪൃੜ͢Δ

    ▸ ͭ͡͸ৗʹ࠷৽ʹͯ͠΄͍͠ͱ͍͏ཁ๬͕ͳ͍ ▸ ࠷৽Λ֬ೝ͍ͨ͠ͱ͖͚ͩ࠷৽ͷAPK͕΄͍͠
  14. ༨ஊ : ͦͷDeploygate഑෍ŊࠓඞཁͰ͔͢? ▸ CIͷϦιʔεΛଟ͘࢖͏ ▸ ࣾ಺JenkinsͰassemble taskΛؚΉDeploygate΁ͷ഑৴ Λߦ͏ ▸

    ͭ͡͸ৗʹ࠷৽ʹͯ͠΄͍͠ͱ͍͏ཁ๬͕ͳ͍ ▸ JenkinsͰຖ೔໷தͷ3࣌ࠒʹDeploygateΛߋ৽͢Δ ▸ ࠷৽͕΄͍͠ͱ͖͸Amazon Dash ButtonΛԡͯ͠໯͏
  15. Job Request ഑෍ ຖ൩3࣌ʹ Job͕૸Δ

  16. ༨ஊ : ͦͷDeploygate഑෍ŊࠓඞཁͰ͔͢? ▸ AndroidνʔϜͷ͍ͤͰCI଴͕ͪൃੜ͠ͳ͘ͳͬͨ ▸ ඞཁͳͱ͖ʹ࠷৽൛ͷAPK͕഑ΕΔΑ͏ʹͳͬͨ

  17. ·ͱΊ ▸ Gradle Version Upͱmin sdk versionΛ͍͡Δ͚ͩͰ։ൃ଎ ౓͕޲্ ▸ ॏ͍Gradle

    task͕૸Δͱ͜ΖΛݟ௚͢ͱŊࣗ෼ͷνʔϜ͚ͩ Ͱ͸ͳ͘ŊपΓΛ޾ͤʹ͢Δ͔΋