cli.js 718 B

1234567891011121314151617181920212223242526272829303132333435
  1. 'use strict';
  2. const pa = require('path');
  3. const {NodeVM, VMError} = require('../');
  4. if (process.argv[2]) {
  5. const path = pa.resolve(process.argv[2]);
  6. console.log(`\x1B[90m[vm] creating VM for ${path}\x1B[39m`);
  7. const started = Date.now();
  8. try {
  9. NodeVM.file(path, {
  10. verbose: true,
  11. require: {
  12. external: true
  13. }
  14. });
  15. console.log(`\x1B[90m[vm] VM completed in ${Date.now() - started}ms\x1B[39m`);
  16. } catch (ex) {
  17. if (ex instanceof VMError) {
  18. console.error(`\x1B[31m[vm:error] ${ex.message}\x1B[39m`);
  19. } else {
  20. const {stack} = ex;
  21. if (stack) {
  22. console.error(`\x1B[31m[vm:error] ${stack}\x1B[39m`);
  23. } else {
  24. console.error(`\x1B[31m[vm:error] ${ex}\x1B[39m`);
  25. }
  26. }
  27. }
  28. }