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.8k
CIの改善とfastlane plugin
Kohei Tabata
January 19, 2017
Tweet
Share
More Decks by Kohei Tabata
See All by Kohei Tabata
AIと協業する開発の進め方
nerd0geek1
0
120
営業活動なしで継続的に案件を受注する方法 / how to get a contract without sales as a freelance
nerd0geek1
2
930
生体データを取り扱うアプリ開発の勘所
nerd0geek1
1
110
動線改善とステータス可視化で家庭内のストレスを軽減した話
nerd0geek1
3
4.3k
家庭をプロジェクトとして運営した話
nerd0geek1
2
4.2k
fastlaneの勉強会を主催して学んだこと、得たこと、悩んだこと
nerd0geek1
1
1.1k
みんなで育てるprecheck
nerd0geek1
1
740
matchとは?match導入のメリット
nerd0geek1
4
580
Improve your workflow with Sketch plugin
nerd0geek1
3
1.4k
Other Decks in Programming
See All in Programming
たった 1 枚の PHP ファイルで実装する MCP サーバ / MCP Server with Vanilla PHP
okashoi
1
150
生成AIコーディングとの向き合い方、AIと共創するという考え方 / How to deal with generative AI coding and the concept of co-creating with AI
seike460
PRO
1
320
Select API from Kotlin Coroutine
jmatsu
1
190
Haskell でアルゴリズムを抽象化する / 関数型言語で競技プログラミング
naoya
17
4.8k
PostgreSQLのRow Level SecurityをPHPのORMで扱う Eloquent vs Doctrine #phpcon #track2
77web
1
130
F#で自在につくる静的ブログサイト - 関数型まつり2025
pizzacat83
0
310
Webの外へ飛び出せ NativePHPが切り拓くPHPの未来
takuyakatsusa
1
200
Benchmark
sysong
0
230
レガシーシステムの機能調査・開発におけるAI利活用
takuya_ohtonari
0
610
deno-redisの紹介とJSRパッケージの運用について (toranoana.deno #21)
uki00a
0
130
XSLTで作るBrainfuck処理系
makki_d
0
210
Spring gRPC で始める gRPC 入門 / Introduction to gRPC with Spring gRPC
mackey0225
2
520
Featured
See All Featured
Code Review Best Practice
trishagee
68
18k
Visualization
eitanlees
146
16k
Build your cross-platform service in a week with App Engine
jlugia
231
18k
How to Think Like a Performance Engineer
csswizardry
24
1.7k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
228
22k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
161
15k
Navigating Team Friction
lara
187
15k
How to Ace a Technical Interview
jacobian
277
23k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
16k
Optimizing for Happiness
mojombo
379
70k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
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)