@magda/minion-framework 2.3.3 → 3.0.0-alpha.1
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/dist/Crawler.d.ts +8 -8
- package/dist/Crawler.js +62 -99
- package/dist/Crawler.js.map +1 -1
- package/dist/MinionOptions.d.ts +6 -5
- package/dist/MinionOptions.js +1 -2
- package/dist/buildWebhookConfig.d.ts +2 -2
- package/dist/buildWebhookConfig.js +4 -7
- package/dist/buildWebhookConfig.js.map +1 -1
- package/dist/commonYargs.d.ts +10 -10
- package/dist/commonYargs.js +31 -37
- package/dist/commonYargs.js.map +1 -1
- package/dist/getWebhookUrl.d.ts +1 -1
- package/dist/getWebhookUrl.js +2 -5
- package/dist/getWebhookUrl.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.js +111 -127
- package/dist/index.js.map +1 -1
- package/dist/isWebhookRegistered.d.ts +2 -2
- package/dist/isWebhookRegistered.js +14 -31
- package/dist/isWebhookRegistered.js.map +1 -1
- package/dist/registerWebhook.d.ts +5 -5
- package/dist/registerWebhook.js +33 -50
- package/dist/registerWebhook.js.map +1 -1
- package/dist/resumeWebhook.d.ts +3 -3
- package/dist/resumeWebhook.js +8 -22
- package/dist/resumeWebhook.js.map +1 -1
- package/dist/setupRecrawlEndpoint.d.ts +30 -30
- package/dist/setupRecrawlEndpoint.js +46 -45
- package/dist/setupRecrawlEndpoint.js.map +1 -1
- package/dist/setupWebhookEndpoint.d.ts +2 -2
- package/dist/setupWebhookEndpoint.js +22 -47
- package/dist/setupWebhookEndpoint.js.map +1 -1
- package/dist/startApiEndpoints.d.ts +1 -1
- package/dist/startApiEndpoints.js +4 -10
- package/dist/startApiEndpoints.js.map +1 -1
- package/dist/test/Crawler.spec.js +77 -93
- package/dist/test/Crawler.spec.js.map +1 -1
- package/dist/test/baseSpec.d.ts +10 -10
- package/dist/test/baseSpec.js +23 -25
- package/dist/test/baseSpec.js.map +1 -1
- package/dist/test/fakeArgv.d.ts +3 -3
- package/dist/test/fakeArgv.js +6 -6
- package/dist/test/fakeArgv.js.map +1 -1
- package/dist/test/makePromiseQueryable.d.ts +2 -2
- package/dist/test/makePromiseQueryable.js +2 -5
- package/dist/test/makePromiseQueryable.js.map +1 -1
- package/dist/test/registry.spec.js +27 -32
- package/dist/test/registry.spec.js.map +1 -1
- package/dist/test/setupRecrawlEndpoint.spec.js +29 -43
- package/dist/test/setupRecrawlEndpoint.spec.js.map +1 -1
- package/dist/test/startup.spec.js +33 -38
- package/dist/test/startup.spec.js.map +1 -1
- package/dist/test/webhooks.spec.js +43 -43
- package/dist/test/webhooks.spec.js.map +1 -1
- package/package.json +33 -21
package/dist/Crawler.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import Registry from "@magda/typescript-common/dist/registry/AuthorizedRegistryClient";
|
|
2
|
-
import MinionOptions from "./MinionOptions";
|
|
1
|
+
import Registry from "@magda/typescript-common/dist/registry/AuthorizedRegistryClient.js";
|
|
2
|
+
import MinionOptions from "./MinionOptions.js";
|
|
3
3
|
declare class Crawler {
|
|
4
4
|
private isCrawling;
|
|
5
5
|
private crawlingPageToken;
|
|
@@ -12,14 +12,14 @@ declare class Crawler {
|
|
|
12
12
|
getProgress(): {
|
|
13
13
|
isCrawling: boolean;
|
|
14
14
|
crawlingPageToken: string;
|
|
15
|
-
crawledRecordNumber: number;
|
|
16
|
-
|
|
15
|
+
crawledRecordNumber: number;
|
|
16
|
+
};
|
|
17
17
|
start(): Promise<void>;
|
|
18
18
|
/**
|
|
19
|
-
|
|
20
|
-
|
|
19
|
+
* allow in-process crawling to be waited by other program
|
|
20
|
+
*/
|
|
21
21
|
waitForCrawling(): Promise<void>;
|
|
22
22
|
isInProgress(): boolean;
|
|
23
|
-
private crawlExistingRecords;
|
|
24
|
-
|
|
23
|
+
private crawlExistingRecords;
|
|
24
|
+
}
|
|
25
25
|
export default Crawler;
|
package/dist/Crawler.js
CHANGED
|
@@ -1,48 +1,15 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
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 __setModuleDefault = this && this.__setModuleDefault || (Object.create ? function (o, v) {
|
|
10
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
11
|
-
} : function (o, v) {
|
|
12
|
-
o["default"] = v;
|
|
13
|
-
});
|
|
14
|
-
var __importStar = this && this.__importStar || function (mod) {
|
|
15
|
-
if (mod && mod.__esModule) return mod;
|
|
16
|
-
var result = {};
|
|
17
|
-
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
18
|
-
__setModuleDefault(result, mod);
|
|
19
|
-
return result;
|
|
20
|
-
};
|
|
21
|
-
var __awaiter = this && this.__awaiter || function (thisArg, _arguments, P, generator) {
|
|
22
|
-
function adopt(value) {return value instanceof P ? value : new P(function (resolve) {resolve(value);});}
|
|
23
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
24
|
-
function fulfilled(value) {try {step(generator.next(value));} catch (e) {reject(e);}}
|
|
25
|
-
function rejected(value) {try {step(generator["throw"](value));} catch (e) {reject(e);}}
|
|
26
|
-
function step(result) {result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected);}
|
|
27
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
28
|
-
});
|
|
29
|
-
};
|
|
30
|
-
var __importDefault = this && this.__importDefault || function (mod) {
|
|
31
|
-
return mod && mod.__esModule ? mod : { "default": mod };
|
|
32
|
-
};
|
|
33
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
34
|
-
const unionToThrowable_1 = __importDefault(require("@magda/typescript-common/dist/util/unionToThrowable"));
|
|
35
|
-
const AsyncPage_1 = __importStar(require("@magda/typescript-common/dist/AsyncPage"));
|
|
1
|
+
import unionToThrowable from "@magda/typescript-common/dist/util/unionToThrowable.js";
|
|
2
|
+
import AsyncPage, { forEachAsync } from "@magda/typescript-common/dist/AsyncPage.js";
|
|
36
3
|
// default no. of record crawler fetechs per requests
|
|
37
4
|
const DEFAULT_CRAWLER_RECORD_FETCH_NUMBER = 100;
|
|
38
5
|
class Crawler {
|
|
6
|
+
isCrawling = false;
|
|
7
|
+
crawlingPageToken = null;
|
|
8
|
+
crawledRecordNumber = 0;
|
|
9
|
+
crawlerPromise = null;
|
|
10
|
+
registry = null;
|
|
11
|
+
options = null;
|
|
39
12
|
constructor(registry, options) {
|
|
40
|
-
this.isCrawling = false;
|
|
41
|
-
this.crawlingPageToken = null;
|
|
42
|
-
this.crawledRecordNumber = 0;
|
|
43
|
-
this.crawlerPromise = null;
|
|
44
|
-
this.registry = null;
|
|
45
|
-
this.options = null;
|
|
46
13
|
this.registry = registry;
|
|
47
14
|
this.options = options;
|
|
48
15
|
}
|
|
@@ -55,8 +22,8 @@ class Crawler {
|
|
|
55
22
|
return {
|
|
56
23
|
isCrawling: this.isCrawling,
|
|
57
24
|
crawlingPageToken: this.crawlingPageToken,
|
|
58
|
-
crawledRecordNumber: this.crawledRecordNumber
|
|
59
|
-
|
|
25
|
+
crawledRecordNumber: this.crawledRecordNumber
|
|
26
|
+
};
|
|
60
27
|
}
|
|
61
28
|
start() {
|
|
62
29
|
if (this.isCrawling)
|
|
@@ -65,63 +32,59 @@ class Crawler {
|
|
|
65
32
|
return this.crawlerPromise;
|
|
66
33
|
}
|
|
67
34
|
/**
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
waitForCrawling() {
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
yield this.crawlerPromise;
|
|
75
|
-
});
|
|
35
|
+
* allow in-process crawling to be waited by other program
|
|
36
|
+
*/
|
|
37
|
+
async waitForCrawling() {
|
|
38
|
+
if (!this.isCrawling || !this.crawlerPromise)
|
|
39
|
+
return;
|
|
40
|
+
await this.crawlerPromise;
|
|
76
41
|
}
|
|
77
42
|
isInProgress() {
|
|
78
43
|
return this.isCrawling;
|
|
79
44
|
}
|
|
80
|
-
crawlExistingRecords() {
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
exports.default = Crawler;
|
|
45
|
+
async crawlExistingRecords() {
|
|
46
|
+
try {
|
|
47
|
+
this.resetCrawler();
|
|
48
|
+
this.isCrawling = true;
|
|
49
|
+
console.info("Crawling existing records in registry");
|
|
50
|
+
const crawlerRecordFetchNumber = this.options?.
|
|
51
|
+
crawlerRecordFetchNumber ?
|
|
52
|
+
this.options.crawlerRecordFetchNumber :
|
|
53
|
+
this.options?.argv?.crawlerRecordFetchNumber ?
|
|
54
|
+
this.options?.argv.crawlerRecordFetchNumber :
|
|
55
|
+
DEFAULT_CRAWLER_RECORD_FETCH_NUMBER;
|
|
56
|
+
const registryPage = AsyncPage.create((previous) => {
|
|
57
|
+
if (previous && previous.hasMore === false) {
|
|
58
|
+
console.info("No more records left");
|
|
59
|
+
// Last page was an empty page, no more records left
|
|
60
|
+
return undefined;
|
|
61
|
+
} else
|
|
62
|
+
{
|
|
63
|
+
console.info("Crawling after token " + (
|
|
64
|
+
previous && previous.nextPageToken ?
|
|
65
|
+
previous.nextPageToken :
|
|
66
|
+
"<first page>"));
|
|
67
|
+
this.crawlingPageToken =
|
|
68
|
+
previous && previous.nextPageToken ?
|
|
69
|
+
previous.nextPageToken :
|
|
70
|
+
"";
|
|
71
|
+
// TODO: Retry with reduced limit if entity size too large error.
|
|
72
|
+
return this.registry.
|
|
73
|
+
getRecords(this.options.aspects, this.options.optionalAspects, previous && previous.nextPageToken, true, crawlerRecordFetchNumber).
|
|
74
|
+
then(unionToThrowable).
|
|
75
|
+
then((page) => {
|
|
76
|
+
this.crawledRecordNumber += page.records.length;
|
|
77
|
+
console.info(`Crawled ${page.records.length} records`);
|
|
78
|
+
return page;
|
|
79
|
+
});
|
|
80
|
+
}
|
|
81
|
+
}).map((page) => page.records);
|
|
82
|
+
await forEachAsync(registryPage, this.options.concurrency || 1, (record) => this.options.onRecordFound(record, this.registry));
|
|
83
|
+
} finally
|
|
84
|
+
{
|
|
85
|
+
this.resetCrawler();
|
|
86
|
+
this.crawlerPromise = null;
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
export default Crawler;
|
package/dist/Crawler.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Crawler.js","sourceRoot":"","sources":["../src/Crawler.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"Crawler.js","sourceRoot":"","sources":["../src/Crawler.ts"],"names":[],"mappings":"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"}
|
package/dist/MinionOptions.d.ts
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import express from "express";
|
|
2
|
-
import { MinionArguments } from "./commonYargs";
|
|
3
|
-
import { Record, AspectDefinition } from "@magda/typescript-common/dist/generated/registry/api";
|
|
4
|
-
import { default as AuthorizedRegistryClient } from "@magda/typescript-common/dist/registry/AuthorizedRegistryClient";
|
|
5
|
-
export
|
|
2
|
+
import { MinionArguments } from "./commonYargs.js";
|
|
3
|
+
import { Record, AspectDefinition } from "@magda/typescript-common/dist/generated/registry/api.js";
|
|
4
|
+
import { default as AuthorizedRegistryClient } from "@magda/typescript-common/dist/registry/AuthorizedRegistryClient.js";
|
|
5
|
+
export type onRecordFoundType = (record: Record, registry: AuthorizedRegistryClient) => Promise<void>;
|
|
6
6
|
export default interface MinionOptions {
|
|
7
7
|
argv: MinionArguments;
|
|
8
8
|
id: string;
|
|
@@ -18,4 +18,5 @@ export default interface MinionOptions {
|
|
|
18
18
|
includeEvents?: boolean;
|
|
19
19
|
includeRecords?: boolean;
|
|
20
20
|
includeAspectDefinitions?: boolean;
|
|
21
|
-
dereference?: boolean;
|
|
21
|
+
dereference?: boolean;
|
|
22
|
+
}
|
package/dist/MinionOptions.js
CHANGED
|
@@ -1,2 +1 @@
|
|
|
1
|
-
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
1
|
+
export {};
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import { WebHookConfig } from "@magda/typescript-common/dist/generated/registry/api";
|
|
2
|
-
import MinionOptions from "./MinionOptions";
|
|
1
|
+
import { WebHookConfig } from "@magda/typescript-common/dist/generated/registry/api.js";
|
|
2
|
+
import MinionOptions from "./MinionOptions.js";
|
|
3
3
|
export default function buildWebhookConfig(options: MinionOptions): WebHookConfig;
|
|
@@ -1,6 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
function buildWebhookConfig(options) {
|
|
1
|
+
export default function buildWebhookConfig(options) {
|
|
4
2
|
return {
|
|
5
3
|
aspects: options.aspects,
|
|
6
4
|
optionalAspects: options.optionalAspects,
|
|
@@ -15,7 +13,6 @@ function buildWebhookConfig(options) {
|
|
|
15
13
|
false,
|
|
16
14
|
dereference: typeof options.dereference === "boolean" ?
|
|
17
15
|
options.dereference :
|
|
18
|
-
true
|
|
19
|
-
|
|
20
|
-
}
|
|
21
|
-
exports.default = buildWebhookConfig;
|
|
16
|
+
true
|
|
17
|
+
};
|
|
18
|
+
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"buildWebhookConfig.js","sourceRoot":"","sources":["../src/buildWebhookConfig.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"buildWebhookConfig.js","sourceRoot":"","sources":["../src/buildWebhookConfig.ts"],"names":[],"mappings":"AAGA,MAAM,CAAC,OAAO,UAAU,kBAAkB,CACtC,OAAsB;IAEtB,OAAO;QACH,OAAO,EAAE,OAAO,CAAC,OAAO;QACxB,eAAe,EAAE,OAAO,CAAC,eAAe;QACxC,aAAa,EACT,OAAO,OAAO,CAAC,aAAa,KAAK,SAAS;YACtC,CAAC,CAAC,OAAO,CAAC,aAAa;YACvB,CAAC,CAAC,KAAK;QACf,cAAc,EACV,OAAO,OAAO,CAAC,cAAc,KAAK,SAAS;YACvC,CAAC,CAAC,OAAO,CAAC,cAAc;YACxB,CAAC,CAAC,IAAI;QACd,wBAAwB,EACpB,OAAO,OAAO,CAAC,wBAAwB,KAAK,SAAS;YACjD,CAAC,CAAC,OAAO,CAAC,wBAAwB;YAClC,CAAC,CAAC,KAAK;QACf,WAAW,EACP,OAAO,OAAO,CAAC,WAAW,KAAK,SAAS;YACpC,CAAC,CAAC,OAAO,CAAC,WAAW;YACrB,CAAC,CAAC,IAAI;KACjB,CAAC;AACN,CAAC"}
|
package/dist/commonYargs.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import yargs from "yargs";
|
|
2
|
-
export
|
|
2
|
+
export type MinionArguments = {
|
|
3
3
|
listenPort: string | number;
|
|
4
4
|
internalUrl: string;
|
|
5
5
|
jwtSecret: string;
|
|
@@ -8,14 +8,14 @@ export declare type MinionArguments = {
|
|
|
8
8
|
enableMultiTenant: boolean;
|
|
9
9
|
tenantUrl: string;
|
|
10
10
|
retries: string | number;
|
|
11
|
-
crawlerRecordFetchNumber?: string | number;
|
|
12
|
-
|
|
11
|
+
crawlerRecordFetchNumber?: string | number;
|
|
12
|
+
};
|
|
13
13
|
/**
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
14
|
+
* Builds an argv object that will accept command line arguments used by all common argv minions.
|
|
15
|
+
*
|
|
16
|
+
* @param id
|
|
17
|
+
* @param defaultPort
|
|
18
|
+
* @param defaultInternalUrl
|
|
19
|
+
* @param additions
|
|
20
|
+
*/
|
|
21
21
|
export default function commonYargs<T extends MinionArguments = MinionArguments>(defaultPort: number, defaultInternalUrl: string, additions?: (a: yargs.Argv<MinionArguments>) => yargs.Argv<T>): T;
|
package/dist/commonYargs.js
CHANGED
|
@@ -1,52 +1,47 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
return mod && mod.__esModule ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
const yargs_1 = __importDefault(require("yargs"));
|
|
7
|
-
const addJwtSecretFromEnvVar_1 = __importDefault(require("@magda/typescript-common/dist/session/addJwtSecretFromEnvVar"));
|
|
1
|
+
import yargs from "yargs";
|
|
2
|
+
import addJwtSecretFromEnvVar from "@magda/typescript-common/dist/session/addJwtSecretFromEnvVar.js";
|
|
8
3
|
/**
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
function commonYargs(defaultPort, defaultInternalUrl, additions = x => x) {
|
|
17
|
-
const yarr =
|
|
4
|
+
* Builds an argv object that will accept command line arguments used by all common argv minions.
|
|
5
|
+
*
|
|
6
|
+
* @param id
|
|
7
|
+
* @param defaultPort
|
|
8
|
+
* @param defaultInternalUrl
|
|
9
|
+
* @param additions
|
|
10
|
+
*/
|
|
11
|
+
export default function commonYargs(defaultPort, defaultInternalUrl, additions = (x) => x) {
|
|
12
|
+
const yarr = yargs.
|
|
18
13
|
config().
|
|
19
14
|
help().
|
|
20
15
|
option("listenPort", {
|
|
21
16
|
describe: "The TCP/IP port on which the gateway should listen.",
|
|
22
17
|
type: "number",
|
|
23
|
-
default: process.env.NODE_PORT || defaultPort
|
|
24
|
-
|
|
18
|
+
default: process.env.NODE_PORT || defaultPort
|
|
19
|
+
}).
|
|
25
20
|
option("internalUrl", {
|
|
26
21
|
describe: "The base external URL of the gateway.",
|
|
27
22
|
type: "string",
|
|
28
|
-
default: process.env.INTERNAL_URL || defaultInternalUrl
|
|
29
|
-
|
|
23
|
+
default: process.env.INTERNAL_URL || defaultInternalUrl
|
|
24
|
+
}).
|
|
30
25
|
option("jwtSecret", {
|
|
31
26
|
describe: "The shared secret for intra-network communication",
|
|
32
27
|
type: "string",
|
|
33
28
|
demand: true,
|
|
34
29
|
default: process.env.JWT_SECRET ||
|
|
35
|
-
process.env.npm_package_config_jwtSecret
|
|
36
|
-
|
|
30
|
+
process.env.npm_package_config_jwtSecret
|
|
31
|
+
}).
|
|
37
32
|
option("userId", {
|
|
38
33
|
describe: "The user id to use when making authenticated requests to the registry",
|
|
39
34
|
type: "string",
|
|
40
35
|
demand: true,
|
|
41
|
-
default: process.env.USER_ID || process.env.npm_package_config_userId
|
|
42
|
-
|
|
36
|
+
default: process.env.USER_ID || process.env.npm_package_config_userId
|
|
37
|
+
}).
|
|
43
38
|
option("registryUrl", {
|
|
44
39
|
describe: "The base url for the registry",
|
|
45
40
|
type: "string",
|
|
46
41
|
default: process.env.REGISTRY_URL ||
|
|
47
42
|
process.env.npm_package_config_registryUrl ||
|
|
48
|
-
"http://localhost:6101/v0"
|
|
49
|
-
|
|
43
|
+
"http://localhost:6101/v0"
|
|
44
|
+
}).
|
|
50
45
|
option("enableMultiTenant", {
|
|
51
46
|
describe: "Whether to run in multi-tenant mode.",
|
|
52
47
|
type: "boolean",
|
|
@@ -59,26 +54,25 @@ function commonYargs(defaultPort, defaultInternalUrl, additions = x => x) {
|
|
|
59
54
|
process.env.npm_package_config_enableMultiTenants ?
|
|
60
55
|
true :
|
|
61
56
|
false :
|
|
62
|
-
false
|
|
63
|
-
|
|
57
|
+
false
|
|
58
|
+
}).
|
|
64
59
|
option("tenantUrl", {
|
|
65
60
|
describe: "The base url for the tenant service",
|
|
66
61
|
type: "string",
|
|
67
62
|
default: process.env.TENANT_URL ||
|
|
68
63
|
process.env.npm_package_config_tenantUrl ||
|
|
69
|
-
"http://localhost:6130/v0"
|
|
70
|
-
|
|
64
|
+
"http://localhost:6130/v0"
|
|
65
|
+
}).
|
|
71
66
|
option("retries", {
|
|
72
67
|
describe: "The number of times to retry calling the registry",
|
|
73
68
|
type: "number",
|
|
74
|
-
default: process.env.RETRIES || 10
|
|
75
|
-
|
|
69
|
+
default: process.env.RETRIES || 10
|
|
70
|
+
}).
|
|
76
71
|
option("crawlerRecordFetchNumber", {
|
|
77
72
|
describe: "The number of times to retry calling the registry",
|
|
78
73
|
type: "number",
|
|
79
|
-
default: process.env.CRAWLER_RECORD_FETCH_NUMBER || 100
|
|
80
|
-
|
|
81
|
-
const returnValue =
|
|
74
|
+
default: process.env.CRAWLER_RECORD_FETCH_NUMBER || 100
|
|
75
|
+
});
|
|
76
|
+
const returnValue = addJwtSecretFromEnvVar(additions(yarr).argv);
|
|
82
77
|
return returnValue;
|
|
83
|
-
}
|
|
84
|
-
exports.default = commonYargs;
|
|
78
|
+
}
|
package/dist/commonYargs.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"commonYargs.js","sourceRoot":"","sources":["../src/commonYargs.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"commonYargs.js","sourceRoot":"","sources":["../src/commonYargs.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,sBAAsB,MAAM,+DAA+D,CAAC;AAcnG;;;;;;;GAOG;AACH,MAAM,CAAC,OAAO,UAAU,WAAW,CAG/B,WAAmB,EACnB,kBAA0B,EAC1B,YAA+D,CAAC,CAAC,EAAE,EAAE,CACjE,CAAkB;IAEtB,MAAM,IAAI,GAAG,KAAK;SACb,MAAM,EAAE;SACR,IAAI,EAAE;SACN,MAAM,CAAC,YAAY,EAAE;QAClB,QAAQ,EAAE,qDAAqD;QAC/D,IAAI,EAAE,QAAQ;QACd,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,SAAS,IAAI,WAAW;KAChD,CAAC;SACD,MAAM,CAAC,aAAa,EAAE;QACnB,QAAQ,EAAE,uCAAuC;QACjD,IAAI,EAAE,QAAQ;QACd,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,YAAY,IAAI,kBAAkB;KAC1D,CAAC;SACD,MAAM,CAAC,WAAW,EAAE;QACjB,QAAQ,EAAE,mDAAmD;QAC7D,IAAI,EAAE,QAAQ;QACd,MAAM,EAAE,IAAI;QACZ,OAAO,EACH,OAAO,CAAC,GAAG,CAAC,UAAU;YACtB,OAAO,CAAC,GAAG,CAAC,4BAA4B;KAC/C,CAAC;SACD,MAAM,CAAC,QAAQ,EAAE;QACd,QAAQ,EACJ,uEAAuE;QAC3E,IAAI,EAAE,QAAQ;QACd,MAAM,EAAE,IAAI;QACZ,OAAO,EACH,OAAO,CAAC,GAAG,CAAC,OAAO,IAAI,OAAO,CAAC,GAAG,CAAC,yBAAyB;KACnE,CAAC;SACD,MAAM,CAAC,aAAa,EAAE;QACnB,QAAQ,EAAE,+BAA+B;QACzC,IAAI,EAAE,QAAQ;QACd,OAAO,EACH,OAAO,CAAC,GAAG,CAAC,YAAY;YACxB,OAAO,CAAC,GAAG,CAAC,8BAA8B;YAC1C,0BAA0B;KACjC,CAAC;SACD,MAAM,CAAC,mBAAmB,EAAE;QACzB,QAAQ,EAAE,sCAAsC;QAChD,IAAI,EAAE,SAAS;QACf,OAAO,EACH,OAAO,OAAO,CAAC,GAAG,CAAC,oBAAoB,KAAK,WAAW;YACnD,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC,WAAW,EAAE,KAAK,MAAM;gBACvD,CAAC,CAAC,IAAI;gBACN,CAAC,CAAC,KAAK;YACX,CAAC,CAAC,OAAO,OAAO,CAAC,GAAG;iBACb,qCAAqC,KAAK,WAAW;gBAC5D,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,qCAAqC;oBAC/C,CAAC,CAAC,IAAI;oBACN,CAAC,CAAC,KAAK;gBACX,CAAC,CAAC,KAAK;KAClB,CAAC;SACD,MAAM,CAAC,WAAW,EAAE;QACjB,QAAQ,EAAE,qCAAqC;QAC/C,IAAI,EAAE,QAAQ;QACd,OAAO,EACH,OAAO,CAAC,GAAG,CAAC,UAAU;YACtB,OAAO,CAAC,GAAG,CAAC,4BAA4B;YACxC,0BAA0B;KACjC,CAAC;SACD,MAAM,CAAC,SAAS,EAAE;QACf,QAAQ,EAAE,mDAAmD;QAC7D,IAAI,EAAE,QAAQ;QACd,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,OAAO,IAAI,EAAE;KACrC,CAAC;SACD,MAAM,CAAC,0BAA0B,EAAE;QAChC,QAAQ,EAAE,mDAAmD;QAC7D,IAAI,EAAE,QAAQ;QACd,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,2BAA2B,IAAI,GAAG;KAC1D,CAAC,CAAC;IAEP,MAAM,WAAW,GAAG,sBAAsB,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC;IACjE,OAAO,WAAW,CAAC;AACvB,CAAC"}
|
package/dist/getWebhookUrl.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import MinionOptions from "./MinionOptions";
|
|
1
|
+
import MinionOptions from "./MinionOptions.js";
|
|
2
2
|
export default function getHookUrl(options: MinionOptions): string;
|
package/dist/getWebhookUrl.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getWebhookUrl.js","sourceRoot":"","sources":["../src/getWebhookUrl.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"getWebhookUrl.js","sourceRoot":"","sources":["../src/getWebhookUrl.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,OAAO,UAAU,UAAU,CAAC,OAAsB;IACrD,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,WAAW,OAAO,CAAC;AAC9C,CAAC"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import MinionOptions from "./MinionOptions";
|
|
1
|
+
import MinionOptions from "./MinionOptions.js";
|
|
2
2
|
export default function minion(options: MinionOptions): Promise<void>;
|