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
David Truxall
November 14, 2015
Programming
72
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Software In Motion: Continuous Delivery for Mobile
Slides from my presentation at Detroit Dev Day 2015
David Truxall
November 14, 2015
More Decks by David Truxall
See All by David Truxall
Environment Configuration for JavaScript Apps
davetrux
0
820
Everyday Animations in Android
davetrux
0
850
Psychology Behind Compelling Apps
davetrux
0
1.4k
Accessibility In Android
davetrux
0
1.3k
Android Authentication in a Web World
davetrux
0
1.4k
Build Apps Users Want To Use
davetrux
0
1.6k
Bluetooth Low Energy Overview for iOS
davetrux
0
70
Mobile Authentication In the Web World
davetrux
1
68
iOS for Android Developers (with Swift)
davetrux
1
330
Other Decks in Programming
See All in Programming
Gmail/Google DriveをトリガーにAIエージェントを動かそう! / Run AI agents with Gmail/Google Drive as triggers!
har1101
3
460
Deep dive into the select statement (GopherCon UK)
jespino
0
170
AI に Inclusive UI を書かせよう — Design Rules Skill で Compose UI を作り直す
theoriatec2024
1
430
Oxlintはいいぞ(続)
yug1224
1
540
in-process GraphQL のすすめ #ginzajs
izumin5210
4
1.5k
AIは賢い。でも実行環境は? CLIおじさんがAI時代に伝えたいこと ~ CLIおじさんがAI時代に伝えたいこと ~
curekoshimizu
1
140
XHTMLが残したもの
yosuke_furukawa
PRO
1
380
FastAPI の並行処理モデルを完全に理解する
hoto17296
9
3.7k
思考垂れ流し開発 ~音声入力 × AIエージェント × 開発ハーネスによる試行錯誤~
npostring
0
810
Hello, Hiroshima Geospatial Data! — Exploring DoboX with Python
ra0kley
0
160
Vibes Containers 〜AIで変わるコンテナ設計と運用〜
tkikuc
1
460
PyConJP2026_wat_Python × Signal Processing: How to Draw Pictures with Sound Using Spectrogram Art
wat
0
660
Featured
See All Featured
Believing is Seeing
oripsolob
1
210
Designing for humans not robots
tammielis
254
26k
Building a Scalable Design System with Sketch
lauravandoore
463
34k
Introduction to Domain-Driven Design and Collaborative software design
baasie
1
970
sira's awesome portfolio website redesign presentation
elsirapls
0
400
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
133
19k
Abbi's Birthday
coloredviolet
3
9.7k
The #1 spot is gone: here's how to win anyway
tamaranovitovic
3
1.2k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
17k
WCS-LA-2024
lcolladotor
0
820
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4.6k
BBQ
matthewcrist
89
10k
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