View
314
Download
1
Category
Tags:
Preview:
DESCRIPTION
Build better applications by thinking through your deployment workflows: Deployment process is important. This presentations shows you why and presents a couple of workflows that can help your team build great infrastructure --- Codeship is a free hosted Continuous Integration and Delivery Service. You can find us on https://www.codeship.io and can also check out our blog at http://blog.codeship.io
Citation preview
Why I Learned to Stop Worrying and Love the Process
Flo Motlik @flomotlik
flo@codeship.io
1bit.ly/codeshipprocess
As Developers we love process
2
• TDD • Code Review, • Branching & Merging • Pair programming • …
3
Good process makes good teams win
4
Bad process makes great teams suck
5
Deployment/Delivery is 2nd class citizen
6
“Unshipped Code is technical debt. No benefits, only costs”
Alex Tacho @alexandertacho
7
Hard to resolve
8
Not just technical problem
9
Customer Feedback essential
10
late feedback, slow improvement
11
Money not a barrier to entry
12
All about speed of innovation
13
Processes that helped us at Codeship
14
Repository driven infrastructure
15
Developer Automated Deployment
Push to production branch
Notify when ready or problems
16
Full automation to focus on development
17
Repo is one true source
18
• No Misunderstandings • One last commit per Branch • We live in our repos
19
Eventually consistent infrastructure
20
You push to repo, eventually infrastructure is up to date
21
Full system automation
22
• Testing • Deployment • Metrics & Health Checks • Validation • Recovery • Feedback and Notifications
23
Updating servers often risks inconsistent server state
24
Rip out and replace
25
Stop thinking “single server”, start thinking “part of a system”
26
Immutable Infrastructure
27
Build new images for every change
28
Test in Isolation
29
Replace in production
30
Start 1 or 500 instances from same image
31
• Atomic Deployments • Reversible • Ephemeral • Forces State isolation and boundaries • Fast Recovery • Testability
32
Automate every layer
33
Empty machine to full image must be automated
34
Why we needed to build this way
35
make innovation faster and remove fear
36
“Fear is the path to the dark side. Fear leads to Inertia. Inertia leads to Paralysis. Paralysis leads to going out of business.”
37
DevOps Yoda
As developers we are responsible for shipping our
features
38
Code in repo is not shipping
39
It’s shipped when at customer and we get actionable metrics
40
Need to embrace process and push for it, not wait for somebody
else to come up with it.
41
Codeship.io
42
Continuous Delivery as a service
Recommended