build.ts 880 B

1234567891011121314151617181920212223242526272829303132
  1. // #!/usr/bin/env node
  2. import { sh } from 'tasksfile';
  3. import { argv } from 'yargs';
  4. import { runBuildConfig } from './buildConf';
  5. import { runUpdateHtml } from './updateHtml';
  6. import { errorConsole, successConsole } from '../utils';
  7. import { startGzipStyle } from '../plugin/gzip/compress';
  8. export const runBuild = async () => {
  9. try {
  10. const argvList = argv._;
  11. let cmd = `cross-env NODE_ENV=production vite build`;
  12. // await run('cross-env', ['NODE_ENV=production', 'vite', 'build']);
  13. await sh(cmd, {
  14. async: true,
  15. nopipe: true,
  16. });
  17. // Generate configuration file
  18. if (!argvList.includes('no-conf')) {
  19. await runBuildConfig();
  20. }
  21. await runUpdateHtml();
  22. await startGzipStyle();
  23. successConsole('Vite Build successfully!');
  24. } catch (error) {
  25. errorConsole('Vite Build Error\n' + error);
  26. process.exit(1);
  27. }
  28. };