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
fastlaneで快適な開発ライフを
Search
Kohei Tabata
October 21, 2016
Programming
2k
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
fastlaneで快適な開発ライフを
Kohei Tabata
October 21, 2016
More Decks by Kohei Tabata
See All by Kohei Tabata
AIと協業する開発の進め方
nerd0geek1
0
180
営業活動なしで継続的に案件を受注する方法 / how to get a contract without sales as a freelance
nerd0geek1
2
990
生体データを取り扱うアプリ開発の勘所
nerd0geek1
1
150
動線改善とステータス可視化で家庭内のストレスを軽減した話
nerd0geek1
3
4.5k
家庭をプロジェクトとして運営した話
nerd0geek1
2
4.4k
fastlaneの勉強会を主催して学んだこと、得たこと、悩んだこと
nerd0geek1
1
1.2k
みんなで育てるprecheck
nerd0geek1
1
840
matchとは?match導入のメリット
nerd0geek1
4
630
Improve your workflow with Sketch plugin
nerd0geek1
3
1.6k
Other Decks in Programming
See All in Programming
AIとASP.NET Coreで雑Webアプリを作った話
mayuki
0
660
「AIで開発し、AIを届ける」をEvalでつなぐ 〜AIネイティブに始めるプロダクト開発の実践〜 / Connecting "Develop with AI, deliver AI" with Eval
rkaga
4
5.3k
並列実装の現場、2ヶ月間実務でAIを使い倒したAIもPCも私も限界が近い
ming_ayami
0
130
LLMによるContent Moderationの本番運用の裏側と品質担保への挑戦
suikabar
3
710
Contextとはなにか
chiroruxx
1
330
Make SRE Operations Easier with Azure SRE Agent
kkamegawa
0
6.9k
ユニットテストの先へ:テスト技法で要求・仕様を整理するJava開発実践 / Beyond_Unit_Testing_Practical_Java_Development_Techniques_for_Organizing_Requirements_and_Specifications
shimashima35
0
410
ローカルLLMでどこまでコードが書けるか -拡張版 / How much code can be written on a local LLM Extended
kishida
11
4.3k
依存関係から依存物へ―Dependencyという言葉の歴史をひも解く
j_lee
0
120
ふつうのFeature Flag実践入門
irof
8
4k
Dataformのリポジトリを立ち上げるときにまずやること / dataform-day0-2026
snhryt
0
170
その問い、本当に正しいですか?AI時代のエンジニアに必要な哲学と認知科学 / ai-philosophy-cognitive-science
minodriven
11
5.8k
Featured
See All Featured
Design of three-dimensional binary manipulators for pick-and-place task avoiding obstacles (IECON2024)
konakalab
0
460
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.5k
Amusing Abliteration
ianozsvald
1
210
How to Ace a Technical Interview
jacobian
281
24k
A Tale of Four Properties
chriscoyier
163
24k
The Hidden Cost of Media on the Web [PixelPalooza 2025]
tammyeverts
2
330
From Legacy to Launchpad: Building Startup-Ready Communities
dugsong
0
230
Taking LLMs out of the black box: A practical guide to human-in-the-loop distillation
inesmontani
PRO
3
2.3k
Building Adaptive Systems
keathley
44
3.1k
Gemini Prompt Engineering: Practical Techniques for Tangible AI Outcomes
mfonobong
2
440
The World Runs on Bad Software
bkeepers
PRO
72
12k
A brief & incomplete history of UX Design for the World Wide Web: 1989–2019
jct
2
400
Transcript
fastlaneͰշదͳ ։ൃϥΠϑΛʂ 2016/10/25 AKIBA.swift@Ϋϥεϝιουגࣜձࣾ
ࣗݾհ ɾKohei Tabata(@nerd0geek1) ɾSaib Studio LLC ɾiOS/MacOS/tvOS Developer ɾFastlaneେ͖ ɾAKIBA.swiftେ͖
Said Studio LLC Kohei Tabata Next! Remote quick-zip plus Sleeple
http://next.saib-stud.io
ࣗಈԽͯ͠·͢ʁ
ָͯ͠·͢ʁ
·ͩखಈϏϧυͰ ফͯ͠Δͷʁ
ಋೖܦݧऀͷ ɾखಈͰϦζϜΛ่͞ΕΔ͜ͱ͕ͳ͘ͳΓ·ͨ͠ʂ(28ࡀɺஉੑ) ɾPMPOɺσβΠφʔͱਐḿɺ༷ͷೝࣝͷڞ༗ָ͕ʹͳΓ·ͨ͠ʂ(28ࡀɺஉੑ) ɾਃ࣌ͷୀ۶ͳख࡞ۀ͔Β։์͞Ε·ͨ͠ʂ(28ࡀɺஉੑ) ɾmetadata͕ཧͰ͖ΔΑ͏ʹͳΓɺਃ࣌ͷจݴͷ౷Ұ͕ਤΕΔΑ͏ʹͳΓ·ͨ͠ʂ fastlaneΛ͏ͱ͜Μͳʹͤʹ❗❗❗
࣍ ɾfastlaneͱ ɾfastlaneΛߏ͢Δgem ɾfastlaneʹؚ·ΕΔaction ɾfastlaneͰͤʹͳΔํ๏
fastlaneͱ ɾfastlaneɺiOS/Mac(+Android)ΞϓϦ։ൃʹؔΘΔୀ۶ͳ ɹ࡞ۀΛ؆қԽ͢ΔͨΊʹ࡞ΒΕͨπʔϧ܈ɻ ɾrubyͰॻ͔Εɺgemͱͯ͠͞Ε͍ͯΔɻ ɾҰੲલͷɺnomad CLIͷཱͪҐஔɻ
fastlaneಋೖاۀ ɾsaib studio ɾWantedly ɾMercari ɾMoney Forward ɾFablic ɾDeNA ɾookami
etc…
fastlaneΛߏ͢Δgem ɾframeit ɾpem ɾsigh ɾproduce ɾcert ɾspaceship ɾpilot ɾboarding ɾgym
ɾmatch ɾscan ɾdeliver ɾsupply ɾscreengrab ɾsnapshot
fastlaneΛߏ͢Δgem ɾframeit ɾpem ɾsigh ɾproduce ɾcert ɾspaceship ɾpilot ɾboarding ɾgym
ɾmatch ɾscan ɾdeliver ɾsupply ɾscreengrab ɾsnapshot
fastlaneΛߏ͢Δgem ɾdeliver ɾsnapshot ɾframeit ɾpem ɾsigh ɾproduce ɾcert ɾspaceship ɾpilot
ɾboarding ɾgym ɾmatch ɾscan
fastlaneΛߏ͢Δgem ɾdeliver ɾsnapshot ɾpem ɾsigh ɾpilot ɾgym ɾscan
Provisioning ProfileΛੜɾߋ৽ɾμϯϩʔυ͢ΔͨΊͷgem ɾ͋Δbundle identifierʹରԠ͢ΔDebug༻ϑΝΠϧͷੜɾμϯϩʔυ ɹsigh --development ɾ͋Δbundle identifierʹରԠ͢ΔAdHoc༻ϑΝΠϧͷੜɾμϯϩʔυ ɹsigh --adhoc
ɾiOS Dev Center্ͷશϑΝΠϧͷμϯϩʔυ ɹsigh --download_all ͏Ε͍͠ϙΠϯτ ɾϒϥβXcodeΑΓߴʹϑΝΠϧΛऔಘͰ͖Δɻ ɾίϚϯυ1ͭͰৗʹ࠷৽ͷProvisioning Profile͕औಘͰ͖Δ(ಛʹCIڥԼͰศར)
push௨༻ূ໌ॻΛ࡞͢ΔͨΊͷgemɻpem/cer/p12ϑΝΠϧΛੜ͢Δ ɾ͋Δbundle identifierʹରԠ͢Δূ໌ॻϑΝΠϧ܈ͷੜ ɹpem ɾ͋Δbundle identifierʹରԠ͢Δূ໌ॻϑΝΠϧ܈(ύεϫʔυ͖)ͷੜ ɹpem -p “password” ͏Ε͍͠ϙΠϯτ
ɾpemϑΝΠϧੜͷͨΊͷ͋ΒΏΔۤߦ͔Β։์͞ΕΔ
iOS/Mac appͷςετ࣮ߦΛ؆қԽ͢ΔͨΊͷgemɻ ɾςετͷ࣮ߦ ɹscan ɾworkspaceɺschemeΛࢦఆͨ͠ςετͷ࣮ߦ ɹscan --workspace "Example.xcworkspace" --scheme "AppName"
͏Ε͍͠ϙΠϯτ ɾ࠷ݶworkspaceɺschemeΛࢦఆ͢Δ͚ͩͰςετΛ࣮ߦ͢Δ͜ͱ͕Ͱ͖Δ
ipa/appϑΝΠϧΛੜ͢ΔͨΊͷgemɻshenzhenΑΓ30%ߴͱͷ͜ͱɻ ɾipaͷੜ ɹgym ɾworkspaceɺschemeΛࢦఆͨ͠ipaͷੜ(AdHoc༻schemeΛఆ͍ٛͯͨ͠߹) ɹgym --workspace "Example.xcworkspace" --scheme "AppNameAdHoc" ͏Ε͍͠ϙΠϯτ
ɾ؆୯ʹipaϑΝΠϧͷੜ͕Մೳɻ ɾࣗಈԽ&ipa/dSYMϑΝΠϧͷੜɾอଘΛߦ͏ͱޙ͔ΒόάௐࠪΛߦ͏ࡍʹศརɻ ͭΒ͍ϙΠϯτ ɾϓϩδΣΫτʹΑࣦͬͯഊ͢Δ߹͋Γ(--use_legacy_build_apiΦϓγϣϯͰճආՄೳ)
TestFlightʹର͢Δૢ࡞Λఏڙ͢Δgemɻޙड़͢ΔdeliverͰͷipaϑΝΠϧΞοϓϩʔυ͕ ࣦഊ͢Δ͜ͱ͕ଟ͘ɺTestFlightͱਃ༻ipa͕૬ޓʹస༻ՄೳͳͨΊɺਃ༻ipaϑΝΠϧ ͷΞοϓϩʔυʹར༻ ɾipaϑΝΠϧͷΞοϓϩʔυ(ॲཧͪͤͣ) ɹpilot --skip_submission --skip_waiting_for_build_processing ͏Ε͍͠ϙΠϯτ ɾ؆୯ʹipaϑΝΠϧͷΞοϓϩʔυ͕Մೳ ɾdeliverͷସखஈͱͳΓ͏Δ
iTunes Connect্Ͱొ͢ΔεΫϦʔϯγϣοτͷࡱӨΛࣗಈԽ͢Δgemɻ ϩʔΧϥΠζͨ͠εΫϦʔϯγϣοτؚΊͯࣗಈͰࡱӨ͢Δɻ ɾεΫϦʔϯγϣοτͷࡱӨ(͜ΕҎ֎ʹXcodeͷUI TestingΛఆٛ͢Δඞཁ͋Γ) ɹsnapshot ͏Ε͍͠ϙΠϯτ ɾScreenShot SimplificationͰඞཁͳεΫϦʔϯγϣοτͷຕ͕গͳ͘ͳͬͨͱ͍͑ ɹୀ۶ͳ࡞ۀΛࣗಈԽͰ͖Δ
iTunes ConnectͷmetadataΞοϓϩʔυΛ؆қԽ͢Δgemɻ ΦϓγϣϯʹΑͬͯɺmetadataͷΈɺscreenshotͷΈɺipaͷΈΛΞοϓϩʔυ͢Δͱ ͍ͬͨ͜ͱ͕Մೳ(ipaϑΝΠϧͷΞοϓϩʔυʹ͍ͭͯΤϥʔ͕ൃੜ͢Δ͜ͱ͋Γ)ɻ ɾmetadataͷΞοϓϩʔυ(metadataͷΈ) ɹdeliver --skip_binary_upload --skip_screenshots ɾmetadataͷΞοϓϩʔυ(screenshotͷΈ) ɹdeliver
--skip_binary_upload --skip_metadata ͏Ε͍͠ϙΠϯτ ɾiTunes Connect্ͷmetadataͷൈ͚࿙Εͷͳ͍ߋ৽ɺόʔδϣϯཧ͕༰қʹɻ
fastlaneʹؚ·ΕΔaction ύοέʔδϚωʔδϟ ɾcocoapods ɾcarthage ίϛϡχέʔγϣϯπʔϧ ɾchatwork ɾhipchat ɾmailgun ɾslack ɾtwitter
ɾifttt
fastlaneʹؚ·ΕΔaction ϕʔλςεςΟϯά ɾcrashlytics ɾdeploygate ɾhockey ɾinstallr ɾs3 ϓϩδΣΫτཧ ɾjira ࿈ܞॆ࣮ʂ
fastlaneͰͤʹͳΔํ๏ ɾͰ͖Δ͜ͱ͔Β࢝ΊΔɻॳΊ͔Βશ෦Ζ͏ͱ͠ͳ͍ ɹɹ- ੲɺਓʹCIಋೖΛ૬ஊͨ͠ࡍʹݴΘΕͨݴ༿ - gym&crashlytics&CIͰϕʔλͷࣗಈԽͱ͔ ɹɹ- deliverͰਃपΓͷࣗಈԽͱ͔ɻ ɹɹ- গͣͭͤ͠ʹͳΔɻՄॲ࣌ؒΛ૿͢
͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠ɻ
ࢀߟ ɾfastlane/fastlane ɹ(https://github.com/fastlane/fastlane) ɾFastlane͕։ൃऀͨͪͷΞϓϦϦϦʔε࡞ۀͷ100ສ࣌ؒΛॖ - Twitter Japan Developer Blog ɹ(https://blog.twitter.com/ja/2016/0408fastlane)
ɾiOSΞϓϦਃΛڻ͘΄Ͳ؆୯ʹʂfastlaneͰ͡ΊΔࣗಈԽೖ - Wantedly Engineer Blog ɹ(https://www.wantedly.com/companies/wantedly/post_articles/30973) ɾiOSΞϓϦͷϦϦʔεϑϩʔࣗಈԽπʔϧfastlaneͷmeetupʹ௨༁ͰࢀՃ… - Mercari Engineering Blog ɹ(http://tech.mercari.com/entry/2015/07/13/143000) ɾfastlane ͷ snapshot Ͱ iOS ։ൃϓϩηεࣗಈԽ - Money Forward Engineers’ Blog ɹ(https://moneyforward.com/engineers_blog/2015/08/11/fastlane-snapshot-ios/)