SlideShare ist ein Scribd-Unternehmen logo
1 von 46
Adapting Deployment Pipelines for
Complex Applications
Eric Minick,
IBM UrbanCode Technical Evangelist
eminick@us.ibm.com
@ericminick

© 2013 IBM Corporation
© 2013 IBM Corporation
Acknowledgements and Disclaimers:
Availability. References in this presentation to IBM products, programs, or services do not imply that they will be available in all
countries in which IBM operates.
The workshops, sessions and materials have been prepared by IBM or the session speakers and reflect their own views. They are
provided for informational purposes only, and are neither intended to, nor shall have the effect of being, legal or other guidance or
advice to any participant. While efforts were made to verify the completeness and accuracy of the information contained in this
presentation, it is provided AS-IS without warranty of any kind, express or implied. IBM shall not be responsible for any damages
arising out of the use of, or otherwise related to, this presentation or any other materials. Nothing contained in this presentation is
intended to, nor shall have the effect of, creating any warranties or representations from IBM or its suppliers or licensors, or altering
the terms and conditions of the applicable license agreement governing the use of IBM software.
All customer examples described are presented as illustrations of how those customers have used IBM products and the results they
may have achieved. Actual environmental costs and performance characteristics may vary by customer. Nothing contained in these
materials is intended to, nor shall have the effect of, stating or implying that any activities undertaken by you will result in any specific
sales, revenue growth or other results.
© Copyright IBM Corporation 2013. All rights reserved.



U.S. Government Users Restricted Rights - Use, duplication or disclosure restricted by GSA ADP Schedule
Contract with IBM Corp.

IBM, the IBM logo, ibm.com,WebSphere, Rational, and IBM Mobile Enterrise are trademarks or registered trademarks of International
Business Machines Corporation in the United States, other countries, or both. If these and other IBM trademarked terms are marked
on their first occurrence in this information with a trademark symbol (® or ™), these symbols indicate U.S. registered or common law
trademarks owned by IBM at the time this information was published. Such trademarks may also be registered or common law
trademarks in other countries. A current list of IBM trademarks is available on the Web at “Copyright and trademark information” at
www.ibm.com/legal/copytrade.shtml
Other company, product, or service names may be trademarks or service marks of others.

© 2013 IBM Corporation
Presenting Today
Eric is a DevOps Evangelist where he
helps customers get the most out of
their build, deploy and release
processes.

Eric Minick
eminick@us.ibm.com
@EricMinick

Today he works with customers and
industry leaders to figure out this
DevOps thing.
Agenda
 Introduction to Continuous Delivery
 Continuous Delivery & Complex Apps
 Adapting apps to CD
 Adapting CD to complex apps
 Q&A
What is Continuous Delivery?
Why?
“Normal” CD

build

dev
test

system
test

UAT

sign-off

staging

prod
The Build Pipeline
 Perform a build
–and execute unit tests

 Promote build to a test environment & test
–Repeat N times

 Release

build

dev
test

system
test

UAT

sign-off

staging

prod
Continuous Delivery is a DevOps Strategy
 Successful implementation requires assistance from
developers, operations, and others
 Cooperation and coordination between developers and
operations must improve
Agenda
 Introduction to Continuous Delivery
 Continuous Delivery & Complex Apps
 Adapting apps to CD
 Adapting CD to complex apps
 Q&A
The Hard Part is Coordination

Image from wisc.edu
Complex apps have related builds
 Builds of one part of the app depend on another
 A change in one “pipeline” could impact another pipeline
 Tests cross-cut builds pipelines
Multiple tier apps
 Different tiers, different teams, different builds
JPetStore Application

 How do we align the changes?
Apache

SIT
WEB

Tomcat

MID
DB

JPetStore
Content

PROD
WEB

JPetStore
WAR
JPetStore
DB

MID
DB
Modern architectures make it worse

Image from ischool.tv
Prod deployments aren’t of one build*

*Except these
Build pipelines in coupled systems
build

build
build
build
build
build
build
build
build
build
build
build

dev
test
dev
test
dev
test
dev
test
dev
test
dev
test
dev
test
dev
test
dev
test
dev
test
dev
test
dev
test

system
test
system
test
system
test
system
test
system
test
system
test
system
test
system
test
system
test
system
test
system
test
system
test

UAT

sign-off

staging

prod

UAT

sign-off

staging

prod

UAT

sign-off

staging

prod

UAT

sign-off

staging

prod

UAT

sign-off

staging

prod

UAT

sign-off

staging

prod

UAT

sign-off

staging

prod

UAT

sign-off

staging

prod

UAT

sign-off

staging

prod

UAT

sign-off

staging

prod

UAT

sign-off

staging

prod

UAT

sign-off

staging

prod
Some pieces aren’t built

Databases

Content
Reports / ETL

dev
test

system
test

UAT

sign-off

staging

prod

build

dev
test

system
test

UAT

sign-off

staging

prod

build

Infrastructure

build

dev
test

system
test

UAT

sign-off

staging

prod

build

dev
test

system
test

UAT

sign-off

staging

prod

build

dev
test

system
test

UAT

sign-off

staging

prod

build

dev
test

system
test

UAT

sign-off

staging

prod
The Build Pipeline fails to:
X

Account for deployment time dependencies

X

Model things that aren’t built

X

Deal with incremental updates
Now what?

Work hard to salvage build pipelines

Or

Use a different model
Agenda
 Introduction to Continuous Delivery
 Continuous Delivery & Complex Apps
 Adapting apps to CD
 Adapting CD to complex apps
 Q&A
Adapting apps to CD: Principals
1. Everything is a “build”
2. Builds are promoted independent of other builds
So we need great architecture

photo credit: http://www.flickr.com/photos/ishmaelo/256431712/
Build of Build Pattern
Challenges: My “mega build” is big, and is always fully
deployed. My components don’t know if they went to Prod

Comp.

dev

Build

test

Comp.

dev

Build

test

Comp.

dev

Build

test

Mega
Build

system
test

UAT

sign-off

staging

prod
A Build of Builds

Comp.
Build

test

Comp.

dev

Build

.

dev

test

Comp.

dev

Build

test

Mega
Build

system
test

UAT

sign-off

staging

prod
Enforce Backwards Compatibility
 Build and immediately deploy to integration testing
 If integration tests fail, the build is rejected and the old build
of that component is redeployed to integration testing
Enforce Backwards Compatibility
 Build and immediately deploy to integration testing
 If integration tests fail, the build is rejected and the old build
of that component is redeployed to integration testing
 Challenges: Good integration tests, extra engineering to
support new and old versions, etc.
Database Expand / Contract

Goal: Backwards compatible, zero downtime
database deployments.
Never remove objects old / active users of the
database need. Only add new objects. Once all
clients are using the new objects, remove the
old.

See: http://exortech.com/blog/2009/02/01/weekly-release-blog-11-zerodowntime-database-deployment/
Database Expand / Contract
 Goal: Backwards compatible, zero downtime database
deployments.
 Never remove objects old / active users of the database
need. Only add new objects. Once all clients are using the
new objects, remove the old.
 Challenges: a significant and not always easy change to how
organizations develop DB updates.
See: http://exortech.com/blog/2009/02/01/weekly-release-blog-11-zerodowntime-database-deployment/
Agenda
 Introduction to Continuous Delivery
 Continuous Delivery & Complex Apps
 Adapting apps to CD
 Adapting CD to complex apps
 Q&A
Adapting CD to our Apps

 Account for deployment time dependencies
 Model things that aren’t built
 Deal with incremental updates
Use the “Build of Builds” model as a start

Comp.

dev

Build

test

Comp.

dev

Build

test

Comp.

dev

Build

test

Mega
Build

system
test

UAT

sign-off

staging

prod
Shift to “Release Sets” or “Snapshots”
 We don’t need a new build
– we need a name for a collection of builds.

 Delay the creation of these until integration tests pass, and
create based on the successful integration tests
build

dev
test

system
test

build

dev
test

system
test

build

dev
test

system
test

Snapshots at “Application”
or “System” level.
UAT

Signoff

Stagin
g

Prod
Don’t require “build”
 Extracts from existing systems, artifact repos, or source
control are OK to get deployable version.

Build

dev
test

system
test

Snapshots at “Application”
or “System” level.
Config
Extract

dev
test

system
test

Fetch from
SCM

dev
test

system
test

UAT

Signoff

Stagin
g

Prod
Support multiple incremental moves
 Incremental requires:
–Multiple versions of a component in snapshots
–Awareness when tracking what is where
–Order awareness when performing rollbacks.
Creating a Snapshot
Component Versions / Builds

Snapshot

Web

1

2

3

3

Mid. Code

1

2

3

2

Mid. Config

1

2

3

3

DB

1

2

3

1

2
Pipeline with Snapshots

Web
Mid.
Code

Fetch from
SCM

Build

dev
test

system
test

dev
test

system
test

Snapshot
3

UAT

2

Mid. Config

DB

Config
Extract

dev
test

system
test

Fetch from
SCM

dev
test

system
test

3

1

2

Stage

Signoff

Prod
In story form
 A change to a component, creates a new version (often by
doing a build).
In story form
 A change to a component, creates a new version (often by
doing a build).
 The new version is vetted, and then tested in an integration
environment.
In story form
 A change to a component, creates a new version (often by
doing a build).
 The new version is vetted, and then tested in an integration
environment.
 When the integrated system passes tests, a snapshot of all
the component versions in the system is created.
In story form
 A change to a component, creates a new version (often by
doing a build).
 The new version is vetted, and then tested in an integration
environment.
 When the integrated system passes tests, a snapshot of all
the component versions in the system is created.
 Snapshot deployments don’t redeploy unchanged
components
In story form
 A change to a component, creates a new version (often by
doing a build).
 The new version is vetted, and then tested in an integration
environment.
 When the integrated system passes tests, a snapshot of all
the component versions in the system is created.
 Snapshot deployments don’t redeploy unchanged
components

 The snapshot is promoted & released
In Summary
 Today, continuous delivery on complex systems is hard to
coordinate.
 Two options
1.

Strict development standards to force our systems into the build
promotion model

2.

A shift towards snapshot deployments that accommodate projects
“as they are”
References
http://urbancode.com/resources
http://ibm.com/devops/

 Enterprise CD Maturity Model
 Death to Manual Deployments!
 Build & Deployment Automation for the Lean Economy

 ITIL Release Management and Automation
Urbancode.com/blogs/
Twitter.com/UrbanCode
Facbebook.com/UrbanCodeSoft

Slideshare.net/Urbancode
Yes, we sell products for this
 IBM UrbanCode Deploy
–Application Deployment Automation

 IBM UrbanCode Release
–Coordination across many applications
Questions?

eminick@us.ibm.com
@EricMinick
www.ibm.com/software/rational
© Copyright IBM Corporation 2012. All rights reserved. The information contained in these materials is provided for informational purposes only, and is provided AS IS without warranty of any kind,
express or implied. IBM shall not be responsible for any damages arising out of the use of, or otherwise related to, these materials. Nothing contained in these materials is intended to, nor shall have
the effect of, creating any warranties or representations from IBM or its suppliers or licensors, or altering the terms and conditions of the applicable license agreement governing the use of IBM
software. References in these materials to IBM products, programs, or services do not imply that they will be available in all countries in which IBM operates. Product release dates and/or capabilities
referenced in these materials may change at any time at IBM’s sole discretion based on market opportunities or other factors, and are not intended to be a commitment to future product or feature
availability in any way. IBM, the IBM logo, Rational, the Rational logo, Telelogic, the Telelogic logo, and other IBM products and services are trademarks of the International Business Machines
Corporation, in the United States, other countries or both. Other company, product, or service names may be trademarks or service marks of others.
© 2013 IBM Corporation
46

Weitere ähnliche Inhalte

Was ist angesagt?

Adopting DevOps in a Hybrid Cloud Featuring UrbanCode Deploy with Bluemix
Adopting DevOps in a Hybrid Cloud Featuring UrbanCode Deploy with BluemixAdopting DevOps in a Hybrid Cloud Featuring UrbanCode Deploy with Bluemix
Adopting DevOps in a Hybrid Cloud Featuring UrbanCode Deploy with BluemixIBM UrbanCode Products
 
Continuous Delivery in the Enterprise - with IBM UrbanCode
Continuous Delivery in the Enterprise - with IBM UrbanCodeContinuous Delivery in the Enterprise - with IBM UrbanCode
Continuous Delivery in the Enterprise - with IBM UrbanCodeIBM UrbanCode Products
 
DevOps and the Case for ROI to Executives
DevOps and the Case for ROI to ExecutivesDevOps and the Case for ROI to Executives
DevOps and the Case for ROI to ExecutivesIBM UrbanCode Products
 
Delivering Applications Continuously to Cloud
Delivering Applications Continuously to CloudDelivering Applications Continuously to Cloud
Delivering Applications Continuously to CloudIBM UrbanCode Products
 
Helping Organizations Realize the Value of DevOps with Continuous Software De...
Helping Organizations Realize the Value of DevOps with Continuous Software De...Helping Organizations Realize the Value of DevOps with Continuous Software De...
Helping Organizations Realize the Value of DevOps with Continuous Software De...IBM UrbanCode Products
 
Continuous Application Delivery to WebSphere - Featuring IBM UrbanCode
Continuous Application Delivery to WebSphere - Featuring IBM UrbanCodeContinuous Application Delivery to WebSphere - Featuring IBM UrbanCode
Continuous Application Delivery to WebSphere - Featuring IBM UrbanCodeIBM UrbanCode Products
 
UrbanCode Deploy course and product overview slides
UrbanCode Deploy course and product overview slidesUrbanCode Deploy course and product overview slides
UrbanCode Deploy course and product overview slidesIBM Rational software
 
IBM DevOps Enabling continuous integration & delivery
IBM DevOps Enabling continuous integration & deliveryIBM DevOps Enabling continuous integration & delivery
IBM DevOps Enabling continuous integration & deliveryRoberto Pozzi
 
Introduction to IBM UrbanCode Deploy and Release
Introduction to IBM UrbanCode Deploy and ReleaseIntroduction to IBM UrbanCode Deploy and Release
Introduction to IBM UrbanCode Deploy and ReleaseRob Cuddy
 
Integrations, UI Enhancements and Cloud – See What’s New with IBM UrbanCode D...
Integrations, UI Enhancements and Cloud – See What’s New with IBM UrbanCode D...Integrations, UI Enhancements and Cloud – See What’s New with IBM UrbanCode D...
Integrations, UI Enhancements and Cloud – See What’s New with IBM UrbanCode D...IBM UrbanCode Products
 
Urban code - DevOps - cost reduction
Urban code - DevOps - cost reductionUrban code - DevOps - cost reduction
Urban code - DevOps - cost reductionChris Sparshott
 
DevOps Drive-In: Automate Database Deployments in Your Continuous Delivery Pi...
DevOps Drive-In: Automate Database Deployments in Your Continuous Delivery Pi...DevOps Drive-In: Automate Database Deployments in Your Continuous Delivery Pi...
DevOps Drive-In: Automate Database Deployments in Your Continuous Delivery Pi...Serena Software
 
Shift Happens - Rapidly Rolling Forward During Production Failure
Shift Happens - Rapidly Rolling Forward During Production FailureShift Happens - Rapidly Rolling Forward During Production Failure
Shift Happens - Rapidly Rolling Forward During Production FailureIBM UrbanCode Products
 
DevOps: From Adoption to Performance
DevOps: From Adoption to PerformanceDevOps: From Adoption to Performance
DevOps: From Adoption to PerformanceDynatrace
 
Deployment Automation for Hybrid Cloud and Multi-Platform Environments
Deployment Automation for Hybrid Cloud and Multi-Platform EnvironmentsDeployment Automation for Hybrid Cloud and Multi-Platform Environments
Deployment Automation for Hybrid Cloud and Multi-Platform EnvironmentsIBM UrbanCode Products
 
DevOps, Databases and The Phoenix Project UGF4042 from OOW14
DevOps, Databases and The Phoenix Project UGF4042 from OOW14DevOps, Databases and The Phoenix Project UGF4042 from OOW14
DevOps, Databases and The Phoenix Project UGF4042 from OOW14Kyle Hailey
 
The Future of DevOps and UrbanCode
The Future of DevOps and UrbanCodeThe Future of DevOps and UrbanCode
The Future of DevOps and UrbanCodeIBM UrbanCode Products
 
Mobile to Mainframe - the Challenges of Enterprise DevOps Adoption
Mobile to Mainframe - the Challenges of Enterprise DevOps AdoptionMobile to Mainframe - the Challenges of Enterprise DevOps Adoption
Mobile to Mainframe - the Challenges of Enterprise DevOps AdoptionSanjeev Sharma
 

Was ist angesagt? (20)

Adopting DevOps in a Hybrid Cloud Featuring UrbanCode Deploy with Bluemix
Adopting DevOps in a Hybrid Cloud Featuring UrbanCode Deploy with BluemixAdopting DevOps in a Hybrid Cloud Featuring UrbanCode Deploy with Bluemix
Adopting DevOps in a Hybrid Cloud Featuring UrbanCode Deploy with Bluemix
 
Continuous Delivery in the Enterprise - with IBM UrbanCode
Continuous Delivery in the Enterprise - with IBM UrbanCodeContinuous Delivery in the Enterprise - with IBM UrbanCode
Continuous Delivery in the Enterprise - with IBM UrbanCode
 
Death to Manual Deployments
Death to Manual DeploymentsDeath to Manual Deployments
Death to Manual Deployments
 
DevOps and the Case for ROI to Executives
DevOps and the Case for ROI to ExecutivesDevOps and the Case for ROI to Executives
DevOps and the Case for ROI to Executives
 
Delivering Applications Continuously to Cloud
Delivering Applications Continuously to CloudDelivering Applications Continuously to Cloud
Delivering Applications Continuously to Cloud
 
Helping Organizations Realize the Value of DevOps with Continuous Software De...
Helping Organizations Realize the Value of DevOps with Continuous Software De...Helping Organizations Realize the Value of DevOps with Continuous Software De...
Helping Organizations Realize the Value of DevOps with Continuous Software De...
 
Continuous Application Delivery to WebSphere - Featuring IBM UrbanCode
Continuous Application Delivery to WebSphere - Featuring IBM UrbanCodeContinuous Application Delivery to WebSphere - Featuring IBM UrbanCode
Continuous Application Delivery to WebSphere - Featuring IBM UrbanCode
 
UrbanCode Deploy course and product overview slides
UrbanCode Deploy course and product overview slidesUrbanCode Deploy course and product overview slides
UrbanCode Deploy course and product overview slides
 
IBM DevOps Enabling continuous integration & delivery
IBM DevOps Enabling continuous integration & deliveryIBM DevOps Enabling continuous integration & delivery
IBM DevOps Enabling continuous integration & delivery
 
Adopting DevOps for 2-Speed IT
Adopting DevOps for 2-Speed ITAdopting DevOps for 2-Speed IT
Adopting DevOps for 2-Speed IT
 
Introduction to IBM UrbanCode Deploy and Release
Introduction to IBM UrbanCode Deploy and ReleaseIntroduction to IBM UrbanCode Deploy and Release
Introduction to IBM UrbanCode Deploy and Release
 
Integrations, UI Enhancements and Cloud – See What’s New with IBM UrbanCode D...
Integrations, UI Enhancements and Cloud – See What’s New with IBM UrbanCode D...Integrations, UI Enhancements and Cloud – See What’s New with IBM UrbanCode D...
Integrations, UI Enhancements and Cloud – See What’s New with IBM UrbanCode D...
 
Urban code - DevOps - cost reduction
Urban code - DevOps - cost reductionUrban code - DevOps - cost reduction
Urban code - DevOps - cost reduction
 
DevOps Drive-In: Automate Database Deployments in Your Continuous Delivery Pi...
DevOps Drive-In: Automate Database Deployments in Your Continuous Delivery Pi...DevOps Drive-In: Automate Database Deployments in Your Continuous Delivery Pi...
DevOps Drive-In: Automate Database Deployments in Your Continuous Delivery Pi...
 
Shift Happens - Rapidly Rolling Forward During Production Failure
Shift Happens - Rapidly Rolling Forward During Production FailureShift Happens - Rapidly Rolling Forward During Production Failure
Shift Happens - Rapidly Rolling Forward During Production Failure
 
DevOps: From Adoption to Performance
DevOps: From Adoption to PerformanceDevOps: From Adoption to Performance
DevOps: From Adoption to Performance
 
Deployment Automation for Hybrid Cloud and Multi-Platform Environments
Deployment Automation for Hybrid Cloud and Multi-Platform EnvironmentsDeployment Automation for Hybrid Cloud and Multi-Platform Environments
Deployment Automation for Hybrid Cloud and Multi-Platform Environments
 
DevOps, Databases and The Phoenix Project UGF4042 from OOW14
DevOps, Databases and The Phoenix Project UGF4042 from OOW14DevOps, Databases and The Phoenix Project UGF4042 from OOW14
DevOps, Databases and The Phoenix Project UGF4042 from OOW14
 
The Future of DevOps and UrbanCode
The Future of DevOps and UrbanCodeThe Future of DevOps and UrbanCode
The Future of DevOps and UrbanCode
 
Mobile to Mainframe - the Challenges of Enterprise DevOps Adoption
Mobile to Mainframe - the Challenges of Enterprise DevOps AdoptionMobile to Mainframe - the Challenges of Enterprise DevOps Adoption
Mobile to Mainframe - the Challenges of Enterprise DevOps Adoption
 

Andere mochten auch

Pipeline as code - new feature in Jenkins 2
Pipeline as code - new feature in Jenkins 2Pipeline as code - new feature in Jenkins 2
Pipeline as code - new feature in Jenkins 2Michal Ziarnik
 
Continuous integration at scale
Continuous integration at scaleContinuous integration at scale
Continuous integration at scaleVivek Singh
 
DevOps @ Scania - Perforce on Tour, Berlin 2015
DevOps @ Scania - Perforce on Tour, Berlin 2015DevOps @ Scania - Perforce on Tour, Berlin 2015
DevOps @ Scania - Perforce on Tour, Berlin 2015Anders LundsgĂĄrd
 
Fundamentals of Deploy and Release
Fundamentals of Deploy and ReleaseFundamentals of Deploy and Release
Fundamentals of Deploy and ReleaseIBM UrbanCode Products
 
Building Jenkins Pipelines at Scale
Building Jenkins Pipelines at ScaleBuilding Jenkins Pipelines at Scale
Building Jenkins Pipelines at ScaleJulien Pivotto
 
An agile journey - Scania Connected Services at Meetup Go Agile - Stockholm (...
An agile journey - Scania Connected Services at Meetup Go Agile - Stockholm (...An agile journey - Scania Connected Services at Meetup Go Agile - Stockholm (...
An agile journey - Scania Connected Services at Meetup Go Agile - Stockholm (...Anders LundsgĂĄrd
 
Deploying to and Configuring WebSphere Application Server with UrbanCode Deploy
Deploying to and Configuring WebSphere Application Server with UrbanCode DeployDeploying to and Configuring WebSphere Application Server with UrbanCode Deploy
Deploying to and Configuring WebSphere Application Server with UrbanCode DeployIBM DevOps
 
Delivery Pipeline as Code: using Jenkins 2.0 Pipeline
Delivery Pipeline as Code: using Jenkins 2.0 PipelineDelivery Pipeline as Code: using Jenkins 2.0 Pipeline
Delivery Pipeline as Code: using Jenkins 2.0 PipelineSlawa Giterman
 
CI and CD with Jenkins
CI and CD with JenkinsCI and CD with Jenkins
CI and CD with JenkinsMartin Málek
 
Anatomy of a Continuous Integration and Delivery (CICD) Pipeline
Anatomy of a Continuous Integration and Delivery (CICD) PipelineAnatomy of a Continuous Integration and Delivery (CICD) Pipeline
Anatomy of a Continuous Integration and Delivery (CICD) PipelineRobert McDermott
 
(Declarative) Jenkins Pipelines
(Declarative) Jenkins Pipelines(Declarative) Jenkins Pipelines
(Declarative) Jenkins PipelinesSteffen Gebert
 

Andere mochten auch (12)

Pipeline as code - new feature in Jenkins 2
Pipeline as code - new feature in Jenkins 2Pipeline as code - new feature in Jenkins 2
Pipeline as code - new feature in Jenkins 2
 
Continuous integration at scale
Continuous integration at scaleContinuous integration at scale
Continuous integration at scale
 
DevOps @ Scania - Perforce on Tour, Berlin 2015
DevOps @ Scania - Perforce on Tour, Berlin 2015DevOps @ Scania - Perforce on Tour, Berlin 2015
DevOps @ Scania - Perforce on Tour, Berlin 2015
 
Fundamentals of Deploy and Release
Fundamentals of Deploy and ReleaseFundamentals of Deploy and Release
Fundamentals of Deploy and Release
 
2012 01-jenkins-udeploy
2012 01-jenkins-udeploy2012 01-jenkins-udeploy
2012 01-jenkins-udeploy
 
Building Jenkins Pipelines at Scale
Building Jenkins Pipelines at ScaleBuilding Jenkins Pipelines at Scale
Building Jenkins Pipelines at Scale
 
An agile journey - Scania Connected Services at Meetup Go Agile - Stockholm (...
An agile journey - Scania Connected Services at Meetup Go Agile - Stockholm (...An agile journey - Scania Connected Services at Meetup Go Agile - Stockholm (...
An agile journey - Scania Connected Services at Meetup Go Agile - Stockholm (...
 
Deploying to and Configuring WebSphere Application Server with UrbanCode Deploy
Deploying to and Configuring WebSphere Application Server with UrbanCode DeployDeploying to and Configuring WebSphere Application Server with UrbanCode Deploy
Deploying to and Configuring WebSphere Application Server with UrbanCode Deploy
 
Delivery Pipeline as Code: using Jenkins 2.0 Pipeline
Delivery Pipeline as Code: using Jenkins 2.0 PipelineDelivery Pipeline as Code: using Jenkins 2.0 Pipeline
Delivery Pipeline as Code: using Jenkins 2.0 Pipeline
 
CI and CD with Jenkins
CI and CD with JenkinsCI and CD with Jenkins
CI and CD with Jenkins
 
Anatomy of a Continuous Integration and Delivery (CICD) Pipeline
Anatomy of a Continuous Integration and Delivery (CICD) PipelineAnatomy of a Continuous Integration and Delivery (CICD) Pipeline
Anatomy of a Continuous Integration and Delivery (CICD) Pipeline
 
(Declarative) Jenkins Pipelines
(Declarative) Jenkins Pipelines(Declarative) Jenkins Pipelines
(Declarative) Jenkins Pipelines
 

Ă„hnlich wie Adapting Deployment Pipelines for Complex Applications

[IBM Pulse 2014] #1579 DevOps Technical Strategy and Roadmap
[IBM Pulse 2014] #1579 DevOps Technical Strategy and Roadmap[IBM Pulse 2014] #1579 DevOps Technical Strategy and Roadmap
[IBM Pulse 2014] #1579 DevOps Technical Strategy and RoadmapDaniel Berg
 
Improving Software Delivery with Software Defined Environments (IBM Interconn...
Improving Software Delivery with Software Defined Environments (IBM Interconn...Improving Software Delivery with Software Defined Environments (IBM Interconn...
Improving Software Delivery with Software Defined Environments (IBM Interconn...Michael Elder
 
How to Containerize WebSphere Application Server Traditional, and Why You Mig...
How to Containerize WebSphere Application Server Traditional, and Why You Mig...How to Containerize WebSphere Application Server Traditional, and Why You Mig...
How to Containerize WebSphere Application Server Traditional, and Why You Mig...David Currie
 
OpenWhisk Introduction
OpenWhisk IntroductionOpenWhisk Introduction
OpenWhisk IntroductionIoana Baldini
 
Your PaaS to DevOps
Your PaaS to DevOpsYour PaaS to DevOps
Your PaaS to DevOpsRoberto Pozzi
 
sMash AppBuilder
sMash AppBuildersMash AppBuilder
sMash AppBuilderProject Zero
 
Product Overview: The New IBM UrbanCode Deploy 6.0
Product Overview: The New IBM UrbanCode Deploy 6.0Product Overview: The New IBM UrbanCode Deploy 6.0
Product Overview: The New IBM UrbanCode Deploy 6.0IBM UrbanCode Products
 
CampDevOps keynote - DevOps: Using 'Lean' to eliminate Bottlenecks
CampDevOps keynote - DevOps: Using 'Lean' to eliminate BottlenecksCampDevOps keynote - DevOps: Using 'Lean' to eliminate Bottlenecks
CampDevOps keynote - DevOps: Using 'Lean' to eliminate BottlenecksSanjeev Sharma
 
Cloud Roundtable | Your PaaS to DevOps
Cloud Roundtable | Your PaaS to DevOpsCloud Roundtable | Your PaaS to DevOps
Cloud Roundtable | Your PaaS to DevOpsCodemotion
 
Whyifor Was
Whyifor WasWhyifor Was
Whyifor Wastblaies
 
Application Development for IBM Connections with IBM Bluemix
Application Development  for IBM Connections with IBM BluemixApplication Development  for IBM Connections with IBM Bluemix
Application Development for IBM Connections with IBM BluemixIBM Connections Developers
 
Application Development for IBM Connections with IBM Bluemix
Application Development  for IBM Connections with IBM BluemixApplication Development  for IBM Connections with IBM Bluemix
Application Development for IBM Connections with IBM BluemixNiklas Heidloff
 
Radically Simple Management & Assembly of API-based Applications
Radically Simple Management & Assembly of API-based ApplicationsRadically Simple Management & Assembly of API-based Applications
Radically Simple Management & Assembly of API-based Applicationsvinodmut
 
IBM Technical Summit 2013 - Desenvolvimento e Qualidade
IBM Technical Summit 2013 - Desenvolvimento e QualidadeIBM Technical Summit 2013 - Desenvolvimento e Qualidade
IBM Technical Summit 2013 - Desenvolvimento e QualidadeGustavo Grillo
 
Understanding DevOps
Understanding DevOpsUnderstanding DevOps
Understanding DevOpsInnoTech
 
How to Adopt Docker Within Your Enterprise Using IBM UrbanCode Deploy (Interc...
How to Adopt Docker Within Your Enterprise Using IBM UrbanCode Deploy (Interc...How to Adopt Docker Within Your Enterprise Using IBM UrbanCode Deploy (Interc...
How to Adopt Docker Within Your Enterprise Using IBM UrbanCode Deploy (Interc...Michael Elder
 
DevOps 101 for Government
DevOps 101 for GovernmentDevOps 101 for Government
DevOps 101 for GovernmentSanjeev Sharma
 
Become an IBM Cloud Architect in 40 Minutes
Become an IBM Cloud Architect in 40 MinutesBecome an IBM Cloud Architect in 40 Minutes
Become an IBM Cloud Architect in 40 MinutesAndrew Ferrier
 
IBM Pulse session 2727: Continuous delivery -accelerated with DevOps
IBM Pulse session 2727: Continuous delivery -accelerated with DevOpsIBM Pulse session 2727: Continuous delivery -accelerated with DevOps
IBM Pulse session 2727: Continuous delivery -accelerated with DevOpsSanjeev Sharma
 

Ă„hnlich wie Adapting Deployment Pipelines for Complex Applications (20)

[IBM Pulse 2014] #1579 DevOps Technical Strategy and Roadmap
[IBM Pulse 2014] #1579 DevOps Technical Strategy and Roadmap[IBM Pulse 2014] #1579 DevOps Technical Strategy and Roadmap
[IBM Pulse 2014] #1579 DevOps Technical Strategy and Roadmap
 
Improving Software Delivery with Software Defined Environments (IBM Interconn...
Improving Software Delivery with Software Defined Environments (IBM Interconn...Improving Software Delivery with Software Defined Environments (IBM Interconn...
Improving Software Delivery with Software Defined Environments (IBM Interconn...
 
How to Containerize WebSphere Application Server Traditional, and Why You Mig...
How to Containerize WebSphere Application Server Traditional, and Why You Mig...How to Containerize WebSphere Application Server Traditional, and Why You Mig...
How to Containerize WebSphere Application Server Traditional, and Why You Mig...
 
OpenWhisk Introduction
OpenWhisk IntroductionOpenWhisk Introduction
OpenWhisk Introduction
 
Your PaaS to DevOps
Your PaaS to DevOpsYour PaaS to DevOps
Your PaaS to DevOps
 
sMash AppBuilder
sMash AppBuildersMash AppBuilder
sMash AppBuilder
 
Product Overview: The New IBM UrbanCode Deploy 6.0
Product Overview: The New IBM UrbanCode Deploy 6.0Product Overview: The New IBM UrbanCode Deploy 6.0
Product Overview: The New IBM UrbanCode Deploy 6.0
 
Avoiding the Release Weekend
Avoiding the Release Weekend Avoiding the Release Weekend
Avoiding the Release Weekend
 
CampDevOps keynote - DevOps: Using 'Lean' to eliminate Bottlenecks
CampDevOps keynote - DevOps: Using 'Lean' to eliminate BottlenecksCampDevOps keynote - DevOps: Using 'Lean' to eliminate Bottlenecks
CampDevOps keynote - DevOps: Using 'Lean' to eliminate Bottlenecks
 
Cloud Roundtable | Your PaaS to DevOps
Cloud Roundtable | Your PaaS to DevOpsCloud Roundtable | Your PaaS to DevOps
Cloud Roundtable | Your PaaS to DevOps
 
Whyifor Was
Whyifor WasWhyifor Was
Whyifor Was
 
Application Development for IBM Connections with IBM Bluemix
Application Development  for IBM Connections with IBM BluemixApplication Development  for IBM Connections with IBM Bluemix
Application Development for IBM Connections with IBM Bluemix
 
Application Development for IBM Connections with IBM Bluemix
Application Development  for IBM Connections with IBM BluemixApplication Development  for IBM Connections with IBM Bluemix
Application Development for IBM Connections with IBM Bluemix
 
Radically Simple Management & Assembly of API-based Applications
Radically Simple Management & Assembly of API-based ApplicationsRadically Simple Management & Assembly of API-based Applications
Radically Simple Management & Assembly of API-based Applications
 
IBM Technical Summit 2013 - Desenvolvimento e Qualidade
IBM Technical Summit 2013 - Desenvolvimento e QualidadeIBM Technical Summit 2013 - Desenvolvimento e Qualidade
IBM Technical Summit 2013 - Desenvolvimento e Qualidade
 
Understanding DevOps
Understanding DevOpsUnderstanding DevOps
Understanding DevOps
 
How to Adopt Docker Within Your Enterprise Using IBM UrbanCode Deploy (Interc...
How to Adopt Docker Within Your Enterprise Using IBM UrbanCode Deploy (Interc...How to Adopt Docker Within Your Enterprise Using IBM UrbanCode Deploy (Interc...
How to Adopt Docker Within Your Enterprise Using IBM UrbanCode Deploy (Interc...
 
DevOps 101 for Government
DevOps 101 for GovernmentDevOps 101 for Government
DevOps 101 for Government
 
Become an IBM Cloud Architect in 40 Minutes
Become an IBM Cloud Architect in 40 MinutesBecome an IBM Cloud Architect in 40 Minutes
Become an IBM Cloud Architect in 40 Minutes
 
IBM Pulse session 2727: Continuous delivery -accelerated with DevOps
IBM Pulse session 2727: Continuous delivery -accelerated with DevOpsIBM Pulse session 2727: Continuous delivery -accelerated with DevOps
IBM Pulse session 2727: Continuous delivery -accelerated with DevOps
 

Mehr von IBM UrbanCode Products

Using UrbanCode Deploy to Migrate to WebSphere Application Server Version 9
Using UrbanCode Deploy to Migrate to WebSphere Application Server Version 9Using UrbanCode Deploy to Migrate to WebSphere Application Server Version 9
Using UrbanCode Deploy to Migrate to WebSphere Application Server Version 9IBM UrbanCode Products
 
What's New with IBM UrbanCode Deploy
What's New with IBM UrbanCode DeployWhat's New with IBM UrbanCode Deploy
What's New with IBM UrbanCode DeployIBM UrbanCode Products
 
Digital Disruption with DevOps - Reference Architecture Overview
Digital Disruption with DevOps - Reference Architecture OverviewDigital Disruption with DevOps - Reference Architecture Overview
Digital Disruption with DevOps - Reference Architecture OverviewIBM UrbanCode Products
 
Using Blueprints to Overcome Multi-speed IT Challenges
Using Blueprints to Overcome Multi-speed IT ChallengesUsing Blueprints to Overcome Multi-speed IT Challenges
Using Blueprints to Overcome Multi-speed IT ChallengesIBM UrbanCode Products
 
Efficient DevOps: Standardizing Chaotic Culture at NBCUniversal
Efficient DevOps:  Standardizing Chaotic Culture at NBCUniversalEfficient DevOps:  Standardizing Chaotic Culture at NBCUniversal
Efficient DevOps: Standardizing Chaotic Culture at NBCUniversalIBM UrbanCode Products
 
Leading the Transformation: Applying DevOps and Agile Principles at Scale
Leading the Transformation:  Applying DevOps and Agile Principles at ScaleLeading the Transformation:  Applying DevOps and Agile Principles at Scale
Leading the Transformation: Applying DevOps and Agile Principles at ScaleIBM UrbanCode Products
 
Securing the Automation of Application Deployment with UrbanCode Deploy
Securing the Automation of Application Deployment with UrbanCode DeploySecuring the Automation of Application Deployment with UrbanCode Deploy
Securing the Automation of Application Deployment with UrbanCode DeployIBM UrbanCode Products
 
A True Story of Why QA Loves DevOps
A True Story of Why QA Loves DevOpsA True Story of Why QA Loves DevOps
A True Story of Why QA Loves DevOpsIBM UrbanCode Products
 
Building a DevOps Team that Isn't Evil
Building a DevOps Team that Isn't EvilBuilding a DevOps Team that Isn't Evil
Building a DevOps Team that Isn't EvilIBM UrbanCode Products
 
Continuous Delivery with Jenkins Enterprise and IBM UrbanCode Deploy
Continuous Delivery with Jenkins Enterprise and IBM UrbanCode DeployContinuous Delivery with Jenkins Enterprise and IBM UrbanCode Deploy
Continuous Delivery with Jenkins Enterprise and IBM UrbanCode DeployIBM UrbanCode Products
 
Release and Deploy Sessions at IBM InterConnect 2015
Release and Deploy Sessions at IBM InterConnect 2015Release and Deploy Sessions at IBM InterConnect 2015
Release and Deploy Sessions at IBM InterConnect 2015IBM UrbanCode Products
 
Using Lean Thinking to Identify and Address Delivery Pipeline Bottlenecks
Using Lean Thinking to Identify and Address Delivery Pipeline BottlenecksUsing Lean Thinking to Identify and Address Delivery Pipeline Bottlenecks
Using Lean Thinking to Identify and Address Delivery Pipeline BottlenecksIBM UrbanCode Products
 
Shift Left - Approach and practices with IBM
Shift Left - Approach and practices with IBMShift Left - Approach and practices with IBM
Shift Left - Approach and practices with IBMIBM UrbanCode Products
 
Leading DevOps Application Release and Deployment - Best Practices for Organi...
Leading DevOps Application Release and Deployment - Best Practices for Organi...Leading DevOps Application Release and Deployment - Best Practices for Organi...
Leading DevOps Application Release and Deployment - Best Practices for Organi...IBM UrbanCode Products
 

Mehr von IBM UrbanCode Products (15)

Using UrbanCode Deploy to Migrate to WebSphere Application Server Version 9
Using UrbanCode Deploy to Migrate to WebSphere Application Server Version 9Using UrbanCode Deploy to Migrate to WebSphere Application Server Version 9
Using UrbanCode Deploy to Migrate to WebSphere Application Server Version 9
 
What's New with IBM UrbanCode Deploy
What's New with IBM UrbanCode DeployWhat's New with IBM UrbanCode Deploy
What's New with IBM UrbanCode Deploy
 
Digital Disruption with DevOps - Reference Architecture Overview
Digital Disruption with DevOps - Reference Architecture OverviewDigital Disruption with DevOps - Reference Architecture Overview
Digital Disruption with DevOps - Reference Architecture Overview
 
Using Blueprints to Overcome Multi-speed IT Challenges
Using Blueprints to Overcome Multi-speed IT ChallengesUsing Blueprints to Overcome Multi-speed IT Challenges
Using Blueprints to Overcome Multi-speed IT Challenges
 
Efficient DevOps: Standardizing Chaotic Culture at NBCUniversal
Efficient DevOps:  Standardizing Chaotic Culture at NBCUniversalEfficient DevOps:  Standardizing Chaotic Culture at NBCUniversal
Efficient DevOps: Standardizing Chaotic Culture at NBCUniversal
 
Leading the Transformation: Applying DevOps and Agile Principles at Scale
Leading the Transformation:  Applying DevOps and Agile Principles at ScaleLeading the Transformation:  Applying DevOps and Agile Principles at Scale
Leading the Transformation: Applying DevOps and Agile Principles at Scale
 
Securing the Automation of Application Deployment with UrbanCode Deploy
Securing the Automation of Application Deployment with UrbanCode DeploySecuring the Automation of Application Deployment with UrbanCode Deploy
Securing the Automation of Application Deployment with UrbanCode Deploy
 
A True Story of Why QA Loves DevOps
A True Story of Why QA Loves DevOpsA True Story of Why QA Loves DevOps
A True Story of Why QA Loves DevOps
 
Building a DevOps Team that Isn't Evil
Building a DevOps Team that Isn't EvilBuilding a DevOps Team that Isn't Evil
Building a DevOps Team that Isn't Evil
 
Continuous Delivery with Jenkins Enterprise and IBM UrbanCode Deploy
Continuous Delivery with Jenkins Enterprise and IBM UrbanCode DeployContinuous Delivery with Jenkins Enterprise and IBM UrbanCode Deploy
Continuous Delivery with Jenkins Enterprise and IBM UrbanCode Deploy
 
Release and Deploy Sessions at IBM InterConnect 2015
Release and Deploy Sessions at IBM InterConnect 2015Release and Deploy Sessions at IBM InterConnect 2015
Release and Deploy Sessions at IBM InterConnect 2015
 
Using Lean Thinking to Identify and Address Delivery Pipeline Bottlenecks
Using Lean Thinking to Identify and Address Delivery Pipeline BottlenecksUsing Lean Thinking to Identify and Address Delivery Pipeline Bottlenecks
Using Lean Thinking to Identify and Address Delivery Pipeline Bottlenecks
 
Shift Left - Approach and practices with IBM
Shift Left - Approach and practices with IBMShift Left - Approach and practices with IBM
Shift Left - Approach and practices with IBM
 
Leading DevOps Application Release and Deployment - Best Practices for Organi...
Leading DevOps Application Release and Deployment - Best Practices for Organi...Leading DevOps Application Release and Deployment - Best Practices for Organi...
Leading DevOps Application Release and Deployment - Best Practices for Organi...
 
How to Build a DevOps Toolchain
How to Build a DevOps ToolchainHow to Build a DevOps Toolchain
How to Build a DevOps Toolchain
 

KĂĽrzlich hochgeladen

Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationSafe Software
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024Scott Keck-Warren
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
costume and set research powerpoint presentation
costume and set research powerpoint presentationcostume and set research powerpoint presentation
costume and set research powerpoint presentationphoebematthew05
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...Fwdays
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsAndrey Dotsenko
 
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024BookNet Canada
 
Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024Neo4j
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr LapshynFwdays
 
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxMaking_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxnull - The Open Security Community
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 

KĂĽrzlich hochgeladen (20)

Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024
 
The transition to renewables in India.pdf
The transition to renewables in India.pdfThe transition to renewables in India.pdf
The transition to renewables in India.pdf
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food Manufacturing
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
costume and set research powerpoint presentation
costume and set research powerpoint presentationcostume and set research powerpoint presentation
costume and set research powerpoint presentation
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
 
Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024
 
Hot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort Service
Hot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort ServiceHot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort Service
Hot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort Service
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
 
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxMaking_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 

Adapting Deployment Pipelines for Complex Applications

  • 1. Adapting Deployment Pipelines for Complex Applications Eric Minick, IBM UrbanCode Technical Evangelist eminick@us.ibm.com @ericminick © 2013 IBM Corporation © 2013 IBM Corporation
  • 2. Acknowledgements and Disclaimers: Availability. References in this presentation to IBM products, programs, or services do not imply that they will be available in all countries in which IBM operates. The workshops, sessions and materials have been prepared by IBM or the session speakers and reflect their own views. They are provided for informational purposes only, and are neither intended to, nor shall have the effect of being, legal or other guidance or advice to any participant. While efforts were made to verify the completeness and accuracy of the information contained in this presentation, it is provided AS-IS without warranty of any kind, express or implied. IBM shall not be responsible for any damages arising out of the use of, or otherwise related to, this presentation or any other materials. Nothing contained in this presentation is intended to, nor shall have the effect of, creating any warranties or representations from IBM or its suppliers or licensors, or altering the terms and conditions of the applicable license agreement governing the use of IBM software. All customer examples described are presented as illustrations of how those customers have used IBM products and the results they may have achieved. Actual environmental costs and performance characteristics may vary by customer. Nothing contained in these materials is intended to, nor shall have the effect of, stating or implying that any activities undertaken by you will result in any specific sales, revenue growth or other results. © Copyright IBM Corporation 2013. All rights reserved.  U.S. Government Users Restricted Rights - Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp. IBM, the IBM logo, ibm.com,WebSphere, Rational, and IBM Mobile Enterrise are trademarks or registered trademarks of International Business Machines Corporation in the United States, other countries, or both. If these and other IBM trademarked terms are marked on their first occurrence in this information with a trademark symbol (® or ™), these symbols indicate U.S. registered or common law trademarks owned by IBM at the time this information was published. Such trademarks may also be registered or common law trademarks in other countries. A current list of IBM trademarks is available on the Web at “Copyright and trademark information” at www.ibm.com/legal/copytrade.shtml Other company, product, or service names may be trademarks or service marks of others. © 2013 IBM Corporation
  • 3. Presenting Today Eric is a DevOps Evangelist where he helps customers get the most out of their build, deploy and release processes. Eric Minick eminick@us.ibm.com @EricMinick Today he works with customers and industry leaders to figure out this DevOps thing.
  • 4. Agenda  Introduction to Continuous Delivery  Continuous Delivery & Complex Apps  Adapting apps to CD  Adapting CD to complex apps  Q&A
  • 5. What is Continuous Delivery?
  • 8. The Build Pipeline  Perform a build –and execute unit tests  Promote build to a test environment & test –Repeat N times  Release build dev test system test UAT sign-off staging prod
  • 9. Continuous Delivery is a DevOps Strategy  Successful implementation requires assistance from developers, operations, and others  Cooperation and coordination between developers and operations must improve
  • 10. Agenda  Introduction to Continuous Delivery  Continuous Delivery & Complex Apps  Adapting apps to CD  Adapting CD to complex apps  Q&A
  • 11. The Hard Part is Coordination Image from wisc.edu
  • 12. Complex apps have related builds  Builds of one part of the app depend on another  A change in one “pipeline” could impact another pipeline  Tests cross-cut builds pipelines
  • 13. Multiple tier apps  Different tiers, different teams, different builds JPetStore Application  How do we align the changes? Apache SIT WEB Tomcat MID DB JPetStore Content PROD WEB JPetStore WAR JPetStore DB MID DB
  • 14. Modern architectures make it worse Image from ischool.tv
  • 15. Prod deployments aren’t of one build* *Except these
  • 16. Build pipelines in coupled systems build build build build build build build build build build build build dev test dev test dev test dev test dev test dev test dev test dev test dev test dev test dev test dev test system test system test system test system test system test system test system test system test system test system test system test system test UAT sign-off staging prod UAT sign-off staging prod UAT sign-off staging prod UAT sign-off staging prod UAT sign-off staging prod UAT sign-off staging prod UAT sign-off staging prod UAT sign-off staging prod UAT sign-off staging prod UAT sign-off staging prod UAT sign-off staging prod UAT sign-off staging prod
  • 17. Some pieces aren’t built Databases Content Reports / ETL dev test system test UAT sign-off staging prod build dev test system test UAT sign-off staging prod build Infrastructure build dev test system test UAT sign-off staging prod build dev test system test UAT sign-off staging prod build dev test system test UAT sign-off staging prod build dev test system test UAT sign-off staging prod
  • 18. The Build Pipeline fails to: X Account for deployment time dependencies X Model things that aren’t built X Deal with incremental updates
  • 19. Now what? Work hard to salvage build pipelines Or Use a different model
  • 20. Agenda  Introduction to Continuous Delivery  Continuous Delivery & Complex Apps  Adapting apps to CD  Adapting CD to complex apps  Q&A
  • 21. Adapting apps to CD: Principals 1. Everything is a “build” 2. Builds are promoted independent of other builds
  • 22. So we need great architecture photo credit: http://www.flickr.com/photos/ishmaelo/256431712/
  • 23. Build of Build Pattern Challenges: My “mega build” is big, and is always fully deployed. My components don’t know if they went to Prod Comp. dev Build test Comp. dev Build test Comp. dev Build test Mega Build system test UAT sign-off staging prod
  • 24. A Build of Builds Comp. Build test Comp. dev Build . dev test Comp. dev Build test Mega Build system test UAT sign-off staging prod
  • 25. Enforce Backwards Compatibility  Build and immediately deploy to integration testing  If integration tests fail, the build is rejected and the old build of that component is redeployed to integration testing
  • 26. Enforce Backwards Compatibility  Build and immediately deploy to integration testing  If integration tests fail, the build is rejected and the old build of that component is redeployed to integration testing  Challenges: Good integration tests, extra engineering to support new and old versions, etc.
  • 27. Database Expand / Contract Goal: Backwards compatible, zero downtime database deployments. Never remove objects old / active users of the database need. Only add new objects. Once all clients are using the new objects, remove the old. See: http://exortech.com/blog/2009/02/01/weekly-release-blog-11-zerodowntime-database-deployment/
  • 28. Database Expand / Contract  Goal: Backwards compatible, zero downtime database deployments.  Never remove objects old / active users of the database need. Only add new objects. Once all clients are using the new objects, remove the old.  Challenges: a significant and not always easy change to how organizations develop DB updates. See: http://exortech.com/blog/2009/02/01/weekly-release-blog-11-zerodowntime-database-deployment/
  • 29. Agenda  Introduction to Continuous Delivery  Continuous Delivery & Complex Apps  Adapting apps to CD  Adapting CD to complex apps  Q&A
  • 30. Adapting CD to our Apps  Account for deployment time dependencies  Model things that aren’t built  Deal with incremental updates
  • 31. Use the “Build of Builds” model as a start Comp. dev Build test Comp. dev Build test Comp. dev Build test Mega Build system test UAT sign-off staging prod
  • 32. Shift to “Release Sets” or “Snapshots”  We don’t need a new build – we need a name for a collection of builds.  Delay the creation of these until integration tests pass, and create based on the successful integration tests build dev test system test build dev test system test build dev test system test Snapshots at “Application” or “System” level. UAT Signoff Stagin g Prod
  • 33. Don’t require “build”  Extracts from existing systems, artifact repos, or source control are OK to get deployable version. Build dev test system test Snapshots at “Application” or “System” level. Config Extract dev test system test Fetch from SCM dev test system test UAT Signoff Stagin g Prod
  • 34. Support multiple incremental moves  Incremental requires: –Multiple versions of a component in snapshots –Awareness when tracking what is where –Order awareness when performing rollbacks. Creating a Snapshot Component Versions / Builds Snapshot Web 1 2 3 3 Mid. Code 1 2 3 2 Mid. Config 1 2 3 3 DB 1 2 3 1 2
  • 35. Pipeline with Snapshots Web Mid. Code Fetch from SCM Build dev test system test dev test system test Snapshot 3 UAT 2 Mid. Config DB Config Extract dev test system test Fetch from SCM dev test system test 3 1 2 Stage Signoff Prod
  • 36. In story form  A change to a component, creates a new version (often by doing a build).
  • 37. In story form  A change to a component, creates a new version (often by doing a build).  The new version is vetted, and then tested in an integration environment.
  • 38. In story form  A change to a component, creates a new version (often by doing a build).  The new version is vetted, and then tested in an integration environment.  When the integrated system passes tests, a snapshot of all the component versions in the system is created.
  • 39. In story form  A change to a component, creates a new version (often by doing a build).  The new version is vetted, and then tested in an integration environment.  When the integrated system passes tests, a snapshot of all the component versions in the system is created.  Snapshot deployments don’t redeploy unchanged components
  • 40. In story form  A change to a component, creates a new version (often by doing a build).  The new version is vetted, and then tested in an integration environment.  When the integrated system passes tests, a snapshot of all the component versions in the system is created.  Snapshot deployments don’t redeploy unchanged components  The snapshot is promoted & released
  • 41. In Summary  Today, continuous delivery on complex systems is hard to coordinate.  Two options 1. Strict development standards to force our systems into the build promotion model 2. A shift towards snapshot deployments that accommodate projects “as they are”
  • 42. References http://urbancode.com/resources http://ibm.com/devops/  Enterprise CD Maturity Model  Death to Manual Deployments!  Build & Deployment Automation for the Lean Economy  ITIL Release Management and Automation Urbancode.com/blogs/ Twitter.com/UrbanCode Facbebook.com/UrbanCodeSoft Slideshare.net/Urbancode
  • 43. Yes, we sell products for this  IBM UrbanCode Deploy –Application Deployment Automation  IBM UrbanCode Release –Coordination across many applications
  • 45. www.ibm.com/software/rational © Copyright IBM Corporation 2012. All rights reserved. The information contained in these materials is provided for informational purposes only, and is provided AS IS without warranty of any kind, express or implied. IBM shall not be responsible for any damages arising out of the use of, or otherwise related to, these materials. Nothing contained in these materials is intended to, nor shall have the effect of, creating any warranties or representations from IBM or its suppliers or licensors, or altering the terms and conditions of the applicable license agreement governing the use of IBM software. References in these materials to IBM products, programs, or services do not imply that they will be available in all countries in which IBM operates. Product release dates and/or capabilities referenced in these materials may change at any time at IBM’s sole discretion based on market opportunities or other factors, and are not intended to be a commitment to future product or feature availability in any way. IBM, the IBM logo, Rational, the Rational logo, Telelogic, the Telelogic logo, and other IBM products and services are trademarks of the International Business Machines Corporation, in the United States, other countries or both. Other company, product, or service names may be trademarks or service marks of others. © 2013 IBM Corporation
  • 46. 46

Hinweis der Redaktion

  1. Small batch sizes:Reduce riskLower the “waste” of unreleased featuresNatural extension of the “test your builds” mentality of CIAddress the deployment bottleneck in Operations.