Para las aplicaciones de producción, debe configurar un flujo de trabajo de desarrollo claro, especialmente si tiene más de una persona trabajando en su aplicación. Un flujo de trabajo de desarrollo generalmente implica configurar y administrar múltiples entornos.
Firebase tiene varios niveles de soporte para los flujos de trabajo de los desarrolladores y los entornos constituyentes. Una vez que esté familiarizado con los términos y suposiciones del flujo de trabajo del desarrollador en esta página, consulte nuestras prácticas recomendadas generales y las pautas generales de seguridad para configurar un proyecto de Firebase y sus aplicaciones.
Acerca de los entornos
En el desarrollo de software, un entorno es todo el hardware y software que se requiere para ejecutar una instancia de una aplicación o sistema de aplicaciones.
Una serie de entornos proporciona aislamiento para desarrollar y probar software sin afectar a los usuarios. Como se muestra en el siguiente diagrama, los entornos de alto nivel se consideran preproducción o producción , y puede tener tantos entornos de preproducción como necesite. El diagrama también describe prácticas y características comunes asociadas con cada tipo de entorno .
El proceso de avance de una función o versión a través de estos entornos hasta la producción se denomina canalización de implementación .
Tipos de ambientes
Un entorno se compone de la infraestructura subyacente que necesita para ejecutar y admitir su aplicación, su código y sus datos. Amplíe cada uno de los siguientes términos para revisar las descripciones de algunos entornos comunes, incluidas sugerencias sobre los tipos de datos utilizados en cada tipo de entorno.
Todo desarrollador necesita un entorno de desarrollo: un lugar seguro y aislado para probar los cambios a medida que se crean. Idealmente, cada desarrollador de su equipo tiene acceso a su propio entorno de desarrollo. Además, si el entorno de desarrollo es una instancia local, un desarrollador puede iterar mucho más rápido.
Los datos en un entorno de desarrollo se siembran con datos que generalmente se asemejan a los datos de producción, pero nunca deben contener datos de usuarios reales. También puede contener datos que hayan causado errores en el pasado, como cadenas muy largas.
Si tiene pruebas automatizadas, necesita un entorno en el que ejecutar esas pruebas y debe restablecer los datos cada vez que activa el entorno de prueba.
Si tiene ingenieros de control de calidad, es posible que necesiten un entorno que todos usen, o pueden necesitar entornos individuales para probar una nueva versión candidata.
Los datos en los entornos de prueba y control de calidad se siembran con datos de calidad que generalmente son representativos de los datos de producción, junto con datos que representan casos extremos y ejemplos de datos que han causado errores en el pasado.
Para realizar pruebas realistas de cómo funcionará una versión en producción, necesita un entorno de ensayo que imite la infraestructura de producción lo más fielmente posible. Es común tener varias instancias de preparación si necesita probar integraciones específicas de forma aislada.
Estas son las diferencias comunes entre la puesta en escena y la producción:
Es posible que a la puesta en escena le falten algunas características o integraciones que podrían causar efectos secundarios. Por ejemplo, la preparación puede configurarse para no enviar correos electrónicos.
La puesta en escena puede tener datos anónimos; los datos pueden ser falsos, pero deben ser realistas. Debido a que la preparación es un lugar para depurar problemas de forma segura, puede otorgar un acceso más amplio al equipo a los datos de preparación que a los datos de producción. Por lo tanto, para proteger la privacidad del usuario, no debe usar datos reales del usuario en la preparación.
Para cada aplicación que mantiene, necesita un único entorno de producción. Esta es la instancia con la que interactúan sus usuarios.
A diferencia de otros entornos donde puede cambiar, eliminar y/o recrear datos, los datos en su entorno de producción son muy importantes; perder o alterar sus datos de producción afectará directamente a sus usuarios.
En la consola de Firebase, recomendamos etiquetar el proyecto de Firebase asociado con su entorno de producción como un tipo de entorno de "producción" . Esta etiqueta puede ayudar a recordarle a usted y a sus compañeros de equipo que cualquier cambio podría afectar sus aplicaciones de producción asociadas y sus datos.
Próximos pasos
Revisa nuestras prácticas recomendadas generales para configurar proyectos de Firebase. Esta guía responde preguntas sobre la jerarquía de proyectos de Firebase, cómo registrar las variantes de su aplicación y la multiempresa.
Revise las pautas generales de seguridad para diferentes entornos. Desea asegurarse de que cada entorno y sus datos estén seguros.
Revise la lista de verificación de lanzamiento de Firebase .