CI/CD Nedir?
- CI (Continuous Integration): Kod değişikliklerinin otomatik test edilmesi
- CD (Continuous Delivery/Deployment): Test edilen kodun otomatik olarak store'a gönderilmesi
Neden Mobil CI/CD?
- Manuel build süreci çok yavaş ve hata eğilimli
- Her push'ta otomatik test = erken bug tespiti
- Tutarlı build ortamı (yerel makinedeki farklılıkları elimine eder)
- Store'a gönderiyi dakikalar içinde tamamla
- Ekip büyüdükçe manuel süreçler sürdürülemez hale gelir
Popüler Araçlar
EAS Build (Expo)
- React Native/Expo projeleri için en kolay çözüm
- Cloud'da iOS + Android build
- Mac gerekmeden iOS build
- Ücretsiz tier mevcut
Fastlane
- Open-source, en yaygın mobil CI/CD aracı
- iOS: Certificates, provisioning, TestFlight upload
- Android: Signing, Google Play upload
- Ruby tabanlı, her CI platformuyla uyumlu
Bitrise
- Mobil odaklı CI/CD platformu
- Visual workflow builder ile kolay kurulum
- Pre-built step'ler (100+ hazır adım)
- macOS VM'leri (iOS build desteği)
Codemagic
- Flutter ve React Native için optimize edilmiş
- YAML veya GUI ile yapılandırma
- Apple Silicon M2 Mac'ler ile hızlı build
- Otomatik code signing yönetimi
GitHub Actions
- GitHub ile doğrudan entegre
- macOS runner'lar mevcut (iOS build)
- Geniş marketplace
- Self-hosted runner desteği
Tipik CI/CD Pipeline
CI (Her PR'da)
- Checkout kodu
- Dependencies yükle (npm/pod install)
- Lint + type check
- Unit testleri çalıştır
- Build doğrulama (compile)
CD (Merge sonrası)
- CI adımları
- Version bump
- iOS build + signing
- Android build + signing
- TestFlight / Internal Testing yükle
- Changelog oluştur
- Tag + release
Code Signing Yönetimi
iOS
- Certificate + Provisioning Profile yönetimi
- Fastlane Match: Git repo'da şifrelenmiş certificates
- EAS: Otomatik yönetim
Android
- Keystore dosyası güvenli saklanmalı
- Upload key vs signing key ayrımı
- Google Play App Signing (önerilen)
Otomatik Version Yönetimi
- Semantic versioning: MAJOR.MINOR.PATCH
- Build number otomatik artırma
- Git tag ile version eşleştirme
- Changelog otomatik oluşturma (conventional commits)
2026 İtibariyle Güncel Durum
- EAS Build, Expo projeleri için varsayılan CI/CD çözümü haline geldi
- GitHub Actions macOS runner'ları M2 çiplere geçiş yaptı
- Codemagic ve Bitrise fiyatlandırma modelleri rekabetçi hale geldi
- Fastlane hâlâ en yaygın open-source araç olarak kullanılıyor
CI/CD kurulumu başlangıçta zaman alır ama uzun vadede onlarca saat tasarruf sağlar.