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
Cocoaheads Montréal: Xcode Bots
Search
Romain Pouclet
November 11, 2014
Programming
1
130
Cocoaheads Montréal: Xcode Bots
Talking about Xcode bots (and writing a book about it)
Romain Pouclet
November 11, 2014
Tweet
Share
More Decks by Romain Pouclet
See All by Romain Pouclet
Getting punched in the face for fun
romainpouclet
0
69
Buddybuild - Android Montreal - June 2017
romainpouclet
0
110
Closed source is best source
romainpouclet
0
510
Save countless hours of work with this one simple trick - Fastlane tools
romainpouclet
1
520
Taking a peek at ReactiveCocoa 3.0
romainpouclet
0
150
Managing your dependencies using Carthage
romainpouclet
1
210
Cocoaheads Montréal : Automated testing for iOS
romainpouclet
1
270
Intégration continue pour iOS
romainpouclet
0
550
Other Decks in Programming
See All in Programming
LangChain4jとは一味違うLangChain4j-CDI
kazumura
1
140
AIとペアプロして処理時間を97%削減した話 #pyconshizu
kashewnuts
1
200
maplibre-gl-layers - 地図に移動体たくさん表示したい
kekyo
PRO
0
180
社内規程RAGの精度を73.3% → 100%に改善した話
oharu121
13
7.5k
オブザーバビリティ駆動開発って実際どうなの?
yohfee
3
690
AIプロダクト時代のQAエンジニアに求められること
imtnd
2
700
CopilotKit + AG-UIを学ぶ
nearme_tech
PRO
1
130
文字コードの話
qnighy
43
17k
CDIの誤解しがちな仕様とその対処TIPS
futokiyo
0
170
AI主導でFastAPIのWebサービスを作るときに 人間が構造化すべき境界線
okajun35
0
550
AIコーディングの理想と現実 2026 | AI Coding: Expectations vs. Reality 2026
tomohisa
0
1k
受け入れテスト駆動開発(ATDD)×AI駆動開発 AI時代のATDDの取り組み方を考える
kztakasaki
2
520
Featured
See All Featured
What's in a price? How to price your products and services
michaelherold
247
13k
Thoughts on Productivity
jonyablonski
75
5.1k
svc-hook: hooking system calls on ARM64 by binary rewriting
retrage
2
140
Side Projects
sachag
455
43k
WENDY [Excerpt]
tessaabrams
9
36k
A designer walks into a library…
pauljervisheath
210
24k
4 Signs Your Business is Dying
shpigford
187
22k
Crafting Experiences
bethany
1
75
Ethics towards AI in product and experience design
skipperchong
2
210
The Hidden Cost of Media on the Web [PixelPalooza 2025]
tammyeverts
2
240
Breaking role norms: Why Content Design is so much more than writing copy - Taylor Woolridge
uxyall
0
200
Designing for Timeless Needs
cassininazir
0
150
Transcript
Xcode Bots Cocoaheads Montréal 11/2014
Who ? • Romain Pouclet • @palleas • iOS developer
at TechSolCom / R3D • Wrote a book
I wrote a book • Pro Continuous Integration for iOS
• 230 pages • Anybody wants one ?
Continuous integration (CI) is the practice, in software engineering, of
doing a bunch of stuff... — Wikipedia (kinda)
Existing solutions • Jenkins !!! • Bamboo """ • Travis-CI
& Ci ###
Jenkins & TechSolCom • OpenSource ❤️ • Nice bash script
• Homemade distribution store
Bamboo & TechSolCom • ! • Complicated to use •
Terrible support for Xcode projects • Unstable network = unstable instalation
Travis & TechSolCom (Nope)
Continuous integration is hard (and boring)
Continuous integration is hard (and boring) Entering Apple (a few
years later)
Writing a book talking about Bots? • Working with Apress
is great • Initially a small chapter about a promising solution • A bag of hurt at the time • Had to rewrite / update a few chapters after WWDC
Getting started with Bots • Standalone Application • 20$ •
Some cool features (App Store caching...) • Super easy to install ! • Super hard to remove "
Repository Management • Manage access to remote repositories • Host
your project on your OSX Server (This can be done via Xcode)
User Management
XCode service
Setting up a bot • Build app • Static Analysis
• Automated Tests / Performance analysis • Archiving
Static Analysis
Static Analysis from command line (For comparison purposes)
Unit Testing
Archiving
Web interface
Demo (Maybe.)
1 branch = 1 bot (Basically)
1 branch = 1 bot 1. Create a branch 2.
Create a bot 3. Work on the feature 4. Merge branch 5. Delete bot 6. Repeat
Conclusion • Apple is finally entering the game • OSX
Server is super easy to install / use • Still a lot of room for improvements • Bots are cheap, use them
Thank you! Questions?