vercel / next.js

The React Framework
https://nextjs.org
MIT License
125.82k stars 26.85k forks source link

Deployment Error on NOW #4371

Closed williamli closed 6 years ago

williamli commented 6 years ago

Next.js version: 6.0.2

  1. Build a simple Next.js project by
mkdir next-test
cd next-test
npm init -y
npm install --save react react-dom next
  1. Add deploy scripts to package.json
  "scripts": {
    "dev": "next",
    "build": "next build",
    "start": "next start"
  }
  1. Deploy to NOW
now

Error shows up during the build log:

Deploying ~/projects/tmp/next-test under ###

Using Node.js 8.11.1 (default) https://next-test-cqdudbobrb.now.sh [in clipboard] (sfo1) [5s] Synced 9 files (306.47KB) [5s] Building… ▲ npm install ✓ Using "package-lock.json" ⧗ Installing 3 main dependencies… events.js:183 Error: Invalid tar header. Maybe the tar is corrupted or it needs to be gunzipped?

at Object.exports.decode (/snapshot/ace/node_modules/tar-stream/headers.js:270:43)
at Extract.onheader [as _onparse] (/snapshot/ace/node_modules/tar-stream/extract.js:120:39)
at Extract._write (/snapshot/ace/node_modules/tar-stream/extract.js:243:8)
at Extract._continue (/snapshot/ace/node_modules/tar-stream/extract.js:207:28)
at oncontinue (/snapshot/ace/node_modules/tar-stream/extract.js:64:10)
at Extract.onheader [as _onparse] (/snapshot/ace/node_modules/tar-stream/extract.js:128:7)
at Extract._write (/snapshot/ace/node_modules/tar-stream/extract.js:243:8)
at Extract._continue (/snapshot/ace/node_modules/tar-stream/extract.js:207:28)
at oncontinue (/snapshot/ace/node_modules/tar-stream/extract.js:64:10)
at Extract.ondrain (/snapshot/ace/node_modules/tar-stream/extract.js:84:5)
  throw er; // Unhandled 'error' event
  ^

▲ npm install

uglifyjs-webpack-plugin@0.4.6 postinstall /home/nowuser/src/node_modules/webpack/node_modules/uglifyjs-webpack-plugin node lib/post_install.js

npm WARN next-test@1.0.0 No description npm WARN next-test@1.0.0 No repository field. npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@1.2.3 (node_modules/fsevents): npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@1.2.3: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"})

added 682 packages in 7.522s ▲ npm run build

next-test@1.0.0 build /home/nowuser/src next build

▲ Snapshotting deployment ▲ Saving deployment image (10.8M) Build completed Verifying instantiation in sfo1

App runs fine on the server. Seems some libraries are missing on the now for next.

timneutkens commented 6 years ago

I can't reproduce based on the steps provided 🤔

williamli commented 6 years ago

seems like you need to create a pages dir with index.js in it for it to start compiling / deploy.

add step 2.5

mkdir pages
echo "export default ()  =>  <div>hello</div>" >> pages/index.js
timneutkens commented 6 years ago

Already did while trying, otherwise Next would error out.

williamli commented 6 years ago

Now-CLI: v11.1.7 NodeJS: v10.1.0 and v8.11.1 NPM: v6 OS: MacOS

This is what I get when I try to deploy to now. The code is synced to server and started to build but with errors in tar header

screen shot 2018-05-15 at 01 35 10

Deploying ~/projects/tmp/next-test under bbi Using Node.js 8.11.1 (default) https://next-test-ccnokyuyeq.now.sh [in clipboard] (sfo1) [2s] Building… ▲ npm install ✓ Using "package-lock.json" ⧗ Installing 3 main dependencies… ^

Error: Invalid tar header. Maybe the tar is corrupted or it needs to be gunzipped? at Object.exports.decode (/snapshot/ace/node_modules/tar-stream/headers.js:270:43) at Extract.onheader [as _onparse] (/snapshot/ace/node_modules/tar-stream/extract.js:120:39) at Extract._write (/snapshot/ace/node_modules/tar-stream/extract.js:243:8) at Extract._continue (/snapshot/ace/node_modules/tar-stream/extract.js:207:28) at oncontinue (/snapshot/ace/node_modules/tar-stream/extract.js:64:10) at Extract.onheader [as _onparse] (/snapshot/ace/node_modules/tar-stream/extract.js:128:7) at Extract._write (/snapshot/ace/node_modules/tar-stream/extract.js:243:8) at Extract._continue (/snapshot/ace/node_modules/tar-stream/extract.js:207:28) events.js:183 at oncontinue (/snapshot/ace/node_modules/tar-stream/extract.js:64:10) at Extract.ondrain (/snapshot/ace/node_modules/tar-stream/extract.js:84:5) throw er; // Unhandled 'error' event ▲ npm install

williamli commented 6 years ago

@timneutkens Just tried it on a new server on Ubuntu.

NodeJS: v10.1.0 and v8.11.1 NPM: v6 OS: Ubuntu NOW: v11.1.7

still seeing events.js:183 (unhandled 'error' event) followed by Invalid tar header...

screen shot 2018-05-15 at 02 46 55

TooTallNate commented 6 years ago

Hey there, I tweaked some knobs on the backend. Can you please try once again?

williamli commented 6 years ago

@TooTallNate works fine now. no more errors.

williamli commented 6 years ago

@TooTallNate not sure if related, (I haven't changed code in my project), but now npm packages I used randomly failed during the build stage in NOW.

the app still works and get deployed on the server.

Example 1: Error: Error parsing package.json for fsevents-1.2.3.tar

Building… ▲ npm install ✓ Using "package-lock.json" ⧗ Installing 10 main dependencies… Building "fsevents@1.2.3" remotely Building "styled-components@3.2.6" remotely Building "uglifyjs-webpack-plugin@0.4.6" remotely Building "fsevents@1.2.3" remotely Building "uglifyjs-webpack-plugin@0.4.6" remotely Building "styled-components@3.2.6" remotely Building "fsevents@1.2.3" remotely Error: Error parsing package.json for fsevents-1.2.3.tar at extract (/snapshot/ace/lib/extract.js:36:11) at at process._tickCallback (internal/process/next_tick.js:188:7) ▲ npm install

Example 2: Error: Error parsing package.json for styled-components-3.2.6.tar

Synced 1 file (2.71KB) [5s]
Building…
▲ npm install
✓ Using "package-lock.json"
⧗ Installing 10 main dependencies…
Building "fsevents@1.2.3" remotely
Building "styled-components@3.2.6" remotely
Building "uglifyjs-webpack-plugin@0.4.6" remotely
Building "fsevents@1.2.3" remotely
Building "styled-components@3.2.6" remotely
Building "uglifyjs-webpack-plugin@0.4.6" remotely
Building "fsevents@1.2.3" remotely
Building "styled-components@3.2.6" remotely
Error: Error parsing package.json for styled-components-3.2.6.tar
at extract (/snapshot/ace/lib/extract.js:36:11)
at
at process._tickCallback (internal/process/next_tick.js:188:7)
Building "uglifyjs-webpack-plugin@0.4.6" remotely
▲ npm install

williamli commented 6 years ago

problems went away now. no more npm building errors

tima101 commented 6 years ago

@williamli @timneutkens I began seeing these errors during build step. Now version is 11.3.0, Next version is 6.1.1

> Building…
> ▲ npm install
> ✓ Using "yarn.lock"
> ⧗ Installing 24 main dependencies…
> Building "jss@9.8.7" remotely
> Building "uglifyjs-webpack-plugin@0.4.6" remotely
> Building "fsevents@1.2.4" remotely
> Building "jss@9.8.7" remotely
> Building "uglifyjs-webpack-plugin@0.4.6" remotely
> Building "fsevents@1.2.4" remotely
> Building "jss@9.8.7" remotely
> Building "uglifyjs-webpack-plugin@0.4.6" remotely
> Building "fsevents@1.2.4" remotely
> Error: Error parsing `package.json` for fsevents-1.2.4.tar
>     at extract (/snapshot/ace/lib/extract.js:36:11)
>     at <anonymous>
>     at process._tickCallback (internal/process/next_tick.js:188:7)
> Ignoring failed optional dependency "fsevents@1.2.4"
> ▲ yarn
> yarn install v1.7.0
> [1/4] Resolving packages...
> [2/4] Fetching packages...
> info fsevents@1.2.4: The platform "linux"is incompatible with this module.
> info "fsevents@1.2.4" is an optional dependency and failed compatibility check. Excluding it from installation.
> [3/4] Linking dependencies...
> warning "@zeit/next-typescript > @babel/preset-typescript > @babel/plugin-transform-typescript@7.0.0-beta.42" has unmet peer dependency "@babel/core@7.0.0-beta.42".
> warning "@zeit/next-typescript > @babel/preset-typescript@7.0.0-beta.42" has unmet peer dependency "@babel/core@7.0.0-beta.42".
> warning "@zeit/next-typescript > @babel/preset-typescript > @babel/plugin-transform-typescript > @babel/plugin-syntax-typescript@7.0.0-beta.42" has unmet peer dependency "@babel/core@7.0.0-beta.42".
> warning " > eslint-config-airbnb@17.0.0" has incorrect peer dependency "eslint@^4.19.1".
> warning "eslint-config-airbnb > eslint-config-airbnb-base@13.0.0" has incorrect peer dependency "eslint@^4.19.1".
> [4/4] Building fresh packages...
trevordmiller commented 6 years ago

I'm also getting the "Error: Error parsing package.json for fsevents" on now 11.3.0 and next 6.1.1. Fixed when I upgraded to now 11.3.1.