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
Speeding Up Your CI
Search
yhkaplan
March 28, 2019
Programming
0
500
Speeding Up Your CI
yhkaplan
March 28, 2019
Tweet
Share
More Decks by yhkaplan
See All by yhkaplan
Using the latest UICollectionView APIs
yhkaplan
0
2.7k
Swift and Concurrency: The Plan for World Domination
yhkaplan
0
190
Backend-Driven UI: Making Screens Dynamic
yhkaplan
1
1.8k
Migrating from UIKit to SwiftUI efficiently
yhkaplan
4
3.6k
Property Wrappers
yhkaplan
0
570
Parser Combinators
yhkaplan
0
290
The Great Swift Migration
yhkaplan
1
4.1k
Automate All the Things
yhkaplan
4
2.5k
Other Decks in Programming
See All in Programming
PHPライセンス変更の議論を通じて学ぶOSSライセンスの基礎
matsuo_atsushi
0
150
モビリティSaaSにおけるデータ利活用の発展
nealle
0
190
Designing Repeatable Edits: The Architecture of . in Vim
satorunooshie
0
380
Inside of Swift Export
giginet
PRO
1
560
Bakuraku E2E Scenario Test System Architecture #bakuraku_qa_study
teyamagu
PRO
0
750
Private APIの呼び出し方
kishikawakatsumi
3
880
予防に勝る防御なし(2025年版) - 堅牢なコードを導く様々な設計のヒント / Growing Reliable Code PHP Conference Fukuoka 2025
twada
PRO
37
12k
チーム開発の “地ならし"
konifar
7
4.5k
JEP 496 と JEP 497 から学ぶ耐量子計算機暗号入門 / Learning Post-Quantum Crypto Basics from JEP 496 & 497
mackey0225
2
280
CloudflareのSandbox SDKを試してみた
syumai
0
150
Chart.jsで長い項目を表示するときのハマりどころ
yumechi
0
110
なぜ強調表示できず ** が表示されるのか — Perlで始まったMarkdownの歴史と日本語文書における課題
kwahiro
12
5.9k
Featured
See All Featured
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
54k
Principles of Awesome APIs and How to Build Them.
keavy
127
17k
Building a Scalable Design System with Sketch
lauravandoore
463
33k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Raft: Consensus for Rubyists
vanstee
140
7.2k
Unsuck your backbone
ammeep
671
58k
Testing 201, or: Great Expectations
jmmastey
46
7.8k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
359
30k
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.5k
Embracing the Ebb and Flow
colly
88
4.9k
Navigating Team Friction
lara
190
15k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
34
2.3k
Transcript
SPEEDING UP YOUR CI 1
SELF INTRO > Joshua Kaplan > minne @ GMO Pepabo
> Danger-Swift contributer > Likes 2
WHAT DO WE USE CI FOR? 3
1. Automated testing 2. Static analysis (linting etc) 3. Beta
deployment 4. Release build deployment 4
WHAT WERE BUILD TIMES LIKE? 5
> 1st build: 55 minutes > 2nd and later: 35
minutes 6
WHAT DID THEY BECOME? 7
> 14-16 minutes 8
HOW? 9
CACHING FRAMEWORKS 10
> Moving to Carthage and using Rome > Biggest impact:
55 to 33 minutes 11
WHAT IS ROME? 12
UPGRADING PLAN 13
14
> Not much to explain here > 33 to 20
minutes 15
ONLY GETTING CODE COVERAGE WHEN TESTS CHANGE 16
> 2 minutes less 17
REMOVE POINTLESS INDEXING 18
19
> Saves 1 or 2 minutes COMPILER_INDEX_STORE_ENABLE=NO 20
OTHER TECHNIQUES I LOOK FORWARD TO 21
> Parallelization > Separate modules 22
CONCLUSION 23
MESS AROUND 24