Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
iOSアプリの定期リリースとその自動化@potatotips#90
Search
Yuya Hirayama
January 28, 2025
1
370
iOSアプリの定期リリースとその自動化@potatotips#90
Yuya Hirayama
January 28, 2025
Tweet
Share
More Decks by Yuya Hirayama
See All by Yuya Hirayama
Xcode Cloud事例紹介
hiragram
1
430
iOSアプリを安全にローカライズする
hiragram
1
410
iPhoneXのTrueDepthカメラでVRMを動かす
hiragram
2
14k
生きた仕様書としてのUIカタログアプリ運用 構想編
hiragram
1
1.4k
waiwai-swiftc-lazy.pdf
hiragram
0
250
Protocol Oriented WebAPI Abstraction
hiragram
0
350
Vapor cloud + Codegen
hiragram
0
60
VaporアプリからFCM経由でプッシュ通知を送る
hiragram
0
130
アプリ内でWebAPIを抽象化するためのフレームワークAbstractionKitの紹介
hiragram
1
3.7k
Featured
See All Featured
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
12
990
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
133
33k
Keith and Marios Guide to Fast Websites
keithpitt
411
22k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
330
21k
Navigating Team Friction
lara
183
15k
KATA
mclloyd
29
14k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.4k
Fashionably flexible responsive web design (full day workshop)
malarkey
406
66k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
3.7k
The Cost Of JavaScript in 2023
addyosmani
47
7.4k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
656
59k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
40
2k
Transcript
iOSΞϓϦͷఆظϦϦʔεͱͦͷࣗ ಈԽ 2025/01/28 potato,ps #90 © hiragram, 2024 1
ࣗݾհ • @hiragram • akippaגࣜձࣾ • றंγΣΞϦϯάαʔϏ εʮΞΩούʯͷ։ൃ © hiragram,
2024 2
͢͜ͱ • iOSΞϓϦఆظϦϦʔε֓ཁ • ػցʹਓ͕ؒ߹ΘͤΔ • ҆શͳϦϦʔεͷͨΊͷࣗಈԽ • ͦͷޮՌ ©
hiragram, 2024 3
iOSΞϓϦఆظϦϦʔε֓ཁ © hiragram, 2024 4
iOSΞϓϦఆظϦϦʔε֓ཁ • 202412݄͔Βӡ༻։࢝ • 1िؒͷϦϦʔεαΠΫϧ • ༵17࣌ίʔυϑϦʔζ • ༵ۚಈ࡞֬ೝ •
݄༵ϦϦʔε © hiragram, 2024 5
iOSΞϓϦఆظϦϦʔε֓ཁ/࣌ܥྻΠϕϯτ • ༵13࣌: ίʔυϑϦʔζ༧ࠂ • ֘ϚΠϧετʔϯͷissue/PR Λྻڍͯ͠ɺਐḿѱͦ͏ͳ ͷɺରԠ͕࿙Εͯͦ͏ͳͷʹ ؾ͚ͮΔΑ͏ʹ͢Δ ©
hiragram, 2024 6
iOSΞϓϦఆظϦϦʔε֓ཁ/࣌ܥྻΠϕϯτ • ༵17࣌: ίʔυϑϦʔζ © hiragram, 2024 7
iOSΞϓϦఆظϦϦʔε֓ཁ/࣌ܥྻΠϕϯτ • ༵ۚ • ֤ϓϩδΣΫτͷϓϥϯφʔϦϦʔεީิ൛Ͱࣗͷ୲ػೳͷ ಈ࡞Λ֬ೝ͢Δ • PdMू·ͬͯϦϦʔε༰ʹ૯߹తʹͳ͍͔֬ೝΛ͢Δ • ͳ͚Ε৹ࠪఏग़
• ݄༵ϦϦʔε © hiragram, 2024 8
ػցʹਓ͕ؒ߹ΘͤΔ © hiragram, 2024 9
ػցʹਓ͕ؒ߹ΘͤΔ/ఆظϦϦʔεӡ༻Ҏલ • ৫͕ෳͷάϧʔϓʹ͔ΕɺͦͷԼͰߋʹෳͷϓϩδΣΫτ͕ ฒߦͯ͠ಈ͍͍ͯΔ • ϦϦʔεϚωδϝϯτ͕ෳࡶʹͳΓ͍͢ঢ়گ • ఔௐɺςετܭըɺΠϨΪϡϥʔରࡦɺ… • ଐਓԽɺෆ໌ྎͳڥքɺᐆດͳɺ…
• ࣄނ͕ى͜Γ͍͢ʂ © hiragram, 2024 10
ػցʹਓ͕ؒ߹ΘͤΔ/εέδϡʔϧͷݻఆ • ༵17࣌ʹϦϦʔεδϣϒ͕mainϒϥϯνΛϏϧυ͢Δ • ػցͷకΊΓʹؒʹ߹ΘͤΔΑ͏֤νʔϜ͕ྗ͢Δ • ͜ͷకΛઈରʹਓؒͷ߹Ͱಈ͔͞ͳ͍ • ؒʹ߹Θͳ͔ͬͨͷ࣍ճͷϦϦʔεʹૹΒΕΔ •
ϓϩδΣΫτؒͷύϫʔόϥϯεؔͳ͍ɻؒʹ߹͏ܭըΛཱͯ ·͠ΐ͏ © hiragram, 2024 11
ࢀߟ: ΫοΫύουΞϓϦΈΜͳ͕৸͍ͯΔؒʹαϒϛοτ͞ΕΔ - ΫοΫύου։ൃऀϒϩά h"ps:/ /techlife.cookpad.com/entry/2018/09/14/090000 © hiragram, 2024 12
҆શͳϦϦʔεͷͨΊͷࣗಈԽ © hiragram, 2024 13
҆શͳϦϦʔεͷͨΊͷࣗಈԽ/ίʔυϑϦʔζ༧ࠂ • GitHub Ac+onsͰಈ࡞ • ͦͷόʔδϣϯͷGitHubϚΠϧ ετʔϯʹؚ·Ε͍ͯΔissue/ PRΛ֬ೝ • ͦΕͧΕྃ/ະྃʹ͚ͯ
Slackʹߘ © hiragram, 2024 14
҆શͳϦϦʔεͷͨΊͷࣗಈԽ/ίʔυϑϦʔζ © hiragram, 2024 15
҆શͳϦϦʔεͷͨΊͷࣗಈԽ/ϦϦʔεϏϧυ(1) • ϦϦʔεͷલఏνΣοΫ • ଧͨΕͨλά(v3.23.0-RC)ͱΞϓϦͷόʔδϣϯ(3.23.0)͕Ұக ͍ͯ͠Δ͔ • hotfixͳͲͷखಈτϦΨΛ೦಄ʹஔ͍ͨνΣοΫ • ϚΠϧετʔϯͷissue/PR͕ͯ͢close͞Ε͍ͯΔ͔
• ຬͨ͞Ε͍ͯͳ͍߹தஅɺਓ͕ؒରԠɻ © hiragram, 2024 16
҆શͳϦϦʔεͷͨΊͷࣗಈԽ/ϦϦʔεϏϧυ(2) • ࣍ͷόʔδϣϯͷ։࢝ • Info.plistʹॻ͔Εͨόʔδϣ ϯͷϚΠφʔΛ1ͭਐΊΔ • όʔδϣϯॻ͖͑ͯίϛο τɺPR࡞ɺϚʔδ·Ͱbot ͕উखʹΔ
© hiragram, 2024 17
҆શͳϦϦʔεͷͨΊͷࣗಈԽ/ϦϦʔεϏϧυ(3) • hotfixϒϥϯνΛ༻ҙ͓ͯ͘͠ • hotfixϒϥϯνΛ࡞ͬͯɺInfo.plistʹॻ͔ΕͨόʔδϣϯͷύονΛ 1ͭਐΊͯίϛοτ • ϦϦʔεޙʹ͕͋ͬͨΒ͜ͷϒϥϯνʹมߋΛೖΕͯλάΛଧ ͙ͯ͢৹ࠪʹग़ͤΔ •
࣍όʔδϣϯͷػೳ։ൃͱࠞ͟Βͳ͍Α͏ʹ͢Δ © hiragram, 2024 18
҆શͳϦϦʔεͷͨΊͷࣗಈԽ/ϦϦʔεϏϧυ(5) • ͰɺΑ͏͘ΞϓϦͷϏϧυ • ऴΘͬͨΒAppStoreConnectʹσϓϩΠɻϦϦʔεީิ൛ͱͯ͠ TestFlightͰؔऀʹ৴ɻ © hiragram, 2024 19
ͲΜͳޮՌ͕͔͋ͬͨ © hiragram, 2024 20
ͲΜͳޮՌ͕͔͋ͬͨ • ϦϦʔεεέδϡʔϧ͕ݻఆ͞Εͨ͜ͱͰɺ • ϓϩδΣΫτؒͰ༧ఆΛௐ͢Δख͕ؒͳ͘ͳͬͨ • খ͞ͳվળΛࠞͥࠐΉ༨͕ੜ·Εͨ • Ϗϧυδϣϒͷىಈ֤छνΣοΫΛࣗಈԽͨ͜͠ͱͰɺ •
ଐਓԽ͍ͯͨ͠ϦϦʔεϑϩʔ͕ࣗಈӡసʹͳͬͨ • μϒϧνΣοΫΈ͍ͨͳ͜ͱΛ͠ͳͯ͘Α͘ͳͬͨ © hiragram, 2024 21
͓ΘΓ © hiragram, 2024 22