CI/CD for MuleSoft deployments

  • Written By Naresh Manthrabuddi
  • 16/04/2019

Applying a CI/CD approach in developing code for MuleSoft environments brings 2x faster deployment times and better code quality. Let’s start by quickly explaining what is CI/CD.

Simply put, CI/CD is an automated process for building, testing and deploying code:

Continuous Integration (CI): is a development practice where developers integrate code into a shared repository frequently, preferably several times a day. Each integration is verified by an automated build and automated unit testing.

Continuous Delivery (CD): is the ability to get changes (Features, Configuration changes, Bug fixes, Experiments) into production or into the hands of users safely and quickly in a sustainable way.  

Why adopt a CI/CD approach

CI/CD is applied during deployment and maintenance to optimise the process of code development and deployment to address delays and errors caused by more traditional approaches that involved a lot of manual work performed in isolation:

  • Testing and deployment are isolated activities performed after design-build.
  • More time consumed for the build cycles.
  • Team members spend a significant amount of time in designing, testing and deploying.
  • Manual code deployment leads to human errors in production.
  • Code Analysis and Quality Checks become tedious tasks.

Interested in MuleSoft? Get in touch

What are the benefits

Working extensively within numerous MuleSoft Anypoint Platform environments and projects we have adopted a CI/CD approach quite early in the game. The benefits we have seen are significant both for the development teams and the end users, with improvements in effort, time and code quality being the most substantial:

  • The time from deciding that we need to make a change to have it in production is called “Cycle Time”. This is a vital metric for any project.
  • Lower risk: The introduction of automated processes reduces manual involvement and consequently human error.
  • Faster releases: automation and smaller increments of change allow code to be released much faster.
  • Improved testability: CI/CD enables smaller, specific changes to the code making testing much more effective.
  • Shorter mean time to repair (MTTR): time spent on identifying, investigating and fixing errors is significantly reduced
  • Improved usability: end-user involvement and feedback during continuous development leads to usability improvements

The compound effect of adopting a CI/CD approach is that teams have more time to focus on new work because they have fewer late-cycle defects taking up their time.

How to create a CI/CD solution

There are plenty of open source tools that can be used in a production environment for Anypoint Platform. We have found the following to be the most effective for ours:

If you would like to find out more about how CI/CD could help you automate process building, testing and deploying code, do give us a call at +44 (0)203 475 7980 or email us at marketing@whishworks.com

Other useful links:

API reusability – why does it matter?

API recipes with MuleSoft Anypoint Platform

Customer success stories

Latest Insights

Application Integration
Blogs

What is Application Integration?

Application integration helps close the gap between existing on-site systems and the ever-evolving cloud-based enterprise applications.

Coforge Salesforce High Velocity Sales
Blogs

Enabling sales with Salesforce High Velocity Sales

What exactly High Velocity Sales is, how it can benefit your business and how to enable it.

CRISP-DM : ANALYTICAL FRAMEWORK
Blogs

Using the CRISP-DM framework for data driven projects

Learn how CRISP-DM can facilitate the planning, organising, and implementing process of data-driven projects.