Implemente de forma continua una aplicación web AWS Amplify moderna desde un repositorio de AWS CodeCommit - Recomendaciones de AWS

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.

Implemente de forma continua una aplicación web AWS Amplify moderna desde un repositorio de AWS CodeCommit

Creado por Deekshitulu Pentakota (AWS) y Sai Katakam (AWS)

Entorno: PoC o piloto

Tecnologías: aplicaciones web y móviles; Modernización DevOps

Servicios de AWS: AWS Amplify; AWS CodeCommit

Resumen

Las aplicaciones web modernas se construyen como una sola página de aplicaciones (SPA) que engloban todos los componentes de la aplicación en archivos estáticos. Con AWS Amplify Hosting, puede diseñar un proceso de integración e implementación continuas (CI/CD) que cree, implemente y aloje una aplicación web moderna administrada en un repositorio basado en Git. Al conectar Amplify Hosting al repositorio de código, cada confirmación inicia un único flujo de trabajo para implementar el frontend y el backend de la aplicación. El beneficio de este enfoque es que la aplicación web se actualiza solo después de haber realizado correctamente la implementación, lo que elimina inconsistencias entre el front-end y el backend.

En este patrón, utiliza un CodeCommit repositorio de AWS para administrar su aplicación web moderna. La aplicación web de ejemplo que se incluye en estas instrucciones emplea el marco React SPA. Sin embargo, Amplify Hosting es compatible con muchos otros marcos SPA, como Angular, Vue o Next.js, y también con generadores de sitio único, como Gatsby, Hugo y Jekyll.

Este patrón está destinado a creadores de AWS que tienen experiencia con los siguientes servicios y conceptos:

  • AWS CodeCommit

  • AWS Amplify Hosting

  • React

  • JavaScript

  • Node.js

  • npm

  • Git

Requisitos previos y limitaciones

Requisitos previos

Limitaciones

  • Este patrón no aborda el desarrollo y la integración de un backend para la aplicación de Amplify, como API, autenticación o base de datos. Para obtener más información, consulte Crear un backend en la documentación de Amplify.

Versiones de producto

  • CLI de AWS versión 2.0

  • Node.js versión 16.x o posterior

Arquitectura

Pila de tecnología de destino

  • CodeCommitRepositorio de AWS que contiene un SPA de React

  • Flujo de trabajo de AWS Amplify Hosting

Arquitectura de destino

Diagrama de arquitectura de implementación de una aplicación web desde un CodeCommit repositorio y alojamiento con AWS Amplify

Herramientas

Servicios de AWS

  • AWS Amplify Hosting proporciona un flujo de trabajo basado en Git para alojar aplicaciones web sin servidor de pila completa con implementación continua.

  • AWS CodeCommit es un servicio de control de versiones que le ayuda a almacenar y gestionar repositorios de Git de forma privada, sin necesidad de gestionar su propio sistema de control de código fuente.

  • AWS Identity and Access Management (IAM) le permite administrar de forma segura el acceso a los recursos de AWS mediante el control de quién está autenticado y autorizado a utilizarlos.

Otras herramientas

  • Node.js es un entorno de JavaScript ejecución basado en eventos diseñado para crear aplicaciones de red escalables.

  • npm es un registro de software que se ejecuta en un entorno Node.js y se utiliza para compartir o tomar prestados paquetes y administrar la implementación de paquetes privados.

Epics

TareaDescripciónHabilidades requeridas

Creación de un repositorio.

Para obtener instrucciones, consulte Crear un CodeCommit repositorio de AWS en la CodeCommit documentación.

AWS DevOps

Clonar el repositorio.

Para obtener instrucciones, consulte Conectarse al CodeCommit repositorio mediante la clonación del repositorio en la CodeCommit documentación. Si se le solicita iniciar sesión, proporcione sus credenciales de Git.

Desarrollador de aplicaciones
TareaDescripciónHabilidades requeridas

Para crear una nueva aplicación React.

  1. Ingrese el comando siguiente para navegar en el repositorio clonado. <repo name>Sustitúyalo por el nombre de tu CodeCommit repositorio.

    $ cd <repo name>
  2. Ejecute el siguiente comando para crear una nueva aplicación de React en el repositorio clonado.

    $ npx create-react-app .
  3. Codifique la aplicación y, a continuación, ejecute el siguiente comando para iniciarla.

    $ npm start

Para obtener más información sobre cómo crear una aplicación React personalizada, consulte las instrucciones Crear una aplicación React en la documentación de Crear una aplicación React. También puede implementar una aplicación React de muestra en su cuenta de Amplify siguiendo las instrucciones de Implementar un frontend en la documentación de Amplify.

Desarrollador de aplicaciones

Cree una ramificación e introduzca el código.

  1. Ejecute el siguiente comando para crear una nueva ramificación local. <branch> es el nombre que desea asignar a la nueva ramificación.

    $ git checkout -b <branch>
  2. Ingresa el siguiente comando para enviar la rama al CodeCommit repositorio, donde <branch> está el nombre que asignaste en el paso anterior. Para obtener más información, consulte Trabajar con confirmaciones.

    $ git push --set-upstream origin <branch>
Desarrollador de aplicaciones
TareaDescripciónHabilidades requeridas

Conecte Amplify al repositorio.

Para obtener más instrucciones, consulte Conectar un repositorio en la documentación de Amplify Hosting. Seleccione AWS CodeCommit y el repositorio y la rama que creó anteriormente.

Desarrollador de aplicaciones

Defina la configuración de compilación del frontend.

Para obtener más instrucciones, consulte Confirmar la configuración de compilación de frontend en la documentación de Amplify Hosting. Acepte los valores predeterminados o introduzca los siguientes.

Build settings: version: 0.1 frontend: phases: preBuild: commands: - npm ci build: commands: - npm run build artifacts: baseDirectory: build files: - '**/*' cache: paths: - node_modules/**/*
Desarrollador de aplicaciones

Revise e implemente.

Para obtener más instrucciones, consulte Guardar e implementar en la documentación de Amplify Hosting. Espere hasta que se complete el proceso de implementación.

Desarrollador de aplicaciones
TareaDescripciónHabilidades requeridas

Verifique la implementación inicial.

Cuando se complete el proceso de implementación, seleccione el enlace en Dominio. Compruebe que la aplicación funciona según lo previsto.

Desarrollador de aplicaciones

Envíe los cambios al repositorio de código.

Edite el código en su estación de trabajo local e inserte los cambios en el CodeCommit repositorio. Amplify Hosting detectará el cambio en el repositorio e iniciará automáticamente el proceso de creación e implementación. Confirme que las actualizaciones de la aplicación sean visibles en el dominio.

Desarrollador de aplicaciones

Recursos relacionados

CodeCommit Documentación de AWS

Documentación de AWS Amplify Hosting

Recursos de React