Implementação no Firebase

Esta página explica como implementar aplicações no Firebase através do Cloud Build. Se for um utilizador recente do Cloud Build, leia os inícios rápidos e a vista geral da configuração de compilação primeiro.

Antes de começar

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

    Enable the APIs

  • Para executar os comandos gcloud nesta página, instale a CLI do Google Cloud.

  • Tenha o código-fonte da aplicação, incluindo firebase.json, à mão. O código fonte tem de estar armazenado num repositório, como os Cloud Source Repositories, o GitHub ou o Bitbucket.

  • Se ainda não tiver um projeto para implementar no Firebase, pode criar um projeto predefinido instalando e inicializando o Firebase.

Autorizações de IAM necessárias

  1. Abra a página IAM na Google Cloud consola:

    Abra a página IAM

  2. Selecione o projeto e clique em Abrir.

  3. Na tabela de autorizações, localize o email da conta de serviço que está a usar para a compilação e clique no ícone de lápis.

  4. Adicione as funções Cloud Build Service Account(roles/cloudbuild.builds.builder), Firebase Admin (roles/firebase.admin) eAPI Keys Admin (roles/serviceusage.apiKeysAdmin) à conta de serviço.

  5. Clique em Guardar.

Usar a imagem do Docker firebase

O Cloud Build fornece uma imagem de compilador que pode usar para invocar comandos firebase no Cloud Build. Para usar este criador num ficheiro de configuração do Cloud Build, pode usar o passo de compilação firebase para implementar no Firebase:

  1. Crie um ficheiro de configuração de compilação com o nome cloudbuild.yaml ou cloudbuild.json, em que PROJECT_ID é o ID do seu Google Cloud projeto e FIREBASE_PROJECT_ID é o ID do seu projeto do Firebase:

    YAML

    steps:
    - name: "us-docker.pkg.dev/firebase-cli/us/firebase"
       args: ['deploy', '--project=FIREBASE_PROJECT_ID', '--only=hosting']
    ## Or, target a specific version of firebase-tools
    - name: "us-docker.pkg.dev/firebase-cli/us/firebase":x.y.z
       args: ['deploy', '--project=FIREBASE_PROJECT_ID', '--only=hosting']
    

    JSON

    {
      "steps": [
       {
          "name": "us-docker.pkg.dev/firebase-cli/us/firebase",
          "args": [
             "deploy",
             "--project",
             "FIREBASE_PROJECT_ID",
             "--only",
             "hosting"
           ]
      }
      ]
    }
    

    Pode escolher uma versão específica do firebase-tools usando
    name: "us-docker.pkg.dev/firebase-cli/us/firebase":x.y.z

  2. Inicie a compilação com o ficheiro de configuração de compilação:

    gcloud builds submit --region=REGION --config CONFIG_FILE_PATH SOURCE_DIRECTORY
    

    Onde:

    • REGION é uma das regiões de compilação suportadas.
    • CONFIG_FILE_PATH é o caminho para o ficheiro de configuração de compilação.
    • SOURCE_DIRECTORY é o caminho ou o URL para o código-fonte.

Implementação contínua

Pode automatizar a implementação do seu software no Firebase através da criação de acionadores do Cloud Build. Pode configurar acionadores para criar e implementar imagens sempre que atualizar o código fonte.

Para automatizar a implementação no Firebase:

  1. No seu repositório, adicione um ficheiro de configuração de compilação com passos para invocar o comando firebase deploy, em que PROJECT_ID é o ID do seu projeto: Google Cloud

    YAML

    steps:
          - name: us-docker.pkg.dev/firebase-cli/us/firebase
            args: ['deploy', '--project=PROJECT_ID', '--only=hosting']
    

    JSON

    {
      "steps": [
       {
          "name": "us-docker.pkg.dev/firebase-cli/us/firebase",
          "args": [
             "deploy",
             "--project",
             "PROJECT_ID",
             "--only",
             "hosting"
           ]
      }
      ]
    }
    
  2. Crie um acionador com o ficheiro de configuração de compilação criado no passo anterior:

    1. Abra a página Acionadores na Google Cloud consola:

      Abra a página Acionadores

    2. Selecione o seu projeto no menu pendente do seletor de projetos na parte superior da página.

    3. Clique em Abrir.

    4. Clique em Criar acionador.

      Na página Criar acionador, introduza as seguintes definições:

      1. Introduza um nome para o acionador.

      2. Selecione o evento do repositório para iniciar o acionador.

      3. Selecione o repositório que contém o código fonte e o ficheiro de configuração de compilação.

      4. Especifique a regex para o nome da ramificação ou da etiqueta que vai iniciar o acionador.

      5. Configuração: escolha o ficheiro de configuração de compilação que criou anteriormente.

    5. Clique em Criar para guardar o acionador de compilação.

Sempre que envia novo código para o repositório, inicia automaticamente uma compilação e uma implementação no Firebase.

Para mais informações sobre como criar acionadores do Cloud Build, consulte o artigo Criar e gerir acionadores de compilação.

Exemplo de código

Para ver um exemplo de código para implementação no Firebase através do Cloud Build, aceda a deploy-firebase-example.

O que se segue?