Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
CIの改善とfastlane plugin
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Kohei Tabata
January 19, 2017
Programming
3.1k
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
CIの改善とfastlane plugin
Kohei Tabata
January 19, 2017
More Decks by Kohei Tabata
See All by Kohei Tabata
AIと協業する開発の進め方
nerd0geek1
0
190
営業活動なしで継続的に案件を受注する方法 / how to get a contract without sales as a freelance
nerd0geek1
2
1k
生体データを取り扱うアプリ開発の勘所
nerd0geek1
1
160
動線改善とステータス可視化で家庭内のストレスを軽減した話
nerd0geek1
3
4.6k
家庭をプロジェクトとして運営した話
nerd0geek1
2
4.4k
fastlaneの勉強会を主催して学んだこと、得たこと、悩んだこと
nerd0geek1
1
1.3k
みんなで育てるprecheck
nerd0geek1
1
870
matchとは?match導入のメリット
nerd0geek1
4
650
Improve your workflow with Sketch plugin
nerd0geek1
3
1.6k
Other Decks in Programming
See All in Programming
コードで差別化できない時代の ソフトウェアエンジニアリング / Software Engineering in an Era Where Code Doesn’t Differentiate
kishida
2
200
AIがコードを書いてくれる時代、我々は何を確かめるのか
yosuke_furukawa
PRO
12
4.4k
PumaからFalconに移行したRailsアプリケーションでの実践
falcon8823
0
240
続・コーディングルールの鮮度を保ちたい / keep-fresh-go-internal-conventions-again
handlename
0
130
Next.js: The final boss of Web Performance
guaca
0
340
GemmaをJevのように使ってみる / Use Gemma like Jev
kishida
5
840
Atomic Design, Enforced: Scaling Mobile Design Systems (next.app devCon / droidCon Berlin 2026)
steliosf
PRO
0
180
우리의 Nitro Modules는 당신의 Turbo Modules보다 아름답다
l2hyunwoo
0
220
sbt 2.0: takeoff
eed3si9n
0
170
[Dev Group Paris Octobre 26] Agentforce, SIforce, Claudeforce, Slackbot… on s'y retrouve ?
nabondance
0
120
Modernizing iOS Apps
seyfoyun
0
120
Domain-Driven Transformation
hschwentner
2
2.3k
Featured
See All Featured
The browser strikes back
jonoalderson
0
1.9k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
254
22k
Stewardship and Sustainability of Urban and Community Forests
pwiseman
0
560
Lessons Learnt from Crawling 1000+ Websites
charlesmeaden
PRO
1
1.6k
Balancing Empowerment & Direction
lara
6
1.3k
Max Prin - Stacking Signals: How International SEO Comes Together (And Falls Apart)
techseoconnect
PRO
0
500
Noah Learner - AI + Me: how we built a GSC Bulk Export data pipeline
techseoconnect
PRO
0
460
Jamie Indigo - Trashchat’s Guide to Black Boxes: Technical SEO Tactics for LLMs
techseoconnect
PRO
0
710
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
18k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
56
3.5k
How to Get Subject Matter Experts Bought In and Actively Contributing to SEO & PR Initiatives.
livdayseo
0
230
The B2B funnel & how to create a winning content strategy
katarinadahlin
PRO
1
580
Transcript
CIͷվળͱ fastlane plugin 2017/01/19 iOS Test Night #2@DeNA
ࣗݾհ ɾKohei Tabata(@nerd0geek1) ɾSaib Studio LLC ɾiOS/MacOS/tvOS Developer ɾ࠷ۙଞͷελʔτΞοϓʹৗறͯ͠ΞϓϦ։ൃͷ ɹ͓ख͍Λ͍ͯ͠·͢ɻ
Said Studio LLC Kohei Tabata Next! Remote quick-zip plus
࣍ ɾࠓ·ͰͷCIڥ ɹϝϦοτɺσϝϦοτ ɾ࠷ۙߏஙͨ͠CIڥ ɾfastlane pluginͱ ɾ·ͱΊ
ࠓ·ͰͷCIڥ ݸਓϓϩδΣΫτࣗࣾͷখ͞ΊϓϩδΣΫτ͕ϝΠϯɻ։ൃࣗͷΈ ɹCIαʔόɿ ɹɹCircle CI(લ͔Β͓ͬͯΓɺֶशίετ͕͍ͨΊ) ɹPods/CarthageσΟϨΫτϦɿ ɹɹϦϙδτϦʹؚΊͳ͍(ϦϙδτϦΛখ͘͞อͭͨΊɻ) ɹSigningɿ ɹɹManual Signing(fastlaneΛ͏߹্ɻ։ൃऀ͕ࣗ1ਓͱ͍͏ͷ͋Δ)
ɹscriptɿ ɹجຊతʹFastfile͕ͩɺRakeλεΫΰϦΰϦ͏ɻ
ϝϦοτɾσϝϦοτ ϝϦοτ ɹɾϥΠϒϥϦؚ͕·Ε͍ͯͳ͍ɺϦϙδτϦ͕খ͘͞อͨΕΔɻ ɹɾϦϙδτϦͷࠩཧ͕͍͢͠ɻ σϝϦοτ ɹɾ͍(ຖճɺϥΠϒϥϦͷΠϯετʔϧ͕࣮ߦ͞ΕΔͨΊɺ ɹɹɹɹ1ճͷCIʹ15-30ఔඞཁ) ɹɾRakeλεΫ͕ଐਓԽ͍͢͠ɻ
࠷ۙߏஙͨ͠CIڥ ։ൃن ɹ2016/11ʹ։࢝ͨ͠ϓϩδΣΫτɻiOSΤϯδχΞx2xि5 CIαʔό ɹCircle CI
࠷ۙߏஙͨ͠CIڥ Pods/CarthageσΟϨΫτϦɿ ɹɾશͯϦϙδτϦʹؚΊΔΑ͏ʹ(Ϗϧυ͕࣌ؒ1൪ͷωοΫʹͳͬͨͨΊ) ɹɹϦϙδτϦڊେʹͳΔ͕ɺCIɺϩʔΧϧͰͷϏϧυߴʹɻ ɹɾPRʹϥΠϒϥϦͷؚ͕ࠩ·Εͯ͠·͏ʹ͍ͭͯɺϥΠϒϥϦͷՃΛ ɹɹผPRͱͯ͢͠Δ͜ͱͰରԠɻ
࠷ۙߏஙͨ͠CIڥ Signingɿ ɹɾࣗҎ֎ʹiOSΤϯδχΞ͕͋Δ ɹɾiOSΤϯδχΞҎ֎͔ΒʮΞϓϦͷ࣮ػϏϧυ͍ͨ͠ʯͱ͍͏ཁٻ͕͋ͬͨ ɹɾΞϓϦΛࣗಈͯ͠΄͍͠ɺͱ͍͏ཁٻ͋ͬͨ ɹɹɹˣ ɹɹϩʔΧϧɿ ɹɹɹAuto SigningΛ༻ ɹɹCI্ɿ
ɹɹɹfastlane pluginͰManual Signingʹมߋ ɹɹɹxcconfigͰSigningͷઃఆΛ༩
࠷ۙߏஙͨ͠CIڥ scriptɿ Ͱ͖Δ͚ͩfastlane/FastfileʹدͤΔΑ͏ʹɻ RakeλεΫͰఆ͍ٛͯͨ͠Ϗϧυ൪߸ͷΠϯΫϦϝϯτɺfastlane pluginͱͯ͠ FastfileʹدͤΔΑ͏ʹɻ
fastlane plugin? fastlane1.93.0(2016Նࠒ)͔Β͑ΔΑ͏ʹͳͬͨػೳɻ ཁ͢Δͱɺfastlaneͷmain repoʹՃ͞ΕΔͷҰൠతʹҎԼͷͷͰɺ ɾେଟͷ։ൃऀ͕͍ͦ͏ͳͷ ɾϞόΠϧΞϓϦʹؔ͢Δۤ࿑Λগͳ͘͢Δͷ Ճ͞Εͳ͍ͷ ɾҰ෦ͷ։ൃऀʹ͔ؔ͠͠ͳ͍ͷ ɾαʔυύʔςΟʹґଘ͍ͯͯ͠ϝϯςφϯε͕େมʹͳΓͦ͏ͳͷ
ɾetc… ͦ͏͍͏ͷʹ͍ͭͯɺpluginͱͯ͠ެ։ͯ͠ɺࣗͰϝϯςφϯεͯ͠Ͷɻ
ͲΜͳplugin͕͋Δͷʁ
ͲΜͳplugin͕͋Δʁ ϓϩδΣΫτϑΝΠϧฤूܥ ɾupdate_project_code_signing(Auto/Manual Signingସ) ɾsynx(XcodeͷάϧʔϓͱϑΥϧμߏͱҰகͤ͞Δ) ɾremove_provisioning_profile(provisioning profileͷআ) Info.plistฤूܥ ɾincrement_version_number_in_plist(ΞϓϦόʔδϣϯͷฤू) ɾincrement_build_number_in_plist(Ϗϧυ൪߸ͷฤू)
δϣʔΫܥ(authorɿKrauseFx) ɾascii_art(fastlaneΞΠίϯͷAAΛੜ͢Δ͆) ɾtunes(fastlaneΛͬͯԻָΛྲྀ͆͢)
·ͱΊ ɾϫʔΫϑϩʔΛ͑Δ͜ͱ͕Ͱ͖ΔͷͳΒɺϥΠϒϥϦΛϦϙδτϦʹ ɹؚΜͩ΄͏͕ྑͦ͞͏ɻ ɾSigningपΓґવͱͯ͠Ϋη͕ڧ͍ɻ ɾfastlane plugin࡞ΔͱRakeλεΫΑΓ࠶ར༻ੑ͕ߴ·ΔͷͰྑͦ͞͏ɻ
࠷ޙʹએ 2݄ʹOrigami͞ΜͰfastlaneษڧձΓ·͢ʂ
͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠ɻ
ࢀߟ ɾXcode8 Ͱ։ൃͲ͏͔Θͬͨͷ͔ ɹ(https://speakerdeck.com/dealforest/xcode8-dekai-fa-hadoukawatutafalseka?slide=44) ɾfastlane Plugins ɹ(https://github.com/fastlane/fastlane/blob/master/fastlane/docs/Plugins.md) ɾfastlane available Plugins
ɹ(https://docs.fastlane.tools/actions/#plugins)