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
CIの改善とfastlane plugin
Search
Kohei Tabata
January 19, 2017
Programming
0
2.7k
CIの改善とfastlane plugin
Kohei Tabata
January 19, 2017
Tweet
Share
More Decks by Kohei Tabata
See All by Kohei Tabata
営業活動なしで継続的に案件を受注する方法 / how to get a contract without sales as a freelance
nerd0geek1
2
850
生体データを取り扱うアプリ開発の勘所
nerd0geek1
1
82
動線改善とステータス可視化で家庭内のストレスを軽減した話
nerd0geek1
3
4k
家庭をプロジェクトとして運営した話
nerd0geek1
2
4k
fastlaneの勉強会を主催して学んだこと、得たこと、悩んだこと
nerd0geek1
1
970
みんなで育てるprecheck
nerd0geek1
1
630
matchとは?match導入のメリット
nerd0geek1
4
510
Improve your workflow with Sketch plugin
nerd0geek1
3
1.2k
Looking back try! Swift 2017
nerd0geek1
0
550
Other Decks in Programming
See All in Programming
20240706_CDKConf
takuyay0ne
0
1.2k
AWSでゲームサーバーを運用! Amazon GameLiftのお話
iriikeita
0
200
Product Management LT会_クアンド新家
shinshin
0
250
生成AIをkintoneに連携してみた
hideg
0
230
I/O Extended Android in Korea 2024 ~ Whats new in Android development tools
pluu
0
250
CSC307 Lecture 10
javiergs
PRO
0
310
CSC307 Lecture 14
javiergs
PRO
0
220
Polarsの成長: v0.14からv1.0までの変遷と今後の展望
zerebom
1
350
APIのない大学ログインWebサービスをWKWebViewとJavaScriptでアプリ化した話
akidon0000
1
330
Folding Cheat Sheet #7
philipschwarz
PRO
0
150
【Go言語】ジェネリクス
tomo1227
0
170
Android開発者のための Kotlin Multiplatform入門
ntaro
0
190
Featured
See All Featured
Design by the Numbers
sachag
277
18k
jQuery: Nuts, Bolts and Bling
dougneiner
61
7.4k
Visualization
eitanlees
139
14k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
36
9.1k
The Power of CSS Pseudo Elements
geoffreycrofte
64
5.2k
The World Runs on Bad Software
bkeepers
PRO
63
11k
How to name files
jennybc
67
96k
Infographics Made Easy
chrislema
238
18k
Making Projects Easy
brettharned
111
5.7k
A designer walks into a library…
pauljervisheath
201
24k
YesSQL, Process and Tooling at Scale
rocio
166
14k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
502
140k
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)