G.U.T.: The Grand Unified Theory A one-act play with seven blackouts
Cross platform continuous delivery - A grand unified theory
-
Upload
justin-caldicott -
Category
Technology
-
view
881 -
download
3
description
Transcript of Cross platform continuous delivery - A grand unified theory
Cross Platform Continuous Delivery: Web, Mobile and Desktop -
A Grand Unified Theory
First Stars by Paul Chaloner, flickr
WhyContinuously Deliver?
AboutBluebird…
TheProblems…
• Slow build server• CI < Math.Enough• Office bound• Manual releases• Backups < Math.Enough
Unhappy clock by nocore, flickr
WhyNow?
• Feeling the pain• Less time, very shortly• Need to outsource• Increased awareness
TheAspirations...
• Work anywhere• Work with anyone• With without internet• Start developing instantly• Get feedback, fast• Frequent, reliable releases• Price < Math.TooMuch
IMG_4255 by Michel van den Bogaard, flickr
• Accessible from anywhere• Easy to collaborate• Develop/commit without internet• $22/month for 20 private repos
ForSource control…
Quick look@ GitHub…
ForContinuous integration…
+• Free (20 projects)• Cross-platform• Intuitive UI• Lots of useful features• Flexible• $67/month for small VM
Quick look@ TeamCity…
TheIdeals...
• Local & CI build parity• No redundant building• Lose coupling of projects• Internal dependencies as products• Internal & external dependency consistency
• Over 16,000 in the NuGet gallery• Can be used for internal dependencies• Can be used for deployments• Tools & repositories
PackagesFTW…
Quick look@ MyGet…
TheDesign...• Separate repository for each project & tests• NuGet for all dependencies• TeamCity & MyGet for feeds• TeamCity creates release ready artefacts• Auto-update references to latest dependencies
Architecture by Moyan Brenn, flickr
DemoMaking changes…
TheChallenges…
• Need agent side checkout• Build retriggering• Remember snaphots• NuGet not designed for internal
dependencies
Matterhorn Mickey by Andy Castro, flickr
ForRelease management…
• Free (5 projects)• Intuitive UI• Flexible• Package based• Fits our release process
Quick look@ Deployment Manager
OutstandingDifficulties…
• Updating dependencies• Cross-repository changes• Feature branches• AppStore deployments
Maze 2 by Michael Wyszomierski, flickr
KeyTakeaways…
• Infrastructure can be in the cloud• DVCS worth learning• Get everything under CI• Libraries are products too• Release management > deployment via CI• Tools available
Streets of San Francisco by Frank Kehren, flickr
AnyQuestions?
Finger face with a question by Tsahi Levent-Levi, flickr
@JustinCaldicott