fix(core): update

This commit is contained in:
2023-01-07 19:05:29 +01:00
parent e4f8be5603
commit a2f6bccac2
6 changed files with 239 additions and 203 deletions

View File

@@ -13,6 +13,7 @@ export interface ITaskManagerConstructorOptions {
}
export class TaskManager {
public randomId = plugins.isounique.uni();
public taskMap = new plugins.lik.ObjectMap<Task>();
private cronJobManager = new plugins.smarttime.CronManager();
@@ -20,7 +21,7 @@ export class TaskManager {
distributedCoordinator: null
};
constructor(optionosArg: ITaskManagerConstructorOptions) {
constructor(optionosArg: ITaskManagerConstructorOptions = {}) {
this.options = Object.assign(this.options, optionosArg);
}
@@ -88,14 +89,22 @@ export class TaskManager {
);
if (this.options.distributedCoordinator) {
console.log(`Found a distrubuted coordinator, performing distributed consultation.`);
const announcementResult = this.options.distributedCoordinator.announceDistributedDecisionInfoBasis({
const announcementResult = await this.options.distributedCoordinator.announceDistributedDecisionInfoBasis({
submitterRandomId: this.randomId,
status: 'requesting',
taskExecutionParallel: 1,
taskExecutionTime: triggerTimeArg,
taskExecutionTimeout: taskToSchedule.timeout,
taskName: taskToSchedule.name,
taskVersion: taskToSchedule.version,
})
});
if (!announcementResult.shouldTrigger) {
console.log('distributed coordinator result: NOT EXECUTING')
return;
} else {
console.log('distributed coordinator result: CHOSEN AND EXECUTING')
}
}
await taskToSchedule.trigger();
});