---
schema_version: "1"
id: 4b5db1514146f6408234dab3c386bb31790059191a71ef93395217584e5a01b7
title: Continuous Integration
collection: mulesoft
version: current
locale: en-us
portal_url: https://docs.salesforce.com/mulesoft/current/en-us/mule-runtime/4.11/continuous-integration.md
canonical_url: https://docs.mulesoft.com/mule-runtime/4.11/continuous-integration
source_site: docs.mulesoft.com
content_type: documentation
content_hash: 7a6160bcfb456205636d51e316ece9d1b65401f570a93cb3c2ad49aad8bf26b2
description: MuleSoft Documentation Site
release: "4.11"
latest: false
---
---
product: Mule Runtime
version: 4.11
keywords: build, deploy, test, maven, ci, continuous integration, continuous, integration
---

# Continuous Integration

> For the full documentation index, see: https://docs.mulesoft.com/llms.txt

The need for continuous integration (CI) for a project is very important. By using Maven as your
build tool, you can create a build that gets triggered on every project change, and run all of its
unit and functional tests automatically.

The advantages of CI are:

- Provides early notification of issues in the software development lifecycle.

- Ensures code gets fully tested before release.

- Successfully tested branches ensure better success when merging to the main branch.

## Continuous Integration Objectives

A CI system does all of the following:

1.  Listens for new commits to a project’s source code management system. The CI system watches many
    branches for new commits. You can either use polling to find new commits, or the management
    system can trigger events that inform your program of commits.

2.  Pulls the newest branch into a centralized server.

3.  Creates build jobs on a centralized server.

4.  Runs configurable unit and integration tests on the code base that compile, test, package, and
    deploy the project in a sandbox to ensure the project works correctly.

5.  Stores artifacts in a repository.

6.  Displays the results of each build.

7.  Deploys passing builds to production.

For information about these tools, see their websites.

## MuleSoft CI Tools

You can deploy Mule applications using:

- [The API Manager](https://docs.mulesoft.com/api-manager/latest/getting-started-proxy)

- [The Runtime Manager Agent](https://docs.mulesoft.com/runtime-manager/runtime-manager-agent)

You can create functional tests with [MUnit Unit Testing](https://docs.mulesoft.com/munit/latest/).

The mule-maven-plugin supports deployments to:

- CloudHub

- Runtime Fabric

- On-premises Mule instances

  - Standalone deployment

  - Using Anypoint Runtime Manager REST API

  - Using Runtime Manager agent

For a complete CI example that uses Jenkins and Maven, see the Anypoint Platform Development:
Advanced class on the
[MuleSoft training site](https://trailheadacademy.salesforce.com/products/mulesoft). The training
site also includes related classes and certification exams.

## External CI Tools

Popular CI tools are:

- Jenkins

- Hudson

- TeamCity

- Bamboo

For information about these tools, see their websites.

## Integration Notes

If you’ve chosen to use connectors in your functional test cases, watch out for potential port
conflicts that can occur in a continuous build server.

If your target deployable is a web application and not a Mule application, consider using Junit
Integration Test Runner for running your functional tests and avoiding port conflicts.

## See Also

- [Maven Support in Mule](https://docs.mulesoft.com/mule-runtime/4.11/using-maven-with-mule)

- [MUnit Unit Testing](https://docs.mulesoft.com/munit/latest/)
