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
Optimize Flutter Workflow on Bitrise
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
Hiroki Matsue
March 26, 2019
Technology
2
1.3k
Optimize Flutter Workflow on Bitrise
Flutter Meetup Tokyo #8"でのLT資料です。
https://flutter-jp.connpass.com/event/121387/
Hiroki Matsue
March 26, 2019
Tweet
Share
More Decks by Hiroki Matsue
See All by Hiroki Matsue
Getting Screenshots Automatically in Flutter
matsue
2
550
Write tests for Provider
matsue
4
850
ややcomplexなBLoCへの対応
matsue
2
810
Flutterアプリの難読化とエラーレポート(iOS)
matsue
2
2.1k
いまさらだけど「良い通知」について考えてみた
matsue
4
11k
リテンション率を2倍にするための2つの視点
matsue
0
3.6k
リソースを効率的に使うためのバックログ活用事例
matsue
1
500
ローディング時のより良いUIの実装
matsue
2
2k
カウルにおけるElasiticsearchの導入と実例
matsue
0
930
Other Decks in Technology
See All in Technology
AzureでのIaC - Bicep? Terraform? それ早く言ってよ会議
torumakabe
1
530
10Xにおける品質保証活動の全体像と改善 #no_more_wait_for_test
nihonbuson
PRO
2
240
OpenShiftでllm-dを動かそう!
jpishikawa
0
100
SREチームをどう作り、どう育てるか ― Findy横断SREのマネジメント
rvirus0817
0
220
顧客の言葉を、そのまま信じない勇気
yamatai1212
1
350
データの整合性を保ちたいだけなんだ
shoheimitani
8
3.1k
usermode linux without MMU - fosdem2026 kernel devroom
thehajime
0
230
コスト削減から「セキュリティと利便性」を担うプラットフォームへ
sansantech
PRO
3
1.4k
Greatest Disaster Hits in Web Performance
guaca
0
220
【Oracle Cloud ウェビナー】[Oracle AI Database + AWS] Oracle Database@AWSで広がるクラウドの新たな選択肢とAI時代のデータ戦略
oracle4engineer
PRO
2
140
Context Engineeringの取り組み
nutslove
0
340
予期せぬコストの急増を障害のように扱う――「コスト版ポストモーテム」の導入とその後の改善
muziyoshiz
1
1.8k
Featured
See All Featured
Redefining SEO in the New Era of Traffic Generation
szymonslowik
1
210
Large-scale JavaScript Application Architecture
addyosmani
515
110k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
17k
Tips & Tricks on How to Get Your First Job In Tech
honzajavorek
0
430
DevOps and Value Stream Thinking: Enabling flow, efficiency and business value
helenjbeal
1
94
16th Malabo Montpellier Forum Presentation
akademiya2063
PRO
0
49
The browser strikes back
jonoalderson
0
370
The B2B funnel & how to create a winning content strategy
katarinadahlin
PRO
0
270
Facilitating Awesome Meetings
lara
57
6.8k
How Fast Is Fast Enough? [PerfNow 2025]
tammyeverts
3
450
A Modern Web Designer's Workflow
chriscoyier
698
190k
Rails Girls Zürich Keynote
gr2m
96
14k
Transcript
Optimize Flutter Workflow on Bitrise Hiroki Matsue (@macs_6) Mar 26th,
2019 Flutter Meetup Tokyo #8
This talk is about CI steps time reduction
Target Listeners
Who know this
Faster CI makes devs happier
Reulst on my project Timeout => 9 minutes Just few
minutes, but Free plan is not so bad ¯\(π)/¯
Flutter CI steps 1. Install Flutter 2. Execute "flutter analyze"
3. Execute "flutter test" 4. Execute "flutter build" (Android and iOS both)
(Each results were measured with my personal project)
Try "Flutter Install" step optimization
TL;DR: Just wait new Hybrid stack https://discuss.bitrise.io/t/making-flutter-builds-faster/3976/8
What if we cache Flutter? • flutter installation: 137sec 㱺
2sec (-135sec) • cache-pull: 11sec 㱺 27sec (+16sec) • cache-push: 92sec 㱺 209sec (+117sec) Only remote storage was changed, no time reduction
Try "flutter build" step optimization
TL;DR: Cache following items • ios/Pods/ • $HOME/Library/Developer/Xcode/DerivedData
Pods caching result • flutter build ios: 172sec 㱺 99sec
(-73sec) • cache-pull: 9sec => 11sec (+2sec) • cache-push: 58sec 㱺 72sec (+14sec) Very effective !
DerivedData caching result • flutter build ios: 140sec 㱺 54sec
(-86sec) • cache-pull: 15sec => 15sec (+0sec) • cache-push: 85sec 㱺 141sec (+56sec)
Non effective items on my project • build/ • ios/Flutter/
• ios/.symlinks/ • $HOME/.gradle/ • android/.gradle/ cache-push tooks too long time for .gradle on my project.
References • "60% faster builds: force Xcode to use caching
on Bitrise!" https://medium.com/@bitrise/60-faster-builds-force-xcode- to-use-caching-on-bitrise-af8979ca39a6 • "Cache Gradle dependencies on Bitrise" https:// medium.com/bitrise/cache-gradle-dependencies-on- bitrise-cf19a2580d07
Faster "flutter analyze" and "flutter test"? Sorry, I have no
idea now ¯\(π)/¯
Other ideas • Put dependencies to the repo • Use
build scheduling for long workflows • Pay for Bitrise • Concurrent build for ios and apk
Summary Caching following items, and using new Flutter Hybrid stacks
will be efficient. • ios/Pods/ • $HOME/Library/Developer/Xcode/DerivedData
Thanks