Estoy tratando de implementar mi aplicación reactJs en Amplify. Tengo mi Github conectado a Amplify. Durante la implementación, muestra el siguiente error en el paso de compilación:
2020-01-07T19:35:22.127Z [INFO]: Failed to compile. 2020-01-07T19:35:22.129Z [INFO]: ./src/index.js Cannot find file './aws-exports' in './src'. 2020-01-07T19:35:22.149Z [WARNING]: error Command failed with exit code 1. 2020-01-07T19:35:22.150Z [INFO]: info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command. 2020-01-07T19:35:22.155Z [ERROR]: !!! Build failed 2020-01-07T19:35:22.239Z [ERROR]: !!! Non-Zero Exit Code detected 2020-01-07T19:35:22.239Z [INFO]: # Starting environment caching... Esto sucede porque .gitignore ignora las exportaciones de aws. ¿Puede alguien decirme cuál es la solución a este problema sin comprometer aws-exports?
He experimentado el mismo problema en mi primera compilación.
La documentación de Amplify no es específica sobre cómo debe mantener sus compilaciones cuando usa la Consola de Amplify, pero la rutina que funcionó para mí fue:
Usted genera su archivo aws-exports cuando ejecuta un comando de inserción de amplify push exitoso.
Archivo aws-exports.js Este archivo se genera solo para proyectos de JavaScript. Contiene los resultados consolidados de todas las categorías y se coloca en el directorio src que el usuario (el desarrollador) especificó durante el proceso de inicio. Se actualiza después de cada ejecución exitosa del comando de inserción de amplificación, que ha creado o actualizado los recursos de la nube.
En base a eso, actualicé mi configuración en la consola de Amplify para implementar también mi backend. Puede aprender a configurar uno propio en https://docs.aws.amazon.com/amplify/latest/userguide/build-settings.html
backend: phases: build: commands: - '# Execute Amplify CLI with the helper script' - amplifyPush --simple Una vez finalizada la compilación de backend, se genera el archivo para mi próximo trabajo, que es la compilación de frontend que consume el archivo aws-exports .
Nota: si está utilizando eslint, puede tener un problema con el formato de salida del archivo. Puede agregar un comando eslint --fix en su frontend preBuild
Actualización: como mencionó lucdenz , también debe configurar un rol de servicio
Fuentes que utilicé: