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

400種類のアプリを毎日ビルドする自動化の技術

 400種類のアプリを毎日ビルドする自動化の技術

400種類のアプリを毎日ビルドする自動化の技術
1. ビルド・申請作業とは
2. 既存のワークフローと関係者
3. 課題の整理
4. 自動化の目的とゴール
5. 自動化の内容と技術的な手法
6. 効果的に自動化を進めるためのベストプラクティス

w/ Presenter Note
https://www.icloud.com/keynote/0xAxiOjmcpRfjqSdlwcJSrspg#iOSDC_2020_-_Yappli

Kishikawa Katsumi

September 20, 2020
Tweet

More Decks by Kishikawa Katsumi

Other Decks in Programming

Transcript

  1. ໨࣍ 1. Ϗϧυɾਃ੥࡞ۀͱ͸ 2. طଘͷϫʔΫϑϩʔͱؔ܎ऀ 3. ՝୊ͷ੔ཧ 4. ࣗಈԽͷ໨తͱΰʔϧ 5.

    ࣗಈԽͷ಺༰ͱٕज़తͳख๏ 6. ޮՌతʹࣗಈԽΛਐΊΔͨΊͷϕετϓϥΫςΟε
  2. طଘͷϫʔΫϑϩʔͱؔ܎ऀ CMS ؅ཧπʔϧ App Store Connect Circle CI JIRA AWS

    S3 Developer Portal ϏϧυϚγϯ Google Sheets ͓٬͞· ୲౰ऀ ΤϯδχΞ
  3. طଘͷϫʔΫϑϩʔʢʴखॱʣͱؔ܎ऀ CMS ؅ཧπʔϧ App Store Connect Circle CI JIRA ϏϧυϚγϯ

    Google Sheets AWS S3 ͓٬͞· ୲౰ऀ ΤϯδχΞ Developer Portal
  4. طଘͷϫʔΫϑϩʔʢʴखॱʣͱؔ܎ऀ CMS ؅ཧπʔϧ App Store Connect Circle CI JIRA ϏϧυϚγϯ

    Google Sheets AWS S3 ͓٬͞· ୲౰ऀ ΤϯδχΞ Developer Portal
  5. طଘͷϫʔΫϑϩʔʢʴखॱʣͱؔ܎ऀ CMS ؅ཧπʔϧ App Store Connect Circle CI JIRA ϏϧυϚγϯ

    Google Sheets AWS S3 ͓٬͞· ୲౰ऀ ΤϯδχΞ Developer Portal
  6. طଘͷϫʔΫϑϩʔʢʴखॱʣͱؔ܎ऀ CMS ؅ཧπʔϧ App Store Connect Circle CI JIRA ϏϧυϚγϯ

    Google Sheets AWS S3 ͓٬͞· ୲౰ऀ ΤϯδχΞ Developer Portal
  7. طଘͷϫʔΫϑϩʔʢʴखॱʣͱؔ܎ऀ CMS ؅ཧπʔϧ App Store Connect Circle CI JIRA ϏϧυϚγϯ

    Google Sheets AWS S3 ͓٬͞· ୲౰ऀ ΤϯδχΞ Developer Portal
  8. طଘͷϫʔΫϑϩʔʢʴखॱʣͱؔ܎ऀ CMS ؅ཧπʔϧ App Store Connect Circle CI JIRA Developer

    Portal ϏϧυϚγϯ Google Sheets AWS S3 ͓٬͞· ୲౰ऀ ΤϯδχΞ
  9. ͞ΒͳΔཧ૝ͷϫʔΫϑϩʔ • ͢΂ͯͷॲཧ͕ίʔυͰهड़ • ్தܦաͷอଘ • ૣࣦ͘ഊ͢Δ • ͍ͭͰ΋ϦτϥΠՄೳ •

    มߋཤྺͷ஝ੵ • ਓؒͷΞΫγϣϯ͚ͩͰͳ͘
 ͞·͟·ͳॲཧͱ࿈ܞ࣮ͯ͠ߦ • ୭Ͱ΋ɺ͍ͭͰ΋ɺ
 Ͳ͔͜ΒͰ΋࣮ߦͰ͖Δ
  10. Ϗϧυ࡞ۀ • ର৅ͷΞϓϦέʔγϣϯΛ֬ೝ͢Δ • ؅ཧը໘ʹొ࿥͞Εͨ৘ใΛ֬ೝ͢Δ
 ※࣮ࡍ͸͍͍ͪͪ֬ೝ͠ͳ͍͕ɺؒҧ͍ͬͯΔͱϏϧυ׬ྃޙɺΞοϓϩʔυͷࡍʹࣦഊ͢Δ • ؅ཧը໘Ͱର৅ͷΞϓϦέʔγϣϯΛࢦఆ͢Δ • ؅ཧը໘ͰόʔδϣϯͱϏϧυ൪߸Λೖྗ͢Δ

    • ؅ཧը໘ͰϏϧυର৅ͷλάʢϒϥϯνʣΛࢦఆ͢Δ • ؅ཧը໘͔ΒϏϧυΛ࣮ߦ͢Δ • ϓογϡ௨஌ͷূ໌ॻΛ࡞੒·ͨ͸ߋ৽͢Δ • ϦϦʔεϊʔτ΍εΫϦʔϯγϣοτͳͲਃ੥σʔλΛΞοϓϩʔυ͢Δ
  11. Ϗϧυ࡞ۀ • ର৅ͷΞϓϦέʔγϣϯΛ֬ೝ͢Δ • ؅ཧը໘ʹొ࿥͞Εͨ৘ใΛ֬ೝ͢Δ
 ※࣮ࡍ͸͍͍ͪͪ֬ೝ͠ͳ͍͕ɺؒҧ͍ͬͯΔͱϏϧυ׬ྃޙɺΞοϓϩʔυͷࡍʹࣦഊ͢Δ • ؅ཧը໘Ͱର৅ͷΞϓϦέʔγϣϯΛࢦఆ͢Δ • ؅ཧը໘ͰόʔδϣϯͱϏϧυ൪߸Λೖྗ͢Δ

    • ؅ཧը໘ͰϏϧυର৅ͷλάʢϒϥϯνʣΛࢦఆ͢Δ • ؅ཧը໘͔ΒϏϧυΛ࣮ߦ͢Δ • ϓογϡ௨஌ͷূ໌ॻΛ࡞੒·ͨ͸ߋ৽͢Δ • ϦϦʔεϊʔτ΍εΫϦʔϯγϣοτͳͲਃ੥σʔλΛΞοϓϩʔυ͢Δ
  12. Ϗϧυ࡞ۀ • ର৅ͷΞϓϦέʔγϣϯΛ֬ೝ͢Δ • ؅ཧը໘ʹొ࿥͞Εͨ৘ใΛ֬ೝ͢Δ
 ※࣮ࡍ͸͍͍ͪͪ֬ೝ͠ͳ͍͕ɺؒҧ͍ͬͯΔͱϏϧυ׬ྃޙɺΞοϓϩʔυͷࡍʹࣦഊ͢Δ • ؅ཧը໘Ͱର৅ͷΞϓϦέʔγϣϯΛࢦఆ͢Δ ➡ Slack

    Botͷը໘Ͱࢦఆ • ؅ཧը໘ͰόʔδϣϯͱϏϧυ൪߸Λೖྗ͢Δ • ؅ཧը໘ͰϏϧυର৅ͷλάʢϒϥϯνʣΛࢦఆ͢Δ • ؅ཧը໘͔ΒϏϧυΛ࣮ߦ͢Δ ➡ Slack Botͷ֬ೝը໘ͷϘλϯΛԡ͢ • ϓογϡ௨஌ͷূ໌ॻΛ࡞੒·ͨ͸ߋ৽͢Δ • ϦϦʔεϊʔτ΍εΫϦʔϯγϣοτͳͲਃ੥σʔλΛΞοϓϩʔυ͢Δ
  13. طଘͷϫʔΫϑϩʔʢʴखॱʣͱؔ܎ऀ CMS ؅ཧπʔϧ App Store Connect Circle CI JIRA Developer

    Portal ϏϧυϚγϯ Google Sheets AWS S3 ͓٬͞· ୲౰ऀ ΤϯδχΞ
  14. Ϗϧυ࡞ۀ • ର৅ͷΞϓϦέʔγϣϯΛ֬ೝ͢Δ • ؅ཧը໘ʹొ࿥͞Εͨ৘ใΛ֬ೝ͢Δ
 ※࣮ࡍ͸͍͍ͪͪ֬ೝ͠ͳ͍͕ɺؒҧ͍ͬͯΔͱϏϧυ׬ྃޙɺΞοϓϩʔυͷࡍʹࣦഊ͢Δ • ؅ཧը໘Ͱର৅ͷΞϓϦέʔγϣϯΛࢦఆ͢Δ ➡ Slack

    Botͷը໘Ͱࢦఆ • ؅ཧը໘ͰόʔδϣϯͱϏϧυ൪߸Λೖྗ͢Δ • ؅ཧը໘ͰϏϧυର৅ͷλάʢϒϥϯνʣΛࢦఆ͢Δ • ؅ཧը໘͔ΒϏϧυΛ࣮ߦ͢Δ ➡ Slack Botͷ֬ೝը໘ͷϘλϯΛԡ͢ • ϓογϡ௨஌ͷূ໌ॻΛ࡞੒·ͨ͸ߋ৽͢Δ • ϦϦʔεϊʔτ΍εΫϦʔϯγϣοτͳͲਃ੥σʔλΛΞοϓϩʔυ͢Δ
  15. Ϗϧυ࡞ۀ • ର৅ͷΞϓϦέʔγϣϯΛ֬ೝ͢Δ • ؅ཧը໘ʹొ࿥͞Εͨ৘ใΛ֬ೝ͢Δ
 ※࣮ࡍ͸͍͍ͪͪ֬ೝ͠ͳ͍͕ɺؒҧ͍ͬͯΔͱϏϧυ׬ྃޙɺΞοϓϩʔυͷࡍʹࣦഊ͢Δ • ؅ཧը໘Ͱର৅ͷΞϓϦέʔγϣϯΛࢦఆ͢Δ ➡ Slack

    Botͷը໘Ͱࢦఆ • ؅ཧը໘ͰόʔδϣϯͱϏϧυ൪߸Λೖྗ͢Δ • ؅ཧը໘ͰϏϧυର৅ͷλάʢϒϥϯνʣΛࢦఆ͢Δ • ؅ཧը໘͔ΒϏϧυΛ࣮ߦ͢Δ ➡ Slack Botͷ֬ೝը໘ͷϘλϯΛԡ͢ • ϓογϡ௨஌ͷূ໌ॻΛ࡞੒·ͨ͸ߋ৽͢Δ ʴϏϧυϚγϯͷഇࢭ • ϦϦʔεϊʔτ΍εΫϦʔϯγϣοτͳͲਃ੥σʔλΛΞοϓϩʔυ͢Δ
  16. Ϗϧυ࡞ۀ • ର৅ͷΞϓϦέʔγϣϯΛ֬ೝ͢Δ • ؅ཧը໘ʹొ࿥͞Εͨ৘ใΛ֬ೝ͢Δ • ର৅ͷΞϓϦέʔγϣϯΛࢦఆ͢Δ • ؅ཧը໘ͰόʔδϣϯͱϏϧυ൪߸Λೖྗ͢Δ •

    ؅ཧը໘ͰϏϧυର৅ͷλάʢϒϥϯνʣΛࢦఆ͢Δ • ϏϧυΛ࣮ߦ͢Δ • ϓογϡ௨஌ͷূ໌ॻΛ࡞੒·ͨ͸ߋ৽͢Δ • ϦϦʔεϊʔτ΍εΫϦʔϯγϣοτͳͲਃ੥σʔλΛΞοϓϩʔυ͢Δ • ׬ྃͨ͠ΒJIRAͷνέοτʹίϝϯτ͢Δ
  17. Ϗϧυ࡞ۀ • ର৅ͷΞϓϦέʔγϣϯΛ֬ೝ͢Δ • ؅ཧը໘ʹొ࿥͞Εͨ৘ใΛ֬ೝ͢Δ • ର৅ͷΞϓϦέʔγϣϯΛࢦఆ͢Δ • ؅ཧը໘ͰόʔδϣϯͱϏϧυ൪߸Λೖྗ͢Δ •

    ؅ཧը໘ͰϏϧυର৅ͷλάʢϒϥϯνʣΛࢦఆ͢Δ • ϏϧυΛ࣮ߦ͢Δ • ϓογϡ௨஌ͷূ໌ॻΛ࡞੒·ͨ͸ߋ৽͢Δ • ϦϦʔεϊʔτ΍εΫϦʔϯγϣοτͳͲਃ੥σʔλΛΞοϓϩʔυ͢Δ • ׬ྃͨ͠ΒJIRAͷνέοτʹίϝϯτ͢Δ
  18. Ϗϧυ࡞ۀ • ର৅ͷΞϓϦέʔγϣϯΛ֬ೝ͢Δ • ؅ཧը໘ʹొ࿥͞Εͨ৘ใΛ֬ೝ͢Δ • ର৅ͷΞϓϦέʔγϣϯΛࢦఆ͢Δ • ؅ཧը໘ͰόʔδϣϯͱϏϧυ൪߸Λೖྗ͢Δ •

    ؅ཧը໘ͰϏϧυର৅ͷλάʢϒϥϯνʣΛࢦఆ͢Δ • ϏϧυΛ࣮ߦ͢Δ • ϓογϡ௨஌ͷূ໌ॻΛ࡞੒·ͨ͸ߋ৽͢Δ • ϦϦʔεϊʔτ΍εΫϦʔϯγϣοτͳͲਃ੥σʔλΛΞοϓϩʔυ͢Δ • ׬ྃͨ͠ΒJIRAͷνέοτʹίϝϯτ͢Δ
  19. ࣮ݱͰ͖ͨ͜ͱɾ͜Ε͔Β • ͢΂ͯͷ࡞ۀΛίʔυԽ • ख࡞ۀΛʢ΄΅ʣͳͨ͘͠ • ॲཧͷه࿥Λ࢒͢ • มߋཤྺΛ஝ੵ͢Δ •

    ૣࣦ͘ഊ͢Δ • ϦτϥΠՄೳ • ਓؒͷΞΫγϣϯ͚ͩͰͳ͘͞·͟·ͳॲཧͱ࿈ܞ࣮ͯ͠ߦ • ͍ͭͰ΋ɺͲ͔͜ΒͰ΋࣮ߦͰ͖Δ
  20. ޮՌతʹࣗಈԽΛਐΊΔͨΊͷྑ͍ϓϥΫςΟε • ࣦഊ͠ͳ͍Α͏ʹ͢Δ • ϧʔϧΛ؆୯ʹ͢Δ • ػցͷ౎߹ʹ߹ΘͤΔ • ϦΧόϦʔॲཧΛࣗಈԽ͢Δ •

    ؒҧ͍͕ىͬͯ͜΋໭ͤΔΑ͏ʹ • ̍ͭͷ͜ͱ͚ͩΛ͏·͘΍Δ • ΤϥʔॲཧΛ͕Μ͹Βͳ͍ - ૣΊʹࣦഊ͢Δ - ਖ਼ৗܥҎ֎ʹ͖ͨΒ୯७ʹऴྃ͢Δ - 80-90%͘Β͍ಈ͍͍ͯΕ͹Α͍
 ͦΕΛ95-100%ʹ͢Δʹ͸ലେͳίετ͕͔͔Δ