touchlab / KaMPKit

KaMP Kit by Touchlab. A collection of code & tools designed to get your mobile team started quickly w/Kotlin Multiplatform
https://touchlab.co/
Apache License 2.0
2.2k stars 199 forks source link

Review and update CI testing strategy and runners #241

Closed kpgalligan closed 2 years ago

kpgalligan commented 2 years ago

We currently have 3 separate test files that each run independently, and until recently all used macos. Macos is considerably more expensive than ubuntu, and running 3 separate processes with no build cache means a lot of time downloading and rebuilding the same code.

We've done quite a bit of optimization with client code to reduce cost. I think we should apply that thinking here.

The iOS build is probably unnecessary because it just runs xcode to construct the final app, but does no testing. We could keep that step but put it in a "native test" file, that otherwise just runs the kotlin tests for iOS. That would significantly reduce build times. The other file would run Android tests.