En esta página, se explica cómo implementar aplicaciones en Firebase con Cloud Build. Si eres nuevo en Cloud Build, primero lee las guías de inicio rápido y la descripción general de la configuración de compilación.
Antes de comenzar
-
Habilita las API de Cloud Build, Firebase, and Resource Manager.
Para ejecutar los comandos de
gcloud
en esta página, instala Google Cloud CLI.Mantén a mano el código fuente de tu aplicación incluido
firebase.json
. Tu código fuente se debe almacenar en un repositorio, como Cloud Source Repositories, GitHub o Bitbucket.Si aún no tienes un proyecto para implementar en Firebase, puedes crear un proyecto predeterminado mediante la instalación y la inicialización de Firebase.
Permisos de IAM obligatorios
Abre la página IAM en la consola de Google Cloud:
Selecciona tu proyecto y haz clic en Open.
En la tabla de permisos, busca el correo electrónico que termina en
@cloudbuild.gserviceaccount.com
y haz clic en el ícono de lápiz. Esta es la cuenta de servicio de Cloud Build.Agrega los roles
Cloud Build Service Account
,Firebase Admin
yAPI Keys Admin
.Haga clic en Save.
Cómo usar el compilador de comunidades firebase
Cloud Build proporciona una
imagen de Firebase Community Builder que puedes usar para invocar comandos de firebase
en Cloud Build. Para usar este compilador en un archivo de configuración de Cloud Build, primero debes compilar la imagen y enviarla a Container Registry en tu proyecto.
Para compilar y enviar el compilador de comunidades de firebase
:
Navega al directorio raíz de tu proyecto.
Clona el repositorio cloud-builders-community:
git clone https://github.com/GoogleCloudPlatform/cloud-builders-community.git
Navega a la imagen del compilador de
firebase
:cd cloud-builders-community/firebase
Envía el compilador a tu proyecto, en el que
REGION
es una de las regiones de compilación compatibles:gcloud builds submit --region=REGION .
Regresa al directorio raíz de su proyecto:
cd ../..
Quita el repositorio de tu directorio raíz:
rm -rf cloud-builders-community/
Configura la implementación
Después de compilar el constructor de la comunidad firebase
, puedes usar el paso de compilación firebase
en tu archivo de configuración de compilación para implementarlo en Firebase:
Crea un archivo de configuración de compilación llamado
cloudbuild.yaml
ocloudbuild.json
, en el queproject-id
sea el ID del proyecto de Google Cloud yfirebase-project-id
el ID del proyecto de 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" ] } ] }
Usa este comando para comenzar a compilar mediante el archivo de configuración de compilación:
gcloud builds submit --region=REGION --config config-file-path source-directory
Donde:
- config-file-path es la ruta de acceso al archivo de configuración de compilación.
- source-directory es la ruta o la URL del código fuente.
REGION
es una de las regiones de compilación compatibles.
Implementación continua
Puedes automatizar la implementación del software en Firebase si creas activadores de Cloud Build. Puedes configurar activadores para compilar y, luego, implementar imágenes cada vez que actualices tu código fuente.
Para automatizar tu implementación en Firebase, haz lo siguiente:
En tu repositorio, agrega un archivo de configuración de compilación con pasos para invocar el comando
firebase deploy
, en el que project-id es el ID del proyecto de 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" ] } ] }
Crea un activador con el archivo de configuración de compilación creado en el paso anterior:
Abre la página Activadores en la consola de Google Cloud:
Selecciona el proyecto en el menú desplegable del selector de proyectos, que se ubica en la parte superior de la página.
Haz clic en Abrir.
Haz clic en Crear activador.
En la página Crear activador, ingresa la siguiente configuración:
Ingresa un nombre para el activador.
Selecciona el evento del repositorio para iniciar el activador.
Selecciona el repositorio que contenga el código fuente y el archivo de configuración de compilación.
Especifica la regex de la rama o el nombre de la etiqueta que iniciará el activador.
Configuración: Elige el archivo de configuración de compilación que creaste con anterioridad.
Haz clic en Crear para guardar el activador de compilación.
Cada vez que envíes código nuevo a tu repositorio, comenzarás automáticamente una compilación y una implementación en Firebase.
Para obtener más información sobre cómo crear activadores de Cloud Build, consulta Crea y administra activadores de compilación.
Ejemplo de código
Para ver una muestra de código para implementar en Firebase con Cloud Build, dirígete a deploy-firebase-example.
¿Qué sigue?
- Aprende a realizar implementaciones azul-verde en Compute Engine.
- Consulta Implementa en Cloud Run.
- Consulta Implementa en GKE.
- Consulta Implementa en Cloud Functions
- Consulta Implementa en App Engine.
- Obtén más información sobre cómo solucionar errores de compilación.