Continuous Integration in
Agile Software Development
Continuous Integration (CI) involves producing
a clean build of the system several times per
day, usually with a tool like CruiseControl,
which uses Ant and various source-control
systems. Agile teams typically configure CI to
include automated compilation, unit test
execution, and source control integration.
Benefits of Continuous Integration
 Helps the code stay robust enough so stakeholders can modify/re-link code whenever
they like.
 Speeds the flow of development work overall.
 Encourages more feedback between programmers and customers.
 Helps team get things right before iteration deadlines.
 Continuous integration works well if you have an exhaustive suite of automated unit
tests that ensure that you are not committing buggy code.
 Skillful CI means that integration is never a headache as work reflects only slight
divergence from the codebase.
 CI enables team to regularly deal with small-scale divergences, so they never have to
deal with truly scary ones.
 CI provides opportunities to discuss different design approaches on the day that they
arise.
DEFINITION
Teams practicing continuous integration seek two objectives:
 minimize the duration and effort required by each
integration episode
 be able to deliver a product version suitable for release at
any moment
The objectives require an integration procedure which is
reproducible at the very least, and largely automated. This is
achieved through version control tools, team policies and
conventions, and tools specifically designed to help achieve
continuous integration.
COMMON PITFALLS
 The practice of CI should not be confused with the tools that
assist it (CI servers such as Cruise Control, Hudson, etc.). CI
is first and foremost a matter of attitude rather than tools,
and it relies on more than one tool: tools for testing, tools
for automating build processes, and tools for version control.
 Continuous Integration aims to lessen the pain of integration by
increasing its frequency. Therefore, “any” effort related to
producing intermediate releases, and which the team experiences
as particularly burdensome, is a candidate for inclusion in the
team’s continuous integration process.
SIGNS OF USE
For most teams, CI in practice amounts to the following:
 Use of a version control tool (CVS, SVN, Git, etc.)
 An automated build and product release process
 Instrumentation of the build process to trigger tests “every
time any change is published to version control”
 In the event of even a single test failing, alerting the team of
a “broken build” so that the team can reach a stable, releasable
baseline again soonest
 Optionally, use of a tool such as a CI server, which automates
the process of integration, testing and reporting of test
results
Architecture
Diagram
Mobile CI
Architecture
Diagram
Continuous
Delivery
Evolutionary
Architecture
Agile Network India | Continuous Integration & Continuous Deployment & Automation in Testing | Rajesh Dadlaney
BUDDY is a modern and intuitive CI tool. By keeping the
interface simple Buddy makes the user experience the top
priority and the time you need to invest in learning the
tool to the minimum (which is nice).
Wizard-like type of configurations make the tool easy to
work with, and there is practically no need to read the
documentation until you need to configure some of the more
complex pipelines.
What makes it a modern CI tool is the wide variety of
supported tools/integrations, fast build times, smart but
flexible UI, different hosting options (cloud/on-premises)
and configurable pricing plans. Buddy fulfills all the above
and goes beyond.
Buddy supports Docker, Kubernetes, all the major frameworks,
languages and cloud providers, including PHP, Node, Python,
.NET Core and Rails, as well as AWS and Google Cloud
services. You can also rely on Buddy to provide monitoring
and notifications for your builds.
TEAMCITY is the mature CI server by JetBrains. JetBrains has
established authority in the software development world, and
developers all over the world use their tools like WebStorm
and ReSharper.
TeamCity offers all the features in its free version, but it
is limited to 100 builds and 3 build agents. A 60-day trial
version of TeamCity also is available on cloud where we can
try it out for one project without a hassle of having to
install it on-premises.
TeamCity works on many different platforms and has the
support for wide variety of tools and frameworks. There are
many publicly available plugins, developed both by JetBrains
and third parties.
Despite being the Java-based solution, TeamCity offers the
best .NET support among the tools on this list. There are
also different enterprise packages, that scale by the number
of agents your company needs.
When Oracle bought Sun Microsystems, then known as Fork-For-
Hudson, Jenkins is an open-source CI tool written in
Java. It is a cross-platform CI tool and offers
configuration both through GUI interface and console
commands.
What makes Jenkins very flexible is the feature extension
through plugins which is very comprehensive and we can
easily add our own. Besides extensibility, Jenkins prides
itself on distributing builds and test loads on multiple
machines. It is published under MIT license so it is free to
use and distribute.
Cloudbees also offers hosted solution in the form of the
Jenkins in the Cloud.
Verdict: One of the best solutions out there, both powerful
and flexible at the same time. The learning curve could be a
bit steep, but if you need flexibility it very well pays off
to learn how to use it.
Travis CI is one of the oldest hosted solutions out
there and it has won the trust of many people.
Although it’s mostly known for the hosted solution,
it offers the on-premise version too.
Travis CI is free for all open source projects hosted
on the GitHub and for the first 100 builds otherwise.
the main difference being the number of concurrent
builds you can run as compare to priced.
Builds are configured using .travis.yml file which
contains the build tasks that will be executed on
running the build. It supports a variety of different
languages and a good documentation to back them up.
Verdict: A Mature solution that offers both hosted
and On-premises variants, loved and used by many
teams, very well documented.
Atlassian is the company focused on providing tools for
software development teams and you might know them by their
tools like JIRA & BitBucket. Bamboo originally offered both
cloud and On-premises solutions, but later discontinued its
cloud version in May 2016.
By utilizing the power of Docker, Bitbucket Pipelines is
offering very efficient and fast builds that and is rapidly
growing and becoming a worthy successor to the Bamboo Cloud.
Bamboo is free to try for 30 days later needs to be
purchased. Being the Atlassian tool, it has the native
support for JIRA and BitBucket and you can even import your
Jenkins configurations into the Bamboo easily.
Verdict: Great On-premises CI tool that originally offered
Cloud solution too. Bitbucket Pipelines replaced the cloud
solution. Pipelines is a modern and fast cloud CI tool
integrated into Bitbucket. Has a free trial for 30 days, and
paid plans after that.
GitLab CI (by GitLab inc) is an integral part of the
open-source Rails project GitLab. It is hosted on
GitLab.com, a free hosted service and it provides
detailed GIT repository management with features like
access control, issue tracking, code reviews and much
more.
GitLab CI integrates seamlessly with GitLab and it
can easily hook projects using the GitLab API. GitLab
runners that process builds are written in Go
language and can run on Windows, Linux, OSX, FreeBSD,
and Docker.
Can run multiple jobs concurrently and has inbuilt
Docker support. Gitlab CI comes with both the open-
source GitLab Community Edition and with the GitLab
Enterprise Edition.
Verdict: A Phenomenal hosted tool with impressive
list of features, offers both free and enterprise
solutions.
Another cloud alternative that comes from the company with
the same name. CircleCI currently only supports GitHub and
the list of supported languages includes Java, Ruby/Rails,
Python, Node.js, PHP, Haskell, and Scala.
What separates CircleCI from the other tools is the way they
offer services. One container is free and you can build as
many projects on it as you need. Once you start adding more
containers (at a fixed price each) you can choose the level
of parallelization that suits your needs.
There are 5 levels of parallelization (1x, 4x, 8x, 12x and
16x). So, starting with the 16 containers, you can achieve
maximum parallelization of 16x on one build. Or you can run
4 builds on 16 containers with 4x parallelization. It is up
to you.
CircleCI supports Docker..
Verdict: Flexible cloud CI tool that offers parallelization
up to 16x. Excellent if you need something built fast and
money is not the biggest issue (can reach up to $3150/mo).
Codeship comes in two different versions: Basic and
Pro. Basic version offers out-of-the-box Continuous
Integration service but doesn’t have docker support
and its main purpose is to build applications with
common workflows through the UI. Pro version
offers more flexibility and docker support.
The basic version comes in several paid packages,
where the more expensive ones have more
parallelization power. In the pro version, you get to
choose your instance type and the amount of
parallelization up to 20x). It can get a bit pricey,
but some teams may need that kind of power.
Verdict: Powerful hosted solution with docker
support, flexible plans suited both for small teams
and enterprises alike.
Most tools have Docker support, but Codefresh was designed and
built from the ground up specifically with the containers in mind.
Docker can be a bit overwhelming to figure out at first, and
Codefresh inc. are aware of that. In addition to working with
existing docker files, you can choose from several different
templates to ease the migration of your project to Docker
containers. UI is clean and intuitive, there is almost no need to
parse through the documentation to start using it.
The reason this CI tool deserves to be on the list lies in a
feature that surprised me a bit. And that feature is launching your
images to a stage-like environment. When the build finishes, you
can launch the image to see if it works! That effectively means you
get a staging environment without a need to provision additional
virtual machines or deploy anything. And that’s great!
Codefresh is still very young and has room for improvement and new
features, (eg. .NET core template and more deployment options), but
it treats containers as a first class citizen and that makes it an
ideal solution for any team that plans to utilize Docker.
Verdict: Easy to use tool with Docker containers at its core and
very nice feature of launching the built Docker images to the
hosted environment.

More Related Content

PPTX
CI CD using Docker and Jenkins
PPTX
[Rakuten Technology Conference 2019] Be the central on your field
PPTX
[Hitesh mandloi] DevOpsDays Tokyo 2021 presentation
PPTX
Using Docker EE in a CI/CD Workflow
PDF
OPEN SOURCE TECHNOLOGY: Docker Containers on IBM Bluemix
PPTX
Decide for Dummies
PDF
Red Hhat Summit 2017 : Love Containers, Love Devops, Love Openshift, Where's ...
PDF
Cloud Native Patterns with Bluemix Developer Console
CI CD using Docker and Jenkins
[Rakuten Technology Conference 2019] Be the central on your field
[Hitesh mandloi] DevOpsDays Tokyo 2021 presentation
Using Docker EE in a CI/CD Workflow
OPEN SOURCE TECHNOLOGY: Docker Containers on IBM Bluemix
Decide for Dummies
Red Hhat Summit 2017 : Love Containers, Love Devops, Love Openshift, Where's ...
Cloud Native Patterns with Bluemix Developer Console

What's hot (20)

PPTX
Jelastic Docker Orchestrator
PDF
Docker Indy: Dockercon 2019 Recap and Docker CLI Plugins
PDF
Meetup Devops-Geneva-19.10.2019
PPTX
Docker 之道 Modernize Traditional Applications with 无为 Create New Cloud Native ...
PDF
Docker Enables DevOps - Boston
PPTX
Docker cloud hybridation & orchestration
PPTX
DockerCon EU 2017 - General Session Day 2
PDF
The DevOps paradigm - the evolution of IT professionals and opensource toolkit
PDF
Container Technologies and Transformational value
PPTX
Weave User Group Talk - DockerCon 2017 Recap
PPTX
DockerCon EU 2017 Recap
PDF
Introduction to Dev Ops and Containerisation with Docker
PPTX
DockerCon EU 2017 - General Session Day 1
PPTX
Docker and Microservice
PDF
Hands-on GitOps Patterns for Helm Users
PPTX
IBM Container Service Overview
PDF
Open source for you - November 2017
PPT
IBM Bluemix and Docker Guest Lecture at Cork Institute of Technology
PPTX
Docker Innovation Culture
PDF
Workshop Azure DevOps | Docker | Azure Kubernetes Services
Jelastic Docker Orchestrator
Docker Indy: Dockercon 2019 Recap and Docker CLI Plugins
Meetup Devops-Geneva-19.10.2019
Docker 之道 Modernize Traditional Applications with 无为 Create New Cloud Native ...
Docker Enables DevOps - Boston
Docker cloud hybridation & orchestration
DockerCon EU 2017 - General Session Day 2
The DevOps paradigm - the evolution of IT professionals and opensource toolkit
Container Technologies and Transformational value
Weave User Group Talk - DockerCon 2017 Recap
DockerCon EU 2017 Recap
Introduction to Dev Ops and Containerisation with Docker
DockerCon EU 2017 - General Session Day 1
Docker and Microservice
Hands-on GitOps Patterns for Helm Users
IBM Container Service Overview
Open source for you - November 2017
IBM Bluemix and Docker Guest Lecture at Cork Institute of Technology
Docker Innovation Culture
Workshop Azure DevOps | Docker | Azure Kubernetes Services

Similar to Agile Network India | Continuous Integration & Continuous Deployment & Automation in Testing | Rajesh Dadlaney (20)

PDF
Top DevOps tools
PDF
Top CI/CD Tools Every QA Automation Engineer Should Use
PDF
Intro to DevOps 4 undergraduates
PPTX
Introduction to DevOps framework and its tools.
PDF
Top 25+ .Net development tools for intelligent business solutions - AppsDevPro
PDF
CI/CD Tools That Will Revolutionize Your DevOps Process
PDF
How many tools use Continuous integration in Devops- VaST ITES INC..pdf
PDF
How many tools use Continuous integration in Devops- VaST ITES INC..pdf
PDF
Azure_DevOps introduction for CI/CD and Agile
PDF
Azure Devops Introduction for CI/CD and agile
PDF
Azure_DevOps introduction: including board,pipleline, rep
PPTX
Azure DevOps
PDF
Azure DevOps - Azure Guatemala Meetup
PPTX
Welcome to Azure DevOps
PPTX
Azure DevOps
PPTX
How Azure DevOps can boost your organization's productivity
DOCX
Best dev ops tools to master in 2022
PDF
Azure DevOps Day - Kochi
PDF
Azure DevOps Day - Trivandrum
PDF
[JAZUG Tohoku Azure DevOps] Azure DevOps
Top DevOps tools
Top CI/CD Tools Every QA Automation Engineer Should Use
Intro to DevOps 4 undergraduates
Introduction to DevOps framework and its tools.
Top 25+ .Net development tools for intelligent business solutions - AppsDevPro
CI/CD Tools That Will Revolutionize Your DevOps Process
How many tools use Continuous integration in Devops- VaST ITES INC..pdf
How many tools use Continuous integration in Devops- VaST ITES INC..pdf
Azure_DevOps introduction for CI/CD and Agile
Azure Devops Introduction for CI/CD and agile
Azure_DevOps introduction: including board,pipleline, rep
Azure DevOps
Azure DevOps - Azure Guatemala Meetup
Welcome to Azure DevOps
Azure DevOps
How Azure DevOps can boost your organization's productivity
Best dev ops tools to master in 2022
Azure DevOps Day - Kochi
Azure DevOps Day - Trivandrum
[JAZUG Tohoku Azure DevOps] Azure DevOps

More from AgileNetwork (20)

PDF
Agile Kolkata 29-30 Aug 2025 | True Agile Meetings in Remote Setting: Innovat...
PDF
Agile Kolkata 29-30 Aug 2025 | Agility That Understands You: The Assessli Jou...
PPTX
Agile Kolkata 29-30 Aug 2025 | Workshop – T.A.R.A: Leading with Courage & Com...
PPTX
Agile Kolkata 29-30 Aug 2025 | Workshop - Balanced Speed and Ethics in AI Inn...
PPTX
Agile Kolkata 29-30 Aug 2025 | The Empathetic Enterprise: Systems that Feel, ...
PDF
Agile Kolkata 29-30 Aug 2025 | Workshop - Leading Through Uncertainty: Strate...
PPTX
Agile Kolkata 29-30 Aug 2025 | Human-Centered Agility: Integrating Design Thi...
PPTX
Agile Kolkata 29-30 Aug 2025 | Humanistic AI Systems - The Future of AI Era b...
PPTX
Agile Kolkata 29-30 Aug 2025 | Pause, Reflect, Deliver: The Human Side of Agi...
PPTX
Agile Kolkata 29-30 Aug 2025 | The Empathic Edge: Reimagining Agility with AI...
PDF
Agile Kolkata 29-30 Aug 2025 | Enhancing, Not Replacing, Human Insight Throug...
PDF
ANIn Mumbai 2025 | Measuring Business Value during Agile Transformation by Pr...
PPTX
ANIn Ahmedabad 2025 | Quality as Foundation of Business Agility: How QA Enabl...
PPTX
ANIn Ahmedabad 2025 | Beyond Survival: Enabling Growth Mindset by Abhishek Bh...
PPTX
Agile Chennai 18-19 July 2025 | Emerging patterns in Agentic AI by Bharani Su...
PPTX
Agile Chennai 18-19 July 2025 Ideathon | AI Powered Microfinance Literacy Gui...
PPTX
Agile Chennai 18-19 July 2025 Ideathon | Crypton- an AI driven, Quantum Resis...
PPTX
Agile Chennai 18-19 July 2025 | Leading with Integrity in the Age of AI – A C...
PDF
Agile Chennai 18-19 July 2025 | Workshop - Leadership in an Uncertain World: ...
PPTX
Agile Chennai 18-19 July 2025 | The Human Metrics of Agile: Building Resilien...
Agile Kolkata 29-30 Aug 2025 | True Agile Meetings in Remote Setting: Innovat...
Agile Kolkata 29-30 Aug 2025 | Agility That Understands You: The Assessli Jou...
Agile Kolkata 29-30 Aug 2025 | Workshop – T.A.R.A: Leading with Courage & Com...
Agile Kolkata 29-30 Aug 2025 | Workshop - Balanced Speed and Ethics in AI Inn...
Agile Kolkata 29-30 Aug 2025 | The Empathetic Enterprise: Systems that Feel, ...
Agile Kolkata 29-30 Aug 2025 | Workshop - Leading Through Uncertainty: Strate...
Agile Kolkata 29-30 Aug 2025 | Human-Centered Agility: Integrating Design Thi...
Agile Kolkata 29-30 Aug 2025 | Humanistic AI Systems - The Future of AI Era b...
Agile Kolkata 29-30 Aug 2025 | Pause, Reflect, Deliver: The Human Side of Agi...
Agile Kolkata 29-30 Aug 2025 | The Empathic Edge: Reimagining Agility with AI...
Agile Kolkata 29-30 Aug 2025 | Enhancing, Not Replacing, Human Insight Throug...
ANIn Mumbai 2025 | Measuring Business Value during Agile Transformation by Pr...
ANIn Ahmedabad 2025 | Quality as Foundation of Business Agility: How QA Enabl...
ANIn Ahmedabad 2025 | Beyond Survival: Enabling Growth Mindset by Abhishek Bh...
Agile Chennai 18-19 July 2025 | Emerging patterns in Agentic AI by Bharani Su...
Agile Chennai 18-19 July 2025 Ideathon | AI Powered Microfinance Literacy Gui...
Agile Chennai 18-19 July 2025 Ideathon | Crypton- an AI driven, Quantum Resis...
Agile Chennai 18-19 July 2025 | Leading with Integrity in the Age of AI – A C...
Agile Chennai 18-19 July 2025 | Workshop - Leadership in an Uncertain World: ...
Agile Chennai 18-19 July 2025 | The Human Metrics of Agile: Building Resilien...

Recently uploaded (20)

PPTX
Unit1_Kumod_deeplearning.pptx DEEP LEARNING
PPSX
namma_kalvi_12th_botany_chapter_9_ppt.ppsx
PDF
Kalaari-SaaS-Founder-Playbook-2024-Edition-.pdf
PDF
Diabetes Mellitus , types , clinical picture, investigation and managment
PDF
GSA-Past-Papers-2010-2024-2.pdf CSS examination
PDF
anganwadi services for the b.sc nursing and GNM
PDF
Health aspects of bilberry: A review on its general benefits
PPTX
Copy of ARAL Program Primer_071725(1).pptx
PDF
GIÁO ÁN TIẾNG ANH 7 GLOBAL SUCCESS (CẢ NĂM) THEO CÔNG VĂN 5512 (2 CỘT) NĂM HỌ...
PPTX
Approach to a child with acute kidney injury
PPTX
operating_systems_presentations_delhi_nc
PDF
LATAM’s Top EdTech Innovators Transforming Learning in 2025.pdf
DOCX
EDUCATIONAL ASSESSMENT ASSIGNMENT SEMESTER MAY 2025.docx
PPT
hsl powerpoint resource goyloveh feb 07.ppt
PDF
Chevening Scholarship Application and Interview Preparation Guide
PPTX
pharmaceutics-1unit-1-221214121936-550b56aa.pptx
PPTX
Key-Features-of-the-SHS-Program-v4-Slides (3) PPT2.pptx
PPTX
GW4 BioMed Candidate Support Webinar 2025
PDF
BSc-Zoology-02Sem-DrVijay-Comparative anatomy of vertebrates.pdf
PPTX
IT infrastructure and emerging technologies
Unit1_Kumod_deeplearning.pptx DEEP LEARNING
namma_kalvi_12th_botany_chapter_9_ppt.ppsx
Kalaari-SaaS-Founder-Playbook-2024-Edition-.pdf
Diabetes Mellitus , types , clinical picture, investigation and managment
GSA-Past-Papers-2010-2024-2.pdf CSS examination
anganwadi services for the b.sc nursing and GNM
Health aspects of bilberry: A review on its general benefits
Copy of ARAL Program Primer_071725(1).pptx
GIÁO ÁN TIẾNG ANH 7 GLOBAL SUCCESS (CẢ NĂM) THEO CÔNG VĂN 5512 (2 CỘT) NĂM HỌ...
Approach to a child with acute kidney injury
operating_systems_presentations_delhi_nc
LATAM’s Top EdTech Innovators Transforming Learning in 2025.pdf
EDUCATIONAL ASSESSMENT ASSIGNMENT SEMESTER MAY 2025.docx
hsl powerpoint resource goyloveh feb 07.ppt
Chevening Scholarship Application and Interview Preparation Guide
pharmaceutics-1unit-1-221214121936-550b56aa.pptx
Key-Features-of-the-SHS-Program-v4-Slides (3) PPT2.pptx
GW4 BioMed Candidate Support Webinar 2025
BSc-Zoology-02Sem-DrVijay-Comparative anatomy of vertebrates.pdf
IT infrastructure and emerging technologies

Agile Network India | Continuous Integration & Continuous Deployment & Automation in Testing | Rajesh Dadlaney

  • 1. Continuous Integration in Agile Software Development
  • 2. Continuous Integration (CI) involves producing a clean build of the system several times per day, usually with a tool like CruiseControl, which uses Ant and various source-control systems. Agile teams typically configure CI to include automated compilation, unit test execution, and source control integration.
  • 3. Benefits of Continuous Integration  Helps the code stay robust enough so stakeholders can modify/re-link code whenever they like.  Speeds the flow of development work overall.  Encourages more feedback between programmers and customers.  Helps team get things right before iteration deadlines.  Continuous integration works well if you have an exhaustive suite of automated unit tests that ensure that you are not committing buggy code.  Skillful CI means that integration is never a headache as work reflects only slight divergence from the codebase.  CI enables team to regularly deal with small-scale divergences, so they never have to deal with truly scary ones.  CI provides opportunities to discuss different design approaches on the day that they arise.
  • 4. DEFINITION Teams practicing continuous integration seek two objectives:  minimize the duration and effort required by each integration episode  be able to deliver a product version suitable for release at any moment The objectives require an integration procedure which is reproducible at the very least, and largely automated. This is achieved through version control tools, team policies and conventions, and tools specifically designed to help achieve continuous integration.
  • 5. COMMON PITFALLS  The practice of CI should not be confused with the tools that assist it (CI servers such as Cruise Control, Hudson, etc.). CI is first and foremost a matter of attitude rather than tools, and it relies on more than one tool: tools for testing, tools for automating build processes, and tools for version control.  Continuous Integration aims to lessen the pain of integration by increasing its frequency. Therefore, “any” effort related to producing intermediate releases, and which the team experiences as particularly burdensome, is a candidate for inclusion in the team’s continuous integration process.
  • 6. SIGNS OF USE For most teams, CI in practice amounts to the following:  Use of a version control tool (CVS, SVN, Git, etc.)  An automated build and product release process  Instrumentation of the build process to trigger tests “every time any change is published to version control”  In the event of even a single test failing, alerting the team of a “broken build” so that the team can reach a stable, releasable baseline again soonest  Optionally, use of a tool such as a CI server, which automates the process of integration, testing and reporting of test results
  • 11. BUDDY is a modern and intuitive CI tool. By keeping the interface simple Buddy makes the user experience the top priority and the time you need to invest in learning the tool to the minimum (which is nice). Wizard-like type of configurations make the tool easy to work with, and there is practically no need to read the documentation until you need to configure some of the more complex pipelines. What makes it a modern CI tool is the wide variety of supported tools/integrations, fast build times, smart but flexible UI, different hosting options (cloud/on-premises) and configurable pricing plans. Buddy fulfills all the above and goes beyond. Buddy supports Docker, Kubernetes, all the major frameworks, languages and cloud providers, including PHP, Node, Python, .NET Core and Rails, as well as AWS and Google Cloud services. You can also rely on Buddy to provide monitoring and notifications for your builds.
  • 12. TEAMCITY is the mature CI server by JetBrains. JetBrains has established authority in the software development world, and developers all over the world use their tools like WebStorm and ReSharper. TeamCity offers all the features in its free version, but it is limited to 100 builds and 3 build agents. A 60-day trial version of TeamCity also is available on cloud where we can try it out for one project without a hassle of having to install it on-premises. TeamCity works on many different platforms and has the support for wide variety of tools and frameworks. There are many publicly available plugins, developed both by JetBrains and third parties. Despite being the Java-based solution, TeamCity offers the best .NET support among the tools on this list. There are also different enterprise packages, that scale by the number of agents your company needs.
  • 13. When Oracle bought Sun Microsystems, then known as Fork-For- Hudson, Jenkins is an open-source CI tool written in Java. It is a cross-platform CI tool and offers configuration both through GUI interface and console commands. What makes Jenkins very flexible is the feature extension through plugins which is very comprehensive and we can easily add our own. Besides extensibility, Jenkins prides itself on distributing builds and test loads on multiple machines. It is published under MIT license so it is free to use and distribute. Cloudbees also offers hosted solution in the form of the Jenkins in the Cloud. Verdict: One of the best solutions out there, both powerful and flexible at the same time. The learning curve could be a bit steep, but if you need flexibility it very well pays off to learn how to use it.
  • 14. Travis CI is one of the oldest hosted solutions out there and it has won the trust of many people. Although it’s mostly known for the hosted solution, it offers the on-premise version too. Travis CI is free for all open source projects hosted on the GitHub and for the first 100 builds otherwise. the main difference being the number of concurrent builds you can run as compare to priced. Builds are configured using .travis.yml file which contains the build tasks that will be executed on running the build. It supports a variety of different languages and a good documentation to back them up. Verdict: A Mature solution that offers both hosted and On-premises variants, loved and used by many teams, very well documented.
  • 15. Atlassian is the company focused on providing tools for software development teams and you might know them by their tools like JIRA & BitBucket. Bamboo originally offered both cloud and On-premises solutions, but later discontinued its cloud version in May 2016. By utilizing the power of Docker, Bitbucket Pipelines is offering very efficient and fast builds that and is rapidly growing and becoming a worthy successor to the Bamboo Cloud. Bamboo is free to try for 30 days later needs to be purchased. Being the Atlassian tool, it has the native support for JIRA and BitBucket and you can even import your Jenkins configurations into the Bamboo easily. Verdict: Great On-premises CI tool that originally offered Cloud solution too. Bitbucket Pipelines replaced the cloud solution. Pipelines is a modern and fast cloud CI tool integrated into Bitbucket. Has a free trial for 30 days, and paid plans after that.
  • 16. GitLab CI (by GitLab inc) is an integral part of the open-source Rails project GitLab. It is hosted on GitLab.com, a free hosted service and it provides detailed GIT repository management with features like access control, issue tracking, code reviews and much more. GitLab CI integrates seamlessly with GitLab and it can easily hook projects using the GitLab API. GitLab runners that process builds are written in Go language and can run on Windows, Linux, OSX, FreeBSD, and Docker. Can run multiple jobs concurrently and has inbuilt Docker support. Gitlab CI comes with both the open- source GitLab Community Edition and with the GitLab Enterprise Edition. Verdict: A Phenomenal hosted tool with impressive list of features, offers both free and enterprise solutions.
  • 17. Another cloud alternative that comes from the company with the same name. CircleCI currently only supports GitHub and the list of supported languages includes Java, Ruby/Rails, Python, Node.js, PHP, Haskell, and Scala. What separates CircleCI from the other tools is the way they offer services. One container is free and you can build as many projects on it as you need. Once you start adding more containers (at a fixed price each) you can choose the level of parallelization that suits your needs. There are 5 levels of parallelization (1x, 4x, 8x, 12x and 16x). So, starting with the 16 containers, you can achieve maximum parallelization of 16x on one build. Or you can run 4 builds on 16 containers with 4x parallelization. It is up to you. CircleCI supports Docker.. Verdict: Flexible cloud CI tool that offers parallelization up to 16x. Excellent if you need something built fast and money is not the biggest issue (can reach up to $3150/mo).
  • 18. Codeship comes in two different versions: Basic and Pro. Basic version offers out-of-the-box Continuous Integration service but doesn’t have docker support and its main purpose is to build applications with common workflows through the UI. Pro version offers more flexibility and docker support. The basic version comes in several paid packages, where the more expensive ones have more parallelization power. In the pro version, you get to choose your instance type and the amount of parallelization up to 20x). It can get a bit pricey, but some teams may need that kind of power. Verdict: Powerful hosted solution with docker support, flexible plans suited both for small teams and enterprises alike.
  • 19. Most tools have Docker support, but Codefresh was designed and built from the ground up specifically with the containers in mind. Docker can be a bit overwhelming to figure out at first, and Codefresh inc. are aware of that. In addition to working with existing docker files, you can choose from several different templates to ease the migration of your project to Docker containers. UI is clean and intuitive, there is almost no need to parse through the documentation to start using it. The reason this CI tool deserves to be on the list lies in a feature that surprised me a bit. And that feature is launching your images to a stage-like environment. When the build finishes, you can launch the image to see if it works! That effectively means you get a staging environment without a need to provision additional virtual machines or deploy anything. And that’s great! Codefresh is still very young and has room for improvement and new features, (eg. .NET core template and more deployment options), but it treats containers as a first class citizen and that makes it an ideal solution for any team that plans to utilize Docker. Verdict: Easy to use tool with Docker containers at its core and very nice feature of launching the built Docker images to the hosted environment.