çarpıntı
GitHub Actions üzerinde Flutter CI
Flutter SDK ve pub önbelleği her platform için her çalıştırmada indirilir.
110s → 6s
SDK kurulumu
8 dk → 2 dk
Test paketi
Flutter SDK ve pub önbelleği her platform için her çalıştırmada indirilir.
Neden oluyor?
Ne SDK ne de ~/.pub-cache kalıcı değildir ve iOS ve Android her ödemeyi ayrı ayrı oluşturur.
Ne değiştirilmeli
- Flutter SDK dizinini önbelleğe alın ve Flutter sürümüne anahtarlanmış ~/.pub-cache
- Yerel koşucularda iOS ve Android'i paralel matris ayakları olarak oluşturun
- Yerel yarılar için Persist Pod/ ve Gradle önbellekleri
- Flutter testini --concurrency çekirdek sayısına ayarlanmış şekilde çalıştırın
runnerhut'ta çarpıntı (runnerhut)
runnerhut'a (runnerhut) özgü tek satır 'runs-on: runnerhut-8vcpu-ubuntu-2404'tür. Geriye kalan her şey standart GitHub Actions'tir; bugün kullandığınız aynı eylemler, aynı sırlar ve aynı izin modeli.
Bir sonraki build'iniz yarı fiyata iki kat hızlı olabilir
Ücretsiz başlayın. Ayrılmak da aynı tek satır ve o diff'i de yayımlıyoruz.
İlgili
Yerel TepkiHer yapı, yerel iOS ve Android bağımlılıklarını kaynaktan yeniden derler.iOSXcode sıfırdan derlenir ve CI'da kod imzalama hassastır.androidGradle bağımlılıkları yeniden çözer ve öykünücünün donanım hızlandırması yoktur.Hızlı şeritFastlane şeritleri zamanlarının çoğunu paket yükleme ve imzalama kurulumuna harcıyor.