agenda 4.2.1 → 4.4.0
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/History.md +15 -2
- package/README.md +38 -11
- package/dist/agenda/create.d.ts.map +1 -1
- package/dist/agenda/create.js +2 -1
- package/dist/agenda/create.js.map +1 -1
- package/dist/agenda/db-init.d.ts.map +1 -1
- package/dist/agenda/db-init.js +5 -0
- package/dist/agenda/db-init.js.map +1 -1
- package/dist/agenda/define.d.ts +4 -0
- package/dist/agenda/define.d.ts.map +1 -1
- package/dist/agenda/define.js +1 -0
- package/dist/agenda/define.js.map +1 -1
- package/dist/agenda/drain.d.ts +9 -0
- package/dist/agenda/drain.d.ts.map +1 -0
- package/dist/agenda/drain.js +46 -0
- package/dist/agenda/drain.js.map +1 -0
- package/dist/agenda/index.d.ts +4 -0
- package/dist/agenda/index.d.ts.map +1 -1
- package/dist/agenda/index.js +3 -0
- package/dist/agenda/index.js.map +1 -1
- package/dist/job/index.d.ts +10 -0
- package/dist/job/index.d.ts.map +1 -1
- package/dist/job/index.js +4 -0
- package/dist/job/index.js.map +1 -1
- package/dist/job/run.d.ts.map +1 -1
- package/dist/job/run.js +6 -3
- package/dist/job/run.js.map +1 -1
- package/dist/job/set-shouldsaveresult.d.ts +7 -0
- package/dist/job/set-shouldsaveresult.d.ts.map +1 -0
- package/dist/job/set-shouldsaveresult.js +13 -0
- package/dist/job/set-shouldsaveresult.js.map +1 -0
- package/package.json +2 -2
package/History.md
CHANGED
|
@@ -1,8 +1,21 @@
|
|
|
1
1
|
# Next
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
_Contributions welcome!_ https://github.com/agenda/agenda/pulls
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
# [4.4.0](https://github.com/agenda/agenda/releases/tag/v4.4.0) / 2022-10-19
|
|
6
|
+
|
|
7
|
+
- Feat: Add `drain()` method for graceful process shutdowns ([#1488](https://github.com/agenda/agenda/pull/1488)) thanks @nmehmedrnd
|
|
8
|
+
|
|
9
|
+
# [4.3.0](https://github.com/agenda/agenda/releases/tag/v4.3.0) / 2022-05-10
|
|
10
|
+
|
|
11
|
+
- Feat: `disableAutoIndex`
|
|
12
|
+
- Feat: `shouldSaveResult`
|
|
13
|
+
|
|
14
|
+
# 4.2.1 / 2021-08-09
|
|
15
|
+
|
|
16
|
+
- fix: deprecation warning for collection.findOneAndUpdate ([#1338](https://github.com/agenda/agenda/pull/1338)) thanks @frobinsonj
|
|
17
|
+
|
|
18
|
+
# 4.2.0 / 2021-08-05
|
|
6
19
|
|
|
7
20
|
- Feat: Add top level disable and enable ([#1109](https://github.com/agenda/agenda/pull/1109)) thanks @pdfowler
|
|
8
21
|
- fix(history): match cron-parser pattern ([#1335](https://github.com/agenda/agenda/pull/1335)) thanks @dockleryxk
|
package/README.md
CHANGED
|
@@ -4,22 +4,13 @@
|
|
|
4
4
|
<p align="center">
|
|
5
5
|
A light-weight job scheduling library for Node.js
|
|
6
6
|
</p>
|
|
7
|
-
<p align="center">
|
|
8
|
-
<a href="https://slackin-ekwifvcwbr.now.sh/"><img src="https://slackin-ekwifvcwbr.now.sh/badge.svg" alt="Slack Status"></a>
|
|
9
|
-
<a href="https://david-dm.org/agenda/agenda"><img src="https://david-dm.org/agenda/agenda/status.svg" alt="dependencies Status"></a>
|
|
10
|
-
<a href="https://david-dm.org/agenda/agenda?type=dev"><img src="https://david-dm.org/agenda/agenda/dev-status.svg" alt="devDependencies Status"></a>
|
|
11
|
-
<a href="https://coveralls.io/github/agenda/agenda?branch=master"><img src="https://coveralls.io/repos/github/agenda/agenda/badge.svg?branch=master" alt="Coverage Status"></a>
|
|
12
|
-
<br>
|
|
13
|
-
<br>
|
|
14
|
-
<br>
|
|
15
|
-
</p>
|
|
16
7
|
|
|
17
8
|
# Agenda offers
|
|
18
9
|
|
|
19
10
|
- Minimal overhead. Agenda aims to keep its code base small.
|
|
20
11
|
- Mongo backed persistence layer.
|
|
21
12
|
- Promises based API.
|
|
22
|
-
- Scheduling with configurable priority, concurrency, and
|
|
13
|
+
- Scheduling with configurable priority, concurrency, repeating and persistence of job results.
|
|
23
14
|
- Scheduling via cron or human readable syntax.
|
|
24
15
|
- Event backed job queue that you can hook into.
|
|
25
16
|
- [Agenda-rest](https://github.com/agenda/agenda-rest): optional standalone REST API.
|
|
@@ -353,6 +344,13 @@ Takes a `query` which specifies the sort query to be used for finding and lockin
|
|
|
353
344
|
|
|
354
345
|
By default it is `{ nextRunAt: 1, priority: -1 }`, which obeys a first in first out approach, with respect to priority.
|
|
355
346
|
|
|
347
|
+
### disableAutoIndex(boolean)
|
|
348
|
+
|
|
349
|
+
Optional. Disables the automatic creation of the default index on the jobs table.
|
|
350
|
+
By default, Agenda creates an index to optimize its queries against Mongo while processing jobs.
|
|
351
|
+
|
|
352
|
+
This is useful if you want to use your own index in specific use-cases.
|
|
353
|
+
|
|
356
354
|
## Agenda Events
|
|
357
355
|
|
|
358
356
|
An instance of an agenda will emit the following events:
|
|
@@ -389,6 +387,7 @@ the following:
|
|
|
389
387
|
- `priority`: `(lowest|low|normal|high|highest|number)` specifies the priority
|
|
390
388
|
of the job. Higher priority jobs will run first. See the priority mapping
|
|
391
389
|
below
|
|
390
|
+
- `shouldSaveResult`: `boolean` flag that specifies whether the result of the job should also be stored in the database. Defaults to false
|
|
392
391
|
|
|
393
392
|
Priority mapping:
|
|
394
393
|
|
|
@@ -612,6 +611,23 @@ process.on("SIGTERM", graceful);
|
|
|
612
611
|
process.on("SIGINT", graceful);
|
|
613
612
|
```
|
|
614
613
|
|
|
614
|
+
### drain
|
|
615
|
+
|
|
616
|
+
Stops the job queue processing and waits till all current jobs finishes.
|
|
617
|
+
|
|
618
|
+
This can be very useful for graceful shutdowns so that currently running/grabbed jobs are finished before shutting down. Here is an example of how to do a graceful
|
|
619
|
+
shutdown.
|
|
620
|
+
|
|
621
|
+
```js
|
|
622
|
+
async function graceful() {
|
|
623
|
+
await agenda.drain();
|
|
624
|
+
process.exit(0);
|
|
625
|
+
}
|
|
626
|
+
|
|
627
|
+
process.on("SIGTERM", graceful);
|
|
628
|
+
process.on("SIGINT", graceful);
|
|
629
|
+
```
|
|
630
|
+
|
|
615
631
|
### close(force)
|
|
616
632
|
|
|
617
633
|
Closes database connection. You don't normally have to do this, but it might be useful for testing purposes.
|
|
@@ -670,7 +686,7 @@ Specifies an `interval` on which the job should repeat. The job runs at the time
|
|
|
670
686
|
|
|
671
687
|
`options.endDate`: `Date` the job should not repeat after the endDate. The job can run on the end-date itself, but not after that.
|
|
672
688
|
|
|
673
|
-
`options.skipDays`: `
|
|
689
|
+
`options.skipDays`: `human readable string` ('2 days'). After each run, it will skip the duration of 'skipDays'
|
|
674
690
|
|
|
675
691
|
```js
|
|
676
692
|
job.repeatEvery("10 minutes");
|
|
@@ -719,6 +735,17 @@ job.priority("low");
|
|
|
719
735
|
await job.save();
|
|
720
736
|
```
|
|
721
737
|
|
|
738
|
+
### setShouldSaveResult(setShouldSaveResult)
|
|
739
|
+
|
|
740
|
+
Specifies whether the result of the job should also be stored in the database. Defaults to false.
|
|
741
|
+
|
|
742
|
+
```js
|
|
743
|
+
job.setShouldSaveResult(true);
|
|
744
|
+
await job.save();
|
|
745
|
+
```
|
|
746
|
+
|
|
747
|
+
The data returned by the job will be available on the `result` attribute after it succeeded and got retrieved again from the database, e.g. via `agenda.jobs(...)` or through the [success job event](#agenda-events)).
|
|
748
|
+
|
|
722
749
|
### unique(properties, [options])
|
|
723
750
|
|
|
724
751
|
Ensure that only one instance of this job exists with the specified properties
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create.d.ts","sourceRoot":"","sources":["../../lib/agenda/create.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,GAAG,EAAE,MAAM,QAAQ,CAAC;AAC7B,OAAO,EAAE,MAAM,EAAE,MAAM,GAAG,CAAC;AAI3B;;;;;;GAMG;AACH,eAAO,MAAM,MAAM,SAAmB,MAAM,QAAQ,MAAM,QAAQ,GAAG,KAAG,
|
|
1
|
+
{"version":3,"file":"create.d.ts","sourceRoot":"","sources":["../../lib/agenda/create.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,GAAG,EAAE,MAAM,QAAQ,CAAC;AAC7B,OAAO,EAAE,MAAM,EAAE,MAAM,GAAG,CAAC;AAI3B;;;;;;GAMG;AACH,eAAO,MAAM,MAAM,SAAmB,MAAM,QAAQ,MAAM,QAAQ,GAAG,KAAG,GAQvE,CAAC"}
|
package/dist/agenda/create.js
CHANGED
|
@@ -19,7 +19,8 @@ const create = function (name, data) {
|
|
|
19
19
|
const priority = this._definitions[name]
|
|
20
20
|
? this._definitions[name].priority
|
|
21
21
|
: 0;
|
|
22
|
-
const
|
|
22
|
+
const shouldSaveResult = this._definitions[name] ? this._definitions[name].shouldSaveResult || false : false;
|
|
23
|
+
const job = new job_1.Job({ name, data, type: "normal", priority, shouldSaveResult, agenda: this });
|
|
23
24
|
return job;
|
|
24
25
|
};
|
|
25
26
|
exports.create = create;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create.js","sourceRoot":"","sources":["../../lib/agenda/create.ts"],"names":[],"mappings":";;;;;;AAAA,kDAAmC;AACnC,gCAA6B;AAG7B,MAAM,KAAK,GAAG,eAAc,CAAC,eAAe,CAAC,CAAC;AAE9C;;;;;;GAMG;AACI,MAAM,MAAM,GAAG,UAAwB,IAAY,EAAE,IAAS;IACnE,KAAK,CAAC,6BAA6B,EAAE,IAAI,CAAC,CAAC;IAC3C,MAAM,QAAQ,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC;QACtC,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,QAAQ;QAClC,CAAC,CAAC,CAAC,CAAC;IACN,MAAM,GAAG,GAAG,IAAI,SAAG,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"create.js","sourceRoot":"","sources":["../../lib/agenda/create.ts"],"names":[],"mappings":";;;;;;AAAA,kDAAmC;AACnC,gCAA6B;AAG7B,MAAM,KAAK,GAAG,eAAc,CAAC,eAAe,CAAC,CAAC;AAE9C;;;;;;GAMG;AACI,MAAM,MAAM,GAAG,UAAwB,IAAY,EAAE,IAAS;IACnE,KAAK,CAAC,6BAA6B,EAAE,IAAI,CAAC,CAAC;IAC3C,MAAM,QAAQ,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC;QACtC,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,QAAQ;QAClC,CAAC,CAAC,CAAC,CAAC;IACN,MAAM,gBAAgB,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,gBAAgB,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,CAAA;IAC5G,MAAM,GAAG,GAAG,IAAI,SAAG,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,gBAAgB,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;IAC9F,OAAO,GAAG,CAAC;AACb,CAAC,CAAC;AARW,QAAA,MAAM,UAQjB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"db-init.d.ts","sourceRoot":"","sources":["../../lib/agenda/db-init.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAC/C,OAAO,EAAE,MAAM,EAAE,MAAM,GAAG,CAAC;AAI3B;;;;;;GAMG;AACH,eAAO,MAAM,MAAM,SACX,MAAM,qCAEC,QAAQ,GAAG,SAAS,cAAc,WAAW,GAAG,CAAC,GAAG,IAAI,KAAK,IAAI,kBAC7E,
|
|
1
|
+
{"version":3,"file":"db-init.d.ts","sourceRoot":"","sources":["../../lib/agenda/db-init.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAC/C,OAAO,EAAE,MAAM,EAAE,MAAM,GAAG,CAAC;AAI3B;;;;;;GAMG;AACH,eAAO,MAAM,MAAM,SACX,MAAM,qCAEC,QAAQ,GAAG,SAAS,cAAc,WAAW,GAAG,CAAC,GAAG,IAAI,KAAK,IAAI,kBAC7E,IA2BF,CAAC"}
|
package/dist/agenda/db-init.js
CHANGED
|
@@ -16,6 +16,11 @@ const debug = debug_1.default("agenda:db_init");
|
|
|
16
16
|
const dbInit = function (collection = "agendaJobs", cb) {
|
|
17
17
|
debug("init database collection using name [%s]", collection);
|
|
18
18
|
this._collection = this._mdb.collection(collection);
|
|
19
|
+
if (this._disableAutoIndex) {
|
|
20
|
+
debug("skipping auto index creation");
|
|
21
|
+
this.emit("ready");
|
|
22
|
+
return;
|
|
23
|
+
}
|
|
19
24
|
debug("attempting index creation");
|
|
20
25
|
this._collection.createIndex(this._indices, { name: "findAndLockNextJobIndex" }, (error) => {
|
|
21
26
|
if (error) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"db-init.js","sourceRoot":"","sources":["../../lib/agenda/db-init.ts"],"names":[],"mappings":";;;;;;AAAA,kDAAmC;AAInC,MAAM,KAAK,GAAG,eAAc,CAAC,gBAAgB,CAAC,CAAC;AAE/C;;;;;;GAMG;AACI,MAAM,MAAM,GAAG,UAEpB,UAAU,GAAG,YAAY,EACzB,EAA8E;IAE9E,KAAK,CAAC,0CAA0C,EAAE,UAAU,CAAC,CAAC;IAC9D,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;IACpD,KAAK,CAAC,2BAA2B,CAAC,CAAC;IACnC,IAAI,CAAC,WAAW,CAAC,WAAW,CAC1B,IAAI,CAAC,QAAQ,EACb,EAAE,IAAI,EAAE,yBAAyB,EAAE,EACnC,CAAC,KAAK,EAAE,EAAE;QACR,IAAI,KAAK,EAAE;YACT,KAAK,CAAC,uBAAuB,CAAC,CAAC;YAC/B,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;SAC3B;aAAM;YACL,KAAK,CAAC,wBAAwB,CAAC,CAAC;YAChC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;SACpB;QAED,IAAI,EAAE,EAAE;YACN,EAAE,CAAC,KAAK,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;SAC7B;IACH,CAAC,CACF,CAAC;AACJ,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"db-init.js","sourceRoot":"","sources":["../../lib/agenda/db-init.ts"],"names":[],"mappings":";;;;;;AAAA,kDAAmC;AAInC,MAAM,KAAK,GAAG,eAAc,CAAC,gBAAgB,CAAC,CAAC;AAE/C;;;;;;GAMG;AACI,MAAM,MAAM,GAAG,UAEpB,UAAU,GAAG,YAAY,EACzB,EAA8E;IAE9E,KAAK,CAAC,0CAA0C,EAAE,UAAU,CAAC,CAAC;IAC9D,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;IACpD,IAAI,IAAI,CAAC,iBAAiB,EAAE;QAC1B,KAAK,CAAC,8BAA8B,CAAC,CAAC;QACtC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACnB,OAAO;KACR;IAED,KAAK,CAAC,2BAA2B,CAAC,CAAC;IACnC,IAAI,CAAC,WAAW,CAAC,WAAW,CAC1B,IAAI,CAAC,QAAQ,EACb,EAAE,IAAI,EAAE,yBAAyB,EAAE,EACnC,CAAC,KAAK,EAAE,EAAE;QACR,IAAI,KAAK,EAAE;YACT,KAAK,CAAC,uBAAuB,CAAC,CAAC;YAC/B,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;SAC3B;aAAM;YACL,KAAK,CAAC,wBAAwB,CAAC,CAAC;YAChC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;SACpB;QAED,IAAI,EAAE,EAAE;YACN,EAAE,CAAC,KAAK,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;SAC7B;IACH,CAAC,CACF,CAAC;AACJ,CAAC,CAAC;AA/BW,QAAA,MAAM,UA+BjB"}
|
package/dist/agenda/define.d.ts
CHANGED
|
@@ -26,6 +26,10 @@ export interface DefineOptions {
|
|
|
26
26
|
* first.
|
|
27
27
|
*/
|
|
28
28
|
priority?: JobPriority;
|
|
29
|
+
/**
|
|
30
|
+
* Should the return value of the job be persisted
|
|
31
|
+
*/
|
|
32
|
+
shouldSaveResult?: boolean;
|
|
29
33
|
}
|
|
30
34
|
export declare type Processor = ((job: Job) => Promise<void>) | ((job: Job, done: () => void) => void);
|
|
31
35
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"define.d.ts","sourceRoot":"","sources":["../../lib/agenda/define.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,GAAG,CAAC;AAE3B,OAAO,EAAE,GAAG,EAAE,MAAM,QAAQ,CAAC;AAI7B,oBAAY,WAAW;IACrB,OAAO,KAAK;IACZ,IAAI,KAAK;IACT,MAAM,IAAI;IACV,GAAG,MAAM;IACT,MAAM,MAAM;CACb;AAED,MAAM,WAAW,aAAa;IAC5B;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB;;;OAGG;IACH,QAAQ,CAAC,EAAE,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"define.d.ts","sourceRoot":"","sources":["../../lib/agenda/define.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,GAAG,CAAC;AAE3B,OAAO,EAAE,GAAG,EAAE,MAAM,QAAQ,CAAC;AAI7B,oBAAY,WAAW;IACrB,OAAO,KAAK;IACZ,IAAI,KAAK;IACT,MAAM,IAAI;IACV,GAAG,MAAM;IACT,MAAM,MAAM;CACb;AAED,MAAM,WAAW,aAAa;IAC5B;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB;;;OAGG;IACH,QAAQ,CAAC,EAAE,WAAW,CAAC;IAEvB;;OAEG;IACH,gBAAgB,CAAC,EAAE,OAAO,CAAC;CAC5B;AAED,oBAAY,SAAS,GACjB,CAAC,CAAC,GAAG,EAAE,GAAG,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC,GAC7B,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,IAAI,KAAK,IAAI,CAAC,CAAC;AAE3C;;;;;;;;GAQG;AACH,eAAO,MAAM,MAAM,SACX,MAAM,QACN,MAAM,WACH,aAAa,GAAG,SAAS,wCAEjC,IAuBF,CAAC"}
|
package/dist/agenda/define.js
CHANGED
|
@@ -36,6 +36,7 @@ const define = function (name, options, processor) {
|
|
|
36
36
|
lockLifetime: options.lockLifetime || this._defaultLockLifetime,
|
|
37
37
|
running: 0,
|
|
38
38
|
locked: 0,
|
|
39
|
+
shouldSaveResult: options.shouldSaveResult || false
|
|
39
40
|
};
|
|
40
41
|
debug("job [%s] defined with following options: \n%O", name, this._definitions[name]);
|
|
41
42
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"define.js","sourceRoot":"","sources":["../../lib/agenda/define.ts"],"names":[],"mappings":";;;;;;AACA,kDAAmC;AAGnC,MAAM,KAAK,GAAG,eAAc,CAAC,eAAe,CAAC,CAAC;AAE9C,IAAY,WAMX;AAND,WAAY,WAAW;IACrB,oDAAY,CAAA;IACZ,8CAAS,CAAA;IACT,iDAAU,CAAA;IACV,6CAAS,CAAA;IACT,mDAAY,CAAA;AACd,CAAC,EANW,WAAW,GAAX,mBAAW,KAAX,mBAAW,QAMtB;
|
|
1
|
+
{"version":3,"file":"define.js","sourceRoot":"","sources":["../../lib/agenda/define.ts"],"names":[],"mappings":";;;;;;AACA,kDAAmC;AAGnC,MAAM,KAAK,GAAG,eAAc,CAAC,eAAe,CAAC,CAAC;AAE9C,IAAY,WAMX;AAND,WAAY,WAAW;IACrB,oDAAY,CAAA;IACZ,8CAAS,CAAA;IACT,iDAAU,CAAA;IACV,6CAAS,CAAA;IACT,mDAAY,CAAA;AACd,CAAC,EANW,WAAW,GAAX,mBAAW,KAAX,mBAAW,QAMtB;AAmCD;;;;;;;;GAQG;AACI,MAAM,MAAM,GAAG,UAEpB,IAAY,EACZ,OAAkC,EAClC,SAAqB;IAErB,IAAI,SAAS,KAAK,SAAS,EAAE;QAC3B,SAAS,GAAG,OAAoB,CAAC;QACjC,OAAO,GAAG,EAAE,CAAC;KACd;IAED,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG;QACxB,EAAE,EAAE,SAAS;QACb,WAAW,EACR,OAAyB,CAAC,WAAW,IAAI,IAAI,CAAC,mBAAmB;QACpE,SAAS,EAAG,OAAyB,CAAC,SAAS,IAAI,IAAI,CAAC,iBAAiB;QACzE,QAAQ,EAAG,OAAyB,CAAC,QAAQ,IAAI,WAAW,CAAC,MAAM;QACnE,YAAY,EACT,OAAyB,CAAC,YAAY,IAAI,IAAI,CAAC,oBAAoB;QACtE,OAAO,EAAE,CAAC;QACV,MAAM,EAAE,CAAC;QACT,gBAAgB,EAAG,OAAyB,CAAC,gBAAgB,IAAI,KAAK;KACvE,CAAC;IACF,KAAK,CACH,+CAA+C,EAC/C,IAAI,EACJ,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CACxB,CAAC;AACJ,CAAC,CAAC;AA5BW,QAAA,MAAM,UA4BjB"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { Agenda } from ".";
|
|
2
|
+
/**
|
|
3
|
+
* Clear the interval that processes the jobs
|
|
4
|
+
* @name Agenda#drain
|
|
5
|
+
* @function
|
|
6
|
+
* @returns resolves when all running jobs completes
|
|
7
|
+
*/
|
|
8
|
+
export declare const drain: (this: Agenda) => Promise<void>;
|
|
9
|
+
//# sourceMappingURL=drain.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"drain.d.ts","sourceRoot":"","sources":["../../lib/agenda/drain.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,GAAG,CAAC;AAI3B;;;;;GAKG;AACH,eAAO,MAAM,KAAK,SAAyB,MAAM,KAAG,QAAQ,IAAI,CAkB/D,CAAC"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
12
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
13
|
+
};
|
|
14
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
+
exports.drain = void 0;
|
|
16
|
+
const debug_1 = __importDefault(require("debug"));
|
|
17
|
+
const debug = debug_1.default("agenda:drain");
|
|
18
|
+
/**
|
|
19
|
+
* Clear the interval that processes the jobs
|
|
20
|
+
* @name Agenda#drain
|
|
21
|
+
* @function
|
|
22
|
+
* @returns resolves when all running jobs completes
|
|
23
|
+
*/
|
|
24
|
+
const drain = function () {
|
|
25
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
26
|
+
return new Promise((resolve) => {
|
|
27
|
+
debug("Agenda.drain called, clearing interval for processJobs()");
|
|
28
|
+
clearInterval(this._processInterval);
|
|
29
|
+
this._processInterval = undefined;
|
|
30
|
+
if (this._runningJobs.length === 0) {
|
|
31
|
+
resolve();
|
|
32
|
+
}
|
|
33
|
+
else {
|
|
34
|
+
debug("Agenda.drain waiting for jobs to finish");
|
|
35
|
+
this.on('complete', () => {
|
|
36
|
+
// running jobs are removed after the event
|
|
37
|
+
if (this._runningJobs.length === 1) {
|
|
38
|
+
resolve();
|
|
39
|
+
}
|
|
40
|
+
});
|
|
41
|
+
}
|
|
42
|
+
});
|
|
43
|
+
});
|
|
44
|
+
};
|
|
45
|
+
exports.drain = drain;
|
|
46
|
+
//# sourceMappingURL=drain.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"drain.js","sourceRoot":"","sources":["../../lib/agenda/drain.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,kDAAmC;AAGnC,MAAM,KAAK,GAAG,eAAc,CAAC,cAAc,CAAC,CAAC;AAE7C;;;;;GAKG;AACI,MAAM,KAAK,GAAG;;QACjB,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;YAC3B,KAAK,CAAC,0DAA0D,CAAC,CAAC;YAClE,aAAa,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;YACrC,IAAI,CAAC,gBAAgB,GAAG,SAAS,CAAC;YAElC,IAAI,IAAI,CAAC,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE;gBAChC,OAAO,EAAE,CAAC;aACb;iBAAM;gBACH,KAAK,CAAC,yCAAyC,CAAC,CAAC;gBACjD,IAAI,CAAC,EAAE,CAAC,UAAU,EAAE,GAAG,EAAE;oBACrB,2CAA2C;oBAC3C,IAAI,IAAI,CAAC,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE;wBAChC,OAAO,EAAE,CAAC;qBACb;gBACL,CAAC,CAAC,CAAC;aACN;QACL,CAAC,CAAC,CAAC;IACP,CAAC;CAAA,CAAC;AAlBW,QAAA,KAAK,SAkBhB"}
|
package/dist/agenda/index.d.ts
CHANGED
|
@@ -28,6 +28,7 @@ import { schedule } from "./schedule";
|
|
|
28
28
|
import { sort } from "./sort";
|
|
29
29
|
import { start } from "./start";
|
|
30
30
|
import { stop } from "./stop";
|
|
31
|
+
import { drain } from './drain';
|
|
31
32
|
export interface AgendaConfig {
|
|
32
33
|
name?: string;
|
|
33
34
|
processEvery?: string;
|
|
@@ -43,6 +44,7 @@ export interface AgendaConfig {
|
|
|
43
44
|
collection?: string;
|
|
44
45
|
options?: MongoClientOptions;
|
|
45
46
|
};
|
|
47
|
+
disableAutoIndex?: boolean;
|
|
46
48
|
}
|
|
47
49
|
/**
|
|
48
50
|
* @class Agenda
|
|
@@ -72,6 +74,7 @@ declare class Agenda extends EventEmitter {
|
|
|
72
74
|
_definitions: any;
|
|
73
75
|
_findAndLockNextJob: (this: Agenda, jobName: string, definition: any) => Promise<Job<import("../job").JobAttributesData> | undefined>;
|
|
74
76
|
_indices: any;
|
|
77
|
+
_disableAutoIndex: boolean;
|
|
75
78
|
_isLockingOnTheFly: boolean;
|
|
76
79
|
_isJobQueueFilling: Map<string, boolean>;
|
|
77
80
|
_jobQueue: JobProcessingQueue;
|
|
@@ -115,6 +118,7 @@ declare class Agenda extends EventEmitter {
|
|
|
115
118
|
sort: typeof sort;
|
|
116
119
|
start: typeof start;
|
|
117
120
|
stop: typeof stop;
|
|
121
|
+
drain: typeof drain;
|
|
118
122
|
/**
|
|
119
123
|
* Constructs a new Agenda object.
|
|
120
124
|
* @param config Optional configuration to initialize the Agenda.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../lib/agenda/index.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AAEtC,OAAO,EACL,QAAQ,EACR,UAAU,EACV,EAAE,IAAI,OAAO,EACb,WAAW,EACX,kBAAkB,EACnB,MAAM,SAAS,CAAC;AACjB,OAAO,EAAE,GAAG,EAAE,MAAM,QAAQ,CAAC;AAC7B,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACnC,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAEhC,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAC5D,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAC9B,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAC9B,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AAC5B,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AACrC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAC9B,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../lib/agenda/index.ts"],"names":[],"mappings":"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"}
|
package/dist/agenda/index.js
CHANGED
|
@@ -33,6 +33,7 @@ const schedule_1 = require("./schedule");
|
|
|
33
33
|
const sort_1 = require("./sort");
|
|
34
34
|
const start_1 = require("./start");
|
|
35
35
|
const stop_1 = require("./stop");
|
|
36
|
+
const drain_1 = require("./drain");
|
|
36
37
|
/**
|
|
37
38
|
* @class Agenda
|
|
38
39
|
* @param {Object} config - Agenda Config
|
|
@@ -77,6 +78,7 @@ class Agenda extends events_1.EventEmitter {
|
|
|
77
78
|
this._defaultLockLifetime = config.defaultLockLifetime || 10 * 60 * 1000; // 10 minute default lockLifetime
|
|
78
79
|
this._sort = config.sort || { nextRunAt: 1, priority: -1 };
|
|
79
80
|
this._indices = Object.assign(Object.assign({ name: 1 }, this._sort), { priority: -1, lockedAt: 1, nextRunAt: 1, disabled: 1 });
|
|
81
|
+
this._disableAutoIndex = config.disableAutoIndex === true;
|
|
80
82
|
this._isLockingOnTheFly = false;
|
|
81
83
|
this._isJobQueueFilling = new Map();
|
|
82
84
|
this._jobsToLock = [];
|
|
@@ -122,4 +124,5 @@ Agenda.prototype.schedule = schedule_1.schedule;
|
|
|
122
124
|
Agenda.prototype.sort = sort_1.sort;
|
|
123
125
|
Agenda.prototype.start = start_1.start;
|
|
124
126
|
Agenda.prototype.stop = stop_1.stop;
|
|
127
|
+
Agenda.prototype.drain = drain_1.drain;
|
|
125
128
|
//# sourceMappingURL=index.js.map
|
package/dist/agenda/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../lib/agenda/index.ts"],"names":[],"mappings":";;;;;;AAAA,mCAAsC;AACtC,oEAA2C;AAS3C,qCAAkC;AAClC,mCAAgC;AAChC,qCAAkC;AAClC,yCAAsC;AACtC,uCAAmC;AACnC,+DAA2D;AAC3D,mEAA8D;AAC9D,6DAAwD;AACxD,qCAAkC;AAClC,uCAAoC;AACpC,qCAAkC;AAClC,mCAAgC;AAChC,qEAA8D;AAC9D,iEAA4D;AAC5D,iCAA8B;AAC9B,6CAAyC;AACzC,uDAAmD;AACnD,mCAAgC;AAChC,iCAA8B;AAC9B,+BAA4B;AAC5B,mDAA+C;AAC/C,mCAAgC;AAChC,yCAAqC;AACrC,yCAAsC;AACtC,iCAA8B;AAC9B,mCAAgC;AAChC,iCAA8B;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../lib/agenda/index.ts"],"names":[],"mappings":";;;;;;AAAA,mCAAsC;AACtC,oEAA2C;AAS3C,qCAAkC;AAClC,mCAAgC;AAChC,qCAAkC;AAClC,yCAAsC;AACtC,uCAAmC;AACnC,+DAA2D;AAC3D,mEAA8D;AAC9D,6DAAwD;AACxD,qCAAkC;AAClC,uCAAoC;AACpC,qCAAkC;AAClC,mCAAgC;AAChC,qEAA8D;AAC9D,iEAA4D;AAC5D,iCAA8B;AAC9B,6CAAyC;AACzC,uDAAmD;AACnD,mCAAgC;AAChC,iCAA8B;AAC9B,+BAA4B;AAC5B,mDAA+C;AAC/C,mCAAgC;AAChC,yCAAqC;AACrC,yCAAsC;AACtC,iCAA8B;AAC9B,mCAAgC;AAChC,iCAA8B;AAC9B,mCAAgC;AAoBhC;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,MAAO,SAAQ,qBAAY;IAsD/B;;;;OAIG;IACH,YACE,SAAuB,EAAE,EACzB,EAGS;;QAET,KAAK,EAAE,CAAC;QA7DV,wBAAmB,GAAG,2CAAkB,CAAC;QA+DvC,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC;QACzB,IAAI,CAAC,aAAa,GAAG,CAAC,MAAA,wBAAa,CAAC,MAAM,CAAC,YAAY,CAAC,mCACtD,wBAAa,CAAC,WAAW,CAAC,CAAW,CAAC,CAAC,2EAA2E;QACpH,IAAI,CAAC,mBAAmB,GAAG,MAAM,CAAC,kBAAkB,IAAI,CAAC,CAAC;QAC1D,IAAI,CAAC,eAAe,GAAG,MAAM,CAAC,cAAc,IAAI,EAAE,CAAC;QACnD,IAAI,CAAC,iBAAiB,GAAG,MAAM,CAAC,gBAAgB,IAAI,CAAC,CAAC;QACtD,IAAI,CAAC,UAAU,GAAG,MAAM,CAAC,SAAS,IAAI,CAAC,CAAC;QACxC,IAAI,CAAC,YAAY,GAAG,EAAE,CAAC;QACvB,IAAI,CAAC,YAAY,GAAG,EAAE,CAAC;QACvB,IAAI,CAAC,WAAW,GAAG,EAAE,CAAC;QACtB,IAAI,CAAC,SAAS,GAAG,IAAI,yCAAkB,EAAE,CAAC;QAC1C,IAAI,CAAC,oBAAoB,GAAG,MAAM,CAAC,mBAAmB,IAAI,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,iCAAiC;QAC3G,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC,IAAI,IAAI,EAAE,SAAS,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,EAAE,CAAC;QAC3D,IAAI,CAAC,QAAQ,iCACX,IAAI,EAAE,CAAC,IACJ,IAAI,CAAC,KAAK,KACb,QAAQ,EAAE,CAAC,CAAC,EACZ,QAAQ,EAAE,CAAC,EACX,SAAS,EAAE,CAAC,EACZ,QAAQ,EAAE,CAAC,GACZ,CAAC;QACF,IAAI,CAAC,iBAAiB,GAAG,MAAM,CAAC,gBAAgB,KAAK,IAAI,CAAC;QAE1D,IAAI,CAAC,kBAAkB,GAAG,KAAK,CAAC;QAChC,IAAI,CAAC,kBAAkB,GAAG,IAAI,GAAG,EAAmB,CAAC;QACrD,IAAI,CAAC,WAAW,GAAG,EAAE,CAAC;QACtB,IAAI,CAAC,MAAM,GAAG,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;YACpC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QAC9B,CAAC,CAAC,CAAC;QAEH,IAAI,MAAM,CAAC,KAAK,EAAE;YAChB,IAAI,CAAC,KAAK,CACR,MAAM,CAAC,KAAK,EACZ,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,EAC5C,EAAE,CACH,CAAC,CAAC,iIAAiI;YACpI,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,MAAM,CAAC,KAAK,CAAC,QAAQ,IAAI,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,EAAE;gBACtE,IAAI,CAAC,wBAAwB,GAAG,OAAO;gBACrC,mBAAmB;gBACnB,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,kBAAkB,CACnD,CAAC;aACH;SACF;aAAM,IAAI,MAAM,CAAC,EAAE,EAAE;YACpB,IAAI,CAAC,QAAQ,CACX,MAAM,CAAC,EAAE,CAAC,OAAO,EACjB,MAAM,CAAC,EAAE,CAAC,UAAU,EACpB,MAAM,CAAC,EAAE,CAAC,OAAO,EACjB,EAAE,CACH,CAAC;SACH;IACH,CAAC;CACF;AA6BQ,wBAAM;AA3Bf,MAAM,CAAC,SAAS,CAAC,MAAM,GAAG,eAAM,CAAC;AACjC,MAAM,CAAC,SAAS,CAAC,KAAK,GAAG,aAAK,CAAC;AAC/B,MAAM,CAAC,SAAS,CAAC,MAAM,GAAG,eAAM,CAAC;AACjC,MAAM,CAAC,SAAS,CAAC,QAAQ,GAAG,mBAAQ,CAAC;AACrC,MAAM,CAAC,SAAS,CAAC,OAAO,GAAG,gBAAM,CAAC;AAClC,MAAM,CAAC,SAAS,CAAC,kBAAkB,GAAG,wCAAkB,CAAC;AACzD,MAAM,CAAC,SAAS,CAAC,mBAAmB,GAAG,2CAAmB,CAAC;AAC3D,MAAM,CAAC,SAAS,CAAC,gBAAgB,GAAG,qCAAgB,CAAC;AACrD,MAAM,CAAC,SAAS,CAAC,MAAM,GAAG,eAAM,CAAC;AACjC,MAAM,CAAC,SAAS,CAAC,OAAO,GAAG,iBAAO,CAAC;AACnC,MAAM,CAAC,SAAS,CAAC,MAAM,GAAG,eAAM,CAAC;AACjC,MAAM,CAAC,SAAS,CAAC,KAAK,GAAG,aAAK,CAAC;AAC/B,MAAM,CAAC,SAAS,CAAC,IAAI,GAAG,WAAI,CAAC;AAC7B,MAAM,CAAC,SAAS,CAAC,SAAS,GAAG,sBAAS,CAAC;AACvC,MAAM,CAAC,SAAS,CAAC,cAAc,GAAG,gCAAc,CAAC;AACjD,MAAM,CAAC,SAAS,CAAC,KAAK,GAAG,aAAK,CAAC;AAC/B,MAAM,CAAC,SAAS,CAAC,IAAI,GAAG,WAAI,CAAC;AAC7B,MAAM,CAAC,SAAS,CAAC,GAAG,GAAG,SAAG,CAAC;AAC3B,MAAM,CAAC,SAAS,CAAC,YAAY,GAAG,4BAAY,CAAC;AAC7C,MAAM,CAAC,SAAS,CAAC,KAAK,GAAG,aAAK,CAAC;AAC/B,MAAM,CAAC,SAAS,CAAC,OAAO,GAAG,kBAAO,CAAC;AACnC,MAAM,CAAC,SAAS,CAAC,QAAQ,GAAG,mBAAQ,CAAC;AACrC,MAAM,CAAC,SAAS,CAAC,IAAI,GAAG,WAAI,CAAC;AAC7B,MAAM,CAAC,SAAS,CAAC,KAAK,GAAG,aAAK,CAAC;AAC/B,MAAM,CAAC,SAAS,CAAC,IAAI,GAAG,WAAI,CAAC;AAC7B,MAAM,CAAC,SAAS,CAAC,KAAK,GAAG,aAAK,CAAC"}
|
package/dist/job/index.d.ts
CHANGED
|
@@ -13,6 +13,7 @@ import { isRunning } from "./is-running";
|
|
|
13
13
|
import { save } from "./save";
|
|
14
14
|
import { remove } from "./remove";
|
|
15
15
|
import { touch } from "./touch";
|
|
16
|
+
import { setShouldSaveResult } from "./set-shouldsaveresult";
|
|
16
17
|
import { Agenda } from "../agenda";
|
|
17
18
|
import * as mongodb from "mongodb";
|
|
18
19
|
export interface JobAttributesData {
|
|
@@ -92,6 +93,14 @@ export interface JobAttributes<T extends JobAttributesData = JobAttributesData>
|
|
|
92
93
|
* Date/time the job was last modified.
|
|
93
94
|
*/
|
|
94
95
|
lastModifiedBy?: string;
|
|
96
|
+
/**
|
|
97
|
+
* Should the return value of the job be persisted.
|
|
98
|
+
*/
|
|
99
|
+
shouldSaveResult?: boolean;
|
|
100
|
+
/**
|
|
101
|
+
* Result of the finished job.
|
|
102
|
+
*/
|
|
103
|
+
result?: unknown;
|
|
95
104
|
}
|
|
96
105
|
/**
|
|
97
106
|
* @class
|
|
@@ -123,6 +132,7 @@ declare class Job<T extends JobAttributesData = JobAttributesData> {
|
|
|
123
132
|
save: typeof save;
|
|
124
133
|
remove: typeof remove;
|
|
125
134
|
touch: typeof touch;
|
|
135
|
+
setShouldSaveResult: typeof setShouldSaveResult;
|
|
126
136
|
constructor(options: JobAttributes<T>);
|
|
127
137
|
}
|
|
128
138
|
export { Job };
|
package/dist/job/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../lib/job/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACnC,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAC9B,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AAC5B,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAC9B,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../lib/job/index.ts"],"names":[],"mappings":"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"}
|
package/dist/job/index.js
CHANGED
|
@@ -27,6 +27,7 @@ const is_running_1 = require("./is-running");
|
|
|
27
27
|
const save_1 = require("./save");
|
|
28
28
|
const remove_1 = require("./remove");
|
|
29
29
|
const touch_1 = require("./touch");
|
|
30
|
+
const set_shouldsaveresult_1 = require("./set-shouldsaveresult");
|
|
30
31
|
const utils_1 = require("../utils");
|
|
31
32
|
const define_1 = require("../agenda/define");
|
|
32
33
|
/**
|
|
@@ -45,6 +46,8 @@ class Job {
|
|
|
45
46
|
args.priority === undefined
|
|
46
47
|
? define_1.JobPriority.normal
|
|
47
48
|
: utils_1.parsePriority(args.priority);
|
|
49
|
+
// Set shouldSaveResult option
|
|
50
|
+
args.shouldSaveResult = args.shouldSaveResult || false;
|
|
48
51
|
// Set attrs to args
|
|
49
52
|
const attrs = {};
|
|
50
53
|
for (const key in args) {
|
|
@@ -75,4 +78,5 @@ Job.prototype.isRunning = is_running_1.isRunning;
|
|
|
75
78
|
Job.prototype.save = save_1.save;
|
|
76
79
|
Job.prototype.remove = remove_1.remove;
|
|
77
80
|
Job.prototype.touch = touch_1.touch;
|
|
81
|
+
Job.prototype.setShouldSaveResult = set_shouldsaveresult_1.setShouldSaveResult;
|
|
78
82
|
//# sourceMappingURL=index.js.map
|
package/dist/job/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../lib/job/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAAA,uCAAmC;AACnC,+DAAyD;AACzD,iDAA6C;AAC7C,2CAAuC;AACvC,uCAAoC;AACpC,qCAAkC;AAClC,qCAAkC;AAClC,yCAAsC;AACtC,yCAAsC;AACtC,iCAA8B;AAC9B,+BAA4B;AAC5B,6CAAyC;AACzC,iCAA8B;AAC9B,qCAAkC;AAClC,mCAAgC;AAChC,oCAAyC;AAEzC,6CAA+C;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../lib/job/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAAA,uCAAmC;AACnC,+DAAyD;AACzD,iDAA6C;AAC7C,2CAAuC;AACvC,uCAAoC;AACpC,qCAAkC;AAClC,qCAAkC;AAClC,yCAAsC;AACtC,yCAAsC;AACtC,iCAA8B;AAC9B,+BAA4B;AAC5B,6CAAyC;AACzC,iCAA8B;AAC9B,qCAAkC;AAClC,mCAAgC;AAChC,iEAA6D;AAC7D,oCAAyC;AAEzC,6CAA+C;AAiH/C;;;;;GAKG;AACH,MAAM,GAAG;IA4BP,YAAY,OAAyB;QACnC,MAAM,KAAuC,OAAO,aAAP,OAAO,cAAP,OAAO,GAAI,EAAE,EAApD,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,OAA2B,EAAtB,IAAI,cAAlC,+BAAoC,CAAgB,CAAC;QAE3D,uBAAuB;QACvB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QAErB,eAAe;QACf,IAAI,CAAC,QAAQ;YACX,IAAI,CAAC,QAAQ,KAAK,SAAS;gBACzB,CAAC,CAAC,oBAAW,CAAC,MAAM;gBACpB,CAAC,CAAC,qBAAa,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAEnC,8BAA8B;QAC9B,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,gBAAgB,IAAI,KAAK,CAAA;QAEtD,oBAAoB;QACpB,MAAM,KAAK,GAAQ,EAAE,CAAC;QACtB,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE;YACtB,IAAI,EAAE,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,CAAC,EAAE;gBACrC,mBAAmB;gBACnB,KAAK,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC;aACxB;SACF;QAED,4BAA4B;QAC5B,IAAI,CAAC,KAAK,mCACL,KAAK;YACR,oFAAoF;YACpF,IAAI,EAAE,KAAK,CAAC,IAAI,IAAI,EAAE,EACtB,QAAQ,EAAE,KAAK,CAAC,QAAQ,EACxB,IAAI,EAAE,IAAI,IAAI,MAAM,EACpB,SAAS,EAAE,SAAS,IAAI,IAAI,IAAI,EAAE,GACnC,CAAC;IACJ,CAAC;CACF;AAmBQ,kBAAG;AAjBZ,GAAG,CAAC,SAAS,CAAC,MAAM,GAAG,gBAAM,CAAC;AAC9B,GAAG,CAAC,SAAS,CAAC,gBAAgB,GAAG,sCAAgB,CAAC;AAClD,GAAG,CAAC,SAAS,CAAC,WAAW,GAAG,0BAAW,CAAC;AACxC,GAAG,CAAC,SAAS,CAAC,QAAQ,GAAG,oBAAQ,CAAC;AAClC,GAAG,CAAC,SAAS,CAAC,OAAO,GAAG,iBAAO,CAAC;AAChC,GAAG,CAAC,SAAS,CAAC,MAAM,GAAG,eAAM,CAAC;AAC9B,GAAG,CAAC,SAAS,CAAC,MAAM,GAAG,eAAM,CAAC;AAC9B,GAAG,CAAC,SAAS,CAAC,QAAQ,GAAG,mBAAQ,CAAC;AAClC,GAAG,CAAC,SAAS,CAAC,QAAQ,GAAG,mBAAQ,CAAC;AAClC,GAAG,CAAC,SAAS,CAAC,IAAI,GAAG,WAAI,CAAC;AAC1B,GAAG,CAAC,SAAS,CAAC,GAAG,GAAG,SAAG,CAAC;AACxB,GAAG,CAAC,SAAS,CAAC,SAAS,GAAG,sBAAS,CAAC;AACpC,GAAG,CAAC,SAAS,CAAC,IAAI,GAAG,WAAI,CAAC;AAC1B,GAAG,CAAC,SAAS,CAAC,MAAM,GAAG,eAAM,CAAC;AAC9B,GAAG,CAAC,SAAS,CAAC,KAAK,GAAG,aAAK,CAAC;AAC5B,GAAG,CAAC,SAAS,CAAC,mBAAmB,GAAG,0CAAmB,CAAC"}
|
package/dist/job/run.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"run.d.ts","sourceRoot":"","sources":["../../lib/job/run.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,GAAG,EAAE,MAAM,GAAG,CAAC;AAIxB;;;;GAIG;AACH,eAAO,MAAM,GAAG,SAAyB,GAAG,KAAG,QAAQ,GAAG,
|
|
1
|
+
{"version":3,"file":"run.d.ts","sourceRoot":"","sources":["../../lib/job/run.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,GAAG,EAAE,MAAM,GAAG,CAAC;AAIxB;;;;GAIG;AACH,eAAO,MAAM,GAAG,SAAyB,GAAG,KAAG,QAAQ,GAAG,CAkHzD,CAAC"}
|
package/dist/job/run.js
CHANGED
|
@@ -32,7 +32,7 @@ const run = function () {
|
|
|
32
32
|
this.computeNextRunAt();
|
|
33
33
|
yield this.save();
|
|
34
34
|
let finished = false;
|
|
35
|
-
const jobCallback = (error) => __awaiter(this, void 0, void 0, function* () {
|
|
35
|
+
const jobCallback = (error, result) => __awaiter(this, void 0, void 0, function* () {
|
|
36
36
|
// We don't want to complete the job multiple times
|
|
37
37
|
if (finished) {
|
|
38
38
|
return;
|
|
@@ -43,6 +43,9 @@ const run = function () {
|
|
|
43
43
|
}
|
|
44
44
|
else {
|
|
45
45
|
this.attrs.lastFinishedAt = new Date();
|
|
46
|
+
if (this.attrs.shouldSaveResult && result) {
|
|
47
|
+
this.attrs.result = result;
|
|
48
|
+
}
|
|
46
49
|
}
|
|
47
50
|
this.attrs.lockedAt = null;
|
|
48
51
|
yield this.save().catch((error) => {
|
|
@@ -81,8 +84,8 @@ const run = function () {
|
|
|
81
84
|
}
|
|
82
85
|
else {
|
|
83
86
|
debug("[%s:%s] process function being called", this.attrs.name, this.attrs._id);
|
|
84
|
-
yield definition.fn(this);
|
|
85
|
-
yield jobCallback();
|
|
87
|
+
const result = yield definition.fn(this);
|
|
88
|
+
yield jobCallback(undefined, result);
|
|
86
89
|
}
|
|
87
90
|
}
|
|
88
91
|
catch (error) {
|
package/dist/job/run.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"run.js","sourceRoot":"","sources":["../../lib/job/run.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,kDAAmC;AAGnC,MAAM,KAAK,GAAG,eAAc,CAAC,YAAY,CAAC,CAAC;AAE3C;;;;GAIG;AACI,MAAM,GAAG,GAAG;;QACjB,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;QACxB,MAAM,UAAU,GAAG,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAExD,wGAAwG;QACxG,qDAAqD;QACrD,OAAO,IAAI,OAAO,CAAC,CAAO,OAAO,EAAE,MAAM,EAAE,EAAE;YAC3C,IAAI,CAAC,KAAK,CAAC,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC;YAClC,KAAK,CACH,kCAAkC,EAClC,IAAI,CAAC,KAAK,CAAC,IAAI,EACf,IAAI,CAAC,KAAK,CAAC,GAAG,EACd,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,WAAW,EAAE,CACnC,CAAC;YACF,IAAI,CAAC,gBAAgB,EAAE,CAAC;YACxB,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC;YAElB,IAAI,QAAQ,GAAG,KAAK,CAAC;YACrB,MAAM,WAAW,GAAG,CAAO,KAAa,EAAE,EAAE;
|
|
1
|
+
{"version":3,"file":"run.js","sourceRoot":"","sources":["../../lib/job/run.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { Job } from ".";
|
|
2
|
+
/**
|
|
3
|
+
* Sets the flag if the return value of the job should be persisted
|
|
4
|
+
* @param shouldSaveResult flag if the return value of the job should be persisted
|
|
5
|
+
*/
|
|
6
|
+
export declare const setShouldSaveResult: (this: Job, shouldSaveResult: boolean) => Job;
|
|
7
|
+
//# sourceMappingURL=set-shouldsaveresult.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"set-shouldsaveresult.d.ts","sourceRoot":"","sources":["../../lib/job/set-shouldsaveresult.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,GAAG,CAAC;AAExB;;;GAGG;AACH,eAAO,MAAM,mBAAmB,SAAmB,GAAG,oBAAoB,OAAO,KAAG,GAGnF,CAAC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.setShouldSaveResult = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* Sets the flag if the return value of the job should be persisted
|
|
6
|
+
* @param shouldSaveResult flag if the return value of the job should be persisted
|
|
7
|
+
*/
|
|
8
|
+
const setShouldSaveResult = function (shouldSaveResult) {
|
|
9
|
+
this.attrs.shouldSaveResult = shouldSaveResult;
|
|
10
|
+
return this;
|
|
11
|
+
};
|
|
12
|
+
exports.setShouldSaveResult = setShouldSaveResult;
|
|
13
|
+
//# sourceMappingURL=set-shouldsaveresult.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"set-shouldsaveresult.js","sourceRoot":"","sources":["../../lib/job/set-shouldsaveresult.ts"],"names":[],"mappings":";;;AAEA;;;GAGG;AACI,MAAM,mBAAmB,GAAG,UAAqB,gBAAyB;IAC/E,IAAI,CAAC,KAAK,CAAC,gBAAgB,GAAG,gBAAgB,CAAC;IAC/C,OAAO,IAAI,CAAC;AACd,CAAC,CAAC;AAHW,QAAA,mBAAmB,uBAG9B"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "agenda",
|
|
3
|
-
"version": "4.
|
|
3
|
+
"version": "4.4.0",
|
|
4
4
|
"description": "Light weight job scheduler for Node.js",
|
|
5
5
|
"main": "dist/cjs.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
@@ -56,7 +56,7 @@
|
|
|
56
56
|
"date.js": "~0.3.3",
|
|
57
57
|
"debug": "~4.3.0",
|
|
58
58
|
"human-interval": "~2.0.0",
|
|
59
|
-
"moment-timezone": "~0.5.
|
|
59
|
+
"moment-timezone": "~0.5.37",
|
|
60
60
|
"mongodb": "^4.1.0"
|
|
61
61
|
},
|
|
62
62
|
"devDependencies": {
|