41
41
name : ' reports-check'
42
42
path : ' **/build/reports/**'
43
43
44
- ios_watchos :
45
- runs-on : macos-14
44
+ update_api :
45
+ runs-on : ubuntu-latest
46
46
timeout-minutes : 60
47
47
48
48
steps :
@@ -61,17 +61,16 @@ jobs:
61
61
with :
62
62
cache-read-only : ${{ github.ref != 'refs/heads/main' }}
63
63
64
- - name : iOS and watchOS tests
65
- run : ./gradlew iosSimulatorArm64Test iosX64Test watchosSimulatorArm64Test watchosX64Test --parallel --scan
64
+ - name : Update API files
65
+ run : ./gradlew apiDump
66
66
67
- - name : Upload reports
68
- if : failure()
69
- uses : actions/upload-artifact@v4
67
+ - name : Commit updated API files
68
+ uses : stefanzweifel/git-auto-commit-action@v5
70
69
with :
71
- name : ' reports-ios_watchos '
72
- path : ' **/build/reports/** '
70
+ commit_message : Auto-update API files
71
+ file_pattern : arrow-libs/ **/api/*.api
73
72
74
- update_api :
73
+ spotless :
75
74
runs-on : ubuntu-latest
76
75
timeout-minutes : 60
77
76
@@ -91,17 +90,17 @@ jobs:
91
90
with :
92
91
cache-read-only : ${{ github.ref != 'refs/heads/main' }}
93
92
94
- - name : Update API files
95
- run : ./gradlew apiDump
93
+ - name : Apply Spotless rules
94
+ run : ./gradlew spotlessApply
96
95
97
- - name : Commit updated API files
96
+ - name : Commit newly formatted files
98
97
uses : stefanzweifel/git-auto-commit-action@v5
99
98
with :
100
- commit_message : Auto-update API files
101
- file_pattern : arrow-libs/**/api/*.api
99
+ commit_message : Auto-apply Spotless rules
100
+ file_pattern : arrow-libs/**/*.kt
102
101
103
- spotless :
104
- runs-on : ubuntu-latest
102
+ ios_watchos :
103
+ runs-on : macos-14
105
104
timeout-minutes : 60
106
105
107
106
steps :
@@ -120,14 +119,15 @@ jobs:
120
119
with :
121
120
cache-read-only : ${{ github.ref != 'refs/heads/main' }}
122
121
123
- - name : Apply Spotless rules
124
- run : ./gradlew spotlessApply
122
+ - name : iOS and watchOS tests
123
+ run : ./gradlew iosSimulatorArm64Test iosX64Test watchosSimulatorArm64Test watchosX64Test --parallel --scan
125
124
126
- - name : Commit newly formatted files
127
- uses : stefanzweifel/git-auto-commit-action@v5
125
+ - name : Upload reports
126
+ if : failure()
127
+ uses : actions/upload-artifact@v4
128
128
with :
129
- commit_message : Auto-apply Spotless rules
130
- file_pattern : arrow-libs/ **/*.kt
129
+ name : ' reports-ios_watchos '
130
+ path : ' **/build/reports/** '
131
131
132
132
macos_tvos :
133
133
runs-on : macos-14
@@ -326,3 +326,33 @@ jobs:
326
326
with :
327
327
name : ' reports-wasm'
328
328
path : ' **/build/reports/**'
329
+
330
+ android :
331
+ runs-on : ubuntu-latest
332
+ timeout-minutes : 60
333
+
334
+ steps :
335
+ - uses : actions/checkout@v4
336
+ with :
337
+ fetch-depth : 0
338
+
339
+ - name : Set up Java
340
+ uses : actions/setup-java@v4
341
+ with :
342
+ distribution : ' temurin'
343
+ java-version : 17
344
+
345
+ - name : Setup Gradle
346
+ uses : gradle/actions/setup-gradle@v4
347
+ with :
348
+ cache-read-only : ${{ github.ref != 'refs/heads/main' }}
349
+
350
+ - name : Android (release) tests
351
+ run : ./gradlew testReleaseUnitTest
352
+
353
+ - name : Upload reports
354
+ if : failure()
355
+ uses : actions/upload-artifact@v4
356
+ with :
357
+ name : ' reports-wasm'
358
+ path : ' **/build/reports/**'
0 commit comments