Update ci.yml #10
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: Module Test | |
# Controls when the action will run. | |
on: | |
push: | |
branches: [ release ] | |
pull_request: | |
branches: [ release ] | |
jobs: | |
RunTests: | |
strategy: | |
fail-fast: false | |
matrix: | |
MATLABVersion: [R2021a,R2021b,R2022a,R2022b,R2023a,R2023b] | |
runs-on: ubuntu-latest | |
steps: | |
# Checks-out your repository | |
- uses: actions/checkout@v3 | |
- 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: Statistics_and_Machine_Learning_Toolbox Econometrics_Toolbox Simulink | |
# 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@v3.1.3 | |
with: | |
name: TestResults | |
path: ./SoftwareTests/TestResults_${{ matrix.MATLABVersion }}.txt | |
CreateBadge: | |
if: ${{ always() }} | |
needs: [RunTests] | |
strategy: | |
fail-fast: false | |
runs-on: ubuntu-latest | |
steps: | |
# Checks-out your repository | |
- uses: actions/checkout@v3 | |
# Sets up R2023b | |
- name: Setup MATLAB | |
uses: matlab-actions/setup-matlab@v1 | |
with: | |
release: R2023b | |
# Download the test results from artifact | |
- name: Download TestResults | |
uses: actions/download-artifact@v2.1.1 | |
with: | |
name: TestResults | |
path: ./SoftwareTests/ | |
# Create the test results badge | |
- name: Run CreateBadge | |
uses: matlab-actions/run-command@v1 | |
with: | |
command: openProject(pwd); CreateBadge; | |
# 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 |