Skip to content

Commit 9caa964

Browse files
committed
ci: control fanout
1 parent 68f8a90 commit 9caa964

File tree

1 file changed

+44
-18
lines changed

1 file changed

+44
-18
lines changed

.github/workflows/ci.yml

Lines changed: 44 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -19,29 +19,17 @@ concurrency:
1919

2020
jobs:
2121

22-
matlab:
22+
matlab-at-least-r2024a:
2323
timeout-minutes: 15
2424
runs-on: ${{ matrix.os }}
2525

2626
strategy:
2727
matrix:
28-
os: [ubuntu-22.04, windows-2022]
29-
release: [R2022a, R2022b, R2023a, R2023b, R2024a, R2024b, R2025a]
28+
os: [ubuntu-22.04, windows-2022, macos-latest]
29+
release: [R2024a, R2024b, R2025a]
3030
# on Linux, even R2025a needs GCC 10.x and hence Github Actions runner ubuntu-22.04.
31-
# R2021a...R2022a officially need Ubuntu 20.04,
32-
# which is no longer available on Github Actions
33-
include:
34-
- os: macos-latest
35-
release: R2025a
36-
- os: macos-latest
37-
release: R2024b
38-
- os: macos-latest
39-
release: R2024a
40-
- os: macos-latest
41-
release: R2023b
42-
# macOS R2023b to be compatible with Xcode version on Github Actions runner
43-
44-
31+
# R2021a...R2022a officially need Ubuntu 20.04, which is no longer available on Github Actions
32+
# macOS >= R2023b to be compatible with Xcode version on Github Actions runner
4533

4634
steps:
4735
- uses: actions/checkout@v4
@@ -79,7 +67,45 @@ jobs:
7967
tasks: test_exe
8068

8169

82-
matlab-older-than-R2022a:
70+
matlab:
71+
needs: matlab-at-least-r2024a
72+
timeout-minutes: 15
73+
runs-on: ${{ matrix.os }}
74+
75+
strategy:
76+
matrix:
77+
os: [ubuntu-22.04]
78+
release: [R2022a, R2022b, R2023a, R2023b]
79+
80+
steps:
81+
- uses: actions/checkout@v4
82+
83+
- uses: ./.github/workflows/composite-install-matlab
84+
85+
- name: Fortran FC
86+
if: runner.os == 'macOS'
87+
run: echo "FC=gfortran-14" >> $GITHUB_ENV
88+
89+
- name: Matlab tell External Language Interface versions
90+
uses: matlab-actions/run-command@v2
91+
with:
92+
command: stdlib.platform_tell()
93+
94+
- name: Non-MEX tests
95+
uses: ./.github/workflows/composite-nomex
96+
97+
- name: Exe Test (legacy)
98+
if: ${{ matrix.release >= 'R2023a' && matrix.release < 'R2024b' }}
99+
uses: matlab-actions/run-build@v2
100+
with:
101+
startup-options: -logfile ${{ matrix.release }}-${{ runner.os }}-test.log
102+
tasks: test_exe
103+
104+
105+
106+
matlab-less-than-R2022a:
107+
needs: matlab-at-least-r2024a
108+
83109
timeout-minutes: 15
84110
runs-on: ${{ matrix.os }}
85111

0 commit comments

Comments
 (0)