Beyond Continuous Delivery at DevOpsDays Rome 2012
-
Upload
chris-hilton -
Category
Documents
-
view
1.309 -
download
1
description
Transcript of Beyond Continuous Delivery at DevOpsDays Rome 2012
Continuous Delivery
• Frequent, automated releases
• Every check-in is a potential release
• Every change triggers feedback
• Feedback must be received as soon
as possible
• Automate almost everything
• Build quality in
Assumptions
• Trunk-based development
• Continuous
integration/delivery/deployment
• Cloud computing
– Cheap
– Unlimited
App WAR
A JAR
Common JAR
B JAR
Dependency Management
and Modular Development
App WAR
A JAR
Common JAR
B JAR
Dependency Management
and Modular Development
Base VM
Isolation Tests
IT Scripts
Env Scripts App WAR
A JAR
Common JAR
B JAR
Infrastructure as Code
Application InfrastructureIntegration
Base VM
Isolation Tests Isolation Tests
Integration Tests
Other App Env Scripts
IT Scripts
Env Scripts App WAR
A JAR
Common JAR
B JAR
Infrastructure as Code
Application InfrastructureIntegration
Base VM
Isolation Tests Isolation Tests
Production
Staging
Integration Tests
Other App Env Scripts
IT Scripts
Env Scripts App WAR
A JAR
Common JAR
B JAR
Infrastructure as Code
Application InfrastructureIntegration
Base VM
Isolation Tests Isolation Tests
Production
Staging
Integration Tests
Other App Env Scripts
IT Scripts
Env Scripts App WAR3.5
A JAR2.1
Common JAR4.1
B JAR1.3
2.1 : 2.0+ 1.3 : 1.0+
4.1 : 4.0+ 4.1 : 4.0+
Semi-Fluid Dependencies
Application InfrastructureIntegration
Base VM
Isolation Tests Isolation Tests
Production
Staging
Integration Tests
Other App Env Scripts
IT Scripts
Env Scripts App WAR3.5
A JAR2.2
Common JAR4.2
B JAR1.3
2.1 : 2.0+ 1.3 : 1.0+
4.2 : 4.0+ 4.1 : 4.0+
2.2
4.2
Semi-Fluid Dependencies
Application InfrastructureIntegration
Semi-Fluid Dependencies
Base VM
Isolation Tests Isolation Tests
Production
Staging
Integration Tests
Other App Env Scripts
IT Scripts
Env Scripts App WAR3.6
A JAR2.3
Common JAR4.3
B JAR1.4
2.3 : 2.0+ 1.4 : 1.0+
4.3 : 4.0+ 4.3 : 4.0+
Application InfrastructureIntegration
Cloneable Pipelines
Application InfrastructureIntegration
Base VM
Isolation Tests Isolation Tests
Production
Staging
Integration Tests
Other App Env Scripts
IT Scripts
Env Scripts App WAR3.6
A JAR2.3
Common JAR4.3
B JAR1.4
2.3 : 2.0+ 1.4 : 1.0+
4.3 : 4.0+ 4.3 : 4.0+
Staging
Integration Tests
Isolation Tests
App WAR
A JAR B JAR
Common JAR
Pre-Flight Pipelines
Base VM
Isolation Tests Isolation Tests
Production
Staging
Integration Tests
Other App Env Scripts
IT Scripts
Env Scripts App WAR3.6
A JAR2.3
Common JAR4.3
B JAR1.4
2.3 : 2.0+ 1.4 : 1.0+
4.3 : 4.0+ 4.3 : 4.0+
Staging
Integration Tests
Isolation Tests
App WAR
A JAR B JAR
Common JAR
Application InfrastructureIntegration
Pre-Flight Pipelines
Base VM
Isolation Tests Isolation Tests
Production
Staging
Integration Tests
Other App Env Scripts
IT Scripts
Env Scripts App WAR3.6
A JAR2.3
Common JAR4.3
B JAR1.4
2.3 : 2.0+ 1.4 : 1.0+
4.3 : 4.0+ 4.3 : 4.0+
Staging
Integration Tests
Isolation Tests
App WAR
A JAR B JAR
Common JAR
Application InfrastructureIntegration
Pre-Flight Pipelines In Action
trunk
Pre-Flight Pipelines In Action
trunk
devops A
Pre-Flight Pipelines In Action
trunk
devops A
devops B
Pre-Flight Pipelines In Action
trunk
devops A
devops B
Pre-Flight Pipelines In Action
trunk
devops A
devops B
Pre-Flight Pipelines In Action
trunk
devops A
devops B
Pre-Flight Pipelines In Action
trunk
devops A
devops B
devops C
Pre-Flight Pipelines In Action
trunk
devops A
devops B
devops C
Evergreen Trunks
n
n + 1
Quantum Pipelines
n
n + 1
n + 2 n + 1 + 2
n + 2
Quantum Pipelines
n
n + 1
n + 2 n + 1 + 2
n + 2 -
Quantum Pipelines
n
n + 1
n + 2 n + 1 + 2
n + 2
n + 3 n + 1 + 2 + 3
n + 2 + 3
n + 1 + 3
n + 3
-
--
Evergreen Trunks
n
n + 1
n + 2 n + 1 + 2
n + 2
n + 3 n + 1 + 2 + 3
n + 2 + 3
n + 1 + 3
n + 3
-
--
-
Cross-Project Pipelines
Common JAR
WAR
Swarm Builds
Build Service
Common JAR
Common JAR(same revision)
Common JAR+ Change
Extreme Integration
trunk
extreme
workspace
Extreme Integration
trunk
extreme
workspace
Extreme Integration
trunk
extreme
workspace
Cloud IDE
IDE
Dev
QA
Ops
Prod
Project Manager
Prod
Project Manager
Prod
Project Manager
Infra
Prod
Operations
Infra
Prod
Operations
Infra
Prod
Operations
Infra
Prod
Operations
Infra
Prod
JAR
Back-end Developer
Infra
Prod
JAR
Back-end Developer
Infra
Prod
JAR
Back-end Developer
Infra
Prod
JAR
Back-end Developer
Infra WAR
Prod
JAR
Web Developer
Infra WAR
Prod
JAR
Web Developer
Infra WAR
Prod
JAR
Web Developer
Infra WAR
Prod
JAR
Web Developer
Infra WAR
Prod
JAR
Operations
Infra WAR
Prod
JAR
Operations
Infra WAR
Prod
JAR
Operations
Infra WAR
Prod
JAR
Operations
Beyond Continuous Delivery
Chris Hilton
Graphics: Matthew Tobiasz
WE’RE HIRING!
SEND RESUMES!