Skip to content
matlab-actions

GitHub Action

Run MATLAB Command

v2.1.1 Latest version

Run MATLAB Command

matlab-actions

Run MATLAB Command

Run MATLAB scripts, functions, and statements

Installation

Copy and paste the following snippet into your .yml file.

              

- name: Run MATLAB Command

uses: matlab-actions/run-command@v2.1.1

Learn more about this action in matlab-actions/run-command

Choose a version

Action for Running MATLAB Commands

The Run MATLAB Command action enables you to execute MATLAB® scripts, functions, and statements on a self-hosted or GitHub®-hosted runner. The action uses the topmost MATLAB version on the system path.

Examples

Use the Run MATLAB Command action to run MATLAB scripts, functions, and statements. You can use this action to flexibly customize your test run or add a step in MATLAB to your workflow.

Run MATLAB Script on Self-Hosted Runner

Use a self-hosted runner to run the commands in a file named myscript.m in the root of your repository.

name: Run MATLAB Script on Self-Hosted Runner
on: [push]
jobs:
  my-job:
    name: Run MATLAB Script
    runs-on: self-hosted
    steps:
      - name: Check out repository
        uses: actions/checkout@v4
      - name: Run script
        uses: matlab-actions/run-command@v2
        with:
          command: myscript

Run MATLAB Commands on GitHub-Hosted Runner

Before you run MATLAB code or Simulink® models on a GitHub-hosted runner, first use the Setup MATLAB action. The action sets up your specified MATLAB release (R2021a or later) on a Linux®, Windows®, or macOS runner. If you do not specify a release, the action sets up the latest release of MATLAB.

For example, set up the latest release of MATLAB on a GitHub-hosted runner, and then use the Run MATLAB Command action to execute your MATLAB commands.

name: Run MATLAB Commands on GitHub-Hosted Runner
on: [push]
jobs:
  my-job:
    name: Run MATLAB Commands
    runs-on: ubuntu-latest
    steps:
      - name: Check out repository
        uses: actions/checkout@v4
      - name: Set up MATLAB
        uses: matlab-actions/setup-matlab@v2
      - name: Run commands
        uses: matlab-actions/run-command@v2
        with:
          command: results = runtests, assertSuccess(results);

Run MATLAB Command

When you define your workflow in the .github/workflows directory of your repository, specify the Run MATLAB Command action as matlab-actions/run-command@v2. The action requires an input and also accepts an optional input.

Input Description
command

(Required) Script, function, or statement to execute. If the value of command is the name of a MATLAB script or function, do not specify the file extension. If you specify more than one script, function, or statement, use a comma or semicolon to separate them.

MATLAB exits with exit code 0 if the specified script, function, or statement executes successfully without error. Otherwise, MATLAB terminates with a nonzero exit code, which causes the action to fail. To fail the action in certain conditions, use the assert or error function.

Example: command: myscript
Example: command: results = runtests, assertSuccess(results);

startup-options

(Optional) MATLAB startup options, specified as a list of options separated by spaces. For more information about startup options, see Commonly Used Startup Options.

Using this input to specify the -batch or -r option is not supported.

Example: startup-options: -nojvm
Example: startup-options: -nojvm -logfile output.log

When you use this action, all of the required files must be on the MATLAB search path. If your script or function is not in the root of your repository, you can use the addpath, cd, or run function to put it on the path. For example, to run myscript.m in a folder named myfolder located in the root of the repository, you can specify command like this:

command: addpath("myfolder"), myscript

Notes

  • By default, when you use the Run MATLAB Command action, the root of your repository serves as the MATLAB startup folder. To run your MATLAB commands using a different folder, include the -sd startup option or the cd command in the action.
  • In MATLAB R2019a and later, the Run MATLAB Command action uses the -batch option to start MATLAB. Preferences do not persist across different MATLAB sessions launched with the -batch option. To run code that requires the same preferences, use a single action.
  • When you use the Run MATLAB Command action, you execute third-party code that is licensed under separate terms.

See Also

Contact Us

If you have any questions or suggestions, please contact MathWorks® at continuous-integration@mathworks.com.