@orion-js/dogs 3.1.0-alpha.1 → 3.1.0-alpha.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/history.test.js +3 -3
- package/lib/index.d.ts +6 -3
- package/lib/index.js +17 -3
- package/lib/repos/JobsHistoryRepo.d.ts +1 -1
- package/lib/repos/JobsRepo.d.ts +2 -1
- package/lib/services/getNextRunDate.d.ts +4 -2
- package/lib/services/getNextRunDate.js +4 -1
- package/lib/types/Events.d.ts +1 -1
- package/lib/types/JobsDefinition.d.ts +1 -1
- package/lib/types/index.d.ts +6 -0
- package/lib/types/index.js +18 -0
- package/package.json +2 -2
package/lib/history.test.js
CHANGED
|
@@ -26,7 +26,7 @@ describe('Test Jobs History', () => {
|
|
|
26
26
|
});
|
|
27
27
|
await (0, helpers_1.sleep)(100);
|
|
28
28
|
await instance.stop();
|
|
29
|
-
const executions = await _1.
|
|
29
|
+
const executions = await _1.jobsHistoryRepo.getExecutions(jobId);
|
|
30
30
|
expect(executions.length).toBe(1);
|
|
31
31
|
const execution = executions[0];
|
|
32
32
|
expect(execution.duration).toBeGreaterThan(49);
|
|
@@ -68,7 +68,7 @@ describe('Test Jobs History', () => {
|
|
|
68
68
|
});
|
|
69
69
|
await (0, helpers_1.sleep)(100);
|
|
70
70
|
await instance.stop();
|
|
71
|
-
const executions = await _1.
|
|
71
|
+
const executions = await _1.jobsHistoryRepo.getExecutions(jobId);
|
|
72
72
|
expect(executions.length).toBe(1);
|
|
73
73
|
const execution = executions[0];
|
|
74
74
|
expect(execution).toEqual({
|
|
@@ -110,7 +110,7 @@ describe('Test Jobs History', () => {
|
|
|
110
110
|
});
|
|
111
111
|
await (0, helpers_1.sleep)(150);
|
|
112
112
|
await instance.stop();
|
|
113
|
-
const executions = await _1.
|
|
113
|
+
const executions = await _1.jobsHistoryRepo.getExecutions(jobId);
|
|
114
114
|
expect(executions.length).toBe(2);
|
|
115
115
|
const execution1 = executions[1];
|
|
116
116
|
expect(execution1.duration).toBeGreaterThanOrEqual(10);
|
package/lib/index.d.ts
CHANGED
|
@@ -2,7 +2,10 @@ import { defineJob } from './defineJob';
|
|
|
2
2
|
import { StartWorkersConfig } from './types/StartConfig';
|
|
3
3
|
import { ScheduleJobOptions } from './types/Events';
|
|
4
4
|
import { JobsHistoryRepo } from './repos/JobsHistoryRepo';
|
|
5
|
-
|
|
6
|
-
|
|
5
|
+
import { JobsRepo } from './repos/JobsRepo';
|
|
6
|
+
export * from './types';
|
|
7
|
+
declare const jobsHistoryRepo: JobsHistoryRepo;
|
|
8
|
+
declare const jobsRepo: JobsRepo;
|
|
9
|
+
declare const startWorkers: (config: Partial<StartWorkersConfig>) => import("./types").WorkersInstance;
|
|
7
10
|
declare const scheduleJob: (options: ScheduleJobOptions) => Promise<void>;
|
|
8
|
-
export { defineJob, startWorkers, scheduleJob,
|
|
11
|
+
export { defineJob, startWorkers, scheduleJob, jobsHistoryRepo, jobsRepo };
|
package/lib/index.js
CHANGED
|
@@ -1,16 +1,30 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
|
|
5
|
+
}) : (function(o, m, k, k2) {
|
|
6
|
+
if (k2 === undefined) k2 = k;
|
|
7
|
+
o[k2] = m[k];
|
|
8
|
+
}));
|
|
9
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
10
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
11
|
+
};
|
|
2
12
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
13
|
+
exports.jobsRepo = exports.jobsHistoryRepo = exports.scheduleJob = exports.startWorkers = exports.defineJob = void 0;
|
|
4
14
|
const services_1 = require("@orion-js/services");
|
|
5
15
|
const defineJob_1 = require("./defineJob");
|
|
6
16
|
Object.defineProperty(exports, "defineJob", { enumerable: true, get: function () { return defineJob_1.defineJob; } });
|
|
7
17
|
const EventsService_1 = require("./services/EventsService");
|
|
8
18
|
const WorkerService_1 = require("./services/WorkerService");
|
|
9
19
|
const JobsHistoryRepo_1 = require("./repos/JobsHistoryRepo");
|
|
20
|
+
const JobsRepo_1 = require("./repos/JobsRepo");
|
|
21
|
+
__exportStar(require("./types"), exports);
|
|
10
22
|
const workerService = (0, services_1.getInstance)(WorkerService_1.WorkerService);
|
|
11
23
|
const eventsService = (0, services_1.getInstance)(EventsService_1.EventsService);
|
|
12
|
-
const
|
|
13
|
-
exports.
|
|
24
|
+
const jobsHistoryRepo = (0, services_1.getInstance)(JobsHistoryRepo_1.JobsHistoryRepo);
|
|
25
|
+
exports.jobsHistoryRepo = jobsHistoryRepo;
|
|
26
|
+
const jobsRepo = (0, services_1.getInstance)(JobsRepo_1.JobsRepo);
|
|
27
|
+
exports.jobsRepo = jobsRepo;
|
|
14
28
|
const startWorkers = (config) => {
|
|
15
29
|
return workerService.startWorkers(config);
|
|
16
30
|
};
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { ModelToDocumentTypeWithoutId } from '@orion-js/mongodb';
|
|
2
2
|
import { HistoryRecord } from '../types/HistoryRecord';
|
|
3
3
|
export declare class JobsHistoryRepo {
|
|
4
|
-
|
|
4
|
+
history: import("@orion-js/mongodb").Collection<HistoryRecord>;
|
|
5
5
|
saveExecution(record: ModelToDocumentTypeWithoutId<HistoryRecord>): Promise<void>;
|
|
6
6
|
getExecutions(jobName: string, limit?: number, skip?: number): Promise<HistoryRecord[]>;
|
|
7
7
|
}
|
package/lib/repos/JobsRepo.d.ts
CHANGED
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
import { ScheduleJobRecordOptions } from '../types/Events';
|
|
2
|
+
import { JobRecord } from '../types/JobRecord';
|
|
2
3
|
import { JobDefinitionWithName } from '../types/JobsDefinition';
|
|
3
4
|
import { JobToRun } from '../types/Worker';
|
|
4
5
|
export declare class JobsRepo {
|
|
5
|
-
|
|
6
|
+
jobs: import("@orion-js/mongodb").Collection<JobRecord>;
|
|
6
7
|
getJobAndLock(jobNames: string[], lockTime: number): Promise<JobToRun>;
|
|
7
8
|
scheduleNextRun(options: {
|
|
8
9
|
jobId: string;
|
|
@@ -11,6 +11,9 @@ const getNextRunDate = (options) => {
|
|
|
11
11
|
if (options.runAt) {
|
|
12
12
|
return options.runAt;
|
|
13
13
|
}
|
|
14
|
-
|
|
14
|
+
if (options.getNextRun) {
|
|
15
|
+
return options.getNextRun();
|
|
16
|
+
}
|
|
17
|
+
return new Date();
|
|
15
18
|
};
|
|
16
19
|
exports.getNextRunDate = getNextRunDate;
|
package/lib/types/Events.d.ts
CHANGED
|
@@ -11,7 +11,7 @@ export declare type ScheduleJobOptionsRunIn = ScheduleJobOptionsBase & {
|
|
|
11
11
|
export declare type ScheduleJobOptionsRunAt = ScheduleJobOptionsBase & {
|
|
12
12
|
runAt: Date;
|
|
13
13
|
};
|
|
14
|
-
export declare type ScheduleJobOptions = ScheduleJobOptionsRunIn | ScheduleJobOptionsRunAt;
|
|
14
|
+
export declare type ScheduleJobOptions = ScheduleJobOptionsRunIn | ScheduleJobOptionsRunAt | ScheduleJobOptionsBase;
|
|
15
15
|
export interface ScheduleJobRecordOptions {
|
|
16
16
|
name: string;
|
|
17
17
|
params: PlainObject;
|
|
@@ -9,7 +9,7 @@ export declare type JobRetryResultRunIn = JobRetryResultBase & {
|
|
|
9
9
|
export declare type JobRetryResultRunAt = JobRetryResultBase & {
|
|
10
10
|
runAt: Date;
|
|
11
11
|
};
|
|
12
|
-
export declare type JobRetryResult = JobRetryResultRunIn | JobRetryResultRunAt;
|
|
12
|
+
export declare type JobRetryResult = JobRetryResultRunIn | JobRetryResultRunAt | JobRetryResultBase;
|
|
13
13
|
export interface BaseJobDefinition {
|
|
14
14
|
/**
|
|
15
15
|
* The function to execute when the job is executed.
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
|
|
5
|
+
}) : (function(o, m, k, k2) {
|
|
6
|
+
if (k2 === undefined) k2 = k;
|
|
7
|
+
o[k2] = m[k];
|
|
8
|
+
}));
|
|
9
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
10
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
11
|
+
};
|
|
12
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
13
|
+
__exportStar(require("./Events"), exports);
|
|
14
|
+
__exportStar(require("./HistoryRecord"), exports);
|
|
15
|
+
__exportStar(require("./JobRecord"), exports);
|
|
16
|
+
__exportStar(require("./JobsDefinition"), exports);
|
|
17
|
+
__exportStar(require("./StartConfig"), exports);
|
|
18
|
+
__exportStar(require("./Worker"), exports);
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@orion-js/dogs",
|
|
3
|
-
"version": "3.1.0-alpha.
|
|
3
|
+
"version": "3.1.0-alpha.6",
|
|
4
4
|
"main": "lib/index.js",
|
|
5
5
|
"types": "lib/index.d.ts",
|
|
6
6
|
"files": [
|
|
@@ -35,5 +35,5 @@
|
|
|
35
35
|
"publishConfig": {
|
|
36
36
|
"access": "public"
|
|
37
37
|
},
|
|
38
|
-
"gitHead": "
|
|
38
|
+
"gitHead": "f76a7b8b9e317baf4e9204f75bb22d0562a29024"
|
|
39
39
|
}
|