2016-11-09 22:59:41 +00:00
|
|
|
#!/usr/bin/env node
|
|
|
|
|
2016-11-10 14:24:22 +00:00
|
|
|
// Show logs
|
|
|
|
process.env.DEBUG = 'nuxt:*'
|
|
|
|
|
2016-12-09 18:40:59 +00:00
|
|
|
var fs = require('fs')
|
2017-01-23 16:55:39 +00:00
|
|
|
var without = require('lodash').without
|
2016-12-09 18:40:59 +00:00
|
|
|
var Nuxt = require('../')
|
|
|
|
var resolve = require('path').resolve
|
2016-11-09 22:59:41 +00:00
|
|
|
|
2017-01-23 16:55:39 +00:00
|
|
|
// --analyze option
|
|
|
|
var analyzeBuild = false
|
|
|
|
if (process.argv.indexOf('--analyze') !== -1 || process.argv.indexOf('-a') !== -1) {
|
|
|
|
analyzeBuild = true
|
|
|
|
process.argv = without(process.argv, '--analyze', '-a')
|
|
|
|
}
|
|
|
|
|
2016-12-09 18:40:59 +00:00
|
|
|
var rootDir = resolve(process.argv.slice(2)[0] || '.')
|
|
|
|
var nuxtConfigFile = resolve(rootDir, 'nuxt.config.js')
|
2016-12-07 18:01:46 +00:00
|
|
|
|
2016-12-09 18:40:59 +00:00
|
|
|
var options = {}
|
2016-11-09 22:59:41 +00:00
|
|
|
if (fs.existsSync(nuxtConfigFile)) {
|
|
|
|
options = require(nuxtConfigFile)
|
|
|
|
}
|
|
|
|
if (typeof options.rootDir !== 'string') {
|
|
|
|
options.rootDir = rootDir
|
|
|
|
}
|
|
|
|
options.dev = false // Create production build when calling `nuxt build`
|
|
|
|
|
2017-01-23 16:55:39 +00:00
|
|
|
options.build = options.build || {}
|
2017-01-24 19:25:56 +00:00
|
|
|
if (analyzeBuild) {
|
|
|
|
options.build.analyze = analyzeBuild
|
|
|
|
}
|
2017-01-23 16:55:39 +00:00
|
|
|
|
2016-12-08 15:41:20 +00:00
|
|
|
console.log('[nuxt] Building...') // eslint-disable-line no-console
|
2016-12-09 18:40:59 +00:00
|
|
|
var nuxt = new Nuxt(options)
|
2016-12-07 18:01:46 +00:00
|
|
|
nuxt.build()
|
|
|
|
.then(() => {
|
2016-12-08 15:41:20 +00:00
|
|
|
console.log('[nuxt] Building done') // eslint-disable-line no-console
|
2016-11-09 22:59:41 +00:00
|
|
|
})
|
|
|
|
.catch((err) => {
|
2016-12-08 15:41:20 +00:00
|
|
|
console.error(err) // eslint-disable-line no-console
|
2016-11-10 01:19:47 +00:00
|
|
|
process.exit(1)
|
2016-11-09 22:59:41 +00:00
|
|
|
})
|