Bitrise — temel kavramlar, Workflow'lar ve sürekli entegrasyon

Yazar: IT Sectr Yayınlanma: 2026-04-13 Okuma süresi: 8 dk

Bitrise, mobil geliştirme için özelleştirilmiş bir CI/CD platformudur ve hazır Steps — iOS ve Android uygulamalarını derlemek, imzalamak ve yayınlamak için önceden yapılandırılmış modüller — etrafında inşa edilmiştir. Bitrise, 2024'e göre, platform 400'den fazla hazır Step desteklemekte ve Xcode, Gradle, Fastlane, Firebase ve App Store Connect ile entegre olmaktadır.

Ana Noktalar

  • Bitrise — iOS, Android, Flutter ve React Native üzerindeki mobil projeler için özelleştirilmiş CI/CD platformu
  • Workflow — derleme, test ve dağıtım pipeline'ını tanımlayan Steps dizisi
  • Step — belirli bir görev için hazır modül: bağımlılıkları yükleme, testleri çalıştırma, kod imzalama
  • Code Signing — Bitrise, iOS için sertifikaları ve provisioning profillerini otomatik olarak yönetir
  • Secrets — üçüncü taraf hizmetlere erişim için token'ların, anahtarların ve şifrelerin güvenli saklanması

Bitrise Nedir?

Bitrise, 2016 yılında başlatılan ve tamamen mobil geliştirmeye odaklanmış bir CI/CD platformudur. GitHub Actions ve GitLab CI gibi evrensel çözümlerin aksine, Bitrise başlangıçta iOS ve Android uygulama derlemelerini otomatikleştirmek için tasarlanmıştır. Platform bulutta çalışır ve macOS ile Linux ile kendi barındırılan runner'larını sağlar. Bitrise, Swift, Kotlin, Flutter, React Native, Cordova ve Xamarin gibi tüm popüler mobil yığınları destekler.

Bitrise'in temel avantajı, tipik mobil geliştirme görevleri (Xcode derlemesi, Gradle assemble, Fastlane, Firebase Distribution, TestFlight, Google Play) için önceden yapılandırılmış Step şablonlarıdır. Pipeline kurulumu görsel düzenleyici aracılığıyla dakikalar içinde tamamlanır ve YAML yapılandırması otomatik olarak bitrise.yml dosyasında oluşturulur. Deneyimli kullanıcılar için otomatik tamamlamalı bir YAML düzenleyicisi mevcuttur.

Bitrise Mimarisi: Workflow'lar ve Step'ler

Bitrise mimarisi iki temel kavram üzerine inşa edilmiştir: Workflow ve Step. Bir Workflow, pipeline'ı tanımlayan bir Steps dizisidir. Her projenin birden fazla Workflow'u olabilir: primary (ana derleme), deploy (yayınlama), test (sadece test). Bir Workflow, push, PR, tag veya zamanlama ile tetiklenir. Workflow'lar web arayüzünden manuel olarak da başlatılabilir, bu da geçici derlemeler için kullanışlıdır.

Step, tek bir görevi yerine getiren atomik bir modüldür. Step'ler görsel düzenleyicide sürüklenerek sıraları ve yapılandırmaları değiştirilebilir. Bitrise, Xcode Archive & Export, Gradle Runner, CocoaPods Install, Firebase Distribution ve Slack bildirimleri için Step'ler sağlar. Topluluk da Step'ler oluşturur — Step Library aracılığıyla kullanılabilirler. Her Step'in zorunlu ve isteğe bağlı girdi parametreleri ile sonraki Step'ler tarafından kullanılabilen çıktı değişkenleri vardır.

Bitrise, Pipeline kavramını destekler — birden fazla Workflow'u tek bir pipeline'da birleştirme. Bir Pipeline, tüm platformlar için ana derlemeleri ve dağıtım ile test için ayrı workflow'ları içerebilir. Bu, bir derlemenin diğerini tetiklediği karmaşık CI/CD süreçleri oluşturmayı sağlar. Bitrise Stack'leri, runner üzerinde önceden yüklenmiş yazılımı (Xcode, Android SDK, Flutter, Node.js ve diğer araçlar) belirler.

Mobil Projeler için Popüler Step'ler

  • Xcode Archive & Export — provisioning profil yönetimi ile IPA derleme ve dışa aktarma
  • Gradle Runner — argümanlar ve önbellekleme ile Gradle görevlerini çalıştırma
  • Flutter Build — iOS ve Android için Flutter uygulamaları derleme
  • Firebase App Distribution — test uzmanları için derlemeleri yayınlama
  • Certificate and Profile Installer — kod imzalama sertifikalarının otomatik kurulumu

Bitrise'in Git Depolarıyla Entegrasyonu

Bitrise, GitHub, GitLab, Bitbucket ve Azure DevOps ile entegre olur. Bir depo bağlanırken, Bitrise otomatik olarak proje türünü (iOS, Android, Flutter) algılar ve bir Workflow şablonu önerir. Özel depolar için Bitrise, OAuth veya SSH anahtarı aracılığıyla erişim ister. Tek bir uygulamaya birden fazla depo bağlanabilir.

Bağlantıdan sonra Bitrise, push ve PR'da derlemeleri otomatik olarak başlatmak için depoda bir webhook oluşturur. Her derleme benzersiz bir numara, günlük ve yapıt alır. Arayüz, derleme geçmişine göz atmayı, değişiklikleri karşılaştırmayı ve başarısız derlemeleri yeniden başlatmayı sağlar. Bitrise ayrıca düzenli gece derlemeleri için zamanlanmış derlemeleri ve commit takibi için Jira entegrasyonunu da destekler.

Code Signing ve App Store ile Google Play'de Yayınlama

iOS için kod imzalama, CI/CD'nin en karmaşık görevlerinden biridir ve Bitrise bunu mümkün olduğunca basit bir şekilde çözer. Platform, sertifikaları ve provisioning profillerini şifrelenmiş biçimde saklar, derlemeden önce bunları otomatik olarak uygun keychain'e yükler ve imzalanmış IPA'yı dışa aktarır. Certificate and Profile Installer Step'i, Bitrise deposundan dosyaları indirir ve Xcode'u yapılandırır. Development, AdHoc, AppStore ve Enterprise sertifika türleri desteklenir.

App Store Connect'te yayınlamak için Bitrise, Xcode Archive & Export aracılığıyla IPA yüklemek için Step'ler sağlar. Google Play yayınlama, Keystore ile imzalama ile Gradle Runner kullanır, ardından APK/AAB, Google Play Deploy Step aracılığıyla Google Play Console'a yüklenir. Firebase App Distribution için, sadece Firebase Token ve test uzmanı grubu belirtmek yeterlidir. Bitrise, her yayından önce sürüm numarası ve derleme numarası güncellemesini otomatikleştirir.

Bitrise'de Code Signing Yapılandırması

Sertifikalar web arayüzünün Code Signing bölümüne yüklenir: özel anahtarla P12, provisioning profili (.mobileprovision), Android için Keystore (.jks/.keystore). Bitrise, her Workflow çalıştırmasında iOS sertifikalarını otomatik olarak keychain'e yükler ve imzalanmış uygulamayı dışa aktarır. Android için, sadece Keystore dosyasını yükleyin — Bitrise, derleme sırasında ortam değişkenleri aracılığıyla Gradle'a iletir.

Flutter için Bitrise Yapılandırma Örneği

iOS ve Android için derlemeler oluşturan ve yayınlayan bir Flutter uygulaması için Workflow'u inceleyelim. Bitrise otomatik olarak bir Flutter projesini algılar ve uygun Step'leri önerir. Workflow, Flutter kurulumu, pub-cache önbellekleme, derleme, test ve dağıtımı içerir. iOS derlemeleri için ayrıca kod imzalama sertifikaları gerekir ve Bitrise bunları otomatik olarak yükler.

Flutter uygulamaları derlenirken, Bitrise her platform için ayrı yapılandırmayı destekler. Android derlemeleri Flutter SDK ile Linux runner'da çalışır, iOS ise macOS runner'da. Bir Workflow, koşullu Step'ler içerebilir: build_android ve build_ios, yalnızca ilgili platformlarda çalışır. React Native projeleri için Bitrise, npm/nvm ve Metro bundler ile benzer bir Step seti sunar.

yaml
format_version: 13
default_step_lib_source: https://github.com/bitrise-io/bitrise-steplib.git

trigger_map:
- push_branch: main
  workflow: primary

workflows:
  primary:
    steps:
    - activate-ssh-key@4:
        run_if: true
    - git-clone@8: {}
    - flutter-installer@0:
        inputs:
        - version: 3.24.0
    - flutter-build@0:
        inputs:
        - platform: both
        - ios_output_type: archive
    - deploy-to-bitrise-io@2: {}

Dağıtım için Özel Step

Derlemeden sonra, iOS ve Android için Firebase App Distribution Step'i eklenebilir. Step, firebase_token, app_id ve testers_group'u kabul eder. Bitrise, Secrets'ten değerleri değiştirir — güvenli token depolama, bunların günlüklere düşmemesini sağlar.

yaml
- firebase-app-distribution@1:
    inputs:
    - firebase_token: $FIREBASE_TOKEN
    - app_id: $FIREBASE_IOS_APP_ID
    - testers_group: qa-team
    - release_notes: |
        Build $BITRISE_BUILD_NUMBER

Secrets ve Ortam Yönetimi

Gizli verilerin doğru yönetimi, CI/CD süreçlerinin güvenliğinin temelidir. Bitrise Secrets'ları şifrelenir ve kaydedildikten sonra okunamaz. Yeni bir uygulama oluştururken, Bitrise başka bir projeden secrets içe aktarmayı veya manuel olarak ayarlamayı önerir. Büyük ekipler için Environment Groups özelliği mevcuttur — bir uygulama grubu için değişkenlerin ve secrets'ların merkezi yönetimi.

Bitrise, gizli veriler (API anahtarları, Firebase token'ları, Keystore şifreleri, Apple ID) için yerleşik Secrets depolama sağlar. Secrets'lar, web arayüzünde anahtar-değer çiftleri olarak tanımlanır ve derleme günlüklerinde maskelenir. Uygulama düzeyinde ve Workflow düzeyinde kullanılabilirler. Secrets'lar kaydedildikten sonra okunamaz — yalnızca üzerine yazılabilir.

Ortam Değişkenleri (Secret işareti olmadan) yapılandırma için kullanılır: Xcode sürümü, proje yolu, derleme şeması. Bitrise ortam değişkenleri (BITRISE_BUILD_NUMBER, BITRISE_APP_TITLE), derleme hakkında meta-bilgi sağlar. Secrets'lar depoda şifrelenir ve yalnızca Workflow yürütme sırasında runner'da çözülür. Değişkenlerin grup yönetimi için Bitrise, Environment Groups'u destekler — aynı anda birden fazla uygulamaya uygulanabilen değişken kümeleri.

Bitrise aracılığıyla iOS sertifika yönetimi özel ilgiyi hak ediyor. Platform, derlemeden önce P12 ve provisioning profillerini otomatik olarak sistem keychain'ine yükler. Android için, Code Signing bölümüne yüklenen Keystore dosyası kullanılır. Her sertifika dosyası şifrelenmiş olarak saklanır ve yalnızca derleme sırasında çözülür.

Secrets Kullanım Örneği

yaml
- google-play-deploy@3:
    inputs:
    - package_name: com.example.app
    - service_account_json_key: $SERVICE_ACCOUNT_KEY
    - app_file: $BITRISE_APK_PATH

Bitrise Stack'leri ve Ortamları

Bitrise, derleme için çeşitli stack'ler (araçlar ve SDK'lar ile önceden yüklenmiş görüntüler) sunar. Mevcut stack'ler arasında Xcode (sürüm 14, 15, 16, iOS SDK 17, 18 ile), Android (farklı SDK ve NDK sürümleriyle), Flutter, React Native ve Kotlin Multiplatform bulunur. Her stack, önceden yüklenmiş araçların ve sürümlerin bir açıklamasına sahiptir.

Stack seçimi, derleme süresini ve proje uyumluluğunu etkiler. Bitrise, stack'leri düzenli olarak günceller ve yeni araç sürümleri ekler. Platform güncellendiğinde beklenmeyen değişiklikleri önlemek için bitrise.yml'de belirli bir stack sürümü sabitlenebilir. Özel bağımlılıklar için, ana derlemeden önce gerekli paketleri yüklemek için Script Step kullanılır. Bitrise ayrıca Linux stack'leri için Docker görüntülerini destekleyerek Android derlemeleri için özel ortamlar sağlar.

Sıkça Sorulan Sorular

Bitrise ne kadar?

Bitrise, aylık 90 derleme dakikası ve bir eşzamanlı derleme ile ücretsiz bir plan sunar. Developer (aylık $79), 3000 dakika, 5'e kadar eşzamanlı derleme ve tüm entegrasyonları içerir. Enterprise — özel fiyatlandırma.

Bitrise hangi platformları destekliyor?

Bitrise, iOS (Swift, Objective-C), Android (Kotlin, Java), Flutter, React Native, Cordova, Ionic ve Xamarin'i destekler. Her platform için önceden yüklenmiş araçlar ve Workflow şablonları bulunur.

Bitrise'de iOS için macOS runner gerekli mi?

Bitrise, ek yapılandırma gerektirmeden iOS derlemeleri için macOS runner'ları sağlar. Platform, macOS altyapısını otomatik olarak yönetir — runner, uygulama stack'ine göre seçilir.

Bitrise iOS sertifikalarını nasıl yönetiyor?

Bitrise, sertifikaları şifrelenmiş biçimde saklar ve Certificate and Profile Installer Step'i aracılığıyla derlemeden önce bunları otomatik olarak keychain'e yükler. Android için benzer şekilde — Keystore yüklenir ve imzalama sırasında Gradle tarafından kullanılır.

Bitrise'de Step'ler özelleştirilebilir mi?

Evet, Bitrise, Script Step (bash betiği) ve GitHub'dan özel Step Libraries aracılığıyla özel Step'leri destekler. Ayrıca Bitrise belgelerine göre kendi Step'inizi oluşturabilir ve Step Library'de yayınlayabilirsiniz.

Özet

  • Bitrise — iOS ve Android için hazır Step'lerle mobil geliştirme için özelleştirilmiş CI/CD platformu
  • Workflow — görsel düzenleyicide veya bitrise.yml'de yapılandırılabilir Steps dizisi
  • Step — belirli bir görev için modül: Xcode derlemesi, Gradle, Firebase yayını, Slack bildirimleri
  • Code Signing — manuel işlem olmadan iOS sertifikalarının ve Android Keystore'un otomatik yönetimi
  • Secrets — derleme günlüklerinde maskeleme ile token'ların ve anahtarların güvenli saklanması
  • Entegrasyon — proje türünün otomatik algılanmasıyla webhooks aracılığıyla GitHub, GitLab, Bitbucket ile
  • macOS runner'ları iOS derlemeleri için Bitrise tarafından sağlanır — kendi altyapısı gerekmez

Anahtar teslim bir mobil uygulama geliştireceğiz

IT Sectr, 2017'den beri girişimler ve işletmeler için iOS ve Android uygulamaları oluşturmaktadır. Size danışmanlık yapacak ve en iyi çözümü önereceğiz.

Projeyi tartış

Ayrıca okuyun