STEVE SMITH • DEVOPS ADVOCATE • ATLASSIAN • @TARKASTEVE
Continuous Deployment for a Billion Dollar Order System
@tarkasteve
Continuous?
@tarkasteve
Continuous Integration
@tarkasteve
Continuous Delivery
@tarkasteve
Continuous Deployment
@tarkasteve
It’s all about Quality
@tarkasteve
WhyLeo Reynolds / Flickr
@tarkasteve
Release features, not dumps
@tarkasteve
Automation
@tarkasteve
Remove bottlenecks
@tarkasteve
Stakeholders
yozakz / deviantart
@tarkasteve
Users
@tarkasteve
Managers
@tarkasteve
Developers
@tarkasteve
Admins
@tarkasteve
BRANCH
Development workflow
CONTINUALLY TEST
PULL REQUEST
DEPLOY (STAGING)
PROMOTE
BRANCH
TRACK REQUESTS
@tarkasteve
Track your requests
JIRA123
@tarkasteve
stable master branch
master
Work on a branch
isolated feature work
feature/JIRA-123
@tarkasteve
Continuously test
stable master branch
master
isolated feature work
feature/JIRA-123
@tarkasteve
Pull Request
feature/JIRA-123
master
technical debt
O(n!) algorithm
bad API decision
human judgement needed
?
@tarkasteve
Merge and Release (staging)
feature/JIRA-123
master
?
@tarkasteve
Promote to production
@tarkasteveLast Mile
@tarkasteve
Build Agent
Deploy?
Server
@tarkasteve
Our Solution
Deploy
Server
@tarkasteve
Continuous Downtime?
North Lanarkshire Council
@tarkasteve
Management
@tarkasteve
Ticket-based management
@tarkasteve
Ticket-based management
@tarkasteve
Deployment Environments
@tarkasteve
Deployment Environments
@tarkasteve
Ticket-based management
@tarkasteve
Separation of Duties
Management
Developers
BAs
Sysadmins
@tarkasteve
Key PointsCLEAR MOTIVATION
COOPERATIVE TOOLS AND PEOPLE
BRANCHING WORKFLOW
STEVE SMITH • DEVOPS ADVOCATE • ATLASSIAN • @TARKASTEVE
“Docker CI + tarkasteve” “Understanding Git + tarkasteve”
developer.atlassian.com/blog/
Search: