execTask.ts 395 B

123456789101112131415
  1. import { Task } from '../tasks/task';
  2. import chalk from 'chalk';
  3. export const execTask = <TOptions>(task: Task<TOptions>) => async (options: TOptions) => {
  4. console.log(chalk.yellow(`Running ${chalk.bold(task.name)} task`));
  5. task.setOptions(options);
  6. try {
  7. console.group();
  8. await task.exec();
  9. console.groupEnd();
  10. } catch (e) {
  11. console.log(e);
  12. process.exit(1);
  13. }
  14. };