Merge commit '45cfb06e67be7fc91d9f41c0708bff6a22c625ee' #16
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: MATLAB Build | |
# Controls when the action will run. | |
on: | |
push: | |
branches: [ release ] | |
pull_request: | |
branches: [ release ] | |
workflow_dispatch: | |
# Add permission to write GitHub pages | |
permissions: | |
contents: write | |
pages: write | |
id-token: write | |
jobs: | |
test: | |
strategy: | |
fail-fast: false | |
matrix: | |
MATLABVersion: [R2024a,R2024b] | |
runs-on: ubuntu-latest | |
steps: | |
# Checks-out your repository | |
- uses: actions/checkout@v4 | |
# Sets up a display server | |
- name: Start display server | |
if: ${{ always() }} | |
run: | | |
sudo apt-get install xvfb | |
Xvfb :99 & | |
echo "DISPLAY=:99" >> $GITHUB_ENV | |
# Sets up MATLAB | |
- name: Setup MATLAB | |
uses: matlab-actions/setup-matlab@v2 | |
with: | |
release: ${{ matrix.MATLABVersion }} | |
products: MATLAB Statistics_and_Machine_Learning_Toolbox Econometrics_Toolbox Deep_Learning_Toolbox Parallel_Computing_Toolbox Curve_Fitting_Toolbox | |
# List required products above in the format shown (and uncomment them) | |
# List of product strings: | |
# Simulink | |
# Statistics_and_Machine_Learning_Toolbox | |
# Simulink_Coder | |
# Econometrics_Toolbox | |
# Deep_Learning_Toolbox | |
# Run all the tests | |
- name: Run SmokeTests | |
uses: matlab-actions/run-command@v2 | |
with: | |
command: openProject(pwd); RunAllTests; | |
# Upload the test results as artifact | |
- name: Upload TestResults | |
if: ${{ always() }} | |
uses: actions/upload-artifact@v4 | |
with: | |
name: TestResults_${{ matrix.MATLABVersion }} | |
path: ./public/* | |
overwrite: true | |
badge: | |
if: ${{ always() }} | |
needs: [test] | |
strategy: | |
fail-fast: false | |
runs-on: ubuntu-latest | |
steps: | |
# Checks-out your repository | |
- uses: actions/checkout@v4 | |
# Sets up R2023b | |
- name: Setup MATLAB | |
uses: matlab-actions/setup-matlab@v2 | |
with: | |
release: R2024b | |
# Download the test results from artifact | |
- name: Download All TestResults | |
uses: actions/download-artifact@v4 | |
with: | |
path: public | |
pattern: TestResults_* | |
merge-multiple: true | |
# Create the test results badge | |
- name: Run PostSmokeTest | |
uses: matlab-actions/run-command@v2 | |
with: | |
command: openProject(pwd); PostSmokeTest; | |
# Deploy reports to GitHub pages | |
- name: Setup Pages | |
uses: actions/configure-pages@v5 | |
- name: Upload pages artifact | |
uses: actions/upload-pages-artifact@v3 | |
with: | |
path: public | |
- name: Deploy to GitHub Pages | |
id: deployment | |
uses: actions/deploy-pages@v4 | |
# Commit the JSON for the MATLAB releases badge | |
- name: Commit changed files | |
continue-on-error: true | |
run: | | |
git config user.name "${{ github.workflow }} by ${{ github.actor }}" | |
git config user.email "<>" | |
git pull | |
git add Images/TestedWith.json | |
git commit Images/TestedWith.json -m "Update CI badges ${{ github.ref_name }}" | |
git fetch | |
git push |