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
Software In Motion: Continuous Delivery for Mobile
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
David Truxall
November 14, 2015
Programming
0
64
Software In Motion: Continuous Delivery for Mobile
Slides from my presentation at Detroit Dev Day 2015
David Truxall
November 14, 2015
Tweet
Share
More Decks by David Truxall
See All by David Truxall
Environment Configuration for JavaScript Apps
davetrux
0
800
Everyday Animations in Android
davetrux
0
830
Psychology Behind Compelling Apps
davetrux
0
1.4k
Accessibility In Android
davetrux
0
1.2k
Android Authentication in a Web World
davetrux
0
1.3k
Build Apps Users Want To Use
davetrux
0
1.6k
Bluetooth Low Energy Overview for iOS
davetrux
0
63
Mobile Authentication In the Web World
davetrux
1
61
iOS for Android Developers (with Swift)
davetrux
1
320
Other Decks in Programming
See All in Programming
「やめとこ」がなくなった — 1月にZennを始めて22本書いた AI共創開発のリアル
atani14
0
370
AI時代のソフトウェア開発でも「人が仕様を書く」から始めよう-医療IT現場での実践とこれから
koukimiura
0
140
AIコーディングの理想と現実 2026 | AI Coding: Expectations vs. Reality 2026
tomohisa
0
1.2k
grapheme_strrev関数が採択されました(あと雑感)
youkidearitai
PRO
1
210
受け入れテスト駆動開発(ATDD)×AI駆動開発 AI時代のATDDの取り組み方を考える
kztakasaki
2
550
エラーログのマスキングの仕組みづくりに役立ったASTの話
kumoichi
0
160
Go1.26 go fixをプロダクトに適用して困ったこと
kurakura0916
0
360
今更考える「単一責任原則」 / Thinking about the Single Responsibility Principle
tooppoo
3
1.6k
AI活用のコスパを最大化する方法
ochtum
0
130
Agentic AI: Evolution oder Revolution
mobilelarson
PRO
0
140
Claude Code の Skill で複雑な既存仕様をすっきり整理しよう
yuichirokato
1
360
ポーリング処理廃止によるイベント駆動アーキテクチャへの移行
seitarof
1
500
Featured
See All Featured
Leadership Guide Workshop - DevTernity 2021
reverentgeek
1
230
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
3.4k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
31
3.1k
Applied NLP in the Age of Generative AI
inesmontani
PRO
4
2.2k
Speed Design
sergeychernyshev
33
1.6k
The Anti-SEO Checklist Checklist. Pubcon Cyber Week
ryanjones
0
89
Rails Girls Zürich Keynote
gr2m
96
14k
Being A Developer After 40
akosma
91
590k
Bioeconomy Workshop: Dr. Julius Ecuru, Opportunities for a Bioeconomy in West Africa
akademiya2063
PRO
1
69
Navigating Weather and Climate Data
rabernat
0
130
How GitHub (no longer) Works
holman
316
140k
Into the Great Unknown - MozCon
thekraken
40
2.3k
Transcript
Software In Motion Continuous Delivery for Mobile. David Truxall, Ph.D.
About Me @davetrux http://blog.davidtruxall.com http://bit.ly/detdevday
DevOps Intersection of agile software development and IT infrastructure
Concepts – Continuous Integration – Build the app on every code commit
– Know when the app is working or broken – Fail early – Happens more often than you would imagine – Continuous Delivery – App is constantly tested – Deliverable to production at any time – Automated deployment
Mobile Problems – Multiple Platforms – Multiple Environments – App
Signing – Testing – Deployment 5
Goals – Consistency across platforms – Automation – Easy for
team 6
None
Continuous Integration Server 8
Build Scripts 9
Jenkins Tour 10
Infrastructure
Mobile Nodes 12
iOS Jenkins Node – Be reachable from the master –
Create a Jenkins user – Install Java – Install Gradle – Install Xcode – Generate SSH keypair 13
Gradle and iOS OpenBakery Gradle Xcode Plugin http://openbakery.org/gradle.html 14
iOS Demo 15
Android Jenkins Node – Be reachable from master – Install
Java – Install Apache or nginx to proxy Jenkins – Install Android SDK 16
Android and Gradle – Build Variants 17
Android Demo 18
Web Jenkins Node – Only JDK necessary 19
Java Web and Gradle – Cargo Plugin https://github.com/bmuschko/gradle-cargo-plugin 20
Java Web Demo 21
Testing 22
Automated Testing – Unit Tests – Functional Tests 23
Automated Test Demo 24
Static Code Analysis – FindBugs – Lint tools – SonarQube
25
SonarQube Demo 26
Deployment 27
Deployment 28
HockeyApp - Install
iOS Deployment 30
Resources – http://hockeyapp.net – https://aws.amazon.com/device-farm/ – https://github.com/bmuschko/gradle-cargo-plugin – http://calaba.sh/ – http://gradle.org/ – https://jenkins-ci.org/ – https://github.com/bmuschko/gradle-cargo-plugin – http://appfoundry.be/blog/2014/07/04/Xcode-Env- Configuration/
31
Shameless Plug @davetrux http://blog.davidtruxall.com http://bit.ly/detdevday