Skip to content

Commit 6efeda7

Browse files
committed
Update workflow
1 parent 4bd6c2a commit 6efeda7

File tree

1 file changed

+154
-25
lines changed

1 file changed

+154
-25
lines changed

.github/workflows/ci.yml

Lines changed: 154 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,7 @@ jobs:
3030
os: [ubuntu-22.04]
3131
scala: [2.13, 3, 2.12]
3232
java: [temurin@8]
33+
project: [rootJS, rootJVM, rootNative]
3334
runs-on: ${{ matrix.os }}
3435
timeout-minutes: 60
3536
steps:
@@ -59,21 +60,29 @@ jobs:
5960

6061
- name: Check headers and formatting
6162
if: matrix.java == 'temurin@8' && matrix.os == 'ubuntu-22.04'
62-
run: sbt '++ ${{ matrix.scala }}' headerCheckAll scalafmtCheckAll 'project /' scalafmtSbtCheck
63+
run: sbt 'project ${{ matrix.project }}' '++ ${{ matrix.scala }}' headerCheckAll scalafmtCheckAll 'project /' scalafmtSbtCheck
64+
65+
- name: scalaJSLink
66+
if: matrix.project == 'rootJS'
67+
run: sbt 'project ${{ matrix.project }}' '++ ${{ matrix.scala }}' Test/scalaJSLinkerResult
68+
69+
- name: nativeLink
70+
if: matrix.project == 'rootNative'
71+
run: sbt 'project ${{ matrix.project }}' '++ ${{ matrix.scala }}' Test/nativeLink
6372

6473
- name: Test
65-
run: sbt '++ ${{ matrix.scala }}' test
74+
run: sbt 'project ${{ matrix.project }}' '++ ${{ matrix.scala }}' test
6675

6776
- name: Check binary compatibility
6877
if: matrix.java == 'temurin@8' && matrix.os == 'ubuntu-22.04'
69-
run: sbt '++ ${{ matrix.scala }}' mimaReportBinaryIssues
78+
run: sbt 'project ${{ matrix.project }}' '++ ${{ matrix.scala }}' mimaReportBinaryIssues
7079

7180
- name: Generate API documentation
7281
if: matrix.java == 'temurin@8' && matrix.os == 'ubuntu-22.04'
73-
run: sbt '++ ${{ matrix.scala }}' doc
82+
run: sbt 'project ${{ matrix.project }}' '++ ${{ matrix.scala }}' doc
7483

7584
- if: matrix.scala == '2.13.16'
76-
run: sbt '++ ${{ matrix.scala }}' docs/mdoc
85+
run: sbt 'project ${{ matrix.project }}' '++ ${{ matrix.scala }}' docs/mdoc
7786

7887
- name: Make target directories
7988
if: github.event_name != 'pull_request' && (startsWith(github.ref, 'refs/tags/v'))
@@ -87,7 +96,7 @@ jobs:
8796
if: github.event_name != 'pull_request' && (startsWith(github.ref, 'refs/tags/v'))
8897
uses: actions/upload-artifact@v4
8998
with:
90-
name: target-${{ matrix.os }}-${{ matrix.java }}-${{ matrix.scala }}
99+
name: target-${{ matrix.os }}-${{ matrix.java }}-${{ matrix.scala }}-${{ matrix.project }}
91100
path: targets.tar
92101

93102
publish:
@@ -121,32 +130,92 @@ jobs:
121130
if: matrix.java == 'temurin@8' && steps.setup-java-temurin-8.outputs.cache-hit == 'false'
122131
run: sbt +update
123132

124-
- name: Download target directories (2.13)
133+
- name: Download target directories (2.13, rootJS)
134+
uses: actions/download-artifact@v4
135+
with:
136+
name: target-${{ matrix.os }}-${{ matrix.java }}-2.13-rootJS
137+
138+
- name: Inflate target directories (2.13, rootJS)
139+
run: |
140+
tar xf targets.tar
141+
rm targets.tar
142+
143+
- name: Download target directories (2.13, rootJVM)
144+
uses: actions/download-artifact@v4
145+
with:
146+
name: target-${{ matrix.os }}-${{ matrix.java }}-2.13-rootJVM
147+
148+
- name: Inflate target directories (2.13, rootJVM)
149+
run: |
150+
tar xf targets.tar
151+
rm targets.tar
152+
153+
- name: Download target directories (2.13, rootNative)
154+
uses: actions/download-artifact@v4
155+
with:
156+
name: target-${{ matrix.os }}-${{ matrix.java }}-2.13-rootNative
157+
158+
- name: Inflate target directories (2.13, rootNative)
159+
run: |
160+
tar xf targets.tar
161+
rm targets.tar
162+
163+
- name: Download target directories (3, rootJS)
164+
uses: actions/download-artifact@v4
165+
with:
166+
name: target-${{ matrix.os }}-${{ matrix.java }}-3-rootJS
167+
168+
- name: Inflate target directories (3, rootJS)
169+
run: |
170+
tar xf targets.tar
171+
rm targets.tar
172+
173+
- name: Download target directories (3, rootJVM)
174+
uses: actions/download-artifact@v4
175+
with:
176+
name: target-${{ matrix.os }}-${{ matrix.java }}-3-rootJVM
177+
178+
- name: Inflate target directories (3, rootJVM)
179+
run: |
180+
tar xf targets.tar
181+
rm targets.tar
182+
183+
- name: Download target directories (3, rootNative)
184+
uses: actions/download-artifact@v4
185+
with:
186+
name: target-${{ matrix.os }}-${{ matrix.java }}-3-rootNative
187+
188+
- name: Inflate target directories (3, rootNative)
189+
run: |
190+
tar xf targets.tar
191+
rm targets.tar
192+
193+
- name: Download target directories (2.12, rootJS)
125194
uses: actions/download-artifact@v4
126195
with:
127-
name: target-${{ matrix.os }}-${{ matrix.java }}-2.13
196+
name: target-${{ matrix.os }}-${{ matrix.java }}-2.12-rootJS
128197

129-
- name: Inflate target directories (2.13)
198+
- name: Inflate target directories (2.12, rootJS)
130199
run: |
131200
tar xf targets.tar
132201
rm targets.tar
133202
134-
- name: Download target directories (3)
203+
- name: Download target directories (2.12, rootJVM)
135204
uses: actions/download-artifact@v4
136205
with:
137-
name: target-${{ matrix.os }}-${{ matrix.java }}-3
206+
name: target-${{ matrix.os }}-${{ matrix.java }}-2.12-rootJVM
138207

139-
- name: Inflate target directories (3)
208+
- name: Inflate target directories (2.12, rootJVM)
140209
run: |
141210
tar xf targets.tar
142211
rm targets.tar
143212
144-
- name: Download target directories (2.12)
213+
- name: Download target directories (2.12, rootNative)
145214
uses: actions/download-artifact@v4
146215
with:
147-
name: target-${{ matrix.os }}-${{ matrix.java }}-2.12
216+
name: target-${{ matrix.os }}-${{ matrix.java }}-2.12-rootNative
148217

149-
- name: Inflate target directories (2.12)
218+
- name: Inflate target directories (2.12, rootNative)
150219
run: |
151220
tar xf targets.tar
152221
rm targets.tar
@@ -208,7 +277,7 @@ jobs:
208277
- name: Submit Dependencies
209278
uses: scalacenter/sbt-dependency-submission@v2
210279
with:
211-
modules-ignore: root_2.13 root_3 root_2.12 docs_2.13 docs_3 docs_2.12
280+
modules-ignore: rootjs_2.13 rootjs_3 rootjs_2.12 docs_2.13 docs_3 docs_2.12 rootjvm_2.13 rootjvm_3 rootjvm_2.12 rootnative_2.13 rootnative_3 rootnative_2.12
212281
configs-ignore: test scala-tool scala-doc-tool test-internal
213282

214283
docs:
@@ -222,32 +291,92 @@ jobs:
222291
java: [temurin@8]
223292
runs-on: ${{ matrix.os }}
224293
steps:
225-
- name: Download target directories (2.13)
294+
- name: Download target directories (2.13, rootJS)
295+
uses: actions/download-artifact@v4
296+
with:
297+
name: target-${{ matrix.os }}-${{ matrix.java }}-2.13-rootJS
298+
299+
- name: Inflate target directories (2.13, rootJS)
300+
run: |
301+
tar xf targets.tar
302+
rm targets.tar
303+
304+
- name: Download target directories (2.13, rootJVM)
305+
uses: actions/download-artifact@v4
306+
with:
307+
name: target-${{ matrix.os }}-${{ matrix.java }}-2.13-rootJVM
308+
309+
- name: Inflate target directories (2.13, rootJVM)
310+
run: |
311+
tar xf targets.tar
312+
rm targets.tar
313+
314+
- name: Download target directories (2.13, rootNative)
315+
uses: actions/download-artifact@v4
316+
with:
317+
name: target-${{ matrix.os }}-${{ matrix.java }}-2.13-rootNative
318+
319+
- name: Inflate target directories (2.13, rootNative)
320+
run: |
321+
tar xf targets.tar
322+
rm targets.tar
323+
324+
- name: Download target directories (3, rootJS)
325+
uses: actions/download-artifact@v4
326+
with:
327+
name: target-${{ matrix.os }}-${{ matrix.java }}-3-rootJS
328+
329+
- name: Inflate target directories (3, rootJS)
330+
run: |
331+
tar xf targets.tar
332+
rm targets.tar
333+
334+
- name: Download target directories (3, rootJVM)
335+
uses: actions/download-artifact@v4
336+
with:
337+
name: target-${{ matrix.os }}-${{ matrix.java }}-3-rootJVM
338+
339+
- name: Inflate target directories (3, rootJVM)
340+
run: |
341+
tar xf targets.tar
342+
rm targets.tar
343+
344+
- name: Download target directories (3, rootNative)
345+
uses: actions/download-artifact@v4
346+
with:
347+
name: target-${{ matrix.os }}-${{ matrix.java }}-3-rootNative
348+
349+
- name: Inflate target directories (3, rootNative)
350+
run: |
351+
tar xf targets.tar
352+
rm targets.tar
353+
354+
- name: Download target directories (2.12, rootJS)
226355
uses: actions/download-artifact@v4
227356
with:
228-
name: target-${{ matrix.os }}-${{ matrix.java }}-2.13
357+
name: target-${{ matrix.os }}-${{ matrix.java }}-2.12-rootJS
229358

230-
- name: Inflate target directories (2.13)
359+
- name: Inflate target directories (2.12, rootJS)
231360
run: |
232361
tar xf targets.tar
233362
rm targets.tar
234363
235-
- name: Download target directories (3)
364+
- name: Download target directories (2.12, rootJVM)
236365
uses: actions/download-artifact@v4
237366
with:
238-
name: target-${{ matrix.os }}-${{ matrix.java }}-3
367+
name: target-${{ matrix.os }}-${{ matrix.java }}-2.12-rootJVM
239368

240-
- name: Inflate target directories (3)
369+
- name: Inflate target directories (2.12, rootJVM)
241370
run: |
242371
tar xf targets.tar
243372
rm targets.tar
244373
245-
- name: Download target directories (2.12)
374+
- name: Download target directories (2.12, rootNative)
246375
uses: actions/download-artifact@v4
247376
with:
248-
name: target-${{ matrix.os }}-${{ matrix.java }}-2.12
377+
name: target-${{ matrix.os }}-${{ matrix.java }}-2.12-rootNative
249378

250-
- name: Inflate target directories (2.12)
379+
- name: Inflate target directories (2.12, rootNative)
251380
run: |
252381
tar xf targets.tar
253382
rm targets.tar

0 commit comments

Comments
 (0)