Continuous delivery is the second part of the “CI/CD pipeline” and is one of the main poles of modern application development. Continuous delivery is a specific software development method witch enables automated release to production or test environments of code changes. A well performed CD – continuous delivery process will result in deployment-ready builds that developers will be able to release promptly. Cloud technologies are in favor of CD – continuous delivery practices because it facilitates a financially effective solution for replicating or creating test environments.

In particular, continuous delivery includes automated testing at different levels, from various perspectives, such as: UI testing, load testing, API reliability testing, integration testing. Due to the continuous delivery process, software development teams will be able to discover issues before deploying to customer infrastructure.

Continuos Delivery At Codespring

For Codepring software development team, CD continuous delivery came as a natural continuation of agile practices and iterative feedback loops. We were practicing part of the CD – continuous delivery before the term was cornered by the global tech community. The great thing of CD – continuous delivery is that it pushes software for release faster and in a more reliable manner. The software improvement is constant due to the continuous integration of feedback.

The Benefits of Continuous Delivery

As part of the current DevOps practices, CD – continuous delivery have proven to have a positive impact on customer business and on the overall software development life cycle. Here we count only a few benefits, but we are ready to talk more about the reasons we use CD tools.

Increased Market Competitivity

More automation means to deploy faster. Deploying faster means getting faster to the market and making more business. Continuous delivery is exactly about shorter SDLC.

Code Making Money

Bringing the code in production makes money, instead of waiting to be deployed. Any business who uses software wants to put it work at their advantage and to make their stakeholders life easier. Continuous delivery means that code can be delivered at any time.

Retain Talent

Happy developers stay more at the company. Why? Because when you can release them from manual tasks they can focus on important projects and be alert on solving problems. CD fosters a collaborative engineering that appeals to developers across the world.

Higher Code Quality

Since testing is automated, errors are detected far more in advance, giving the opportunity to fix them way before the deployment. Developers will cooperate better with Ops teams due to these automations and constant feedback.

Continuous Delivery Tools

CD – continuous delivery tools are numerous and diverse. The continuous delivery pipeline includes a set of sub-processes that require each indivodually different toos. In the following table we willhiglight a few of the more frequent CD tools.

Software Containers:

  • JBoss
  • Tomcat
  • HUDSON

Build Tools:

  • Ant
  • Rake
  • Maven

Code Review & Insight tools:

  • Crucible
  • Fisheye

Code Insight:

  • Fisheye

Continuous Integration:

  • GitLab
  • Jenkins
  • AWS Pipeline

Cloud IaaS & PaaS tools:

  • Windows Azure
  • Google App Engine
  • Heroku

DB Management tools:

  • Oracle
  • MySQL
  • SQL Server

Infrastructure Automation:

  • Puppet
  • Chef

Dependency Management:

  • AWS Glue Dependency

Deployment Automation:

  • AWS CodeDeploy
  • Jenkins

Integrated Development Environment (IDE):

  • Eclipse
  • Visual Studio

Issue Tracking:

  • JIRA
  • Mantis

Provisioning tools

Monitoring tools

Testing:

  • Cucumber
  • JMeter
  • Selenium

Version-Control System:

  • GIT
  • SVN/Subversion
  • Perforce