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
Watson
January 26, 2018
Technology
98
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
fastlane 奮闘記
Watson
January 26, 2018
More Decks by Watson
See All by Watson
クラウドネイティブ時代に 進化し続けるFluentd
watson
0
33
RMagick, migrate to ImageMagick 7 #RubyKaigi #RubyKaigi2019
watson
0
10k
Magick
watson
0
12k
Improve JSON Performance
watson
2
1.1k
How to optimize Ruby internal.
watson
3
3.1k
iOS、AndroidアプリをRubyで
watson
1
520
RubyMotion 2.0
watson
6
2.9k
Differences CRuby/MacRuby/RubyMotion
watson
5
5.8k
Other Decks in Technology
See All in Technology
AIで実装は速くなった。なのにプロダクトは速くならない。職能の壁を越えて価値のフローを設計する
nwiizo
7
7.4k
深夜のクラウド懺悔室 1:29:300 or 1:0:0
kazzpapa3
0
190
Backstageでつくるセルフサービスな社内開発基盤
kikunosuke75
1
350
WAF 運用改善の承認サイクル/SRE_BizReach_MIXI_1
visional_engineering_and_design
1
350
Beyond the Hype: Practical AI for Your Oracle Database with MCP
thatjeffsmith
1
280
Bet AI Day 2026丨Agentは、「金融」という巨大産業の何を変えられるのか
layerx
PRO
0
1.1k
Kiro Crewしか勝たん!?
miu_crescent
PRO
0
180
Oracle Cloud Infrastructure IaaS 新機能アップデート 2026/6 - 2026/8
oracle4engineer
PRO
0
120
Benchmarking Vector Databases: pgvector vs. LanceDB
tsho
0
150
動画配信アプリでの Engage SDK 導入 — TVer Android が Play ストアにコンテンツを届けるまで
techtver
PRO
0
140
エンタープライズInnerSourceと開発者ポータル
nogikazuma
1
110
プロダクトエンジニアに必要な「いい感じ」に作る能力 〜たくさん作れる時代に、どこまで作るかの決め方〜
jnishime_dresscode
2
1.4k
Featured
See All Featured
Why Our Code Smells
bkeepers
PRO
340
58k
DevOps and Value Stream Thinking: Enabling flow, efficiency and business value
helenjbeal
1
380
Being A Developer After 40
akosma
91
590k
Done Done
chrislema
186
16k
The AI Search Optimization Roadmap by Aleyda Solis
aleyda
1
6.2k
Writing Fast Ruby
sferik
630
63k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
38
3k
Speed Design
sergeychernyshev
33
2.1k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
230
23k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
6.1k
Everyday Curiosity
cassininazir
0
310
Navigating Weather and Climate Data
rabernat
0
510
Transcript
GBTUMBOFฃಆه 4IJ[VP'VKJUB
w ॴଐɿגࣜձࣾϢϏϨδ w 5XJUUFSɿ!XBUTPO
GBTUMBOFͱʁ w J04"OESPJEΞϓϦͷϦϦʔε࡞ۀΛࣗಈԽ͢Δπʔϧ w 3VCZ w SBLFΈ͍ͨͳͷ w ༗ࢤʹΑΔେྔͷϓϥάΠϯ w
IUUQTEPDTGBTUMBOFUPPMTQMVHJOTBWBJMBCMFQMVHJOT
GBTUMBOFىಈ͍
w SBLF UJNFCVOEMFFYFDSBLFIEFWOVMM CVOEMFFYFDSBLFIEFWOVMMTVTFSTTZTUFNDQVUPUBM UJNFCVOEMFFYFDGBTUMBOFIEFWOVMM CVOEMFFYFDGBTUMBOFIEFWOVMMTVTFSTTZTUFNDQVUPUBM w GBTUMBOF TFDWTTFD
w 3VCZඪ४ϥΠϒϥϦ QSPpMF require 'profiler' RubyVM::InstructionSequence.compile_option = { :trace_instruction =>
true, :specialized_instruction => false } Profiler__::start_profile ௐ͍ࠪͨ͠ίʔυ Profiler__::print_profile(STDERR) Profiler__::stop_profile
QSPpMF݁Ռ $ bundle exec fastlane -h > /dev/null % cumulative
self self total time seconds seconds calls ms/call ms/call name 50.48 0.53 0.53 953 0.56 5.38 Kernel#require 29.52 0.84 0.31 4 77.50 77.50 IO.select 6.67 0.91 0.07 2 35.00 35.00 Socket.getaddrinfo 6.67 0.98 0.07 427 0.16 0.49 Spaceship::Base.attr 2.86 1.01 0.03 2 15.00 15.00 OpenSSL::X509::Store 2.86 1.04 0.03 1215 0.02 0.03 Module#define_method 1.90 1.06 0.02 1 20.00 20.00 IO.read 1.90 1.08 0.02 1725 0.01 0.01 Symbol#to_s 1.90 1.10 0.02 321 0.06 2.52 Array#each 1.90 1.12 0.02 423 0.05 0.07 Module#class_eval 1.90 1.14 0.02 933 0.02 0.11 nil# 1.90 1.16 0.02 8160 0.00 0.00 Module#method_added 0.95 1.17 0.01 4 2.50 2.50 Range#each 0.95 1.18 0.01 15 0.67 1.33 Kernel#eval 0.95 1.19 0.01 183 0.05 0.05 Array#hash 0.95 1.20 0.01 66 0.15 0.15 Array#inspect 0.95 1.21 0.01 36 0.28 0.28 Forwardable._delegat 0.95 1.22 0.01 159 0.06 0.06 Module#private 0.95 1.23 0.01 387 0.03 0.03 Hash#[]=
,FSOFMSFRVJSF ϩʔυ͢ΔϑΝΠϧͷύεΛऔಘ ϑΝΠϧΛಡΈࠐΉ QBSTF͠ߏจੜ 3VCZ*OTUSVDUJPO4FRVFODFੜ
Ϋϥεɺϝιουఆٛ
None
CPPUTOBQͱʁ w SFRVJSF࣌ʹ͕͔͔࣌ؒΔͷΛDBDIF͢ΔϥΠϒϥϦ w SFRVJSF͢ΔϑΝΠϧύε w 3VCZ*OTUSVDUJPO4FRVFODF
#VOEMFSͱີʹґଘͯͯ͠ɺCVOEMFSΘͳ͍߹ʹྫ֎ى͜ ͯͨ͠ɻ͚ͨ͠Ͳ͞ ɾТɾ
GBTUMBOFͲ͏ͳͬͨʁ w #FGPSF UJNFCVOEMFFYFDGBTUMBOFIEFWOVMM CVOEMFFYFDGBTUMBOFIEFWOVMMTVTFSTTZTUFNDQVUPUBM UJNFCVOEMFFYFDGBTUMBOFIEFWOVMM CVOEMFFYFDGBTUMBOFIEFWOVMMTVTFSTTZTUFNDQVUPUBM w "GUFS TFDˠTFD
None
໊લۭؒͳ͍
΄͔ͬͨ͠ͷ platform :ios do namespace :update do lane :build_number do
... end lane :version do ... end end end $ bundle exec fastlane update:version
None
ଥڠͨ͠ lane :"update:build_number" do ... end lane :”update:version" do ...
end
ࢦఆͨ͠λεΫ͕ೝࣝ͞ΕͣɺλεΫҰཡ͕දࣔ͞Εͨ
ҾΛίϩϯͰׂ͢ΔṖͷίʔυ ɾТɾʆ
͜Μͳͷαϙʔτͯͨ͠ platform :ios do lane :hogehoge do |arg| # key:value
͕ {:key=>"value"} ͱͯ͠ arg ʹ͞ΕΔ p arg end end $ bundle exec fastlane hogehoge key:value
ϓϥοτϑΥʔϜͱλεΫ໊Λׂ͠ͳ͍Ͱ ɾТɾʆ
ఏڙ גࣜձࣾϢϏϨδ