/**
 * @作者:陈明明
 * @创建日期 : 2022/6/23 14:01
 */
const fs = require('fs')
const archiver = require('archiver')
const path = require('path')
const package = require('../package.json')
// 执行命令的目录下的release文件夹
let output = fs.createWriteStream(path.join(process.cwd(), 'release', `admin-${process.argv[2]}-v${package.version}.zip`))
let archive = archiver('zip', {
  zlib: { level: 9 }
})


output.on('close', function () {
  console.log(`总共 ${archive.pointer()} 字节`)
  console.log('已完成打包')
})

output.on('end', function () {
  console.log('数据源已耗尽')
})

archive.on('warning', function (err) {
  if (err.code === 'ENOENT') {
    console.warn('stat故障和其他非阻塞错误')
  } else {
    throw err
  }
})

archive.on('error', function (err) {
  throw err
})
archive.pipe(output)
archive.directory(path.join(process.cwd(), 'dist'), path.join(__dirname, 'release'), false)
archive.finalize()