Transcript
Page 1: 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

Page 2: Cross platform continuous delivery - A grand unified theory

WhyContinuously Deliver?

Page 3: Cross platform continuous delivery - A grand unified theory

AboutBluebird…

Page 4: Cross platform continuous delivery - A grand unified theory

TheProblems…

• Slow build server• CI < Math.Enough• Office bound• Manual releases• Backups < Math.Enough

Unhappy clock by nocore, flickr

Page 5: Cross platform continuous delivery - A grand unified theory

WhyNow?

• Feeling the pain• Less time, very shortly• Need to outsource• Increased awareness

Page 6: Cross platform continuous delivery - A grand unified theory

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

Page 7: Cross platform continuous delivery - A grand unified theory

• Accessible from anywhere• Easy to collaborate• Develop/commit without internet• $22/month for 20 private repos

ForSource control…

Page 8: Cross platform continuous delivery - A grand unified theory

Quick look@ GitHub…

Page 10: Cross platform continuous delivery - A grand unified theory

Quick look@ TeamCity…

Page 11: Cross platform continuous delivery - A grand unified theory

TheIdeals...

• Local & CI build parity• No redundant building• Lose coupling of projects• Internal dependencies as products• Internal & external dependency consistency

Page 12: Cross platform continuous delivery - A grand unified theory

• Over 16,000 in the NuGet gallery• Can be used for internal dependencies• Can be used for deployments• Tools & repositories

PackagesFTW…

Page 13: Cross platform continuous delivery - A grand unified theory

Quick look@ MyGet…

Page 14: Cross platform continuous delivery - A grand unified theory

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

Page 15: Cross platform continuous delivery - A grand unified theory

DemoMaking changes…

Page 16: Cross platform continuous delivery - A grand unified theory

TheChallenges…

• Need agent side checkout• Build retriggering• Remember snaphots• NuGet not designed for internal

dependencies

Matterhorn Mickey by Andy Castro, flickr

Page 17: Cross platform continuous delivery - A grand unified theory

ForRelease management…

• Free (5 projects)• Intuitive UI• Flexible• Package based• Fits our release process

Page 18: Cross platform continuous delivery - A grand unified theory

Quick look@ Deployment Manager

Page 19: Cross platform continuous delivery - A grand unified theory

OutstandingDifficulties…

• Updating dependencies• Cross-repository changes• Feature branches• AppStore deployments

Maze 2 by Michael Wyszomierski, flickr

Page 20: Cross platform continuous delivery - A grand unified theory

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

Page 21: Cross platform continuous delivery - A grand unified theory

AnyQuestions?

Finger face with a question by Tsahi Levent-Levi, flickr

@JustinCaldicott


Top Related