Академический Документы
Профессиональный Документы
Культура Документы
CONTINUOUS
DELIVERY
VOLUME II FEB 2015
BROUGHT TO YOU IN PARTNERSHIP WITH
Table of Contents
DEAR READER,
I am very excited to welcome 2015 with the
release of our Guide to Continuous Delivery. 2014
was a huge year for DZone Research with the
release of six incredibly informative research
guides that have now been downloaded over
150,000 times.
DZones 2014 Guide to Continuous Delivery was
a huge success with over 30,000 downloads and
still counting. The enormous amount of positive
feedback we received last year from our audience
has motivated us to produce another edition of
the Continuous Delivery research guide, taking
an even further look at DevOps best practices.
In the 2015 edition of the research guide we have
expanded the focus into other areas of DevOps
implementation and management, including a
look at how Continuous Delivery practices seep
into other aspects of the organization outside
the development team.
We have focused on the role of containerization,
automation, testing, and other best practices
that move Continuous Delivery beyond simply
an exercise in tooling. The solutions directory
provides a comprehensive listing of the various
ARA, CI, and CM tools beneficial for practitioners
in the DevOps space.
We are already looking forward to an exciting
year with several interesting new topics that we
plan to cover, including Application Performance
Management, Software Quality, the Internet of
Things, and Big Data/Business Intelligence. We
are excited to hear your feedback on this guide,
thoughts on future topics, and ways you think
we can make our research guides better suited to
your needs.
Thanks again for your time and for being a
part of our great community. Wish you all a
wonderful year ahead and happy reading!
Jayashree Gopal
12
16
20
24
28
32
34
Solutions Directory
44
Glossary
CREDITS
DZone Research
John Esposito
Editor-in-Chief
Jayashree Gopal
Director of Research
Mitch Pronschinske
Sr. Research Analyst
Benjamin Ball
Research Analyst
marketing &
SALES
Corporate
Management
Kellet Atkinson
General Manager
Rick Ross
CEO
Alex Crafts
VP of Sales
Matt Schmidt
President & CTO
Ashley Slate
Director of Design
Brandon Nokes
VP of Sales, Demand
Generation
Matt Werner
Market Researcher
Chelsea Bosworth
Marketing Associate
John Walter
Content Curator
Chris Smith
Production Advisor
Hernni Cerqueira
Lead Software
Engineer
Ryan Spain
Content Curator
Lauren Clapper
Content Curator
Director of Research
research@dzone.com
dzone.com/research/continuousdelivery
Summary &
Key Takeaways
61%
30%
33%
51%
22% 57%
IMPLEMENTED
WANT TO IMPLEMENT
6%
19%
21%
APP. BUILD
MANAGEMENT
DATABASES
INFRASTRUCTURE
NO DESIRE
dzone.com/research/continuousdelivery
Key
Research
Findings
More than 900 IT professionals responded to
DZones 2015 Continuous Delivery Survey.
Here are the demographics for this survey:
Developers and Engineers made up 65% of
the total respondents.
62% of respondents come from large
organizations (100 or more employees) and
Is your software
confirmed to be in a
shippable state
every time a new
feature or patch is
added?
Do all of the
stakeholders have
immediate visibility
into the production
readiness of your
systems?
50%
18%
BELIEVE THEYVE
IMPLEMENTED CD
PERFORM THE TEXTBOOK
DEFINITION OF CD
dzone.com/research/continuousdelivery
Environments
12-24 HOURS
11%
8-11
HOURS
11%
24+ HOURS
5%
MEAN TIME
TO RECOVERY
(MTTR)
3-5 35%
HOURS
Success
dzone.com/research/continuousdelivery
sponsored opinion
Pre-Requisites for a
Successful Enterprise
Continuous Delivery
Implementation
Businesses today are moving toward continuous delivery
as a methodology to meet the ever-increasing demand to
deliver better software faster. Continuous delivery can be
Jenkins Enterprise
by CloudBees
continuous integration
CloudBees Enterprise Jenkins provides high availability for mission critical use of continuous delivery, as well as simplified
manageability of Jenkins to ease administration across distributed architectures, on-premise or in the cloud.
Push or pull agent model
HOSTING
On-premise or cloud-hosted
case study CloudBees worked with a top global financial institution in order to save time and improve
quality of application development with Jenkins Enterprise. Prior to the Jenkins CI open source implementation,
applications were being developed and maintained by the corporate branch of the bank, but there was no
centralised management of the process, and developers couldnt always access build assets. Implementing
Jenkins meant the bank gained the desired standardisation, along with other benefits of a centralised system that
were needed. The development organisation chose Jenkins because of prior experience with the software, its
robustness, and the availability of useful plugins to match their requirements. Having installed Jenkins to support
continuous integration (CI) and monitor the build management process, the financial institution needed additional
features and functionality that the standard open source solution didnt offer.To overcome these challenges, the
bank evaluated and ultimately selected Jenkins Enterprise by CloudBees. They had two primary reasons: the
additional plugins that provide necessary functionality for large enterprises in the areas of backup, security, high
availability and job organisation and the ability to obtain formal technical support for open source Jenkins and all
600+ open source Jenkins plugins.
Customers
Intuit
Target
Apple
Nordstrom
BLOG blog.cloudbees.com
dzone.com/research/continuousdelivery
Nokia
Liberty Mutual
Alcatel Lucent
ESPN
twitter @cloudbees
Chef
Puppet
SaltStack
Ansible
cfengine
features
WEBSITE cloudbees.com
support person,
by Matthew Skelton
Coll aboration
Version Control
Log Aggregation
dzone.com/research/continuousdelivery
found earlier.
Learning
configuration management.
can have time to learn, with the expectation that they may
or 18 months time.
with the IaaS team in a limited way, so that you preserve the
as-a-Service relationship and dont blur the boundaries
Singleton Tools
Summary
Conways Law
Its becoming increasing clear that the structure of teams
within organizations, and the communication patterns
dzone.com/research/continuousdelivery
MARTIAL ARTS
HAS BRUCE LEE.
A U TO M AT E D T E S T I N G
HAS SAUCE LABS.
Maybe you cant do a one-fingered push-up, but you can master speed and scale
with Sauce Labs. Optimized for the continuous integration and delivery workflows
of today and tomorrow, our reliable, secure cloud enables you to run your builds
in parallel, so you can get to market faster without sacrificing coverage.
10
sponsored opinion
Eliminating Roadblocks
on the Path to
Continuous Delivery
Automated testing plays a key role in successfully
W ritten By
by Sauce Labs
Sauce Labs provides a complete testing platform for native, hybrid, and web apps, allowing users to run Selenium,
Appium, JS unit, and manual tests in any language on over 450 browser, OS, and platform combinations.
PRICING
OPEN SOURCE
Yes
case study
CI TOOL SUPPORT
Jenkins
Bamboo
Travis CI
TeamCity
CircleCI
testing SUPPORT
Cross-browser
testing
Mobile testing
Selenium
Appium
JavaScript
testing
Manual testing
language support
Customers
Yahoo!
Capital One
Twitter
Bank of America
BLOG sauceio.com
11
dzone.com/research/continuousdelivery
Mozilla
Zendesk
Salesforce
Puppet Labs
twitter @saucelabs
C#
Perl
Java
Ruby
JavaScript
PHP
Node.js
Python
WEBSITE saucelabs.com
Fostering
DevOps Through
A Testing Center
of Excellence
by JP Morgenthal
D O
dzone.com/research/continuousdelivery
12
Unfortunately, many
of these programs are
initiated under the guise
of increasing speed and
time-to-market to the
detriment of quality
13
dzone.com/research/continuousdelivery
a tipping point
How far is your business willing to go to become agile and
transform IT into the machine that will help you compete
in an ever-changing world of technology? This question is
being posed to business leaders on a daily basis. Executives
have reached a tipping point with regard to their patience
surrounding an inability of IT to deliver in a timely manner.
Through analysis of many businesses, we know which
components are increasing IT operational overhead and
hindering their ability to deliver: unplanned outages,
break/fix, patching, skills shortages, and misaligned
requirements. On the surface, the formation of a Testing
Center of Excellence seems like an endeavor that will further
delay releases and, in general, introduce more friction into
the lifecycle. In the short-term, some of that is correct.
However, the long-term benefits outweigh the inertia to
get started, and ultimately lead to the reduction of many
issues that are impacting Continuous Delivery. Moreover,
the increased quality will be noticed by the business
users, fostering continued confidence and increasing
collaboration, which will have a direct impact on the overall
competitiveness of the business.
sponsored opinion
Making production
readiness of software
visible every step of
the way
Continuous Delivery is changing the way we develop
software. While the bulk of the talk around this subject
has been on the technical aspects of how to do it,
the cultural changes around how various parts of an
organizations need to collaborate are of equal if not greater
importance. Thus it is natural that the tooling around
Continuous Delivery attempts to ease this collaboration.
Deployment pipelines form the foundation of this tooling
by modeling the complete path taken to release software
to end users. They provide visibility into the productionreadiness of every change made to your software. In
addition, it also lets anyone self service any version of
the software into an environment of their choice.
Snap CI
W ritten By
by ThoughtWorks
continuous integration
Snap CI is a continuous delivery and integration tool with automatic test parallelization and branch tracking builds and pull-request
support. It also features first class support for deployment pipelines and simple in-browser build debugging.
Agentless
HOSTING
Cloud-hosted
Applauze.com is a San Francisco based startup that is known for their smooth presales events for musical artists. Applauze needs to stay up during critical sales windows while also
keeping their Rails based backend system up to date. Recently their team upgraded this system
from Rails 3 to Rails 4 with the upgrade work done on a branch. Snaps automatic branch tracking
kept the team informed about the health of this work. More importantly, Snaps Integration Pipelines
ensured that the upgrade branch would merge back into the master with passing tests. This gave
Applauze the confidence required to undertake this work while staying live. Applauze rarely use
long lived branches for their day to day work. However, in this case, Snap allowed the team to
manage the risk of doing a significant upgrade without the attendant risk of an impossible merge.
case study
Customers
BBC
GNS Science, New Zealand
BLOG blog.snap-ci.com
15
dzone.com/research/continuousdelivery
PlayOn! Sports
Envato
Lifeletters
RepairShopr
twitter @snap_ci
2015 guide to continuous delivery
Cm Integrations
None
features
Sets new builds to be the trigger
for new deployments
Automatic validation builds for
code changes to the master
branch
Ability to change the default
configuration/template for the
standard build machines
WEBSITE snap-ci.com
Application Portability
Businesses are adopting cloud computing for
infrastructure services. Public cloud providers are
continuously expanding their offerings and are also
constantly reducing their pricing. Some cloud providers
may have better regional presence, and others may offer
specialized services for certain application types. At a
certain spending point, and for some application types,
private cloud remains an attractive option. For all of these
reasons, it makes sense to avoid being locked into a single
cloud provider.
D e v O ps Culture
The DevOps movement builds on Agile software
development, where small incremental releases are
favored to long release cycles, and the Lean Enterprise
philosophy, where constant customer feedback loops are
used to foster a culture of innovation.
With DevOps, developer teams can also be responsible
for what are seen as traditional operations roles. As
Adrian Cockroft explains, the traditional definition
of when a project is done was when the code was
dzone.com/research/continuousdelivery
16
Cost Savings
Virtualization allows several virtual machines to
run on large physical servers, which can lead to
significant consolidation and cost savings. Similarly,
containerization allows several application services to
run on a single virtual or physical machine, or on a large
pool of virtual or physical machines.
Container orchestration solutions can provide policies to
packing different types of services. This is exactly what
Platform-as-a-Service (PaaS) vendors, like Heroku,
have been doing under the covers. Containerization
orchestration tools that are built on open technologies
like Docker can now make this transparent to end users,
and also pass along the cost savings to their customers.
Current Challenges
Recently, perhaps influenced by the buzz around Docker,
Google revealed that all of their applications, from
Search to Gmail, run in Linux containers. However,
Google and others have spent several years building
and fine-tuning platforms and tools around containers,
and until recently they have treated these tools as a
competitive advantage.
For mainstream adoption of containerization,
better general purpose container orchestration and
17
dzone.com/research/continuousdelivery
Summary
The adoption of infrastructure virtualization has greatly
contributed to and enabled continuous IT services,
including the spread of Continuous Delivery and DevOps
best practices. Containerization drills down into these
DevOps practices and helps to enable continuous
application delivery. Containerization also provides
application portability, and can be a key architectural
building block for cloud native applications. Once an
application is containerized, the containers can be
run on a pool of virtual or physical machines, or on
infrastructure-as-a-service (IaaS) based public clouds.
sponsored opinion
Ready for
CAMS: The
Foundation
of DevOps
Recent studies show that organizations
adopting DevOps practices have a
significant competitive advantage.
They react quicker to changing market
demands, get out new features faster,
and are better at executing changes.
Though the definition varies, we think
about DevOps in terms of CAMS: Culture,
Automation, Measurements, and
Sharing. In order to focus the entire
team on performance, you must plug
performance into those 4 pillars.
its the way teams work together and share the responsibility
development environments.
by Wolfgang Gottesheim,
Technology Strategist, Dynatrace
dzone.com/research/continuousdelivery
18
CONTINUOUS DELIVERY
TOP TEN #DEVOPS TWITTER FEEDS
@jezhumble
@RealGeneKim
@MrHinkle
@martinfowler
@andrewsmhay
@lusis
@adrianco
@allspaw
@garethr
@davefarley77
DevOps Zone
dzone.com/mz/devops
Agile Zone
dzone.com/mz/agile
Cloud Zone
dzone.com/mz/cloud
The Cloud Zone covers the host of providers and utilities that
make cloud computing possible and push the limits (and
savings) with which we can deploy, store, and host applications
in a flexible, elastic manner. This Zone focuses on PaaS,
infrastructures, security, scalability, and hosting servers.
Deployment
Automation Patterns
bit.ly/1yTuwN6
continuousdelivery.com
19
dzone.com/research/continuousdelivery
devops.com
2015 guide to continuous delivery
dev2ops.org
dzone.com/research/continuousdelivery
20
FindBugs
Cobertura
SonarQube
code
metrics
optional step
commit
01.
manual trigger
syntax
check
when using
Git Flow, etc.
automerge for
developer
branches
SonarQube
Eclipse
Checkstyle
automated trigger
REFERENCE KEY
compile
unit
tests
TestNG
NUnit
JUnit
for compiled
languages
START
automated
execution
02 .
integration
tests
TestNG
Jenkins
Cucumber
BDD
framework
tests
Selenium
JBehave
Cucumber
Cucumber
JUnit
Selenium
feature2
level tests
storylevel tests
JUnit
automated
acceptance
testing
JUnit
manual
execution
Diagrams are based on Jez Humbles diagrams from the Continuous Delivery blog
(http://continuousdelivery.com/2010/09/deployment-pipeline-anti-patterns)
If significant issues are found in any long-running step, and the change has
already been deployed to Production, the team should rollback Production to
the last working release.
If significant issues are found in any long-running step, and the change has not
been deployed to Production, the team should manually halt the pipeline.
P R ESEN TS
21
dzone.com/research/continuousdelivery
Cucumber
JUnit
Selenium
Gatling
05.
network
tests
2
3
Wireshark
Ping
SoapUI
LoadRunner
06.
Gatling
JMeter
1
2
smoke
tests
SpecFlow
Cucumber
Selenium
Chef
JUnit
Selenium
manual
NUnit
featurelevel testing
by the
client
Bamboo
Chef
showcases
TestNG
component
tests
Jenkins
ongoing
live
transaction
tests
rollback
and
redeploy
(UAT)
04.
Mockito
user
acceptance
testing
production
capacity
tests
postSelenium 2
deployment
tests
manual
staging
and preproduction
JMeter
from dzone.com
smoke
tests
03 .
exploratory
testing
postdeployment
tests
performance
tests
manual
SoapUI
JMeter
LoadRunner
visual
(UI)
tests
usability
tests
Selenium
Cucumber
Selenium
SoapUI
Visual Studio
manual
Selenium
stubbed
and mocked
EasyMock 2
endpoints
of data
SoapUI 3
Mockito
sponsored opinion
Implementing
Platform-as-a-Service
(PaaS) in a Continuous
Delivery Workflow
Stackato
by ActiveState
configuration management
Stackato is a commercially supported PaaS that leverages open source components such as Cloud Foundry and Docker,
and integrates with Jenkins, Bamboo and other CI systems. It runs on top of any cloud as a self-service platform for
deploying, updating and managing applications.
protocols
Agentless model
SSH
HTTP
features
HOSTING
HTTPS
Cloud-hosted or on-premise
case study Service-Flow develops and provides Software-as-a-Service (SaaS) for IT service
integration, relied on by financial and insurance companies serving millions of customers. To enable
rapid development of Java applications without having to manage their own servers, Service-Flow
decided to implement Platform-as-a-Service (PaaS) middleware. After using a hosted PaaS solution,
Service-Flow moved to Stackato, a self-service private PaaS that supports deployment on Amazon
Web Services (AWS). Using Stackato, Service-Flow runs 60+ mission-critical applications, achieves
zero downtime, supports continuous delivery with integrated Jenkins, and ensures security of their
customers data on AWS private cloud.
Customers
ExactTarget
Mozilla
MTN Communications
Service-Flow
HP
Cisco
Nelnet
Angies List
BLOG activestate.com/blog
23
dzone.com/research/continuousdelivery
twitter @activestate
Automatically provisions
Data Stores
MySQL
PostgreSQL
MongoDB
Redis
Memcached
OracleDB
WEBSITE activestate.com/stackato
dzone.com/research/continuousdelivery
24
then youre on the right track. The key point here is that
this goes beyond development, QA, and operations to
include the business and, beyond them, the end users
for whom the software is actually being built. The aim of
giving everyone visibility over the entire process, and the
ability to influence it, is not because more pairs of eyes
can spot more opportunities for optimization; its because
a more engaged team with a greater influence on the
delivered service and a stronger connection to the end user
is more motivated to look for improvements to begin with.
If youre thinking that this all sounds very nice but will
certainly not happen anytime soon in your organization,
bear this in mind: youre probably working with people
in your own organization that are doing this today. Tell
this story to your colleagues in Marketing or even
Human Resources and youre quite
likely to hear that this is all rather
old hat.
How do we
identify where the
opportunities for
improvement are
in the first place?
25
dzone.com/research/continuousdelivery
2014 CA
The real
disruptors?
Your customers.
sponsored opinion
Continuous Delivery
The Ultimate Competitive
Differentiator
W ritten By
CA Release Automation
by CA Technologies
release automation
CI integrations
Jenkins/Hudson
JetBrains TeamCity
Microsoft Team Foundation Server
model
supported platforms
case study
A major healthcare organization decreased deployment times from hours
to minutes and reduced the amount of time spent troubleshooting quality issues. Together
this allowed the team to significantly reduce time to market for new releases of its solution. By
standardizing and streamlining release processes, deployment resources can now facilitate
multiple application deployments within a limited deployment window as opposed to multiple
resources working several hours to achieve the same results.
Required Source
Control Websites
Customers
City Index
HCL Technologies
CSC
BLOG blogs.ca.com
27
features
dzone.com/research/continuousdelivery
SwissCom
twitter @cainc
WEBSITE ca.com
Continuous Delivery:
From Theory
to Practice
by Yaron Parasol
This article contains two more diagrams that we are not able
to show in this guide. You can view the full article with its
SOURCE
CONTROL
REPO
2
NOTIFY
CI
SERVER
BINARY
REPO
BUILD
SERVER
RESTART
APP
SERVER
dzone.com/research/continuousdelivery
28
production environments.
deployments.
After youve automated your build process, its not
just a matter of automatically deploying your code to
This means that you need to know what makes the entire
on-demand resources.
right things. The right things mean that you are aware
of the changes that are being made and how they affect the
system as a whole.
29
dzone.com/research/continuousdelivery
system
How to create the binaries/logical containers in a clean
environment
Testing and monitoring
Using containers is
more lightweight
containers can be
spawned pretty
much instantly.
deployment is run
dzone.com/research/continuousdelivery
30
Continuous Delivery
Maturity Checklist
Source Control
Build Process
Deployment
B a se l i n e
B a se l i n e
Early branching
Branches tend to remain apart
N ov ice
developers machines
I n termedi ate
Pre-tested commits
Integration branch is pristine
Adva n ced
Testing & QA
B a se l i n e
N ov ice
environments
N ov ice
on commit
I n termedi ate
Adva n ced
I n termedi ate
build, no polling
E x pert
Overall Maturity
Scorecard
For each check mark add the assigned number
of points and total them for each section:
B a se l i n e
Visibility
N ov ice
Peer-reviews
Mockups & proxies used
I n termedi ate
E x pert
POINT KEY:
B a se l i n e
N ov ice
I n termedi ate
Baseline 0 pts
Novice 1 pt
Testing & QA
Deployment
Adva n ced
TOTAL
Intermediate 2 pts
Advanced 3 pts
Expert 4 pts
Visibility
0-7 Adequate
E x pert
8-11 Average
15-17 Adept
12-14 Skilled
18-20 Master
Sources: chrisshayan.atlassian.net/wiki/display/my/2013/07/23/Continuous+Delivery+Matrix
ibmdw.net/urbancode/docs/continuous-delivery-maturity-model/
dzone.com/research/continuousdelivery
32
2.
Monitoring
Recovery
IT LITERALLY TAKES
A FEW CLICKS TO DEPLOY
TO AN ENVIRONMENT.
Version control
Continuous integration
Release management
Solutions Directory
Notice to readers: The data in this section is impartial and not influenced by any vendor.
NOTE: The bulk of information gathered about these solutions is not present in these quarter-page profiles.
To view an extended profile of any product, simply go to: dzone.com/research/continuousdelivery
release automation
configuration management
by Grid Dynamics
notification delivery
supported platforms
None
Ansible Tower
by Ansible
web ui features
Agentless model
hosting
notifications supported
Email
On-premise
communication protocol
SSH
Ci integrations
Jenkins/Hudson
Data stores
PostgreSQL
hosting
On-premise or cloud-hosted
third party plugins
Does not support 3rd-party
plugins
Required Source
Control Websites
Does not require source
control through websites
features
config. description
twitter @griddynamics
twitter @ansible
website griddynamics.com/agile-software-factory
website ansible.com
dzone.com/research/continuousdelivery
34
configuration management
continuous integration
Bamboo
by Ansible
web ui features
Agentless model
hosting
On-premise
communication protocol
SSH
Data stores
PostgreSQL
by Atlassian
MODELS
Push or pull agent or
agentless model
features
supported platforms
CM integrations
Puppet
features
hosting
On-premise or cloud-hosted
third party plugins
config. description
plugins
twitter @ansible
twitter @atldevtools
website ansible.com
website atlassian.com/software/bamboo
release automation
browser testing
by BMC Software
MODELS
Push agent model
supported platforms
Java Runtime Environment
.NET Environment
Ruby Environment
PHP Environment
hosting
On-premise
third party plugins
Does support 3rd-party plugins
BrowserStack Automate
by BrowserStack
notification delivery
open source
No
Ci integrations
Jenkins/Hudson
Features
Detailed session history and
logs
Test local and internal servers
Ci tool support
Jenkins
Travis CI
CircleCI
Required Source
Control Websites
Does not require source
control through websites
test support
Cross-browser testing
Mobile testing
Selenium
JavaScript testing
Manual testing
website bmc.com/it-solutions/release-process-management.html
35
Required Source
Control Websites
Does not require source control
through websites.
dzone.com/research/continuousdelivery
pricing
Subscription-based
twitter @browserstack
website browserstack.com
continuous integration
Buildkite
release automation
Buildmaster
by Buildkite
Buildkite is a simple, open source agent that provides selfhosted continuous integration and delivery, and can run code
from SCMs like GitHub.
MODELS
Push agents
features
supported platforms
Java Runtime Environment
.NET Environment
Ruby Environment
PHP Environment
CM integrations
by Inedo
notification delivery
Any custom step in the
process
supported platforms
.NET Environment
notifications supported
Email
RSS
Chat (XMPP, MSN, IRC,
GTalk)
SMS/Text Message
HipChat
Webhooks
Remote API
SOAP
Twitter
Ci integrations
Jenkins/Hudson
Atlassian Bamboo
JetBrains TeamCity
Microsoft Team Foundation
Server
None
hosting
On-premise
third party plugins
Does not support 3rd-party
plugins
Required Source
Control Websites
Does not require source control
through websites.
hosting
On-premise
Required Source
Control Websites
Does not require source
control through websites
twitter @buildkite
twitter @inedo
website buildkite.com
website inedo.com/buildmaster
release automation
configuration management
CA Release Automation
by CA Technologies
CFEngine Community
notification delivery
MODELS
notifications supported
Email
Ci integrations
web ui features
hosting
Cloud-hosted or on-premise
communication protocol
Jenkins/Hudson
JetBrains TeamCity
Microsoft Team Foundation
PostgreSQL
Server
hosting
On-premise
third party plugins
Does support 3rd-party plugins
Required Source
Control Websites
Does not require source
control through websites.
by CFEngine
features
twitter @cainc
twitter @cfengine
website ca.com/release-automation
website cfengine.com
dzone.com/research/continuousdelivery
36
continuous integration
configuration management
Chef
CircleCI
by Chef
web ui features
On-premise
communication protocol
HTTPS
Data stores
PostgreSQL
CouchDB
Solr
MODELS
Agentless
features
supported platforms
CM integrations
hosting
Cloud-hosted
config. description
plugins
Required Source
Control Websites
Requires source control through
GitHub and BitBucket
twitter @circleci
website chef.io
website circleci.com
continuous integration
drone.io
by Codeship
MODELS
Agentless
supported platforms
by drone.io
features
MODELS
Agentless
features
supported platforms
CM integrations
CM integrations
None
None
hosting
Cloud-hosted
hosting
On-premise or cloud-hosted
twitter @chef
continuous integration
37
features
Codeship
by CircleCI
Required Source
Control Websites
Requires source control through
GitHub and BitBucket
Required Source
Control Websites
Requires source control through
GitHub and BitBucket
twitter @codeship
twitter @droneio
website codeship.com
website drone.io
dzone.com/research/continuousdelivery
release automation
release automation
ElectricFlow Deploy
Gradle
by Electric Cloud
notification delivery
Any custom step in the
process
hosting
On-premise or cloud-hosted
notifications supported
Email
RSS
Chat
SMS/Text Message
HipChat
Campfire
Webhooks
Remote API
SOAP
Twitter
Required Source
Control Websites
Ci integrations
Jenkins/Hudson
by Gradleware
Jenkins/Hudson
Atlassian Bamboo
TravisCI
JetBrains TeamCity
Electric Cloud
hosting
On-premise or cloud-hosted
third party plugins
Does support 3rd-party plugins
Required Source
Control Websites
Does not require source
control through websites
twitter @electriccloud
twitter @gradleware
website electric-cloud.com/deploy
website gradle.org
continuous integration
continuous integration
by Eclipse Foundation
Eclipses Hudson Continuous Integration Server is a selfcontained, Java-based solution that runs on a wide range of
standard environments.
MODELS
Push agent or agentless
model
supported platforms
Java Runtime Environment
features
Designates source control
check-in as the mechanism to
trigger a deployment
Sets new builds to be the trigger
for new deployments
Jenkins Enterprise
MODELS
Push or pull agents
features
supported platforms
hosting
On-premise
hosting
On-premise or cloud-hosted
Required Source
Control Websites
Does not require source control
through websites.
None
CM integrations
by CloudBees
CM integrations
Chef
Puppet
SaltStack
Ansible
cfengine
plugins
notification delivery
Required Source
Control Websites
Does not require source control
through websites.
twitter @hudsonci
twitter @cloudbees
website eclipse.org/hudson
website cloudbees.com
dzone.com/research/continuousdelivery
38
release automation
Leroy
release automation
ONE Automation
by Epic Force
notification delivery
supported platforms
Native
Ci integrations
MODELS
Push or pull agent or agentless
model
notification delivery
Any custom step in the
process
notifications supported
Email
RSS
Chat
SMS/Text Message
Webhooks
Remote API
SOAP
Twitter
Jenkins/Hudson
Atlassian Bamboo
JetBrains TeamCity
Microsoft Team Foundation
hosting
On-premise
Required Source
Control Websites
Does not require source
control through websites
Server
hosting
On-premise or cloud-hosted
third party plugins
Does support 3rd-party plugins
Required Source
Control Websites
Does require source control
with Github or SourceForge
twitter @leroydeploy
twitter @automic
website leroydeploy.com
website automic.com
configuration management
release automation
Puppet Enterprise
by Plutora
notification delivery
supported platforms
None
Ci integrations
Jenkins/Hudson
Atlassian Bamboo
Microsoft Team Foundation
Server
hosting
Cloud-hosted
third party plugins
Only vendor plugins
39
supported platforms
notifications supported
Email
Jenkins/Hudson
Plutora
by Automic
Required Source
Control Websites
Does not require source
control through websites
by Puppet Labs
Cloud-hosted or On-premise
communication protocol
SSH
HTTP
Data stores
PostgreSQL
PuppetDB
Hiera
features
web ui features
twitter @plutora
twitter @puppetlabs
website plutora.com
website puppetlabs.com
dzone.com/research/continuousdelivery
release automation
RapidDeploy
release automation
RepliWeb
by MidVision
notification delivery
On success and on failure
supported platforms
Ci integrations
Jenkins/Hudson
Atlassian Bamboo
Microsoft Team Foundation
by Attunity
MODELS
Push or pull agent model
notification delivery
Any custom step in the
process
supported platforms
notifications supported
Email
RSS
SMS/Text Message
Webhooks
Remote API
.NET Environment
notifications supported
Email
Ci integrations
Server
hosting
On-premise
third party plugins
Does support 3rd-party plugins
Required Source
Control Websites
Does require source control
with Github or BitBucket
Required Source
Control Websites
Does not require source
control through websites
hosting
On-premise or cloud-hosted
third party plugins
Does not support 3rd-party
plugins
twitter @midvision
twitter @attunity
website midvision.com
website attunity.com
release automation
configuration management
SaltStack Enterprise
by Rocket Software
notification delivery
Any custom step in the
process
notifications supported
Email
web ui features
hosting
Cloud-hosted
communication protocol
SSH
HTTP
ZeroMQ
UDP
Data stores
Ci integrations
Jenkins/Hudson
hosting
On-premise
third party plugins
Does support 3rd-party plugins
Required Source
Control Websites
Does not require source
control through websites
by SaltStack
MySQL
PostgreSQL
MongoDB
CouchDB
More
features
config. description
twitter @Rocket
twitter @saltstackinc
website rocketsoftware.com
website saltstack.com
dzone.com/research/continuousdelivery
40
continuous integration
Semaphore
by Sauce Labs
Features
Detailed session history and
logs
Parallel test execution
Ci tool support
Jenkins
TravisCI
CircleCI
Bamboo
TeamCity
MODELS
Agentless
features
supported platforms
test support
hosting
Cloud-hosted
pricing
By number of VMs and test run
minutes
CM integrations
Chef
Cross-browser testing
Mobile testing
Selenium
Appium
JavaScript testing
Manual testing
Required Source
Control Websites
Requires source control through
GitHub and BitBucket
twitter @saucelabs
twitter @semaphoreapp
website saucelabs.com
website semaphoreapp.com
release automation
continuous integration
by Serena Software
Jenkins/Hudson
Atlassian Bamboo
JetBrains TeamCity
Microsoft Team Foundation
notification delivery
Any custom step in the
process
notifications supported
Email
RSS
SOAP
ALF
hosting
On-premise
by Shippable
MODELS
Pull agent or agentless
models
supported platforms
Java Runtime Environment
Ruby Environment
PHP Environment
Python Environment
hosting
On-premise or cloud-hosted
features
Designates source control
check-in as the mechanism to
trigger a deployment
Sets new builds to be the trigger
for new deployments
Version tracking for application
configuration and environment
properties
Automatic validation builds for
code changes to the master
branch
CM integrations
Required Source
Control Websites
Shippable
SaltStack
Ansible
Server
41
by Rendered Text
Required Source
Control Websites
Does not require source control
through websites.
twitter @serenasoftware
twitter @beshippable
website serena.com/sda
website shippable.com
dzone.com/research/continuousdelivery
continuous integration
Snap CI
continuous integration
Solano CI
by Thoughtworks
features
MODELS
Agentless
supported platforms
None
by Solano Labs
MODELS
Push or pull agent or
agentless model
features
supported platforms
CM integrations
None
hosting
Cloud-hosted
hosting
On-premise or cloud-hosted
Not supported
Required Source
Control Websites
Does not require source control
through websites.
twitter @snap_ci
twitter @solanolabs
website snap-ci.com
website solanolabs.com
configuration management
Stackato
CM integrations
None
Required Source
Control Websites
Requires source control through
GitHub
continuous integration
TeamCity
by ActiveState
MODELS
Push or pull agent or agentless
model
hosting
Cloud-hosted or on-premise
communication protocol
SSH
HTTP
Data stores
MySQL
PostgreSQL
MongoDB
PuppetDB
Redis
features
Automatically provisions databases
and services
Can deploy apps directly from CI
system, IDE or CLI client
Easy management of app instances
and environments
web ui features
by JetBrains
MODELS
Push or pull agents
features
supported platforms
CM integrations
None
hosting
On-premise
third party plugins
config. description
Required Source
Control Websites
Does not require source control
through websites.
twitter @activestate
twitter @teamcity
website activestate.com/stackato
website jetbrains.com/teamcity
dzone.com/research/continuousdelivery
42
continuous integration
Travis CI
release automation
by Travis CI
MODELS
Push agents
features
supported platforms
Java Runtime Environment
Ruby Environment
CM integrations
None
hosting
On-premise or cloud-hosted
third party plugins
Does not support 3rd-party
plugins
MODELS
Push agent model
notification delivery
On success and on failure
supported platforms
Ci integrations
Jenkins/Hudson
JetBrains TeamCity
Microsoft Team Foundation
Required Source
Control Websites
Requires source control through
Github
notifications supported
Email
Remote API
Server
hosting
On-premise
third party plugins
Does support 3rd-party plugins
Required Source
Control Websites
Does not require source
control through websites
twitter @travisci
twitter @urbancode
website travis-ci.com
website developer.ibm.com/urbancode/products/urbancode-deploy
release automation
XL Deploy
by IBM
release automation
Zend Server
by Xebia Labs
notification delivery
supported platforms
by Zend
notification delivery
supported platforms
notifications supported
Email
PHP Environment
Ci integrations
Ci integrations
Jenkins/Hudson
Atlassian Bamboo
Microsoft Team Foundation
Jenkins/Hudson
Atlassian Bamboo
Server
hosting
On-premise
third party plugins
Does support 3rd-party plugins
43
Required Source
Control Websites
Does not require source
control through websites
hosting
On-premise or cloud-hosted
third party plugins
Does support 3rd-party plugins
Required Source
Control Websites
Does not require source
control through websites
twitter @xebialabs
twitter @zend
website xebialabs.com
website zend.com
dzone.com/research/continuousdelivery
glossary
a
Containerization
A server virtualization method where the
kernel of an operating system allows for
multiple isolated user space instances,
instead of just one.
Agent
Continuous Delivery
Build Agent
A type of agent used in continuous
integration that can be installed locally
or remotely in relation to the continuous
integration server. It sends and receives
messages about handling software
builds.
Configuration Drift
An application-server-as-a-service
(aPaaS) provided over a network along
with additional components that may
include middleware, development tools,
and application controllers.
r
s
Rollback
An automatic or manual operation that
restores a database or program to a
previous defined state in order to recover
from an error.
Self-Service Deployment
A feature where deployment processes
are automated enough for developers
to allow project managers or even
clients to directly control push-button
deployments.
Source Control
A system for storing, tracking, and
managing changes to software. This
is commonly done through a process
of creating branches (copies for safely
creating new features) off of the stable
master version of the software and then
merging stable feature branches back into
the master version. This is also known as
version control or revision control.
Exploratory Testing
A manual testing strategy where human
testers have the freedom to test areas
where they suspect issues could arise that
automated testing wont catch.
Platform-as-a-Service (PaaS)
Production
Capacity Test
DevOps
Deployment Pipeline
Deployment
Behavior-Driven Development
(BDD)
Mean-Time-Between-Failures
(MTBF)
Mean-Time-to-Recovery (MTTR)
Continuous Deployment
Unit Testing
Infrastructure-as-a-Service
(IaaS)
Configuration Management
Integration Testing
Issue Tracking
Also known as bug tracking or defect tracking,
dzone.com/research/continuousdelivery
44