19
19
20
20
jobs :
21
21
build :
22
- name : Build and Test
22
+ name : Test
23
23
strategy :
24
24
matrix :
25
- os : [ubuntu-latest ]
25
+ os : [ubuntu-22.04 ]
26
26
scala : [2.13, 2.12, 3]
27
27
java : [temurin@8, temurin@11, temurin@17]
28
28
project : [rootJS, rootJVM, rootNative]
@@ -46,14 +46,14 @@ jobs:
46
46
runs-on : ${{ matrix.os }}
47
47
timeout-minutes : 60
48
48
steps :
49
- - name : Install sbt
50
- uses : sbt/setup-sbt@v1
51
-
52
49
- name : Checkout current branch (full)
53
50
uses : actions/checkout@v4
54
51
with :
55
52
fetch-depth : 0
56
53
54
+ - name : Setup sbt
55
+ uses : sbt/setup-sbt@v1
56
+
57
57
- name : Setup Java (temurin@8)
58
58
id : setup-java-temurin-8
59
59
if : matrix.java == 'temurin@8'
97
97
run : sbt githubWorkflowCheck
98
98
99
99
- name : Check headers
100
- if : matrix.java == 'temurin@8' && matrix.os == 'ubuntu-latest '
100
+ if : matrix.java == 'temurin@8' && matrix.os == 'ubuntu-22.04 '
101
101
run : sbt 'project ${{ matrix.project }}' '++ ${{ matrix.scala }}' headerCheckAll
102
102
103
103
- name : scalaJSLink
@@ -112,11 +112,11 @@ jobs:
112
112
run : sbt 'project ${{ matrix.project }}' '++ ${{ matrix.scala }}' test
113
113
114
114
- name : Check binary compatibility
115
- if : matrix.java == 'temurin@8' && matrix.os == 'ubuntu-latest '
115
+ if : matrix.java == 'temurin@8' && matrix.os == 'ubuntu-22.04 '
116
116
run : sbt 'project ${{ matrix.project }}' '++ ${{ matrix.scala }}' mimaReportBinaryIssues
117
117
118
118
- name : Generate API documentation
119
- if : matrix.java == 'temurin@8' && matrix.os == 'ubuntu-latest '
119
+ if : matrix.java == 'temurin@8' && matrix.os == 'ubuntu-22.04 '
120
120
run : sbt 'project ${{ matrix.project }}' '++ ${{ matrix.scala }}' doc
121
121
122
122
- name : Make target directories
@@ -140,18 +140,18 @@ jobs:
140
140
if : github.event_name != 'pull_request' && (startsWith(github.ref, 'refs/tags/v') || github.ref == 'refs/heads/staging/5.0')
141
141
strategy :
142
142
matrix :
143
- os : [ubuntu-latest ]
143
+ os : [ubuntu-22.04 ]
144
144
java : [temurin@8]
145
145
runs-on : ${{ matrix.os }}
146
146
steps :
147
- - name : Install sbt
148
- uses : sbt/setup-sbt@v1
149
-
150
147
- name : Checkout current branch (full)
151
148
uses : actions/checkout@v4
152
149
with :
153
150
fetch-depth : 0
154
151
152
+ - name : Setup sbt
153
+ uses : sbt/setup-sbt@v1
154
+
155
155
- name : Setup Java (temurin@8)
156
156
id : setup-java-temurin-8
157
157
if : matrix.java == 'temurin@8'
@@ -310,18 +310,18 @@ jobs:
310
310
if : github.event.repository.fork == false && github.event_name != 'pull_request'
311
311
strategy :
312
312
matrix :
313
- os : [ubuntu-latest ]
313
+ os : [ubuntu-22.04 ]
314
314
java : [temurin@8]
315
315
runs-on : ${{ matrix.os }}
316
316
steps :
317
- - name : Install sbt
318
- uses : sbt/setup-sbt@v1
319
-
320
317
- name : Checkout current branch (full)
321
318
uses : actions/checkout@v4
322
319
with :
323
320
fetch-depth : 0
324
321
322
+ - name : Setup sbt
323
+ uses : sbt/setup-sbt@v1
324
+
325
325
- name : Setup Java (temurin@8)
326
326
id : setup-java-temurin-8
327
327
if : matrix.java == 'temurin@8'
@@ -367,22 +367,63 @@ jobs:
367
367
modules-ignore : rootjs_2.13 rootjs_2.12 rootjs_3 docs_2.13 docs_2.12 docs_3 rootjvm_2.13 rootjvm_2.12 rootjvm_3 rootnative_2.13 rootnative_2.12 rootnative_3
368
368
configs-ignore : test scala-tool scala-doc-tool test-internal
369
369
370
- site :
371
- name : Generate Site
370
+ coverage :
371
+ name : Run Test Coverage and Upload
372
+ if : github.ref == 'refs/heads/staging/5.0' || (github.event_name == 'pull_request' && github.base_ref == 'staging/5.0')
372
373
strategy :
373
374
matrix :
374
- os : [ubuntu-latest]
375
+ os : [ubuntu-22.04]
376
+ scala : [2.13]
375
377
java : [temurin@11]
376
378
runs-on : ${{ matrix.os }}
377
379
steps :
378
- - name : Install sbt
380
+ - name : Checkout current branch (fast)
381
+ uses : actions/checkout@v4
382
+
383
+ - name : Setup sbt
379
384
uses : sbt/setup-sbt@v1
380
385
386
+ - name : Setup Java (temurin@11)
387
+ id : setup-java-temurin-11
388
+ if : matrix.java == 'temurin@11'
389
+ uses : actions/setup-java@v4
390
+ with :
391
+ distribution : temurin
392
+ java-version : 11
393
+ cache : sbt
394
+
395
+ - name : sbt update
396
+ if : matrix.java == 'temurin@11' && steps.setup-java-temurin-11.outputs.cache-hit == 'false'
397
+ run : sbt +update
398
+
399
+ - name : Generate coverage report
400
+ run : sbt '++ ${{ matrix.scala }}' coverage 'parsley / test' 'parsleyDebug / test' coverageReport
401
+
402
+ - name : Upload coverage to Code Climate
403
+ env :
404
+ CC_TEST_REPORTER_ID : c1f669dece75a1d69bf0dc45a682d64837badc112b8098271ccc0dca1bbc7a09
405
+
406
+ with :
407
+ coverageLocations : |
408
+ ${{github.workspace}}/parsley/jvm/target/scala-2.13/coverage-report/cobertura.xml:cobertura
409
+ ${{github.workspace}}/parsley-debug/jvm/target/scala-2.13/coverage-report/cobertura.xml:cobertura
410
+
411
+ site :
412
+ name : Generate Site
413
+ strategy :
414
+ matrix :
415
+ os : [ubuntu-22.04]
416
+ java : [temurin@11]
417
+ runs-on : ${{ matrix.os }}
418
+ steps :
381
419
- name : Checkout current branch (full)
382
420
uses : actions/checkout@v4
383
421
with :
384
422
fetch-depth : 0
385
423
424
+ - name : Setup sbt
425
+ uses : sbt/setup-sbt@v1
426
+
386
427
- name : Setup Java (temurin@8)
387
428
id : setup-java-temurin-8
388
429
if : matrix.java == 'temurin@8'
0 commit comments