AWS Amplify Fails to Build and Compile Without Error Logs
Asked Answered
D

3

5

Amplify refuses to build my webapp from a git repo and does not throw any errors in the logs or even a reason to why it failed to compile. I can however build it locally and then upload the already built webapp to amplify (and it works). My build config Amplify.yml:

version: 1
applications:
  - frontend:
      phases:
        preBuild:
          commands:
            - npm ci
            - npm install --global npm@latest
        build:
          commands:
            - npm run build
      artifacts:
        baseDirectory: build
        files:
          - '**/*'
    appRoot: webapp

This is my (useless) build log file (and yes, that is the whole file, there is nothing after "Failed to compile"):

2020-11-20T10:25:10.766Z [INFO]: Git SSH Key acquired
2020-11-20T10:25:10.836Z [INFO]: # Cloning repository: [email protected]:mycompany.ai/webapp.git
2020-11-20T10:25:10.844Z [INFO]: Agent pid 124
2020-11-20T10:25:10.911Z [INFO]: Identity added: /root/.ssh/git_rsa (/root/.ssh/git_rsa)
2020-11-20T10:25:11.161Z [INFO]: Cloning into 'webapp'...
2020-11-20T10:25:11.945Z [INFO]: Warning: Permanently added the ECDSA host key for IP address '172.65.251.78' to the list of known hosts.
2020-11-20T10:25:18.866Z [INFO]: # Switching to commit: 749183a0d624dca0f0d58822a0
2020-11-20T10:25:18.950Z [INFO]: Agent pid 137
2020-11-20T10:25:18.953Z [INFO]: Identity added: /root/.ssh/git_rsa (/root/.ssh/git_rsa)
2020-11-20T10:25:19.383Z [INFO]: Note: checking out '749183a0d624dc9545d8af0d58822a0'.
                                 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 74913a0 Merge branch '32-AWS-Not-building' into 'develop'
2020-11-20T10:25:19.419Z [INFO]: Successfully cleaned up Git credentials
2020-11-20T10:25:19.419Z [INFO]: # Checking for Git submodules at: /codebuild/output/src0496768/src/webapp/.gitmodules
2020-11-20T10:25:19.458Z [INFO]: # Retrieving cache...
2020-11-20T10:25:19.544Z [INFO]: # Extracting cache...
2020-11-20T10:25:19.552Z [INFO]: # Extraction completed
2020-11-20T10:25:19.552Z [INFO]: # Retrieving environment cache...
2020-11-20T10:25:19.567Z [INFO]: # Retrieved environment cache
2020-11-20T10:25:47.515Z [INFO]: ## Starting Frontend Build
                                 # Starting phase: preBuild
                                 # Executing command: npm ci
2020-11-20T10:26:07.281Z [INFO]: > [email protected] postinstall /codebuild/output/src06768/src/webapp/webapp/node_modules/core-js
                                 > node -e "try{require('./postinstall')}catch(e){}"
2020-11-20T10:26:07.340Z [INFO]: Thank you for using core-js ( https://github.com/zloirock/core-js ) for polyfilling JavaScript standard library!
                                 The project needs your help! Please consider supporting of core-js on Open Collective or Patreon:
                                 > https://opencollective.com/core-js
                                 > https://www.patreon.com/zloirock
                                 Also, the author of core-js ( https://github.com/zloirock ) is looking for a good job -)
2020-11-20T10:26:07.475Z [INFO]: > [email protected] install /codebuild/output/src046596768/src/webapp/webapp/node_modules/jest-haste-map/node_modules/fsevents
                                 > node install.js
2020-11-20T10:26:07.532Z [INFO]: 
2020-11-20T10:26:07.532Z [INFO]: Skipping 'fsevents' build as platform linux is not supported
2020-11-20T10:26:07.591Z [INFO]: > [email protected] postinstall /codebuild/output/src046596768/src/webapp/webapp/node_modules/react-vertical-timeline-component
                                 > node lib/post_install.js
2020-11-20T10:26:07.792Z [INFO]: > [email protected] install /codebuild/output/src046596768/src/webapp/webapp/node_modules/chokidar/node_modules/fsevents
                                 > node install.js
2020-11-20T10:26:07.849Z [INFO]: 
2020-11-20T10:26:07.850Z [INFO]: Skipping 'fsevents' build as platform linux is not supported
2020-11-20T10:26:07.919Z [INFO]: > [email protected] postinstall /codebuild/output/src046596768/src/webapp/webapp/node_modules/react-app-polyfill/node_modules/core-js
                                 > node -e "try{require('./postinstall')}catch(e){}"
2020-11-20T10:26:08.121Z [INFO]: > [email protected] install /codebuild/output/src046596768/src/webapp/webapp/node_modules/node-sass
                                 > node scripts/install.js
2020-11-20T10:26:08.974Z [INFO]: Downloading binary from https://github.com/sass/node-sass/releases/download/v4.13.0/linux-x64-64_binding.node
2020-11-20T10:26:09.930Z [INFO]: Download complete
2020-11-20T10:26:09.933Z [INFO]: Binary saved to /codebuild/output/src046596768/src/webapp/webapp/node_modules/node-sass/vendor/linux-x64-64/binding.node
2020-11-20T10:26:09.968Z [INFO]: > [email protected] postinstall /codebuild/output/src046596768/src/webapp/webapp/node_modules/node-sass
                                 > node scripts/build.js
2020-11-20T10:26:10.104Z [INFO]: Binary found at /codebuild/output/src046596768/src/webapp/webapp/node_modules/node-sass/vendor/linux-x64-64/binding.node
2020-11-20T10:26:10.105Z [INFO]: Testing binary
2020-11-20T10:26:10.197Z [INFO]: Binary is fine
2020-11-20T10:26:10.226Z [INFO]: > [email protected] postinstall /codebuild/output/src046596768/src/webapp/webapp/node_modules/fast-xml-parser
                                 > node tasks/postinstall.js || exit 0
2020-11-20T10:26:10.278Z [INFO]: [96m[1mLove fast-xml-parser? Check [32mhttps://amitkumargupta.work [96m[1mfor more projects and contribution.[0m
2020-11-20T10:26:10.339Z [INFO]: > [email protected] postinstall /codebuild/output/src046596768/src/webapp/webapp/node_modules/@amcharts/amcharts4/node_modules/core-js
                                 > node -e "try{require('./postinstall')}catch(e){}"
2020-11-20T10:26:10.402Z [INFO]: added 2516 packages in 22.075s
2020-11-20T10:26:10.422Z [INFO]: # Executing command: npm install --global npm@latest
2020-11-20T10:26:15.062Z [INFO]: /root/.nvm/versions/node/v10.16.0/bin/npm -> /root/.nvm/versions/node/v10.16.0/lib/node_modules/npm/bin/npm-cli.js
2020-11-20T10:26:15.063Z [INFO]: /root/.nvm/versions/node/v10.16.0/bin/npx -> /root/.nvm/versions/node/v10.16.0/lib/node_modules/npm/bin/npx-cli.js
2020-11-20T10:26:15.441Z [INFO]: + [email protected]
                                 added 41 packages from 16 contributors, removed 33 packages and updated 86 packages in 4.672s
2020-11-20T10:26:15.450Z [INFO]: # Completed phase: preBuild
                                 # Starting phase: build
2020-11-20T10:26:15.450Z [INFO]: # Executing command: npm run build
2020-11-20T10:26:15.636Z [INFO]: > [email protected] build /codebuild/output/src046596768/src/webapp/webapp
                                 > react-scripts build
2020-11-20T10:26:16.817Z [INFO]: Setting NODE_PATH to resolve modules absolutely has been deprecated in favor of setting baseUrl in jsconfig.json (or tsconfig.json if you are using TypeScript) and will be removed in a future major release of create-react-app.
2020-11-20T10:26:16.817Z [INFO]: 
2020-11-20T10:26:16.818Z [INFO]: Creating an optimized production build...
2020-11-20T10:26:18.245Z [INFO]: Failed to compile.

This is my package.json with all the dependencies:

{
  "name": "architectui-react-pro",
  "version": "1.6.0",
  "private": true,
  "description": "My Descritpion",
  "author": "Me",
  "repository": {
    "type": "git",
    "url": "git+https://github.com/dpackdev/architectui-react-pro"
  },
  "dependencies": {
    "@amcharts/amcharts4": "^4.9.30",
    "@fortawesome/fontawesome-svg-core": "^1.2.25",
    "@fortawesome/free-solid-svg-icons": "^5.11.2",
    "@fortawesome/react-fontawesome": "^0.1.4",
    "@material-ui/core": "^4.11.0",
    "@mrblenny/react-flow-chart": "0.0.12",
    "@types/googlemaps": "^3.38.0",
    "@types/markerclustererplus": "^2.1.33",
    "animate-sass": "^0.8.2",
    "apexcharts": "^3.8.6",
    "aws-amplify": "^3.3.8",
    "aws-amplify-react": "^4.2.12",
    "axios": "^0.21.0",
    "classnames": "^2.2.6",
    "d3": "^5.16.0",
    "jquery": "^3.4.1",
    "jw-react-pagination": "^1.1.0",
    "loaders.css": "^0.1.2",
    "node-sass": "^4.13.0",
    "ol": "^5.3.1",
    "pe7-icon": "^1.0.4",
    "rc-tabs": "^9.6.7",
    "react": "^16.13.1",
    "react-apexcharts": "^1.3.3",
    "react-app-polyfill": "^1.0.4",
    "react-burgers": "^1.3.0",
    "react-circle": "^1.1.1",
    "react-countup": "^4.2.2",
    "react-d3-graph": "^2.5.0",
    "react-dom": "^16.12.0",
    "react-flagkit": "^1.0.2",
    "react-icons": "^3.8.0",
    "react-ladda": "^6.0.0",
    "react-loaders": "^3.0.1",
    "react-metismenu": "^1.4.0",
    "react-motion-drawer": "^3.1.0",
    "react-perfect-scrollbar": "^1.5.3",
    "react-rating": "^1.7.2",
    "react-redux": "^7.1.1",
    "react-resize-detector": "^4.2.1",
    "react-responsive-tabs": "^3.3.0",
    "react-router-dom": "^5.1.0",
    "react-scripts": "3.0.0",
    "react-select": "^2.4.4",
    "react-slick": "^0.26.1",
    "react-sparklines": "^1.7.0",
    "react-sweet-progress": "^1.1.2",
    "react-table": "^6.10.3",
    "react-toastify": "^5.4.0",
    "react-transition-group": "^1.2.1",
    "react-vertical-timeline-component": "^2.5.0",
    "reactstrap": "^8.0.1",
    "recharts": "^1.8.5",
    "redux": "^4.0.4",
    "sweetalert-react": "^0.4.11",
    "typescript": "^3.4.5",
    "@react-native-community/netinfo": "^5.5.0",
    "react-native": "0.63.2"
  },
  "scripts": {
    "start": "react-scripts start",
    "build": "react-scripts build",
    "test": "react-scripts test",
    "eject": "react-scripts eject"
  },
  "eslintConfig": {
    "extends": "react-app"
  },
  "browserslist": [
    ">0.2%",
    "not dead",
    "not ie <= 11",
    "not op_mini all"
  ],
  "devDependencies": {
    "@babel/plugin-proposal-class-properties": "^7.10.4",
    "babel-core": "^6.26.3"
  }
}

As anyone had this issue before? How can I solve it? Thank you! Tiago

Diskson answered 20/11, 2020 at 11:26 Comment(3)
I would love to know if and how you solved this issue. I have the same thing now. Builds locally but fails with no error messages, exact same as yours.Swallowtailed
Any update? I'm also having a similar issues, use to build fine, now errors out during "Cloning Repository" stage, no downloadable logs and the visible logs on the page appear incomplete. And I'm building from an AWS CodeCommit repo!Crumpton
Had that problem either, everything works great, then I did some changes to my app and redeploy it to GitHub and Amplify keep saying "Failed to compile". The problem was that I renamed a file, and the change was case sensitive (about.js => About.js), and my git didn't commit that change (because it was only case sensitive change..). I suggest you will git pull the project (local or ec2) and then run the npm ci & npm run build => then the console will tell you the problem.Lunalunacy
L
4

I have had the same compiler failure. That is because i renamed one of folder name included in one of the paths, I have renamed the Yyyy folder name to be yyyy. Apparently codecommit can't figure this out.

ex: import video from './xxx/Yyyy/zzz.js';

Latter answered 9/12, 2020 at 9:34 Comment(1)
Great answer indeed! I did changed filename this way recently and was confused by failing builds. As for those who are looking for resolving this on Git, compare your filenames with that on Git and fix any differences according to this post: #17683958Expediency
L
3

Had that problem either, everything works great, then I did some changes to my app and redeploy it to GitHub and Amplify keep saying "Failed to compile".

The problem was that I renamed a file, and the change was case sensitive (about.js => About.js), and my git didn't commit that change (because it was only case sensitive change..).

I suggest you will git pull the project (local or ec2) and then run the npm ci npm run build => then the console will tell you the problem.

Lunalunacy answered 14/2, 2021 at 12:41 Comment(0)
S
-1

I would suggest you delete the app on AWS amplify, then run the app locally and check for errors before going back to AWS amplify.

Spiros answered 5/6, 2023 at 22:36 Comment(1)
Your answer could be improved with additional supporting information. Please edit to add further details, such as citations or documentation, so that others can confirm that your answer is correct. You can find more information on how to write good answers in the help center.Uriia

© 2022 - 2024 — McMap. All rights reserved.