beyond continuous delivery · continuous delivery •frequent, automated releases •every check-in...
TRANSCRIPT
Jenkins User Conference San Francisco #jenkinsconf
Beyond Continuous
Delivery
Chris Hilton
Gap, Inc.
www.gapinc.com
October 23, 2014
#jenkinsconf
Jenkins User Conference San Francisco #jenkinsconf
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
Jenkins User Conference San Francisco #jenkinsconf
Assumptions
• Trunk-based development
• Continuous integration/delivery/deployment
• Cloud infrastructure
– Cheap
– Unlimited
Jenkins User Conference San Francisco #jenkinsconf
App WAR
A JAR
Common JAR
B JAR
Modular Development and
Dependency Management
Jenkins User Conference San Francisco #jenkinsconf
App WAR
A JAR
Common JAR
B JAR
Dependency Management
and Modular Development
Jenkins User Conference San Francisco #jenkinsconf
Base VM
Isolation Tests
IT Scripts
Env Scripts App WAR
A JAR
Common JAR
B JAR
Infrastructure as Code
Application InfrastructureIntegration
Jenkins User Conference San Francisco #jenkinsconf
Semi-fluid Dependencies
Jenkins User Conference San Francisco #jenkinsconf
Semi-fluid Dependencies
Jenkins User Conference San Francisco #jenkinsconf
Semi-fluid Dependencies
Jenkins User Conference San Francisco #jenkinsconf
Base VM
Isolation Tests Isolation Tests
Integration Tests
Other App Env Scripts
IT Scripts
Env Scripts App WAR
A JAR
Common JAR
B JAR
Integrated Pipelines
Application InfrastructureIntegration
Jenkins User Conference San Francisco #jenkinsconf
Fusion Testing
Jenkins User Conference San Francisco #jenkinsconf
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
Pipeline Segments
Jenkins User Conference San Francisco #jenkinsconf
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
Jenkins User Conference San Francisco #jenkinsconf
Personal 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
Jenkins User Conference San Francisco #jenkinsconf
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
Jenkins User Conference San Francisco #jenkinsconf
Speculative Pipelines
Jenkins User Conference San Francisco #jenkinsconf
Pre-Flight Pipelines In Action
trunk
devops A
devops B
Jenkins User Conference San Francisco #jenkinsconf
Pre-Flight Pipelines In Action
trunk
devops A
devops B
devops C
Jenkins User Conference San Francisco #jenkinsconf
n
n + 1
Quantum Pipelines
Jenkins User Conference San Francisco #jenkinsconf
Quantum Pipelines
n
n + 1
n + 2 n + 1 + 2
n + 2
Jenkins User Conference San Francisco #jenkinsconf
Quantum Pipelines
n
n + 1
n + 2 n + 1 + 2
n + 2 -
Jenkins User Conference San Francisco #jenkinsconf
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
-
--
Jenkins User Conference San Francisco #jenkinsconf
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
-
--
-
Jenkins User Conference San Francisco #jenkinsconf
Extreme Integration
trunk
extreme
workspace
Jenkins User Conference San Francisco #jenkinsconf
Extreme Integration
trunk
extreme
workspace
Jenkins User Conference San Francisco #jenkinsconf
Extreme Integration
trunk
extreme
workspace
Jenkins User Conference San Francisco #jenkinsconf
Thank You To Our Sponsors
Platinum Gold
Silver Corporate
Jenkins User Conference San Francisco #jenkinsconf
Beyond Continuous
Delivery
Chris Hilton
Gap, Inc.
www.gapinc.com
October 23, 2014
#jenkinsconf