Administrar lanzamientos y versiones

Si tienes habilitados los lanzamientos automáticos, cada vez que envíes una confirmación nueva a la rama activa de tu repositorio de GitHub, App Hosting lanzará automáticamente una versión nueva de tu app. Puedes verificar el estado del lanzamiento en la consola de Firebase o en la verificación de GitHub de App Hosting.

Además, App Hosting admite lanzamientos activados de forma manual para la integración de CI/CD o cualquier otro caso en el que desees forzar un lanzamiento.

Cómo ver los lanzamientos

La consola de Firebase proporciona acceso a información detallada sobre todos los lanzamientos de tu app. En la pestaña App Hosting, selecciona Ver panel para el backend cuyos lanzamientos deseas ver. El panel muestra información sobre el lanzamiento actual, junto con una tabla que indica el historial de todos los lanzamientos de este backend.

Captura de pantalla de la vista de lanzamientos de la consola

Cada lanzamiento contiene una confirmación de git, un trabajo Cloud Build y una revisión Cloud Run.

  • La confirmación de Git es la instantánea de tu repositorio en el momento en que se crea el lanzamiento.
  • El trabajo Cloud Build es el entorno de compilación en el que App Hosting ejecuta el comando de compilación de tu app. Para acceder a los registros de Cloud Build, haz clic en el ID de compilación en Firebase console.
  • La revisión Cloud Run es el entorno de ejecución de tu app web. Para obtener más información sobre la configuración del entorno de ejecución de un lanzamiento (como los límites de CPU y memoria, y las variables de entorno), haz clic en el menú de tres puntos y selecciona Ver revisión Cloud Run.

Cómo activar un lanzamiento de forma manual

Si deseas activar manualmente un lanzamiento desde tu fuente de GitHub sin enviar una confirmación nueva, puedes crear un lanzamiento desde la consola de Firebase o la CLI de Firebase. Esto es útil en los siguientes casos:

  • Forzar la regeneración de contenido estático
  • Permitir que un sistema de CI/CD active lanzamientos
  • Limitar los lanzamientos de producción a fechas o horas específicas

Para activar un lanzamiento en Firebase console, sigue estos pasos:

  1. En la pestaña App Hosting, selecciona Ver panel para el backend para el que deseas crear un lanzamiento.
  2. En el panel de backend, selecciona Crear lanzamiento.
  3. Selecciona la rama que quieres implementar.
  4. Selecciona la confirmación que deseas implementar, ya sea la más reciente o una anterior, según su ID de confirmación.
  5. Seleccione Crear. El estado y un número de compilación del lanzamiento se muestran en la tabla de historial de lanzamientos. Cuando se completa el proceso de lanzamiento, este se muestra como el lanzamiento actual.

Para activar un lanzamiento en la CLI de Firebase, ejecuta el siguiente comando y selecciona la rama para el lanzamiento cuando se te solicite:

firebase apphosting:rollouts:create BACKEND_ID

Como alternativa, puedes iniciar una implementación para la confirmación más reciente de una rama específica con la opción --git-branch:

firebase apphosting:rollouts:create BACKEND_ID
--git_branch BRANCH_NAME

También puedes crear un lanzamiento con una confirmación específica mediante la opción --git-commit:

firebase apphosting:rollouts:create BACKEND_ID
--git_commit COMMIT_ID

Cambia la configuración del lanzamiento

Puedes cambiar la rama publicada para los lanzamientos y habilitar o inhabilitar los lanzamientos automáticos con los controles de la vista Configuración > Implementación en el panel de un backend.

  1. En la pestaña App Hosting, selecciona Ver panel para el backend en el que deseas actualizar la configuración del lanzamiento.
  2. En el panel del backend, selecciona Configuración. La vista predeterminada muestra información sobre los dominios y los dominios personalizados.
  3. Selecciona la vista Deployment. En esta vista, puedes cambiar la rama publicada para los lanzamientos y habilitar o inhabilitar los lanzamientos automáticos. Además, hay opciones para configurar el directorio raíz de la app y el entorno para el backend (consulta Cómo implementar en varios entornos).