Deployment in Firebase

Questa pagina spiega come eseguire il deployment di applicazioni su Firebase utilizzando Cloud Build. Se non hai mai utilizzato Cloud Build, leggi prima gli avvii rapidi e la panoramica della configurazione di compilazione.

Prima di iniziare

  • Enable the Cloud Build, Firebase, and Resource Manager APIs.

    Enable the APIs

  • 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, ad esempio Cloud Source Repositories, GitHub o Bitbucket.

  • Se non hai ancora un progetto da eseguire 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'indirizzo email dell'account di servizio che stai utilizzando per la compilazione e fai clic sull'icona a forma di matita.

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

  5. Fai clic su Salva.

Utilizzare lo strumento per la creazione di community 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 Cloud Build, devi prima creare l'immagine ed eseguirne il push in Container Registry nel tuo progetto.

Per creare e pubblicare lo Strumento per la creazione di community firebase:

  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 del builder firebase:

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

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

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

    rm -rf cloud-builders-community/
    

Configurazione del deployment

Dopo aver creato il firebase community builder, puoi utilizzare il passaggio di compilazione firebase nel file di configurazione di compilazione 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 compilazione supportate.

Deployment continuo

Puoi automatizzare il deployment del tuo software su Firebase creando trigger di Cloud Build. Puoi configurare gli attivatori per creare la build ed eseguire il deployment delle immagini ogni volta che aggiorni il codice sorgente.

Per automatizzare il deployment in Firebase:

  1. Nel repository, aggiungi un file di configurazione di compilazione con i passaggi per richiamare il comando firebase deploy, dove project-id è l'ID del tuo 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 attivatore con il file di configurazione della build creato nel passaggio precedente:

    1. Apri la pagina Trigger nella console Google Cloud:

      Apri la pagina Trigger

    2. Seleziona il progetto dal menu a discesa del selettore 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 l'attivatore.

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

      4. Specifica la regex per il nome del ramo o del tag che attiverà 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 nuovo codice nel repository, avvii automaticamente una build e un deployment su Firebase.

Per ulteriori informazioni sulla creazione di trigger Cloud Build, consulta Creare e gestire gli trigger di build.

Esempio di codice

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

Passaggi successivi