Naar inhoud springen

Reageer inheems

Reageer op Native CI op GitHub Actions

Elke build compileert de native iOS- en Android-afhankelijkheden opnieuw vanaf de bron.

22m → 7m
iOS-build
14m → 4m
Android-build

Elke build compileert de native iOS- en Android-afhankelijkheden opnieuw vanaf de bron.

Waarom het gebeurt

CocoaPods, Gradle en de Metro-cache zijn allemaal koud, dus de oorspronkelijke laag wordt opnieuw opgebouwd, zelfs bij een wijziging die alleen in JS plaatsvindt.

Wat te veranderen

  1. Cache Pods/, ~/.gradle/caches en de Metro transformer cache
  2. Voer iOS- en Android-builds uit als parallelle matrixbenen, niet opeenvolgend
  3. Gebruik DerivedData-persistentie op de macOS-runner voor incrementele Xcode-builds
  4. Sla de native build volledig over als alleen JS is gewijzigd, met behulp van padfilters

Reageer Native op runnerhut

yaml
jobs:
ios:
runs-on: runnerhut-macos-15-m4
steps:
- uses: actions/checkout@v4
- run: cd ios && pod install
- run: npx react-native build-ios --mode Release
android:
runs-on: runnerhut-8vcpu-ubuntu-2404
steps:
- uses: actions/checkout@v4
- run: cd android && ./gradlew assembleRelease
Een werkend uitgangspunt

De enige runnerhut-specifieke regel is `runs-on: runnerhut-macos-15-m4`. 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.