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.6k
家庭をプロジェクトとして運営した話
nerd0geek1
2
4.4k
fastlaneの勉強会を主催して学んだこと、得たこと、悩んだこと
nerd0geek1
1
1.3k
みんなで育てるprecheck
nerd0geek1
1
850
matchとは?match導入のメリット
nerd0geek1
4
630
Improve your workflow with Sketch plugin
nerd0geek1
3
1.6k
Other Decks in Programming
See All in Programming
Embedded SREと共に達成した会員管理システムのAWS移行 - SRE NEXT 2026 ランチスポンサーセッション
niftycorp
PRO
1
3.4k
使用 Meilisearch 建立新聞搜尋工具
johnroyer
0
220
型も通る、synthも通る、それでも危ない 〜AIのCDKの権限とコストを機械で検証する〜 / It Passes Type Checks, It Passes Synth Checks, but It’s Still Risky — Automatically Verifying Permissions and Costs in AI’s CDK —
seike460
PRO
1
530
生成AI導入の「期待外れ」を乗り越える ー 開発フロー改革が目指す、真の組織変革
starfish719
0
3.8k
Japan Community Day at Kubecon + CloudNativeCon Japan 2026: Learning Container Privilege Control by Building My Own Low-Level Container Runtime
ternbusty
1
130
AWS CDK を「作」ってみた 〜フルスクラッチで見えた CDK の裏側〜 / aws-cdk-from-scratch
gotok365
3
2.8k
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
520
React本体のコードリーディング
high_g_engineer
1
130
改善しないと、タスクが回らない。 “てんこ盛りポジション” を引き継いだ情シスの、入社3ヶ月の業務改善録
krm963
0
250
jsmini JavaScript Engine を作ってみた話
yosuke_furukawa
PRO
0
290
PHPだって関数型したい 〜できること、できないこと〜 / fp-in-php
jsoizo
1
270
仕様駆動開発へのトライを機に チームに適合する手法を模索し続けている話
freee
PRO
0
390
Featured
See All Featured
More Than Pixels: Becoming A User Experience Designer
marktimemedia
3
480
職位にかかわらず全員がリーダーシップを発揮するチーム作り / Building a team where everyone can demonstrate leadership regardless of position
madoxten
64
56k
Google's AI Overviews - The New Search
badams
0
1.1k
Leveraging LLMs for student feedback in introductory data science courses - posit::conf(2025)
minecr
1
330
How to build an LLM SEO readiness audit: a practical framework
nmsamuel
1
820
Writing Fast Ruby
sferik
630
63k
Ruling the World: When Life Gets Gamed
codingconduct
0
290
Building Adaptive Systems
keathley
44
3.2k
Unsuck your backbone
ammeep
672
58k
How to build a perfect <img>
jonoalderson
1
5.8k
Prompt Engineering for Job Search
mfonobong
0
390
A brief & incomplete history of UX Design for the World Wide Web: 1989–2019
jct
2
430
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/)