|
17 | 17 | outputs:
|
18 | 18 | emulator_jobs_matrix: ${{ steps.dataStep.outputs.emulator_jobs_matrix }}
|
19 | 19 | ios_test_jobs_matrix: ${{ steps.dataStep.outputs.ios_test_jobs_matrix }}
|
| 20 | + macos_test_jobs_matrix: ${{ steps.dataStep.outputs.macos_test_jobs_matrix }} |
| 21 | + tvos_test_jobs_matrix: ${{ steps.dataStep.outputs.tvos_test_jobs_matrix }} |
20 | 22 | js_test_jobs_matrix: ${{ steps.dataStep.outputs.js_test_jobs_matrix }}
|
21 | 23 | jvm_test_jobs_matrix: ${{ steps.dataStep.outputs.jvm_test_jobs_matrix }}
|
22 | 24 | steps:
|
|
34 | 36 | echo "
|
35 | 37 | emulator_jobs_matrix=$(jq -c . < ./build/emulator_jobs_matrix.json)
|
36 | 38 | ios_test_jobs_matrix=$(jq -c . < ./build/ios_test_jobs_matrix.json)
|
| 39 | + macos_test_jobs_matrix=$(jq -c . < ./build/macos_test_jobs_matrix.json) |
| 40 | + tvos_test_jobs_matrix=$(jq -c . < ./build/tvos_test_jobs_matrix.json) |
37 | 41 | js_test_jobs_matrix=$(jq -c . < ./build/js_test_jobs_matrix.json)
|
38 | 42 | jvm_test_jobs_matrix=$(jq -c . < ./build/jvm_test_jobs_matrix.json)
|
39 | 43 | " >> $GITHUB_OUTPUT
|
@@ -141,6 +145,84 @@ jobs:
|
141 | 145 | with:
|
142 | 146 | name: iOS ${{ env.ARCHIVE_KEY }} Firebase Debug Log
|
143 | 147 | path: "**/firebase-debug.log"
|
| 148 | + build-macos: |
| 149 | + needs: jobMatrixSetup |
| 150 | + runs-on: macos-latest |
| 151 | + strategy: |
| 152 | + fail-fast: false |
| 153 | + matrix: ${{ fromJson(needs.jobMatrixSetup.outputs.macos_test_jobs_matrix) }} |
| 154 | + steps: |
| 155 | + - uses: actions/checkout@v4 |
| 156 | + - name: Cocoapods cache |
| 157 | + uses: actions/cache@v4 |
| 158 | + with: |
| 159 | + path: | |
| 160 | + ~/.cocoapods |
| 161 | + ~/Library/Caches/CocoaPods |
| 162 | + */build/cocoapods |
| 163 | + */build/classes |
| 164 | + key: cocoapods-cache-v2 |
| 165 | + - uses: maxim-lobanov/setup-xcode@v1 |
| 166 | + with: |
| 167 | + xcode-version: latest-stable |
| 168 | + - name: Setup test environment |
| 169 | + uses: ./.github/actions/setup_test_action |
| 170 | + - name: Set Artifact Name |
| 171 | + run: | |
| 172 | + echo "ARCHIVE_KEY=$(echo ${{ matrix.gradle_tasks }} | cut -d: -f2)" >> $GITHUB_ENV |
| 173 | + - name: Run macOS Tests |
| 174 | + run: ./gradlew ${{ matrix.gradle_tasks }} |
| 175 | + - name: Upload macOS test artifact |
| 176 | + uses: actions/upload-artifact@v4 |
| 177 | + if: failure() |
| 178 | + with: |
| 179 | + name: macOS ${{ env.ARCHIVE_KEY }} Test Report HTML |
| 180 | + path: "**/build/reports/tests/macosArm64Test/" |
| 181 | + - name: Upload Firebase Debug Log |
| 182 | + uses: actions/upload-artifact@v4 |
| 183 | + if: failure() |
| 184 | + with: |
| 185 | + name: iOS ${{ env.ARCHIVE_KEY }} Firebase Debug Log |
| 186 | + path: "**/firebase-debug.log" |
| 187 | + build-tvos: |
| 188 | + needs: jobMatrixSetup |
| 189 | + runs-on: macos-latest |
| 190 | + strategy: |
| 191 | + fail-fast: false |
| 192 | + matrix: ${{ fromJson(needs.jobMatrixSetup.outputs.tvos_test_jobs_matrix) }} |
| 193 | + steps: |
| 194 | + - uses: actions/checkout@v4 |
| 195 | + - name: Cocoapods cache |
| 196 | + uses: actions/cache@v4 |
| 197 | + with: |
| 198 | + path: | |
| 199 | + ~/.cocoapods |
| 200 | + ~/Library/Caches/CocoaPods |
| 201 | + */build/cocoapods |
| 202 | + */build/classes |
| 203 | + key: cocoapods-cache-v2 |
| 204 | + - uses: maxim-lobanov/setup-xcode@v1 |
| 205 | + with: |
| 206 | + xcode-version: latest-stable |
| 207 | + - name: Setup test environment |
| 208 | + uses: ./.github/actions/setup_test_action |
| 209 | + - name: Set Artifact Name |
| 210 | + run: | |
| 211 | + echo "ARCHIVE_KEY=$(echo ${{ matrix.gradle_tasks }} | cut -d: -f2)" >> $GITHUB_ENV |
| 212 | + - name: Run tvOS Tests |
| 213 | + run: ./gradlew ${{ matrix.gradle_tasks }} |
| 214 | + - name: Upload tvOS test artifact |
| 215 | + uses: actions/upload-artifact@v4 |
| 216 | + if: failure() |
| 217 | + with: |
| 218 | + name: iOS ${{ env.ARCHIVE_KEY }} Test Report HTML |
| 219 | + path: "**/build/reports/tests/tvosArm64Test/" |
| 220 | + - name: Upload Firebase Debug Log |
| 221 | + uses: actions/upload-artifact@v4 |
| 222 | + if: failure() |
| 223 | + with: |
| 224 | + name: iOS ${{ env.ARCHIVE_KEY }} Firebase Debug Log |
| 225 | + path: "**/firebase-debug.log" |
144 | 226 | build-jvm:
|
145 | 227 | needs: jobMatrixSetup
|
146 | 228 | runs-on: ubuntu-latest
|
|
0 commit comments