Skip to content

MATLAB matrix build #29497

MATLAB matrix build

MATLAB matrix build #29497

Workflow file for this run

# This workflow runs a matrix build with both versions of setup MATLAB action
name: MATLAB matrix build
# Controls when the action will run.
on:
push:
pull_request:
workflow_dispatch:
jobs:
build-v1:
strategy:
matrix:
# Run this workflow on different os
os: [ubuntu-latest]
fail-fast: false
# The type of runner that the job will run on
runs-on: ${{ matrix.os }}
# Steps represent a sequence of tasks that will be executed as part of the job
steps:
# Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it
- uses: actions/checkout@v4
# Sets up MATLAB on the GitHub Actions runner
- name: Setup MATLAB
uses: matlab-actions/setup-matlab@v1
# Runs a set of commands using the runners shell
- name: Run tests and generate artifacts
uses: matlab-actions/run-tests@v1
with:
source-folder: code
- name: Send mail
if: ${{ failure() }}
uses: dawidd6/action-send-mail@v3
with:
server_address: smtp.gmail.com
server_port: 465
username: ${{ secrets.MAIL_USERNAME }}
password: ${{ secrets.MAIL_PASSWORD }}
subject: ${{ github.job }} job of ${{ github.repository }} has ${{ job.status }}
to: ${{ secrets.CI_INTERNAL_EMAIL }}
from: ${{ secrets.MAIL_USERNAME }}
secure: true
body: ${{ github.job }} job in workflow ${{ github.workflow }} of ${{ github.repository }} has ${{ job.status }}
build-v2:
strategy:
matrix:
# Run this workflow on different os
os: [windows-latest, ubuntu-latest, macos-latest, macos-13]
fail-fast: false
# The type of runner that the job will run on
runs-on: ${{ matrix.os }}
env:
MATLAB_LOG_DIR: ${{ github.workspace }}/logs
MW_DIAGNOSTIC_DEST: file
MW_DIAGNOSTIC_SPEC: cppmicroservices::framework.*=all;install.*=all;
MW_VERBOSE_HTTPCLIENT_CORE: 1
# Steps represent a sequence of tasks that will be executed as part of the job
steps:
# Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it
- name: Check out repository
uses: actions/checkout@v4
# Sets up MATLAB on the GitHub Actions runner
- name: Setup MATLAB
uses: matlab-actions/setup-matlab@v2
with:
products: Optimization_Toolbox Curve_Fitting_Toolbox
# Runs a set of commands using the runners shell
- name: Run tests and generate artifacts
uses: matlab-actions/run-tests@v2
with:
source-folder: code
- name: Upload MPM and MATLAB logs
if: ${{ failure() }}
uses: actions/upload-artifact@v4
with:
name: matlab-logs-${{ github.job }}-${{ matrix.os }}
path: ${{ env.MATLAB_LOG_DIR }}
if-no-files-found: ignore
- name: Send mail
if: ${{ failure() }}
uses: dawidd6/action-send-mail@v3
with:
server_address: smtp.gmail.com
server_port: 465
username: ${{ secrets.MAIL_USERNAME }}
password: ${{ secrets.MAIL_PASSWORD }}
subject: ${{ github.job }} job of ${{ github.repository }} has ${{ job.status }}
to: ${{ secrets.CI_INTERNAL_EMAIL }}
from: ${{ secrets.MAIL_USERNAME }}
secure: true
body: ${{ github.job }} job in workflow ${{ github.workflow }} of ${{ github.repository }} has ${{ job.status }}
build-v2-with-cache:
strategy:
matrix:
# Run this workflow on different os
os: [windows-latest, ubuntu-latest, macos-latest, macos-13]
fail-fast: false
# The type of runner that the job will run on
runs-on: ${{ matrix.os }}
env:
MATLAB_LOG_DIR: ${{ github.workspace }}/logs
MW_DIAGNOSTIC_DEST: file
MW_DIAGNOSTIC_SPEC: cppmicroservices::framework.*=all;install.*=all;
MW_VERBOSE_HTTPCLIENT_CORE: 1
# Steps represent a sequence of tasks that will be executed as part of the job
steps:
# Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it
- name: Check out repository
uses: actions/checkout@v4
# Sets up MATLAB on the GitHub Actions runner
- name: Setup MATLAB
uses: matlab-actions/setup-matlab@v2
with:
products: Optimization_Toolbox Curve_Fitting_Toolbox
cache: true
# Runs a set of commands using the runners shell
- name: Run tests and generate artifacts
uses: matlab-actions/run-tests@v2
with:
source-folder: code
- name: Upload MPM and MATLAB logs
if: ${{ failure() }}
uses: actions/upload-artifact@v4
with:
name: matlab-logs-${{ github.job }}-${{ matrix.os }}
path: ${{ env.MATLAB_LOG_DIR }}
if-no-files-found: ignore
- name: Send mail
if: ${{ failure() }}
uses: dawidd6/action-send-mail@v3
with:
server_address: smtp.gmail.com
server_port: 465
username: ${{ secrets.MAIL_USERNAME }}
password: ${{ secrets.MAIL_PASSWORD }}
subject: ${{ github.job }} job of ${{ github.repository }} has ${{ job.status }}
to: ${{ secrets.CI_INTERNAL_EMAIL }}
from: ${{ secrets.MAIL_USERNAME }}
secure: true
body: ${{ github.job }} job in workflow ${{ github.workflow }} of ${{ github.repository }} has ${{ job.status }}