Bitrise — concetti chiave, Workflow e integrazione continua

Autore: IT Sectr Pubblicato: 2026-04-13 Tempo di lettura: 8 min

Bitrise è una piattaforma CI/CD specializzata per lo sviluppo mobile, costruita attorno a Steps pronti — moduli preconfigurati per compilare, firmare e pubblicare applicazioni iOS e Android. Secondo Bitrise, 2024, la piattaforma supporta oltre 400 Steps pronti e si integra con Xcode, Gradle, Fastlane, Firebase e App Store Connect.

Punti chiave

  • Bitrise — piattaforma CI/CD specializzata per progetti mobili su iOS, Android, Flutter e React Native
  • Workflow — sequenza di Steps che definisce la pipeline di build, test e distribuzione
  • Step — modulo pronto per un compito specifico: installare dipendenze, eseguire test, code signing
  • Code Signing — Bitrise gestisce automaticamente certificati e profili di provisioning per iOS
  • Secrets — archiviazione sicura di token, chiavi e password per accedere a servizi di terze parti

Cos'è Bitrise?

Bitrise è una piattaforma CI/CD lanciata nel 2016 e completamente focalizzata sullo sviluppo mobile. A differenza di soluzioni universali come GitHub Actions e GitLab CI, Bitrise è stata progettata originariamente per automatizzare la compilazione di app iOS e Android. La piattaforma funziona nel cloud e fornisce i propri runner ospitati con macOS e Linux. Bitrise supporta tutti gli stack mobili più diffusi: Swift, Kotlin, Flutter, React Native, Cordova e Xamarin.

Il principale vantaggio di Bitrise sono i modelli di Step preconfigurati per le attività tipiche dello sviluppo mobile: build Xcode, Gradle assemble, Fastlane, Firebase Distribution, TestFlight, Google Play. La configurazione della pipeline richiede minuti tramite l'editor visivo e la configurazione YAML viene generata automaticamente nel file bitrise.yml. Per gli utenti esperti, è disponibile un editor YAML con completamento automatico.

Architettura di Bitrise: Workflow e Steps

L'architettura di Bitrise si basa su due concetti chiave: Workflow e Step. Un Workflow è una sequenza di Steps che definisce la pipeline. Ogni progetto può avere più Workflow: primary (build principale), deploy (pubblicazione), test (solo test). Un Workflow viene attivato da eventi: push, PR, tag o secondo una pianificazione. I Workflow possono anche essere avviati manualmente dall'interfaccia web, utile per build ad-hoc.

Uno Step è un modulo atomico che esegue un singolo compito. Gli Steps possono essere trascinati nell'editor visivo, cambiando ordine e configurazione. Bitrise fornisce Steps per Xcode Archive & Export, Gradle Runner, CocoaPods Install, Firebase Distribution e notifiche Slack. Anche la comunità crea Steps — sono disponibili tramite Step Library. Ogni Step ha parametri di input obbligatori e opzionali, oltre a variabili di output che possono essere utilizzate dagli Steps successivi.

Bitrise supporta il concetto di Pipeline — la combinazione di più Workflow in un'unica pipeline. Una Pipeline può includere build principali per tutte le piattaforme e workflow separati per distribuzione e test. Ciò consente di creare processi CI/CD complessi in cui una build ne attiva un'altra. Gli Stack di Bitrise determinano il software preinstallato sul runner: Xcode, Android SDK, Flutter, Node.js e altri strumenti.

Steps popolari per progetti mobili

  • Xcode Archive & Export — compilazione ed esportazione IPA con gestione del profilo di provisioning
  • Gradle Runner — esecuzione di attività Gradle con argomenti e caching
  • Flutter Build — compilazione di app Flutter per iOS e Android
  • Firebase App Distribution — pubblicazione di build per tester
  • Certificate and Profile Installer — installazione automatica dei certificati di code signing

Integrazione di Bitrise con repository Git

Bitrise si integra con GitHub, GitLab, Bitbucket e Azure DevOps. Quando si collega un repository, Bitrise rileva automaticamente il tipo di progetto (iOS, Android, Flutter) e suggerisce un modello di Workflow. Per i repository privati, Bitrise richiede l'accesso tramite OAuth o chiave SSH. Più repository possono essere collegati a una singola applicazione.

Dopo la connessione, Bitrise crea un webhook nel repository per avviare automaticamente le build su push e PR. Ogni build riceve un numero univoco, log e artefatti. L'interfaccia consente di sfogliare la cronologia delle build, confrontare le modifiche e riavviare i build falliti. Bitrise supporta anche build pianificate per build notturne regolari e l'integrazione con Jira per il tracciamento dei commit.

Code Signing e pubblicazione su App Store e Google Play

Il code signing per iOS è uno dei compiti CI/CD più complessi e Bitrise lo risolve nel modo più semplice possibile. La piattaforma memorizza certificati e profili di provisioning in forma crittografata, li installa automaticamente nel keychain appropriato prima della build ed esporta l'IPA firmato. Lo Step Certificate and Profile Installer scarica i file dall'archivio Bitrise e configura Xcode. Sono supportati i tipi di certificato Development, AdHoc, AppStore ed Enterprise.

Per la pubblicazione su App Store Connect, Bitrise fornisce Steps per il caricamento dell'IPA tramite Xcode Archive & Export. La pubblicazione su Google Play utilizza Gradle Runner con firma tramite Keystore, dopodiché l'APK/AAB viene caricato su Google Play Console tramite Google Play Deploy Step. Per Firebase App Distribution, è sufficiente specificare il Firebase Token e il gruppo di tester. Bitrise automatizza l'aggiornamento del numero di versione e del numero di build prima di ogni pubblicazione.

Configurazione del code signing in Bitrise

I certificati vengono caricati nella sezione Code Signing dell'interfaccia web: P12 con chiave privata, profilo di provisioning (.mobileprovision), Keystore (.jks/.keystore) per Android. Bitrise installa automaticamente i certificati iOS nel keychain a ogni esecuzione del Workflow ed esporta l'applicazione firmata. Per Android, basta caricare il file Keystore — Bitrise lo passa a Gradle tramite variabili d'ambiente durante la build.

Esempio di configurazione Bitrise per Flutter

Esaminiamo un Workflow per un'applicazione Flutter che compila e pubblica build per iOS e Android. Bitrise rileva automaticamente un progetto Flutter e suggerisce gli Steps appropriati. Il Workflow include installazione di Flutter, caching pub-cache, compilazione, test e distribuzione. Per le build iOS, sono inoltre necessari certificati di code signing, che Bitrise carica automaticamente.

Durante la compilazione di app Flutter, Bitrise supporta una configurazione separata per ogni piattaforma. Le build Android vengono eseguite su un runner Linux con Flutter SDK, iOS su un runner macOS. Un Workflow può includere Steps condizionali: build_android e build_ios, che vengono eseguiti solo sulle rispettive piattaforme. Per i progetti React Native, Bitrise offre un set simile di Steps con npm/nvm e Metro bundler.

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: {}

Step personalizzato per la distribuzione

Dopo la build, è possibile aggiungere uno Step Firebase App Distribution per iOS e Android. Lo Step accetta firebase_token, app_id e testers_group. Bitrise sostituisce i valori da Secrets — l'archiviazione sicura dei token garantisce che non finiscano nei log.

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 e gestione dell'ambiente

La corretta gestione dei dati riservati è il fondamento della sicurezza dei processi CI/CD. I Secrets di Bitrise sono crittografati e illeggibili dopo il salvataggio. Quando si crea una nuova applicazione, Bitrise offre di importare secrets da un altro progetto o di impostarli manualmente. Per i team numerosi, è disponibile la funzione Environment Groups — gestione centralizzata di variabili e secrets per un gruppo di applicazioni.

Bitrise fornisce un archivio Secrets integrato per dati riservati: chiavi API, token Firebase, password Keystore, Apple ID. I Secrets vengono definiti come coppie chiave-valore nell'interfaccia web e vengono mascherati nei log di build. Sono disponibili a livello di applicazione e a livello di Workflow. I Secrets non possono essere letti dopo il salvataggio — possono solo essere sovrascritti.

Le Variabili d'Ambiente (senza il flag Secret) vengono utilizzate per la configurazione: versione di Xcode, percorso del progetto, schema di build. Le variabili d'ambiente di Bitrise (BITRISE_BUILD_NUMBER, BITRISE_APP_TITLE) forniscono meta-informazioni sulla build. I Secrets vengono crittografati a riposo e decrittografati solo sul runner durante l'esecuzione del Workflow. Per la gestione di gruppo delle variabili, Bitrise supporta Environment Groups — insiemi di variabili applicabili a più applicazioni contemporaneamente.

La gestione dei certificati iOS tramite Bitrise merita un'attenzione particolare. La piattaforma installa automaticamente P12 e profili di provisioning nel keychain di sistema prima della build. Per Android, viene utilizzato il file Keystore, caricato nella sezione Code Signing. Ogni file di certificato viene archiviato crittografato e decrittografato solo durante la build.

Esempio di utilizzo di Secrets

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

Stack e ambienti Bitrise

Bitrise offre vari stack per la compilazione — immagini preinstallate con strumenti e SDK. Gli stack disponibili includono Xcode (versioni 14, 15, 16 con iOS SDK 17, 18), Android (con diverse versioni di SDK e NDK), Flutter, React Native e Kotlin Multiplatform. Ogni stack ha una descrizione degli strumenti e delle versioni preinstallati.

La scelta dello stack influisce sul tempo di compilazione e sulla compatibilità con il progetto. Bitrise aggiorna regolarmente gli stack, aggiungendo nuove versioni degli strumenti. È possibile fissare una versione specifica dello stack in bitrise.yml per evitare modifiche impreviste durante l'aggiornamento della piattaforma. Per le dipendenze personalizzate, viene utilizzato lo Script Step per installare i pacchetti necessari prima della build principale. Bitrise supporta anche immagini Docker per stack Linux, consentendo ambienti personalizzati per le build Android.

Domande frequenti

Quanto costa Bitrise?

Bitrise offre un piano gratuito con 90 minuti di build al mese e un build concorrente. Developer ($79/mese) include 3000 minuti, fino a 5 build concorrenti e tutte le integrazioni. Enterprise — prezzi personalizzati.

Quali piattaforme supporta Bitrise?

Bitrise supporta iOS (Swift, Objective-C), Android (Kotlin, Java), Flutter, React Native, Cordova, Ionic e Xamarin. Ogni piattaforma ha strumenti preinstallati e modelli di Workflow.

È necessario un runner macOS per iOS in Bitrise?

Bitrise fornisce runner macOS per le build iOS senza configurazione aggiuntiva. La piattaforma gestisce l'infrastruttura macOS automaticamente — il runner viene selezionato in base allo stack dell'applicazione.

Come gestisce Bitrise i certificati iOS?

Bitrise memorizza i certificati in forma crittografata e li installa automaticamente nel keychain prima della build tramite lo Step Certificate and Profile Installer. Per Android in modo simile — il Keystore viene caricato e utilizzato da Gradle durante la firma.

È possibile personalizzare gli Steps in Bitrise?

Sì, Bitrise supporta Steps personalizzati tramite Script Step (script bash) e Step Libraries personalizzate da GitHub. Puoi anche creare il tuo Step seguendo la documentazione di Bitrise e pubblicarlo nella Step Library.

Riepilogo

  • Bitrise — piattaforma CI/CD specializzata per lo sviluppo mobile con Steps pronti per iOS e Android
  • Workflow — sequenza di Steps configurabile nell'editor visivo o in bitrise.yml
  • Step — modulo per un compito specifico: build Xcode, Gradle, pubblicazione Firebase, notifiche Slack
  • Code Signing — gestione automatica dei certificati iOS e del Keystore Android senza operazioni manuali
  • Secrets — archiviazione sicura di token e chiavi con mascheratura nei log di build
  • Integrazione con GitHub, GitLab, Bitbucket tramite webhooks con rilevamento automatico del tipo di progetto
  • Runner macOS per le build iOS forniti da Bitrise — nessuna infrastruttura propria richiesta

Svilupperemo un'applicazione mobile chiavi in mano

IT Sectr crea applicazioni iOS e Android per startup e aziende dal 2017. Ti consulteremo e ti proporremo la soluzione migliore.

Discuti il progetto

Leggi anche