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
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Romain Pouclet
November 11, 2014
Programming
160
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Cocoaheads Montréal: Xcode Bots
Talking about Xcode bots (and writing a book about it)
Romain Pouclet
November 11, 2014
More Decks by Romain Pouclet
See All by Romain Pouclet
Getting punched in the face for fun
romainpouclet
0
77
Buddybuild - Android Montreal - June 2017
romainpouclet
0
130
Closed source is best source
romainpouclet
0
530
Save countless hours of work with this one simple trick - Fastlane tools
romainpouclet
1
540
Taking a peek at ReactiveCocoa 3.0
romainpouclet
0
150
Managing your dependencies using Carthage
romainpouclet
1
220
Cocoaheads Montréal : Automated testing for iOS
romainpouclet
1
290
Intégration continue pour iOS
romainpouclet
0
560
Other Decks in Programming
See All in Programming
Webフレームワークの ベンチマークについて
yusukebe
0
170
その問い、本当に正しいですか?AI時代のエンジニアに必要な哲学と認知科学 / ai-philosophy-cognitive-science
minodriven
11
5.9k
Language Server 使ってる? 〜VSCode と Zed の場合〜 / Are you using a Language Server? ~For VS Code and Zed~
handlename
0
800
セキュリティの専門家じゃなくてもできる。「セキュリティ意識」をアップデートして サプライチェーン攻撃への耐性を高めよう。
tk3fftk
5
890
Mujeres en SEO Summit 2026 - Greatest Disaster Hits en Web Performance
guaca
0
190
dRuby over BLE
makicamel
2
380
ECSアプリログをFireLensでコスト削減しようとしたけど諦めた話 in Fargate×Node.js
akihisaikeda
2
4.2k
Agentic UI
manfredsteyer
PRO
0
180
肥大化するレガシーコードに立ち向かうためのインターフェース分離と依存の逆転 / JJUG CCC 2026 Spring
hirokunimaeta
0
580
生成AI時代にこそ効くGo | Why Go Works in the Age of Generative AI
mom0tomo
8
3.3k
Inside Stream API
skrb
1
740
気づいたらRubyで100作品 ー クリエイティブコーディングが生活の一部になるまで / 100 Ruby Sketches Later: How Creative Coding Became Part of My Life
chobishiba
3
590
Featured
See All Featured
Introduction to Domain-Driven Design and Collaborative software design
baasie
1
850
Beyond borders and beyond the search box: How to win the global "messy middle" with AI-driven SEO
davidcarrasco
3
160
The Curse of the Amulet
leimatthew05
1
13k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
49
10k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
37
6.5k
How to Align SEO within the Product Triangle To Get Buy-In & Support - #RIMC
aleyda
2
1.5k
The Power of CSS Pseudo Elements
geoffreycrofte
82
6.3k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
130k
Mobile First: as difficult as doing things right
swwweet
225
10k
Utilizing Notion as your number one productivity tool
mfonobong
4
320
Bootstrapping a Software Product
garrettdimon
PRO
307
120k
Optimizing for Happiness
mojombo
378
71k
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?