Skip to content

Commit c4b75a3

Browse files
committed
Update CI
1 parent f470025 commit c4b75a3

File tree

1 file changed

+124
-11
lines changed

1 file changed

+124
-11
lines changed

.github/workflows/CI.yml

+124-11
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,9 @@ jobs:
1919
permissions:
2020
pull-requests: read
2121
outputs:
22-
groups: ${{ steps.filter.outputs.changes }}
22+
sectors: ${{ steps.filter.outputs.sectors }}
23+
fusiontrees: ${{ steps.filter.outputs.fusiontrees }}
24+
spaces: ${{ steps.filter.outputs.spaces }}
2325
steps:
2426
- uses: actions/checkout@v4
2527
- uses: dorny/paths-filter@v2
@@ -29,21 +31,56 @@ jobs:
2931
sectors:
3032
- 'src/sectors/**'
3133
fusiontrees:
32-
- 'src/sectors/**'
3334
- 'src/fusiontrees/**'
3435
spaces:
3536
- 'src/spaces/**'
3637
37-
test:
38+
test-sectors:
39+
needs: changes
40+
if: ${{ needs.changes.outputs.sectors == 'true' }}
41+
name: "Sectors : Julia ${{ matrix.version }} - ${{ matrix.os }} - ${{ matrix.arch }}"
42+
runs-on: ${{ matrix.os }}
43+
strategy:
44+
fail-fast: false
45+
matrix:
46+
version:
47+
- '1.6' # LTS version
48+
- '1' # automatically expands to the latest stable 1.x release of Julia
49+
os:
50+
- ubuntu-latest
51+
- macOS-latest
52+
- windows-latest
53+
arch:
54+
- x64
55+
- x86
56+
exclude:
57+
- os: macOS-latest
58+
arch: x86
59+
steps:
60+
- uses: actions/checkout@v4
61+
- uses: julia-actions/setup-julia@v1
62+
with:
63+
version: ${{ matrix.version }}
64+
arch: ${{ matrix.arch }}
65+
- uses: julia-actions/cache@v1
66+
- uses: julia-actions/julia-buildpkg@latest
67+
- uses: lkdvos/julia-runtest@main
68+
with:
69+
suffix: "sectors"
70+
env:
71+
JULIA_NUM_THREADS: 4
72+
- uses: julia-actions/julia-processcoverage@v1
73+
- uses: codecov/codecov-action@v3
74+
with:
75+
file: lcov.info
76+
test-spaces:
3877
needs: changes
39-
name: "${{ matrix.group }} : Julia ${{ matrix.version }} - ${{ matrix.os }} - ${{ matrix.arch }}"
78+
if: ${{ needs.changes.outputs.spaces == 'true' }}
79+
name: "Spaces : Julia ${{ matrix.version }} - ${{ matrix.os }} - ${{ matrix.arch }}"
4080
runs-on: ${{ matrix.os }}
4181
strategy:
4282
fail-fast: false
4383
matrix:
44-
group:
45-
- ${{ fromJSON(needs.changes.outputs.groups) }}
46-
- 'tensors'
4784
version:
4885
- '1.6' # LTS version
4986
- '1' # automatically expands to the latest stable 1.x release of Julia
@@ -65,10 +102,85 @@ jobs:
65102
arch: ${{ matrix.arch }}
66103
- uses: julia-actions/cache@v1
67104
- uses: julia-actions/julia-buildpkg@latest
68-
- uses: julia-actions/julia-runtest@latest
105+
- uses: lkdvos/julia-runtest@main
106+
with:
107+
suffix: "spaces"
108+
env:
109+
JULIA_NUM_THREADS: 4
110+
- uses: julia-actions/julia-processcoverage@v1
111+
- uses: codecov/codecov-action@v3
112+
with:
113+
file: lcov.info
114+
test-fusiontrees:
115+
needs: changes
116+
if: ${{ needs.changes.outputs.fusiontrees == 'true' }}
117+
name: "Fusiontrees : Julia ${{ matrix.version }} - ${{ matrix.os }} - ${{ matrix.arch }}"
118+
runs-on: ${{ matrix.os }}
119+
strategy:
120+
fail-fast: false
121+
matrix:
122+
version:
123+
- '1.6' # LTS version
124+
- '1' # automatically expands to the latest stable 1.x release of Julia
125+
os:
126+
- ubuntu-latest
127+
- macOS-latest
128+
- windows-latest
129+
arch:
130+
- x64
131+
- x86
132+
exclude:
133+
- os: macOS-latest
134+
arch: x86
135+
steps:
136+
- uses: actions/checkout@v4
137+
- uses: julia-actions/setup-julia@v1
138+
with:
139+
version: ${{ matrix.version }}
140+
arch: ${{ matrix.arch }}
141+
- uses: julia-actions/cache@v1
142+
- uses: julia-actions/julia-buildpkg@latest
143+
- uses: lkdvos/julia-runtest@main
144+
with:
145+
suffix: "fusiontrees"
146+
env:
147+
JULIA_NUM_THREADS: 4
148+
- uses: julia-actions/julia-processcoverage@v1
149+
- uses: codecov/codecov-action@v3
150+
with:
151+
file: lcov.info
152+
test:
153+
name: "Tests : Julia ${{ matrix.version }} - ${{ matrix.os }} - ${{ matrix.arch }}"
154+
runs-on: ${{ matrix.os }}
155+
strategy:
156+
fail-fast: false
157+
matrix:
158+
version:
159+
- '1.6' # LTS version
160+
- '1' # automatically expands to the latest stable 1.x release of Julia
161+
os:
162+
- ubuntu-latest
163+
- macOS-latest
164+
- windows-latest
165+
arch:
166+
- x64
167+
- x86
168+
exclude:
169+
- os: macOS-latest
170+
arch: x86
171+
steps:
172+
- uses: actions/checkout@v4
173+
- uses: julia-actions/setup-julia@v1
174+
with:
175+
version: ${{ matrix.version }}
176+
arch: ${{ matrix.arch }}
177+
- uses: julia-actions/cache@v1
178+
- uses: julia-actions/julia-buildpkg@latest
179+
- uses: lkdvos/julia-runtest@main
180+
with:
181+
suffix: "-sectors -spaces -fusiontrees"
69182
env:
70183
JULIA_NUM_THREADS: 4
71-
GROUP: ${{ matrix.group }}
72184
- uses: julia-actions/julia-processcoverage@v1
73185
- uses: codecov/codecov-action@v3
74186
with:
@@ -96,7 +208,8 @@ jobs:
96208
arch: ${{ matrix.arch }}
97209
- uses: julia-actions/cache@v1
98210
- uses: julia-actions/julia-buildpkg@latest
99-
- uses: julia-actions/julia-runtest@latest
211+
- uses: lkdvos/julia-runtest@main
212+
with:
213+
suffix: tensors
100214
env:
101215
JULIA_NUM_THREADS: 4
102-
GROUP: 'tensors'

0 commit comments

Comments
 (0)