Skip to content

Commit c416cf7

Browse files
committed
feat: collect more task errors and output them at the end of process
- remove OOM related dependency which doesn't work with node 22+ - bump tsconfig target
1 parent cca2d22 commit c416cf7

File tree

4 files changed

+2662
-7666
lines changed

4 files changed

+2662
-7666
lines changed

lib/batch/tasks/run-job.task.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import { ListrTask } from 'listr2';
1+
import { ListrTask } from "listr2";
22

33
import { Context } from '../../interface';
44
import { writeJson } from '../../services/fs.service';
@@ -43,6 +43,7 @@ export function runJobTaskFactory(
4343
finalizeJobTaskFactory(job, task),
4444
],
4545
{
46+
collectErrors: "minimal",
4647
exitOnError: true,
4748
rendererOptions: {
4849
collapse: true,

lib/utils/process.ts

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ export const runner = async (
2222
batch: { queue: [], completed: [], failed: [] },
2323
debug: {},
2424
};
25-
await new Listr(tasks, {
25+
const rootTasks = new Listr(tasks, {
2626
fallbackRenderer: 'verbose',
2727
rendererOptions: {
2828
collapse: false,
@@ -34,7 +34,8 @@ export const runner = async (
3434
: options.verbose
3535
? 'verbose'
3636
: 'default',
37-
})
37+
});
38+
await rootTasks
3839
.run(context)
3940
.then((ctx: Context) => {
4041
const duration = new Date().getTime() - start;
@@ -47,6 +48,9 @@ export const runner = async (
4748
batch.failed.forEach((project, index) => {
4849
logger.error(`[FAILED] ${project}`);
4950
});
51+
rootTasks?.errors.forEach((error) => {
52+
logger.error(`[FAILED] ${error}`);
53+
});
5054
}
5155
process.exit(0);
5256
})
@@ -59,13 +63,19 @@ export const runner = async (
5963
if (err?.response?.body?.message) {
6064
logger.warning(err.response.body.message);
6165
}
66+
rootTasks?.errors.forEach((error) => {
67+
logger.warning(error);
68+
});
6269
process.exit(0);
6370
} else {
6471
logger.error(`Finished (${formatTime(duration)}) with error`);
6572
logger.error(err);
6673
if (err?.response?.body?.message) {
6774
logger.error(err.response.body.message);
6875
}
76+
rootTasks?.errors.forEach((error) => {
77+
logger.error(error);
78+
});
6979
process.exit(1);
7080
}
7181
});

0 commit comments

Comments
 (0)