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
1k
生体データを取り扱うアプリ開発の勘所
nerd0geek1
1
150
動線改善とステータス可視化で家庭内のストレスを軽減した話
nerd0geek1
3
4.6k
家庭をプロジェクトとして運営した話
nerd0geek1
2
4.4k
fastlaneの勉強会を主催して学んだこと、得たこと、悩んだこと
nerd0geek1
1
1.3k
みんなで育てるprecheck
nerd0geek1
1
860
matchとは?match導入のメリット
nerd0geek1
4
640
Improve your workflow with Sketch plugin
nerd0geek1
3
1.6k
Other Decks in Programming
See All in Programming
不幸な GC
chencmd
0
740
複数の Claude Code が"放置"されてしまう問題をCLI ダッシュボードを自作して解決した話
sumihiro3
1
730
PyConJP2026_wat_Python × Signal Processing: How to Draw Pictures with Sound Using Spectrogram Art
wat
0
380
Android CLI
fornewid
0
240
源内ハンズオン概要編
hideg
0
210
コンパウンドプロダクト開発のためのローカルプロセスマネージャー再発明 #layerxgo
izumin5210
0
350
Cloudflare is Agents
chimame
0
180
ここ半年くらいでAIに作らせたR用ツール
eitsupi
0
400
KotlinConf Extended South Korea 2026 Keynote
l2hyunwoo
0
120
まずはプロンプトガイドを読もう、話はそれからだ
kiakiraki
1
210
まだ間に合う!今年の夏こそSchemeのマクロ展開器を完全理解!
omasanori
0
500
進化を続けるGo toolsの現在地 / The Current State of Ever-Evolving Go Tools
hond0413
0
260
Featured
See All Featured
Money Talks: Using Revenue to Get Sh*t Done
nikkihalliwell
0
470
Music & Morning Musume
bryan
47
7.3k
Git: the NoSQL Database
bkeepers
PRO
432
67k
Information Architects: The Missing Link in Design Systems
soysaucechin
1
1.1k
The Mindset for Success: Future Career Progression
greggifford
PRO
0
480
Exploring anti-patterns in Rails
aemeredith
3
470
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
16k
It's Worth the Effort
3n
188
29k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
230
23k
Why Your Marketing Sucks and What You Can Do About It - Sophie Logan
marketingsoph
0
390
Groundhog Day: Seeking Process in Gaming for Health
codingconduct
0
300
Lessons Learnt from Crawling 1000+ Websites
charlesmeaden
PRO
1
1.5k
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/)