Kotlin Multiplatform
Kotlin Multiplatform CI op GitHub Actions
Elk doel wordt serieel gecompileerd en de Kotlin/Native cache wordt weggegooid.
19m → 5m
Native compileren
Elk doel wordt serieel gecompileerd en de Kotlin/Native cache wordt weggegooid.
Waarom het gebeurt
~/.konan bevat de Kotlin/Native toolchain en gecompileerde artefacten en is bij elke run koud.
Wat te veranderen
- Cache ~/.konan en ~/.gradle/caches ingetoetst op de Kotlin-versie
- Compileer JVM, JS en native doelen als parallelle matrixbenen
- Bouw Apple-doelen op een macOS-runner en al het andere op Linux
Kotlin Multiplatform op runnerhut
yaml
jobs: build: strategy: matrix: os: [runnerhut-8vcpu-ubuntu-2404, runnerhut-macos-15-m4] runs-on: ${{ matrix.os }} steps: - uses: actions/checkout@v4 - run: ./gradlew build --build-cacheDe enige runnerhut-specifieke regel is `runs-on: runnerhut-8vcpu-ubuntu-2404`. Al het andere is standaard GitHub Actions — dezelfde acties, dezelfde geheimen en hetzelfde machtigingsmodel dat u vandaag de dag gebruikt.
Je volgende build kan twee keer zo snel zijn, voor de halve prijs
Begin gratis. Weggaan is dezelfde ene regel, en die diff publiceren we ook.
Gerelateerd
Reageer inheemsElke build compileert de native iOS- en Android-afhankelijkheden opnieuw vanaf de bron.iOSXcode wordt vanuit het niets opgebouwd en code-ondertekening is kwetsbaar in CI.AndroidGradle lost afhankelijkheden opnieuw op en de emulator heeft geen hardwareversnelling.FladderenDe Flutter SDK en pubcache worden bij elke run en voor elk platform gedownload.