Run MATLAB Tests and Generate MEX files on GitHub-Hosted Runner #252
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Run MATLAB Tests and Generate MEX files on GitHub-Hosted Runner | |
on: | |
pull_request: | |
types: [opened, reopened, review_requested] | |
schedule: | |
- cron: '25 21 * * 2,5' | |
workflow_dispatch: | |
jobs: | |
compatability: | |
name: Legacy & OS Compatability Syntax Tests | |
strategy: | |
matrix: | |
platform: [ubuntu-latest, windows-latest, macos-latest] | |
release: [R2021a] | |
runs-on: ${{ matrix.platform }} | |
steps: | |
- name: Check out repository | |
uses: actions/checkout@v4 | |
- name: Set up MATLAB | |
uses: matlab-actions/setup-matlab@v2 | |
with: | |
release: ${{matrix.release}} | |
products: Signal_Processing_Toolbox Parallel_Computing_Toolbox | |
- name: Run Tests on Legacy version | |
uses: matlab-actions/run-command@v2 | |
with: | |
command: | | |
setup cache; addpath build; | |
[res, suite, runner] = runProjectTests("verbosity", "Verbose"), | |
i = find([res.Failed]); res(i).Name, | |
rep = arrayfun(@(r) r.Details.DiagnosticRecord.Report, res(i), 'UniformOutput', false); | |
rep{:} | |
disp("Attempting retry of "+nnz(i)+" failed jobs."); | |
res(i) = runner.run(suite(i)); | |
rep = arrayfun(@(r) r.Details.DiagnosticRecord.Report, res(i), 'UniformOutput', false); | |
rep{:} | |
assertSuccess(res); | |
- name: Upload MEX files | |
uses: actions/upload-artifact@v4 | |
with: | |
name: MEX-files-${{runner.os}} | |
path: bin/*.mex* | |