1
0
Fork 0
mirror of https://github.com/terribleplan/next.js.git synced 2024-01-19 02:48:18 +00:00
next.js/server/export.js

35 lines
948 B
JavaScript
Raw Normal View History

2017-05-07 22:47:40 +00:00
import del from 'del'
import cp from 'recursive-copy'
import mkdirp from 'mkdirp-then'
import { resolve, join } from 'path'
import { existsSync, readFileSync } from 'fs'
export default async function (dir) {
const outDir = resolve(dir, '.out')
const nextDir = resolve(dir, '.next')
if (!existsSync(nextDir)) {
console.error('Build your with "next build" before running "next start".')
process.exit(1)
}
const buildId = readFileSync(join(nextDir, 'BUILD_ID'), 'utf8')
const buildStats = require(join(nextDir, 'build-stats.json'))
// Initialize the output directory
await del(outDir)
await mkdirp(join(outDir, '_next', buildStats['app.js'].hash))
await mkdirp(join(outDir, '_next', buildId))
// Copy files
await cp(
join(nextDir, 'app.js'),
join(outDir, '_next', buildStats['app.js'].hash, 'app.js')
)
await cp(
join(nextDir, 'bundles', 'pages'),
join(outDir, '_next', buildId, 'page')
)
}