Flujos de trabajo en equipo con aplicaciones Amplify Gen 1 completas - AWS Amplify Hospedaje

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Flujos de trabajo en equipo con aplicaciones Amplify Gen 1 completas

La implementación de una ramificación de características consta de un entorno frontend y otro backend opcional. El frontend se compila e implementa en una red de entrega de contenido (CDN), mientras que Amplify Studio o la CLI de Amplify implementan el backend en AWS. Para obtener información sobre cómo configurar este escenario de despliegue, consulteCreación de un backend para una aplicación.

Puede usar Amplify Hosting para implementar de forma continua recursos de backend como las API de GraphQL y las funciones de Lambda con su implementación de ramificaciones de características. Puede usar los siguientes modelos de ramificación para implementar su backend y frontend con Amplify Hosting.

Flujo de trabajo de ramificación de característica

  • Cree entornos de backend deproducción, pruebas y desarrollo con Amplify Studio o la CLI de Amplify.

  • Asigne el backend de producción a la ramificación principal.

  • Asigne el backend de pruebas a la ramificación de desarrollo.

  • Los miembros del equipo pueden usar el entorno de backend de desarrollo para probar ramificaciones de características individuales.

Un diagrama que muestra cómo mapear las relaciones entre los entornos de backend y las ramas de frontend.
  1. Instale la CLI de Amplify para inicializar un nuevo proyecto de Amplify.

    npm install -g @aws-amplify/cli
  2. Inicialice un entorno de backend de producción para su proyecto. Si no tienes un proyecto, crea uno con herramientas de bootstrap como create-react-app Gatsby.

    create-react-app next-unicorn cd next-unicorn amplify init ? Do you want to use an existing environment? (Y/n): n ? Enter a name for the environment: prod ... amplify push
  3. Añada entornos de backend de pruebas y desarrollo.

    amplify env add ? Do you want to use an existing environment? (Y/n): n ? Enter a name for the environment: test ... amplify push amplify env add ? Do you want to use an existing environment? (Y/n): n ? Enter a name for the environment: dev ... amplify push
  4. Inserte código en el repositorio de Git que elija (en este ejemplo supondremos que lo ha insertado en el principal).

    git commit -am 'Added dev, test, and prod environments' git push origin main
  5. Visite Amplify en AWS Management Console para ver su entorno de backend actual. Desplácese un nivel hacia arriba desde la ruta de navegación para ver una lista de todos los entornos de backend creados en la pestaña de Entornos de backend.

    Captura de pantalla de la consola Amplify que muestra todos los entornos de back-end asociados a una aplicación Amplify.
  6. Pase a la pestaña de Entornos de frontend y conecte su proveedor de repositorios con la ramificación principal.

  7. En la pantalla de configuración de compilación, seleccione un entorno de backend existente para configurar la implementación continua con la ramificación principal. Elija producción en el menú desplegable y conceda el rol de servicio a Amplify. Elija Guardar e implementar. Una vez que se complete la compilación, obtendrá una implementación de ramificaciones principales disponible en https://main.appid.amplifyapp.com.

    Captura de pantalla de la página Configurar los ajustes de compilación de la consola Amplify, que muestra dónde seleccionar un entorno de back-end para implementarlo con un entorno de frontend.
  8. Conecte la ramificación de desarrollo en Amplify (suponga que las ramificaciones de desarrollo y principales son las mismas en este momento). Elija el entorno de backend de pruebas.

    Captura de pantalla de la página Añadir sucursal de repositorio de la consola Amplify, en la que se muestra dónde seleccionar un entorno de back-end para implementarlo con una rama.
  9. Amplify ya está configurado. Puede empezar a trabajar en nuevas características en una ramificación de características. Añada la funcionalidad de backend mediante el entorno de backend de desarrollo desde su estación de trabajo local.

    git checkout -b newinternet amplify env checkout dev amplify add api ... amplify push
  10. Una vez que termine de trabajar en la característica, confirme su código y cree una solicitud de extracción para realizar una revisión interna.

    git commit -am 'Decentralized internet v0.1' git push origin newinternet
  11. Para obtener una vista previa de cómo se verán los cambios, vaya a la consola de Amplify y conecte su ramificación de características. Nota: Si lo tiene AWS CLI instalado en su sistema (no en la CLI de Amplify), puede conectar una sucursal directamente desde su terminal. Encontrará su appid yendo a App settings > General > AppARN (Configuración de la aplicación > General > AppARN): arn:aws:amplify:<region>:<region>:apps/<appid>

    aws amplify create-branch --app-id <appid> --branch-name <branchname> aws amplify start-job --app-id <appid> --branch-name <branchname> --job-type RELEASE
  12. Se podrá acceder a su característica en https://newinternet.appid.amplifyapp.com para compartirla con sus compañeros de equipo. Si todo parece correcto, combine las relaciones públicas en la ramificación de desarrollo.

    git checkout develop git merge newinternet git push
  13. De este modo se pondrá en marcha una compilación que actualizará el backend y el frontend en Amplify con una implementación de ramificaciones en https://dev.appid.amplifyapp.com. Puede compartir este enlace con las partes interesadas internas para que puedan revisar la nueva característica.

  14. Elimine su ramificación de características de Git, Amplify y quite el entorno de backend de la nube (siempre puede poner en marcha uno nuevo basado en la ejecución de “amplify env checkout prod” y de “amplify env add”).

    git push origin --delete newinternet aws amplify delete-branch --app-id <appid> --branch-name <branchname> amplify env remove dev

GitFlow flujo de trabajo

GitFlow utiliza dos ramas para registrar el historial del proyecto. La rama principal solo rastrea el código de la versión, y la rama de desarrollo se usa como rama de integración para nuevas funciones. GitFlow simplifica el desarrollo paralelo al aislar el desarrollo nuevo del trabajo terminado. El nuevo desarrollo (como correcciones de características y de errores no urgentes) se lleva a cabo en las ramificaciones de características. Cuando el desarrollador considera que el código está listo para lanzamiento, la ramificación de características se combina de nuevo en la ramificación de desarrollo de integración. Las únicas confirmaciones en la ramificación principal son combinaciones desde ramificaciones de lanzamiento y ramificaciones de correcciones (para corregir errores de emergencia).

El siguiente diagrama muestra una configuración recomendada con. GitFlow Puede seguir el mismo proceso tal como se describe en la sección sobre el flujo de trabajo de ramificación de característica anterior.

Un diagrama que muestra una configuración recomendada con GitFlow.

Entorno de pruebas por desarrollador

  • Cada desarrollador de un equipo crea un entorno de pruebas en la nube que es independiente de su equipo local. Esto permite a los desarrolladores trabajar de forma aislada entre sí sin sobrescribir los cambios de los demás miembros del equipo.

  • Cada ramificación de Amplify tiene su propio backend. Esto garantiza que Amplify utilice el repositorio de Git como una fuente única desde la que implementar cambios, en lugar de confiar a los desarrolladores del equipo que envíen manualmente su backend o frontend a producción desde sus equipos locales.

Un diagrama que muestra un flujo de trabajo limitado por desarrollador.
  1. Instale la CLI de Amplify para inicializar un nuevo proyecto de Amplify.

    npm install -g @aws-amplify/cli
  2. Inicialice el entorno de backend mary para su proyecto. Si no tienes un proyecto, crea uno con herramientas de bootstrap como Gatsby create-react-app .

    cd next-unicorn amplify init ? Do you want to use an existing environment? (Y/n): n ? Enter a name for the environment: mary ... amplify push
  3. Inserte código en el repositorio de Git que elija (en este ejemplo supondremos que lo ha insertado en el principal).

    git commit -am 'Added mary sandbox' git push origin main
  4. Conecte su repositorio > principal a Amplify.

  5. La consola de Amplify detectará los entornos de backend que ha creado la CLI de Amplify. Elija Crear nuevo entorno en el menú desplegable y conceda el rol de servicio a Amplify. Elija Guardar e implementar. Una vez que se complete la compilación, obtendrá una implementación de ramificaciones principales disponible en https://main.appid.amplifyapp.com con un nuevo entorno de backend que se enlaza a la ramificación.

  6. Conecta la rama de desarrollo en Amplify (asume que la rama de desarrollo y la rama principal son las mismas en este momento) y elige Crear