Date post: | 06-May-2015 |
Category: |
Technology |
Upload: | naresh-jain |
View: | 2,879 times |
Download: | 0 times |
Continuous Deployment for iOS Game Development
Naresh Jain [email protected]
@nashjain http://nareshjain.com
45 mins Structure• 5 Mins - Demo of the Game
• 10 Mins - Continuous Deployment (Biz Case)
• 3 Mins - Challenges with CD for iPad apps
• 5 Mins - Our Approach
• 10 Mins - Our Architecture
• 5 Mins - Recap
• 7 Mins - Q & A
EdventureLabs Speedmath Demo
Commercial Break!
Copyright © 2012, AgileFAQs. All Rights Reserved.
Mumbai
Tech Talks!
Copyright © 2013, AgileFAQs. All Rights Reserved.
Continuous Deployment
Licensed Under Creative Commons by Naresh Jain
CD is quite natural for companies delivering
content via Web
Licensed Under Creative Commons by Naresh Jain
freesetglobal.com
Updates View
DB
StaticFiles
Stage 1
Structural
Changes
freesetglobal.com
Upda
tes View
DB
StaticFiles
Stage 2
dev.freesetglobal.com
DB
StaticFiles
Single-Click
Deploy
Sync
Freeset - In Business for Freedom
Licensed Under Creative Commons by Naresh Jain
BetterConf (AgileIndia) Submission System and
Online Registration System
Licensed Under Creative Commons by Naresh Jain
Can we embrace CD for eLearning?
Rich Multi-Media ContentVideo, Screencasts, Quizzes, Images, Personas, etc.
Programming ExercisesJava, C#, C++, C & Python
Mac OS, Windows, Linux, Solaris
Different IDE Plugins
Server side code analysis (Java, C#, C++, C & Python)
Licensed Under Creative Commons by Naresh Jain
This is what we did...
Licensed Under Creative Commons by Naresh Jain
Deploy build to inactive production servers
Licensed Under Creative Commons by Naresh Jain
Delivery tests verify inactive release
Licensed Under Creative Commons by Naresh Jain
Inactive joins the cluster
Licensed Under Creative Commons by Naresh Jain
Reverse proxy swaps inactive with active
Licensed Under Creative Commons by Naresh Jain
iOS App CD Challenges
• Apple takes any where between 3 Days to 1 Week to push a new update to the app store
• Pretty complicated and cumbersome signing and packing process
• Need to deploy to actual iOS devices to test minor changes
How did we solve this problems?
• We decided to go down the HTML5 Route
• Changes/Updates needed to be made at 3 levels:
• Content Changes & Logic Changes
• Look and Feel Changes
• Infrastructure Changes
Client Side Architecture
JSNative
Recap
• Split the changes into different layers
• Maximise the use of HTML5 Tech stack
• Automate the heck out of things