Skip to content

Commit 678dc2f

Browse files
committed
add circleci test splitting workflow and update releases
1 parent 864d138 commit 678dc2f

File tree

6 files changed

+61
-15
lines changed

6 files changed

+61
-15
lines changed

.circleci/CrossPlatformBuilder.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -48,4 +48,4 @@ workflows:
4848
matrix:
4949
parameters:
5050
os: [linux, macos, windows]
51-
release: ["R2024b", "R2025a"]
51+
release: ["R2025a", "R2025b"]

.circleci/TestSplitting.yml

Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,46 @@
1+
version: 2.1
2+
orbs:
3+
matlab: mathworks/matlab@1
4+
win: circleci/windows@5
5+
6+
# Define the execution environments for different operating systems
7+
executors:
8+
linux:
9+
machine:
10+
image: default
11+
macos:
12+
macos:
13+
xcode: 15.4.0
14+
windows:
15+
win/default
16+
17+
jobs:
18+
split-test:
19+
parameters:
20+
os:
21+
type: executor
22+
executor: << parameters.os >>
23+
steps:
24+
- checkout
25+
26+
# Install MATLAB and required products
27+
- matlab/install:
28+
products: >
29+
MATLAB_Compiler_SDK
30+
MATLAB_Test
31+
32+
# Builds Python package from MATLAB function
33+
- matlab/run-build:
34+
tasks: mex buildPythonPackage
35+
36+
- - matlab/run-tests:
37+
select-by-name: $(circleci tests glob "tests/**/*.m" | circleci tests split | awk -F'[\\\\/.]' '{print $(NF-1) "/*"}')
38+
39+
workflows:
40+
test-splitting-build:
41+
jobs:
42+
# A job will run for each OS present in the matrix
43+
- split-test:
44+
matrix:
45+
parameters:
46+
os: [linux, macos, windows]

.github/workflows/CrossPlatformBuilder.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ jobs:
2020
strategy:
2121
matrix:
2222
os: [ubuntu-latest, windows-latest, macos-latest]
23-
release: [R2024b, R2025a]
23+
release: [R2025a, R2025b]
2424

2525
# The type of runner that the job will run on
2626
runs-on: ${{ matrix.os }}

AzureDevOps/CrossPlatformBuilder.yml

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -3,24 +3,24 @@ jobs:
33
# Matrix strategy to run builds across different OS and MATLAB release combinations
44
strategy:
55
matrix:
6-
linux-R2024b:
7-
imageName: ubuntu-latest
8-
release: R2024b
96
linux-R2025a:
107
imageName: ubuntu-latest
118
release: R2025a
12-
mac-R2024b:
13-
imageName: macOS-latest
14-
release: R2024b
9+
linux-R2025b:
10+
imageName: ubuntu-latest
11+
release: R2025b
1512
mac-R2025a:
1613
imageName: macOS-latest
1714
release: R2025a
18-
windows-R2024b:
19-
imageName: windows-latest
20-
release: R2024b
15+
mac-R2025b:
16+
imageName: macOS-latest
17+
release: R2025b
2118
windows-R2025a:
2219
imageName: windows-latest
23-
release: R2025a
20+
release: R2025a
21+
windows-R2025b:
22+
imageName: windows-latest
23+
release: R2025b
2424
pool:
2525
vmImage: $(imageName)
2626
steps:

Jenkins/CrossPlatformBuilder/Jenkinsfile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ pipeline {
1111
}
1212
axis {
1313
name 'RELEASE'
14-
values 'R2024b', 'R2025a'
14+
values 'R2025a', 'R2025b'
1515
}
1616
}
1717
stages {

Jenkins/ToolboxDistribution/Jenkinsfile

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ pipeline {
1616
agent { label "${OS}" }
1717

1818
tools {
19-
matlab 'R2024b'
19+
matlab 'R2025a'
2020
}
2121

2222
steps {
@@ -44,7 +44,7 @@ pipeline {
4444
}
4545

4646
tools {
47-
matlab 'R2024b'
47+
matlab 'R2025a'
4848
}
4949

5050
steps {

0 commit comments

Comments
 (0)