Continuous Integration

 

Continuous Integration with MATLAB and Simulink

Automatically build, test, package, and deploy MATLAB code and Simulink models

With continuous integration (CI), you can improve the quality of your code and models, collaborate with teams, and detect integration issues early and trace them to where they were introduced.

Use CI to automatically test and verify MATLAB® code and Simulink® models, build MEX files, generate code, and package toolboxes or libraries for deployment. These capabilities enable your team to adopt and adhere to agile development practices throughout your development lifecycle.

You can run MATLAB and Simulink on your own CI server or use a cloud-hosted CI service if your project is shared publicly.

Use MATLAB and Simulink for Continuous Integration

continuous integration example pipeline

Example Pipeline

Run MATLAB and Simulink on Your Own CI Server

Run CI on your own automation server to control where your code runs, when it runs, and what products are used, including MATLAB and Simulink code generation and compiler products. Manage your CI server on-premises or in the cloud.

Note: Contact the MathWorks CI team if you want to run CI on multiple hosts or in the cloud. Transformation products, such as MathWorks coder and compiler products, may require Client Access Licenses (CAL).


Run MATLAB in a Cloud-Hosted CI Service for Projects Shared Publicly

Use MATLAB in Azure® DevOps, CircleCI®, GitHub® Actions, or Travis CI® with your GitHub repo. These cloud-hosted CI services manage your CI pipeline. They can build MEX files, run tests, package toolboxes, and update code-quality badges on GitHub. The service provides MATLAB R2020a and later releases of MATLAB, Simulink, and most add-on products.

Note: MATLAB, Simulink, and most add-on products are available at no additional cost for batch-use-only in Azure DevOps, CircleCI, GitHub® Actions, and Travis CI. This service excludes specific transformation programs, such as MathWorks coder and compiler products, as noted on the Add-On Product Requirements & Platform Availability page.