2

I just recently started using Amazon's AWS basic plan, I am using the AWS-Amplify for uploading react applications and I usually used yarn with create react-app. I am not sure if it has conflicts with the AWS tutorial using npm but I got it right and had success with the building and deployment. However, when I added the Auth functionalities it only worked on my local but the build fails on deployment. This is the error log:

2020-06-23T17:07:34.078Z [INFO]: Git SSH Key acquired
2020-06-23T17:07:34.155Z [INFO]: # Cloning repository: git@github.com:mav1283/amplifyapp.git
2020-06-23T17:07:34.273Z [INFO]: Agent pid 131
2020-06-23T17:07:34.329Z [INFO]: Identity added: /root/.ssh/git_rsa (/root/.ssh/git_rsa)
2020-06-23T17:07:34.558Z [INFO]: Cloning into 'amplifyapp'...
2020-06-23T17:07:35.697Z [INFO]: Warning: Permanently added the RSA host key for IP address '13.229.188.59' to the list of known hosts.
2020-06-23T17:07:38.298Z [INFO]: # Switching to commit: 2d93cd9fca8f302a1390bce33985acccf97a8263
2020-06-23T17:07:38.388Z [INFO]: Note: checking out '2d93cd9fca8f302a1390bce33985acccf97a8263'.
                                 You are in 'detached HEAD' state. You can look around, make experimental
                                 changes and commit them, and you can discard any commits you make in this
                                 state without impacting any branches by performing another checkout.
                                 If you want to create a new branch to retain commits you create, you may
                                 do so (now or later) by using -b with the checkout command again. Example:
                                 git checkout -b <new-branch-name>
                                 HEAD is now at 2d93cd9 add auth
2020-06-23T17:07:38.389Z [INFO]: # Checking for Git submodules at: /codebuild/output/src043707224/src/amplifyapp/.gitmodules
2020-06-23T17:07:38.411Z [INFO]: # Retrieving cache...
2020-06-23T17:07:40.086Z [INFO]: # Extracting cache...
2020-06-23T17:07:43.479Z [INFO]: # Extraction completed
2020-06-23T17:07:43.604Z [INFO]: # Retrieving environment cache...
2020-06-23T17:07:43.642Z [INFO]: # Retrieved environment cache
2020-06-23T17:08:17.476Z [INFO]: ## Starting Frontend Build
                                 # Starting phase: preBuild
                                 # Executing command: yarn install
2020-06-23T17:08:18.203Z [INFO]: yarn install v1.16.0
2020-06-23T17:08:18.305Z [INFO]: [1/4] Resolving packages...
2020-06-23T17:08:18.838Z [INFO]: [2/4] Fetching packages...
2020-06-23T17:08:48.710Z [INFO]: info fsevents@2.1.2: The platform "linux" is incompatible with this module.
2020-06-23T17:08:48.712Z [INFO]: info "fsevents@2.1.2" is an optional dependency and failed compatibility check. Excluding it from installation.
2020-06-23T17:08:48.719Z [INFO]: info fsevents@1.2.13: The platform "linux" is incompatible with this module.
2020-06-23T17:08:48.723Z [INFO]: info "fsevents@1.2.13" is an optional dependency and failed compatibility check. Excluding it from installation.
                                 info fsevents@2.1.3: The platform "linux" is incompatible with this module.
                                 info "fsevents@2.1.3" is an optional dependency and failed compatibility check. Excluding it from installation.
2020-06-23T17:08:48.728Z [INFO]: [3/4] Linking dependencies...
2020-06-23T17:08:48.732Z [WARNING]: warning "@aws-amplify/ui-react > @aws-amplify/ui-components@0.5.2" has unmet peer dependency "@aws-amplify/auth@^2.1.5".
                                    warning "@aws-amplify/ui-react > @aws-amplify/ui-components@0.5.2" has unmet peer dependency "@aws-amplify/core@^2.2.4".
                                    warning "@aws-amplify/ui-react > @aws-amplify/ui-components@0.5.2" has unmet peer dependency "@aws-amplify/xr@^1.1.5".
                                    warning " > @testing-library/user-event@7.2.1" has unmet peer dependency "@testing-library/dom@>=5".
2020-06-23T17:08:48.734Z [WARNING]: warning "aws-amplify > @aws-amplify/api@3.1.17" has incorrect peer dependency "@aws-amplify/pubsub@^2.1.1".
                                    warning "aws-amplify > @aws-amplify/datastore@2.2.4" has unmet peer dependency "@react-native-community/netinfo@^5.5.0".
                                    warning "aws-amplify > @aws-amplify/api > @aws-amplify/api-graphql@1.1.0" has incorrect peer dependency "@aws-amplify/pubsub@^2.1.1".
2020-06-23T17:08:48.736Z [WARNING]: warning "react-scripts > @typescript-eslint/eslint-plugin > tsutils@3.17.1" has unmet peer dependency "typescript@>=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta".
2020-06-23T17:08:56.100Z [INFO]: [4/4] Building fresh packages...
2020-06-23T17:08:57.025Z [INFO]: Done in 38.83s.
2020-06-23T17:08:57.047Z [INFO]: # Completed phase: preBuild
                                 # Starting phase: build
                                 # Executing command: yarn run build
2020-06-23T17:08:57.210Z [INFO]: yarn run v1.16.0
2020-06-23T17:08:57.237Z [INFO]: $ react-scripts build
2020-06-23T17:08:58.125Z [INFO]: Creating an optimized production build...
2020-06-23T17:08:59.577Z [INFO]: Failed to compile.
2020-06-23T17:08:59.579Z [INFO]: ./src/index.js
                                 Cannot find file './aws-exports' in './src'.
2020-06-23T17:08:59.596Z [WARNING]: error Command failed with exit code 1.
2020-06-23T17:08:59.597Z [INFO]: info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.
2020-06-23T17:08:59.602Z [ERROR]: !!! Build failed
2020-06-23T17:08:59.677Z [ERROR]: !!! Non-Zero Exit Code detected
2020-06-23T17:08:59.677Z [INFO]: # Starting environment caching...
2020-06-23T17:08:59.678Z [INFO]: # Environment caching completed
Terminating logging...
Twirlman
  • 1,109
  • 2
  • 12
  • 30
  • 1
    from the error log, it seems you haven't committed your `aws-exports.js` file to git? Is that the case? That file contains the necessary information to hook up your project to the associated resources (like cognito identity id) – kkesley Jun 24 '20 at 03:26
  • I think i added everything on my git add ., it just won't upload @kkesley – Twirlman Jun 24 '20 at 03:41
  • more details at: https://stackoverflow.com/questions/59708481/aws-amplify-deploy-failure-due-to-aws-exports – Akber Iqbal Sep 04 '20 at 11:06

2 Answers2

2

For security reasons aws-exports.js is added to git ignore by default on amplify projects. This file is generated when you run the amplify push command.

backend:
  phases:
    # IMPORTANT - Please verify your build commands
    build:
      commands:
        - '# Execute Amplify CLI with the helper script'
        - amplifyPush --simple

Make sure you have amplifyPush --simple on your Build Settings -> amplify.yml file so you generate aws-exports on your amplify builds

Kevin Gelpes
  • 581
  • 4
  • 6
  • I think the aws tutorial is outdated? they're using amplify push --y instead, i tried the amplify push --simple but still fails, should i just remove the aws-exports.js on gitignore? @Kevin Gelpes – Twirlman Jun 24 '20 at 03:55
2

Creating the service role and changing the CLI version worked for me. If you do one and not the other you will not solve the problem. So create the service role and update the CLi version in the advanced settings to latest. That will work like magic.