Deployment in Firebase

Questa pagina spiega come eseguire il deployment di applicazioni in Firebase utilizzando Cloud Build. Se non hai mai utilizzato Cloud Build, leggi prima le guide rapide e la panoramica della configurazione di Build.

Prima di iniziare

  • Abilita le API Cloud Build, Firebase, and Resource Manager.

    Abilita le API

  • Per eseguire i comandi gcloud in questa pagina, installa Google Cloud CLI.

  • Tieni a portata di mano il codice sorgente dell'applicazione, incluso firebase.json. Il codice sorgente deve essere archiviato in un repository come Cloud Source Repositories, GitHub o Bitbucket.

  • Se non hai ancora un progetto di cui eseguire il deployment in Firebase, puoi creare un progetto predefinito installando e inizializzando Firebase.

Autorizzazioni IAM richieste

  1. Apri la pagina IAM nella console Google Cloud:

    Apri la pagina IAM

  2. Seleziona il progetto e fai clic su Apri.

  3. Nella tabella delle autorizzazioni, individua l'email che termina con @cloudbuild.gserviceaccount.com e fai clic sull'icona a forma di matita. Questo è l'account di servizio Cloud Build.

  4. Aggiungi i ruoli Cloud Build Service Account, Firebase Admin e API Keys Admin.

  5. Fai clic su Salva.

Stai usando lo strumento per la creazione della community di firebase

Cloud Build fornisce un'immagine del generatore della community di Firebase che puoi utilizzare per richiamare i comandi firebase in Cloud Build. Per utilizzare questo builder in un file di configurazione di Cloud Build, devi prima creare l'immagine ed eseguirne il push a Container Registry nel tuo progetto.

Per creare ed eseguire il push di firebase Community Builder:

  1. Vai alla directory principale del progetto.

  2. Clona il repository cloud-builders-community:

    git clone https://github.com/GoogleCloudPlatform/cloud-builders-community.git
    
  3. Vai all'immagine dello strumento di creazione firebase:

    cd cloud-builders-community/firebase
    
  4. Invia il generatore al progetto, dove REGION è una delle regioni di build supportate:

    gcloud builds submit --region=REGION .
    
  5. Torna alla directory principale del progetto:

    cd ../..
    
  6. Rimuovi il repository dalla directory radice:

    rm -rf cloud-builders-community/
    

Configurazione del deployment

Dopo aver creato lo strumento per la creazione della community di firebase, puoi utilizzare il passaggio di build firebase nel file di configurazione della build per eseguire il deployment su Firebase:

  1. Crea un file di configurazione di compilazione denominato cloudbuild.yaml o cloudbuild.json, dove project-id è l'ID progetto Google Cloud e firebase-project-id è l'ID progetto Firebase:

    YAML

          steps:
          - name: gcr.io/project-id/firebase
            args: ['deploy', '--project=firebase-project-id', '--only=hosting']
    

    JSON

    {
      "steps": [
       {
          "name": "gcr.io/project-id/firebase",
          "args": [
             "deploy",
             "--project",
             "firebase-project-id",
             "--only",
             "hosting"
           ]
      }
      ]
    }
    
  2. Avvia la build utilizzando il file di configurazione della build:

    gcloud builds submit --region=REGION --config config-file-path source-directory
    

    Dove:

    • config-file-path è il percorso del file di configurazione della build.
    • source-directory è il percorso o l'URL del codice sorgente.
    • REGION è una delle regioni di build supportate.

Deployment continuo

Puoi automatizzare il deployment del software in Firebase creando trigger di Cloud Build. Puoi configurare trigger per creare ed eseguire il deployment delle immagini ogni volta che aggiorni il codice sorgente.

Per automatizzare il deployment su Firebase:

  1. Nel repository, aggiungi un file di configurazione di compilazione con i passaggi per richiamare il comando firebase deploy dove project-id è il tuo ID progetto Google Cloud:

    YAML

    steps:
          - name: gcr.io/project-id/firebase
            args: ['deploy', '--project=project-id', '--only=hosting']
    

    JSON

    {
      "steps": [
       {
          "name": "gcr.io/project-id/firebase",
          "args": [
             "deploy",
             "--project",
             "project-id",
             "--only",
             "hosting"
           ]
      }
      ]
    }
    
  2. Crea un trigger con il file di configurazione della build creato nel passaggio precedente:

    1. Apri la pagina Trigger nella console Google Cloud:

      Apri la pagina Attivatori

    2. Seleziona il progetto dal menu a discesa del selettore di progetti nella parte superiore della pagina.

    3. Fai clic su Apri.

    4. Fai clic su Crea trigger.

      Nella pagina Crea trigger, inserisci le seguenti impostazioni:

      1. Inserisci un nome per l'attivatore.

      2. Seleziona l'evento del repository per avviare il trigger.

      3. Seleziona il repository che contiene il codice sorgente e il file di configurazione della build.

      4. Specifica l'espressione regolare per il nome del ramo o del tag che avvia l'attivatore.

      5. Configurazione: scegli il file di configurazione della build creato in precedenza.

    5. Fai clic su Crea per salvare il trigger di build.

Ogni volta che esegui il push di un nuovo codice nel repository, avvierai automaticamente una build e il deployment su Firebase.

Per maggiori informazioni sulla creazione dei trigger di Cloud Build, consulta Creazione e gestione dei trigger di build.

Esempio di codice

Per visualizzare un esempio di codice per il deployment in Firebase mediante Cloud Build, vai a deploy-firebase-example.

Passaggi successivi