continuous delivery in a .net world

37
Continuous Delivery in a .NET World Adam Goucher Tuesday, November 11, 14

Upload: adam-goucher

Post on 08-Jul-2015

3.611 views

Category:

Technology


3 download

DESCRIPTION

The slide deck for my Øredev 2014 session on doing Continuous Delivery with an example bias towards the .NET stack but the key points apply to all stacks I think. The video of the talk is available at http://vimeo.com/111289719 and the blog post with the words I wrote before creating the deck is at http://adam.goucher.ca/?p=1844

TRANSCRIPT

Page 1: Continuous Delivery in a .NET World

Continuous Delivery in a .NET World

Adam GoucherTuesday, November 11, 14

Page 2: Continuous Delivery in a .NET World

Have A Goal

Tuesday, November 11, 14

Page 3: Continuous Delivery in a .NET World

Have A GoalYou cannot win if you don’t know what winning looks like.

Tuesday, November 11, 14

Page 4: Continuous Delivery in a .NET World

Get ‘trunk’ deliverable

Tuesday, November 11, 14

Page 5: Continuous Delivery in a .NET World

Get ‘trunk’ deliverableFeature Flags

Tuesday, November 11, 14

Page 6: Continuous Delivery in a .NET World

Get ‘trunk’ deliverableExternalized Configuration

Tuesday, November 11, 14

Page 7: Continuous Delivery in a .NET World

Get ‘trunk’ deliverableNon assumption of installation location

Tuesday, November 11, 14

Page 8: Continuous Delivery in a .NET World

Get ‘trunk’ deliverableStop branching!!!

Tuesday, November 11, 14

Page 9: Continuous Delivery in a .NET World

Figure out your database

Tuesday, November 11, 14

Page 10: Continuous Delivery in a .NET World

Figure out your databaseInfluences your tooling

Tuesday, November 11, 14

Page 11: Continuous Delivery in a .NET World

Figure out your databaseInfluences your build chain

Tuesday, November 11, 14

Page 12: Continuous Delivery in a .NET World

Figure out your databaseForwards and backwards change compatibility within the

application

Tuesday, November 11, 14

Page 13: Continuous Delivery in a .NET World

Figure out your databaseInfluences deployment process

Tuesday, November 11, 14

Page 14: Continuous Delivery in a .NET World

Convention over Configuration

Tuesday, November 11, 14

Page 15: Continuous Delivery in a .NET World

Convention over ConfigurationSolution / Projects should be clones of each other

Tuesday, November 11, 14

Page 16: Continuous Delivery in a .NET World

Convention over ConfigurationIt doesn’t matter if your ‘partners’ don’t like it

Tuesday, November 11, 14

Page 17: Continuous Delivery in a .NET World

Make things Small (And Modular)

Tuesday, November 11, 14

Page 18: Continuous Delivery in a .NET World

Make things Small (And Modular)Nuget to the rescue?

Tuesday, November 11, 14

Page 19: Continuous Delivery in a .NET World

Not All Chains are Equal

Tuesday, November 11, 14

Page 20: Continuous Delivery in a .NET World

Not All Chains are EqualBe rigid. Except when you are flexible.

Tuesday, November 11, 14

Page 21: Continuous Delivery in a .NET World

Automate what should be Automated

Tuesday, November 11, 14

Page 22: Continuous Delivery in a .NET World

Automate what should be Automated

Continuous Deployment vs. Continuous Delivery

Tuesday, November 11, 14

Page 23: Continuous Delivery in a .NET World

Automate what should be Automated

Natively

Tuesday, November 11, 14

Page 24: Continuous Delivery in a .NET World

Infrastructure Matters

Tuesday, November 11, 14

Page 25: Continuous Delivery in a .NET World

Infrastructure MattersIf you have a ‘DevOps team’...

Tuesday, November 11, 14

Page 26: Continuous Delivery in a .NET World

Infrastructure MattersThe first hit is free...

Tuesday, November 11, 14

Page 27: Continuous Delivery in a .NET World

Infrastructure MattersInfrastructure is a ‘Product’ as well

Tuesday, November 11, 14

Page 28: Continuous Delivery in a .NET World

Powershell

Tuesday, November 11, 14

Page 29: Continuous Delivery in a .NET World

PowershellWhen you need a Hammer

Tuesday, November 11, 14

Page 30: Continuous Delivery in a .NET World

Its all about the People

Tuesday, November 11, 14

Page 31: Continuous Delivery in a .NET World

Its all about the PeopleDuh!

Tuesday, November 11, 14

Page 32: Continuous Delivery in a .NET World

Its all about the PeoplePeople, not Resources

Tuesday, November 11, 14

Page 33: Continuous Delivery in a .NET World

Its all about the People/Everyone/ needs to believe

Tuesday, November 11, 14

Page 34: Continuous Delivery in a .NET World

Its all about the PeopleGet rid of those that don’t

Tuesday, November 11, 14

Page 35: Continuous Delivery in a .NET World

It isn’t easy...

Tuesday, November 11, 14

Page 36: Continuous Delivery in a .NET World

...but is now possible.

Tuesday, November 11, 14

Page 37: Continuous Delivery in a .NET World

Start NOW!

Tuesday, November 11, 14