@webda/async 4.0.0-beta.2 → 4.0.0-beta.3

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.
Files changed (62) hide show
  1. package/README.md +89 -4
  2. package/lib/{models.d.ts → asyncaction.model.d.ts} +75 -37
  3. package/lib/asyncaction.model.d.ts.map +1 -0
  4. package/lib/asyncaction.model.js +269 -0
  5. package/lib/asyncaction.model.js.map +1 -0
  6. package/lib/index.d.ts +6 -4
  7. package/lib/index.d.ts.map +1 -1
  8. package/lib/index.js +6 -4
  9. package/lib/index.js.map +1 -1
  10. package/lib/services/asyncevents.service.d.ts +154 -0
  11. package/lib/services/asyncevents.service.d.ts.map +1 -0
  12. package/lib/services/asyncevents.service.js +219 -0
  13. package/lib/services/asyncevents.service.js.map +1 -0
  14. package/lib/services/{asyncjobservice.d.ts → asyncjobservice.service.d.ts} +78 -61
  15. package/lib/services/asyncjobservice.service.d.ts.map +1 -0
  16. package/lib/services/asyncjobservice.service.js +584 -0
  17. package/lib/services/asyncjobservice.service.js.map +1 -0
  18. package/lib/services/{localrunner.d.ts → localrunner.service.d.ts} +24 -10
  19. package/lib/services/localrunner.service.d.ts.map +1 -0
  20. package/lib/services/localrunner.service.js +87 -0
  21. package/lib/services/localrunner.service.js.map +1 -0
  22. package/lib/services/{runner.d.ts → runner.service.d.ts} +17 -12
  23. package/lib/services/runner.service.d.ts.map +1 -0
  24. package/lib/services/{runner.js → runner.service.js} +16 -13
  25. package/lib/services/runner.service.js.map +1 -0
  26. package/lib/services/servicerunner.service.d.ts +105 -0
  27. package/lib/services/servicerunner.service.d.ts.map +1 -0
  28. package/lib/services/servicerunner.service.js +131 -0
  29. package/lib/services/servicerunner.service.js.map +1 -0
  30. package/package.json +32 -42
  31. package/webda.module.json +1925 -890
  32. package/lib/models.d.ts.map +0 -1
  33. package/lib/models.js +0 -179
  34. package/lib/models.js.map +0 -1
  35. package/lib/models.spec.d.ts +0 -7
  36. package/lib/models.spec.d.ts.map +0 -1
  37. package/lib/models.spec.js +0 -64
  38. package/lib/models.spec.js.map +0 -1
  39. package/lib/services/asyncjobservice.d.ts.map +0 -1
  40. package/lib/services/asyncjobservice.js +0 -469
  41. package/lib/services/asyncjobservice.js.map +0 -1
  42. package/lib/services/asyncjobservice.spec.d.ts +0 -2
  43. package/lib/services/asyncjobservice.spec.d.ts.map +0 -1
  44. package/lib/services/asyncjobservice.spec.js +0 -561
  45. package/lib/services/asyncjobservice.spec.js.map +0 -1
  46. package/lib/services/localrunner.d.ts.map +0 -1
  47. package/lib/services/localrunner.js +0 -70
  48. package/lib/services/localrunner.js.map +0 -1
  49. package/lib/services/localrunner.spec.d.ts +0 -2
  50. package/lib/services/localrunner.spec.d.ts.map +0 -1
  51. package/lib/services/localrunner.spec.js +0 -113
  52. package/lib/services/localrunner.spec.js.map +0 -1
  53. package/lib/services/runner.d.ts.map +0 -1
  54. package/lib/services/runner.js.map +0 -1
  55. package/lib/services/servicerunner.d.ts +0 -68
  56. package/lib/services/servicerunner.d.ts.map +0 -1
  57. package/lib/services/servicerunner.js +0 -97
  58. package/lib/services/servicerunner.js.map +0 -1
  59. package/lib/services/servicerunner.spec.d.ts +0 -2
  60. package/lib/services/servicerunner.spec.d.ts.map +0 -1
  61. package/lib/services/servicerunner.spec.js +0 -111
  62. package/lib/services/servicerunner.spec.js.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"models.d.ts","sourceRoot":"","sources":["../src/models.ts"],"names":[],"mappings":"AAAA,OAAO,EAAgB,SAAS,EAAE,gBAAgB,EAAE,UAAU,EAAc,MAAM,aAAa,CAAC;AAChG,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAGhD;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IACb;;OAEG;IACH,WAAW,EAAE,MAAM,CAAC;IACpB;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;CACd;AAED;;;GAGG;AACH,MAAM,CAAC,OAAO,OAAO,WAAY,SAAQ,SAAS;IAChD;;OAEG;;IAMH;;;;;OAKG;IACH,UAAU,IAAI,OAAO;IAGrB;;OAEG;IACI,IAAI,EAAE,MAAM,CAAC;IACpB;;OAEG;IACI,MAAM,EAAE,SAAS,GAAG,SAAS,GAAG,OAAO,GAAG,QAAQ,GAAG,UAAU,GAAG,SAAS,GAAG,WAAW,CAAC;IAEjG;;OAEG;IACI,SAAS,CAAC,EAAE,MAAM,CAAC;IAE1B;;OAEG;IACI,YAAY,CAAC,EAAE,MAAM,CAAC;IAC7B;;OAEG;IACI,SAAS,CAAC,EAAE,MAAM,CAAC;IAC1B;;OAEG;IACI,GAAG,EAAE,GAAG,CAAC;IAEhB;;OAEG;IACI,cAAc,EAAE,MAAM,CAAC;IAC9B;;OAEG;IACI,OAAO,EAAE,GAAG,CAAC;IAEpB;;OAEG;IACI,aAAa,EAAE,GAAG,CAAC;IAE1B;;OAEG;IACI,IAAI,EAAE,MAAM,CAAC;IAEpB;;OAEG;IACI,SAAS,CAAC,EAAE,GAAG,EAAE,CAAC;IAEzB;;OAEG;IACI,IAAI,EAAE,MAAM,EAAE,CAAC;IAEtB;;OAEG;IACI,WAAW,EAAE,MAAM,CAAC;IAE3B;;;;OAIG;IACI,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAEhC,YAAY;IAIZ;;;OAGG;IAEU,YAAY,CAAC,OAAO,EAAE,gBAAgB;IAQnD;;;OAGG;IACI,UAAU,IAAI,MAAM;IAI3B;;;OAGG;IACU,MAAM,CAAC,IAAI,EAAE,GAAG,EAAE,IAAI,GAAE,MAAkB;IAwBvD;;;;OAIG;cACa,gBAAgB,CAAC,CAAC,SAAS,WAAW,GAAG,WAAW,EAAE,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;IAazG;;;;OAIG;IACH,OAAO,CAAC,OAAO,EAAE,MAAM;IAIvB;;;;;OAKG;IACU,QAAQ,CAAC,OAAO,EAAE,gBAAgB,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAuB1F;AAED;;;;GAIG;AACH,qBAAa,gBAAiB,SAAQ,WAAW;IAStC,WAAW,CAAC,EAAE,MAAM;IACpB,MAAM,CAAC,EAAE,MAAM;IATjB,QAAQ,EAAE,cAAc,CAAU;IACzC;;;;;OAKG;gBAEM,WAAW,CAAC,EAAE,MAAM,EACpB,MAAM,CAAC,EAAE,MAAM,EACtB,GAAG,IAAI,EAAE,GAAG,EAAE;IAMhB;;;OAGG;IACH,UAAU;CAGX;AAED;;;;GAIG;AACH,qBAAa,oBAAqB,SAAQ,WAAW;IAE1C,WAAW,EAAE,MAAM;IACnB,OAAO,EAAE,gBAAgB;IACzB,QAAQ,EAAE,cAAc;gBAFxB,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,gBAAgB,EACzB,QAAQ,GAAE,cAAuB;IAK1C;;;OAGG;IACH,UAAU;CAGX;AAED,OAAO,EAAE,WAAW,EAAE,CAAC"}
package/lib/models.js DELETED
@@ -1,179 +0,0 @@
1
- var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
- else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
- return c > 3 && r && Object.defineProperty(target, key, r), r;
6
- };
7
- import { Action, Core, CoreModel, WebContext, WebdaError } from "@webda/core";
8
- import * as crypto from "crypto";
9
- /**
10
- * Define here a model that can be used along with Store service
11
- * @WebdaModel
12
- */
13
- export default class AsyncAction extends CoreModel {
14
- /**
15
- * Set type
16
- */
17
- constructor() {
18
- super();
19
- this.type = this.constructor.name;
20
- }
21
- /**
22
- * By default AsyncAction are not considered internal
23
- *
24
- * Internal: That execute a method or operation of Webda application framework
25
- * @returns
26
- */
27
- isInternal() {
28
- return false;
29
- }
30
- getLogsLimit() {
31
- return 1000;
32
- }
33
- /**
34
- * Allow to report status for a job
35
- * @param context
36
- */
37
- async statusAction(context) {
38
- if (!(context instanceof WebContext)) {
39
- throw new Error("Only WebContext can call this action");
40
- }
41
- await this.update(await context.getRequestBody(), context.getHttpContext().getUniqueHeader("X-Job-Time"));
42
- context.write({ ...this, logs: undefined, statusDetails: undefined });
43
- }
44
- /**
45
- * Return the hook url if empty fallback to the service url
46
- * @returns
47
- */
48
- getHookUrl() {
49
- return Core.get().getApiUrl(`${Core.get().getRouter().getModelUrl(this)}/${this.uuid}`);
50
- }
51
- /**
52
- *
53
- * @param body
54
- */
55
- async update(body, time = undefined) {
56
- if (body.logs && Array.isArray(body.logs)) {
57
- this.logs ?? (this.logs = []);
58
- this.logs.push(...body.logs);
59
- // Prevent having too much logs
60
- if (this.logs.length > this.getLogsLimit()) {
61
- this.logs = this.logs.slice(-1 * this.getLogsLimit());
62
- }
63
- }
64
- this._lastJobUpdate = Number.parseInt(time || "0") || 0;
65
- if (Date.now() - this._lastJobUpdate > 60) {
66
- this._lastJobUpdate = Date.now();
67
- }
68
- await this.patch({
69
- _lastJobUpdate: this._lastJobUpdate,
70
- logs: this.logs,
71
- status: body.status || this.status,
72
- errorMessage: body.errorMessage || this.errorMessage,
73
- statusDetails: body.statusDetails || this.statusDetails,
74
- results: body.results || this.results
75
- });
76
- return this;
77
- }
78
- /**
79
- *
80
- * @param context
81
- * @param action
82
- */
83
- async verifyJobRequest(context) {
84
- const jobTime = context.getHttpContext().getUniqueHeader("X-Job-Time");
85
- const jobHash = context.getHttpContext().getUniqueHeader("X-Job-Hash");
86
- // Ensure hash mac is correct
87
- if (jobHash !== this.getHmac(jobTime)) {
88
- context.log("TRACE", "Invalid Job HMAC");
89
- throw new WebdaError.Forbidden("Invalid Job HMAC");
90
- }
91
- // Set the context extension
92
- context.setExtension("asyncJob", this);
93
- }
94
- /**
95
- * Get the hmac for the job
96
- * @param jobTime
97
- * @returns
98
- */
99
- getHmac(jobTime) {
100
- return crypto.createHmac("sha256", this.__secretKey).update(jobTime).digest("hex");
101
- }
102
- /**
103
- * Ensure action hook is ok
104
- * @param context
105
- * @param _action
106
- * @returns
107
- */
108
- async checkAct(context, action) {
109
- // Only action runner can call status action
110
- if ("status" === action) {
111
- if (context instanceof WebContext) {
112
- if (context.getHttpContext().getUniqueHeader("X-Job-Hash") &&
113
- context.getHttpContext().getUniqueHeader("X-Job-Time")) {
114
- return await this.verifyJobRequest(context);
115
- }
116
- }
117
- throw new WebdaError.Forbidden("Only Job runner can call this action");
118
- }
119
- // Allow to retrieve/update binaries by action runner
120
- if (["get_binary", "attach_binary", "update_binary_metadata"].includes(action) &&
121
- context.getHttpContext()?.getUniqueHeader("X-Job-Hash") &&
122
- context.getHttpContext()?.getUniqueHeader("X-Job-Time")) {
123
- return await this.verifyJobRequest(context);
124
- }
125
- return super.checkAct(context, action);
126
- }
127
- }
128
- __decorate([
129
- Action({ name: "status", openapi: { hidden: true } })
130
- ], AsyncAction.prototype, "statusAction", null);
131
- /**
132
- * Define a Webda Async Action
133
- *
134
- * @WebdaModel
135
- */
136
- export class AsyncWebdaAction extends AsyncAction {
137
- /**
138
- *
139
- * @param serviceName service to call
140
- * @param method method to call
141
- * @param arguments to call with the method
142
- */
143
- constructor(serviceName, method, ...args) {
144
- super();
145
- this.serviceName = serviceName;
146
- this.method = method;
147
- this.logLevel = "INFO";
148
- this.arguments = args;
149
- }
150
- /**
151
- * Execute a serviceName.method(...args) so this is internal
152
- * @returns
153
- */
154
- isInternal() {
155
- return true;
156
- }
157
- }
158
- /**
159
- * Operation called asynchronously
160
- *
161
- * @WebdaModel
162
- */
163
- export class AsyncOperationAction extends AsyncAction {
164
- constructor(operationId, context, logLevel = "INFO") {
165
- super();
166
- this.operationId = operationId;
167
- this.context = context;
168
- this.logLevel = logLevel;
169
- }
170
- /**
171
- * Execute a webda.callOperation(context ,id) so this is internal
172
- * @returns
173
- */
174
- isInternal() {
175
- return true;
176
- }
177
- }
178
- export { AsyncAction };
179
- //# sourceMappingURL=models.js.map
package/lib/models.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"models.js","sourceRoot":"","sources":["../src/models.ts"],"names":[],"mappings":"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"}
@@ -1,7 +0,0 @@
1
- import { Binaries } from "@webda/core";
2
- import { AsyncAction } from "./models.js";
3
- export declare class CustomAsyncAction extends AsyncAction {
4
- inputs: Binaries;
5
- run(): Promise<string>;
6
- }
7
- //# sourceMappingURL=models.spec.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"models.spec.d.ts","sourceRoot":"","sources":["../src/models.spec.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAA2D,MAAM,aAAa,CAAC;AAGhG,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAEvC,qBAGa,iBAAkB,SAAQ,WAAW;IAChD,MAAM,EAAE,QAAQ,CAAC;IACX,GAAG;CAGV"}
@@ -1,64 +0,0 @@
1
- var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
- else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
- return c > 3 && r && Object.defineProperty(target, key, r), r;
6
- };
7
- import { suite, test } from "@testdeck/mocha";
8
- import { Expose, FileBinary, OperationContext, RESTDomainService } from "@webda/core";
9
- import { WebdaSimpleTest } from "@webda/core/lib/test.js";
10
- import * as assert from "assert";
11
- import { AsyncAction } from "./models.js";
12
- let CustomAsyncAction = class CustomAsyncAction extends AsyncAction {
13
- async run() {
14
- return "ok";
15
- }
16
- };
17
- CustomAsyncAction = __decorate([
18
- Expose({
19
- root: true
20
- })
21
- ], CustomAsyncAction);
22
- export { CustomAsyncAction };
23
- let ModelTest = class ModelTest extends WebdaSimpleTest {
24
- async before() {
25
- await super.before();
26
- this.registerModel(CustomAsyncAction, "Webda/CustomAsyncAction", {
27
- binaries: [
28
- {
29
- attribute: "inputs",
30
- cardinality: "MANY"
31
- }
32
- ]
33
- });
34
- await this.registerService(new FileBinary(this.webda, "file", { folder: "/tmp", models: { "*": ["*"] } }))
35
- .resolve()
36
- .init();
37
- await this.registerService(new RESTDomainService(this.webda, "rest")).resolve().init();
38
- }
39
- testRoutes() {
40
- const routes = this.webda.getRouter().getRoutes();
41
- assert.notStrictEqual(routes["/customAsyncActions/{uuid}/inputs"], undefined);
42
- }
43
- async testCanAct() {
44
- const action = await AsyncAction.create({ __secretKey: "test" });
45
- const context = await this.newContext();
46
- await assert.rejects(() => action.checkAct(context, "get"), /This model does not support any action: override canAct/);
47
- await assert.rejects(() => action.checkAct(context, "status"), /Only Job runner can call this action/);
48
- await assert.rejects(() => action.checkAct(context, "get_binary"), /This model does not support any action: override canAct/);
49
- context.getHttpContext().headers["x-job-hash"] = "hash";
50
- context.getHttpContext().headers["x-job-time"] = "time";
51
- await assert.rejects(() => action.checkAct(context, "get_binary"), /Invalid Job HMAC/);
52
- await assert.rejects(() => action.statusAction(new OperationContext(this.webda)), /Only WebContext can call this action/);
53
- }
54
- };
55
- __decorate([
56
- test
57
- ], ModelTest.prototype, "testRoutes", null);
58
- __decorate([
59
- test
60
- ], ModelTest.prototype, "testCanAct", null);
61
- ModelTest = __decorate([
62
- suite
63
- ], ModelTest);
64
- //# sourceMappingURL=models.spec.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"models.spec.js","sourceRoot":"","sources":["../src/models.spec.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"asyncjobservice.d.ts","sourceRoot":"","sources":["../../src/services/asyncjobservice.ts"],"names":[],"mappings":"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"}