@8ms/helpers 2.2.9 → 2.2.12
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/.github/workflows/deploy_npmjs.yml +3 -0
- package/_class/BaseClass.js +43 -52
- package/_class/BaseNamespace.js +17 -20
- package/_class/index.js +2 -7
- package/adverity/getJobs.js +7 -11
- package/adverity/index.js +51 -54
- package/adverity/server.js +1 -5
- package/api/ApiResponseClass.js +84 -88
- package/api/functions.js +13 -22
- package/api/index.js +3 -19
- package/api/types.js +5 -9
- package/array/index.js +3 -11
- package/atInternet/index.js +10 -13
- package/aws/ec2/AwsEc2Namespace.js +34 -74
- package/aws/ec2/server.js +5 -9
- package/aws/ecs/AwsEcsNamespace.js +110 -150
- package/aws/ecs/server.js +5 -9
- package/aws/glue/AwsGlueNamespace.js +26 -66
- package/aws/glue/server.js +5 -9
- package/aws/isResponse200.js +3 -7
- package/aws/lambda/AwsLambdaNamespace.js +62 -102
- package/aws/lambda/server.js +6 -11
- package/aws/s3/AwsS3Namespace.js +347 -390
- package/aws/s3/payload.js +29 -32
- package/aws/s3/server.js +9 -14
- package/aws/server.js +5 -10
- package/aws/ses/AwsSesNamespace.js +36 -76
- package/aws/ses/SimpleEmail.js +267 -304
- package/aws/ses/server.js +6 -11
- package/aws/sqs/AwsSqsNamespace.js +49 -89
- package/aws/sqs/server.js +5 -9
- package/aws/ssm/AwsSsmNamespace.js +43 -79
- package/aws/ssm/server.js +5 -9
- package/axios/deleteRequest.js +8 -15
- package/axios/get.js +8 -15
- package/axios/index.js +3 -9
- package/axios/post.js +8 -15
- package/boolean/index.js +3 -10
- package/brightData/serpApi/buildGoogleSerpUrl.js +1 -5
- package/brightData/serpApi/buildGoogleTrendsUrl.js +1 -5
- package/brightData/serpApi/getAsyncRequestId.js +8 -12
- package/brightData/serpApi/getAsyncResults.js +8 -12
- package/brightData/serpApi/getRealtime.js +3 -7
- package/brightData/serpApi/server.js +6 -14
- package/brightData/server.js +2 -7
- package/brightData/webScraperIde/getBatch.js +3 -7
- package/brightData/webScraperIde/getRealtime.js +11 -15
- package/brightData/webScraperIde/server.js +2 -7
- package/cache/server.js +2 -7
- package/cache/test/cache.test.js +4 -6
- package/crud/index.js +1 -4
- package/crypto/getDecrypt.js +2 -39
- package/crypto/getEncrypt.js +2 -39
- package/crypto/getRandom.js +1 -5
- package/crypto/getSha256.js +4 -41
- package/crypto/index.js +4 -11
- package/date/calculation.js +70 -99
- package/date/financialYear.js +16 -23
- package/date/format.js +40 -61
- package/date/index.js +4 -20
- package/date/type.js +4 -7
- package/environment/index.js +15 -25
- package/eskimi/getAgeGroup.js +3 -7
- package/eskimi/getData.js +3 -7
- package/eskimi/getDevice.js +3 -7
- package/eskimi/getGender.js +3 -7
- package/eskimi/server.js +23 -26
- package/file/index.js +8 -46
- package/geo/countries.js +1 -4
- package/geo/index.js +2 -7
- package/geo/languages.js +1 -4
- package/google/bigQuery/GoogleBigQueryNamespace.js +108 -148
- package/google/bigQuery/loadData.js +1 -5
- package/google/bigQuery/server.js +8 -14
- package/google/server.js +1 -5
- package/google/sheets/GoogleSheetsNamespace.js +34 -74
- package/google/sheets/getAssociatedData.js +1 -5
- package/google/sheets/server.js +8 -14
- package/google/storage/GoogleCloudStorageNamespace.js +62 -102
- package/google/storage/server.js +6 -10
- package/googleAds/GoogleAdsNamespace.js +28 -68
- package/googleAds/keywordPlanner/server.js +32 -35
- package/googleAds/server.js +6 -10
- package/googlePageSpeed/GooglePageSpeedNamespace.js +21 -28
- package/googlePageSpeed/server.js +8 -12
- package/googleSearchIncidents/server.js +28 -32
- package/greenDomain/server.js +17 -21
- package/inngest/server.js +1 -4
- package/json/getJsonNewline.js +3 -7
- package/json/index.js +2 -7
- package/json/isJson.js +1 -5
- package/littleWarden/LittleWardenNamespace.js +24 -31
- package/littleWarden/getUrlStatus.js +3 -7
- package/littleWarden/server.js +14 -22
- package/lumar/api/buildRequest.js +14 -18
- package/lumar/api/getData.js +3 -7
- package/lumar/api/initClient.js +3 -7
- package/lumar/api/server.js +6 -12
- package/lumar/graphql/columns.js +1 -4
- package/lumar/graphql/getData.js +3 -7
- package/lumar/graphql/initClient.js +3 -7
- package/lumar/graphql/queries/crawl.js +1 -2
- package/lumar/graphql/queries/getCrawls.js +1 -3
- package/lumar/graphql/queries/getReportDifferences.js +3 -5
- package/lumar/graphql/queries/getRows.js +1 -3
- package/lumar/graphql/queries/getTotals.js +1 -3
- package/lumar/graphql/queries/row.js +1 -2
- package/lumar/graphql/reportTemplates.js +1 -4
- package/lumar/graphql/server.js +7 -15
- package/myTarget/server.js +3 -7
- package/nextAuth/index.js +2 -6
- package/nextAuth/isSessionReady.js +1 -5
- package/nextJs/client/LazyLoad.js +5 -12
- package/nextJs/client.js +1 -5
- package/nextJs/index.js +2 -7
- package/number/format.js +3 -7
- package/number/formatCurrency.js +1 -5
- package/number/getDecimal.js +3 -7
- package/number/getNumber.js +3 -7
- package/number/getPercentIncrease.js +4 -8
- package/number/getSafeDivide.js +6 -10
- package/number/index.js +6 -15
- package/object/index.js +1 -5
- package/object/replaceKeys.js +3 -7
- package/onePassword/OnePasswordNamespace.js +36 -76
- package/onePassword/server.js +3 -7
- package/openAi/OpenAiNamespace.js +32 -39
- package/openAi/server.js +6 -10
- package/package.json +224 -122
- package/prisma/PrismaNamespace.js +53 -93
- package/prisma/getDecimal.js +5 -12
- package/prisma/server.js +4 -9
- package/scripts/generate-exports.js +50 -0
- package/snapchat/SnapchatNamespace.js +20 -27
- package/snapchat/server.js +6 -10
- package/sorting/byNumberAscending.js +1 -5
- package/sorting/byNumberDescending.js +1 -5
- package/sorting/byStringAscending.js +1 -5
- package/sorting/byStringDescending.js +1 -5
- package/sorting/index.js +4 -11
- package/stream/server.js +1 -5
- package/stream/sort.js +1 -5
- package/string/getCapitalised.js +3 -7
- package/string/getClean.js +17 -21
- package/string/getFolder.js +3 -10
- package/string/getProperCase.js +4 -8
- package/string/getString.js +8 -15
- package/string/getStringFromStream.js +1 -5
- package/string/getUnescaped.js +3 -10
- package/string/getWithoutAccents.js +1 -5
- package/string/getWithoutHtmlTags.js +1 -5
- package/string/getWithoutPunctuation.js +1 -5
- package/string/getWithoutUnderscores.js +1 -5
- package/string/getWithoutWhitespaces.js +1 -5
- package/string/index.js +12 -27
- package/string/reservedWords.js +5 -9
- package/swr/index.js +9 -18
- package/upTimeRobot/UpTimeRobotNamespace.js +32 -42
- package/upTimeRobot/server.js +11 -15
- package/url/index.js +12 -23
- package/url/server.js +1 -5
- package/url/writeUrlContents.js +6 -46
- package/util/defaultTo.js +5 -12
- package/util/getBrotliCompressed.js +3 -10
- package/util/getBrotliDecompressed.js +3 -10
- package/util/getClean.js +5 -9
- package/util/getError.js +1 -5
- package/util/getGzipCompressed.js +3 -10
- package/util/getGzipDecompressed.js +3 -10
- package/util/getWithoutHash.js +1 -5
- package/util/getWithoutParameter.js +1 -5
- package/util/index.js +7 -17
- package/util/isUndefined.js +3 -7
- package/util/promiseChunks.js +6 -10
- package/util/server.js +4 -11
- package/util/sleep.js +1 -5
- package/webWorker/index.js +1 -4
- package/xml/getXml.js +3 -7
|
@@ -1,77 +1,37 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
}
|
|
13
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
-
}) : function(o, v) {
|
|
16
|
-
o["default"] = v;
|
|
17
|
-
});
|
|
18
|
-
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
-
var ownKeys = function(o) {
|
|
20
|
-
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
-
var ar = [];
|
|
22
|
-
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
-
return ar;
|
|
24
|
-
};
|
|
25
|
-
return ownKeys(o);
|
|
1
|
+
import { BaseNamespace } from "../../_class";
|
|
2
|
+
export class AwsEc2Namespace extends BaseNamespace {
|
|
3
|
+
ensureInit = async () => {
|
|
4
|
+
if (!this.client) {
|
|
5
|
+
try {
|
|
6
|
+
const { EC2Client } = await import("@aws-sdk/client-ec2");
|
|
7
|
+
this.client = new EC2Client(this.config);
|
|
8
|
+
}
|
|
9
|
+
catch (e) {
|
|
10
|
+
throw new Error("AWS EC2 Client not installed");
|
|
11
|
+
}
|
|
12
|
+
}
|
|
26
13
|
};
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
14
|
+
startInstances = async (instanceIds, additionalInfo, dryRun) => {
|
|
15
|
+
await this.ensureInit();
|
|
16
|
+
const { StartInstancesCommand } = await import("@aws-sdk/client-ec2");
|
|
17
|
+
const command = new StartInstancesCommand({
|
|
18
|
+
InstanceIds: instanceIds,
|
|
19
|
+
AdditionalInfo: additionalInfo,
|
|
20
|
+
DryRun: dryRun,
|
|
21
|
+
});
|
|
22
|
+
const response = await global.awsEc2Client.send(command);
|
|
23
|
+
return response;
|
|
24
|
+
};
|
|
25
|
+
stopInstances = async (instanceIds, hibernate, force, dryRun) => {
|
|
26
|
+
await this.ensureInit();
|
|
27
|
+
const { StopInstancesCommand } = await import("@aws-sdk/client-ec2");
|
|
28
|
+
const command = new StopInstancesCommand({
|
|
29
|
+
InstanceIds: instanceIds,
|
|
30
|
+
Hibernate: hibernate,
|
|
31
|
+
DryRun: dryRun,
|
|
32
|
+
Force: force,
|
|
33
|
+
});
|
|
34
|
+
const response = await global.awsEc2Client.send(command);
|
|
35
|
+
return response;
|
|
33
36
|
};
|
|
34
|
-
})();
|
|
35
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
-
exports.AwsEc2Namespace = void 0;
|
|
37
|
-
const _class_1 = require("../../_class");
|
|
38
|
-
class AwsEc2Namespace extends _class_1.BaseNamespace {
|
|
39
|
-
constructor() {
|
|
40
|
-
super(...arguments);
|
|
41
|
-
this.ensureInit = async () => {
|
|
42
|
-
if (!this.client) {
|
|
43
|
-
try {
|
|
44
|
-
const { EC2Client } = await Promise.resolve().then(() => __importStar(require("@aws-sdk/client-ec2")));
|
|
45
|
-
this.client = new EC2Client(this.config);
|
|
46
|
-
}
|
|
47
|
-
catch (e) {
|
|
48
|
-
throw new Error("AWS EC2 Client not installed");
|
|
49
|
-
}
|
|
50
|
-
}
|
|
51
|
-
};
|
|
52
|
-
this.startInstances = async (instanceIds, additionalInfo, dryRun) => {
|
|
53
|
-
await this.ensureInit();
|
|
54
|
-
const { StartInstancesCommand } = await Promise.resolve().then(() => __importStar(require("@aws-sdk/client-ec2")));
|
|
55
|
-
const command = new StartInstancesCommand({
|
|
56
|
-
InstanceIds: instanceIds,
|
|
57
|
-
AdditionalInfo: additionalInfo,
|
|
58
|
-
DryRun: dryRun,
|
|
59
|
-
});
|
|
60
|
-
const response = await global.awsEc2Client.send(command);
|
|
61
|
-
return response;
|
|
62
|
-
};
|
|
63
|
-
this.stopInstances = async (instanceIds, hibernate, force, dryRun) => {
|
|
64
|
-
await this.ensureInit();
|
|
65
|
-
const { StopInstancesCommand } = await Promise.resolve().then(() => __importStar(require("@aws-sdk/client-ec2")));
|
|
66
|
-
const command = new StopInstancesCommand({
|
|
67
|
-
InstanceIds: instanceIds,
|
|
68
|
-
Hibernate: hibernate,
|
|
69
|
-
DryRun: dryRun,
|
|
70
|
-
Force: force,
|
|
71
|
-
});
|
|
72
|
-
const response = await global.awsEc2Client.send(command);
|
|
73
|
-
return response;
|
|
74
|
-
};
|
|
75
|
-
}
|
|
76
37
|
}
|
|
77
|
-
exports.AwsEc2Namespace = AwsEc2Namespace;
|
package/aws/ec2/server.js
CHANGED
|
@@ -1,16 +1,12 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
exports.awsEc2Client = void 0;
|
|
4
|
-
const AwsEc2Namespace_1 = require("./AwsEc2Namespace");
|
|
5
|
-
const server_1 = require("../server");
|
|
1
|
+
import { AwsEc2Namespace } from "./AwsEc2Namespace";
|
|
2
|
+
import { getConfig } from "../server";
|
|
6
3
|
const awsEc2Namespaces = new Map();
|
|
7
|
-
const awsEc2Client = async (key = "default", config, vaultId, itemId) => {
|
|
4
|
+
export const awsEc2Client = async (key = "default", config, vaultId, itemId) => {
|
|
8
5
|
if (awsEc2Namespaces.has(key)) {
|
|
9
6
|
return awsEc2Namespaces.get(key);
|
|
10
7
|
}
|
|
11
|
-
const instanceConfig = await
|
|
12
|
-
const namespace = new
|
|
8
|
+
const instanceConfig = await getConfig(key, config, vaultId, itemId);
|
|
9
|
+
const namespace = new AwsEc2Namespace(key, instanceConfig);
|
|
13
10
|
awsEc2Namespaces.set(key, namespace);
|
|
14
11
|
return namespace;
|
|
15
12
|
};
|
|
16
|
-
exports.awsEc2Client = awsEc2Client;
|
|
@@ -1,158 +1,118 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
-
}) : function(o, v) {
|
|
16
|
-
o["default"] = v;
|
|
17
|
-
});
|
|
18
|
-
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
-
var ownKeys = function(o) {
|
|
20
|
-
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
-
var ar = [];
|
|
22
|
-
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
-
return ar;
|
|
24
|
-
};
|
|
25
|
-
return ownKeys(o);
|
|
26
|
-
};
|
|
27
|
-
return function (mod) {
|
|
28
|
-
if (mod && mod.__esModule) return mod;
|
|
29
|
-
var result = {};
|
|
30
|
-
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
-
__setModuleDefault(result, mod);
|
|
32
|
-
return result;
|
|
33
|
-
};
|
|
34
|
-
})();
|
|
35
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
-
exports.AwsEcsNamespace = void 0;
|
|
37
|
-
const _class_1 = require("../../_class");
|
|
38
|
-
const server_1 = require("../server");
|
|
39
|
-
class AwsEcsNamespace extends _class_1.BaseNamespace {
|
|
40
|
-
constructor() {
|
|
41
|
-
super(...arguments);
|
|
42
|
-
this.ensureInit = async () => {
|
|
43
|
-
if (!this.client) {
|
|
44
|
-
try {
|
|
45
|
-
const { ECSClient } = await Promise.resolve().then(() => __importStar(require("@aws-sdk/client-ecs")));
|
|
46
|
-
this.client = new ECSClient(this.config);
|
|
47
|
-
}
|
|
48
|
-
catch (e) {
|
|
49
|
-
throw new Error("AWS ECS Client not installed");
|
|
50
|
-
}
|
|
1
|
+
import { BaseNamespace } from "../../_class";
|
|
2
|
+
import { isResponse200 } from "../server";
|
|
3
|
+
export class AwsEcsNamespace extends BaseNamespace {
|
|
4
|
+
ensureInit = async () => {
|
|
5
|
+
if (!this.client) {
|
|
6
|
+
try {
|
|
7
|
+
const { ECSClient } = await import("@aws-sdk/client-ecs");
|
|
8
|
+
this.client = new ECSClient(this.config);
|
|
51
9
|
}
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
* https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/ecs/command/ListClustersCommand/
|
|
55
|
-
* https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-ecs/Interface/ListClustersCommandInput/
|
|
56
|
-
*/
|
|
57
|
-
this.getClusters = async (maxResults) => {
|
|
58
|
-
await this.ensureInit();
|
|
59
|
-
const { ListClustersCommand } = await Promise.resolve().then(() => __importStar(require("@aws-sdk/client-ecs")));
|
|
60
|
-
let response = [];
|
|
61
|
-
let apiResponse = null;
|
|
62
|
-
while (null === apiResponse || apiResponse?.nextToken) {
|
|
63
|
-
const listClustersCommand = new ListClustersCommand({
|
|
64
|
-
maxResults,
|
|
65
|
-
nextToken: apiResponse?.nextToken,
|
|
66
|
-
});
|
|
67
|
-
apiResponse = await this.client.send(listClustersCommand);
|
|
68
|
-
if ((0, server_1.isResponse200)(apiResponse)) {
|
|
69
|
-
response = [
|
|
70
|
-
...response,
|
|
71
|
-
...apiResponse.clusterArns,
|
|
72
|
-
];
|
|
73
|
-
}
|
|
10
|
+
catch (e) {
|
|
11
|
+
throw new Error("AWS ECS Client not installed");
|
|
74
12
|
}
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
...response,
|
|
98
|
-
...apiResponse.taskDefinitionArns,
|
|
99
|
-
];
|
|
100
|
-
}
|
|
13
|
+
}
|
|
14
|
+
};
|
|
15
|
+
/**
|
|
16
|
+
* https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/ecs/command/ListClustersCommand/
|
|
17
|
+
* https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-ecs/Interface/ListClustersCommandInput/
|
|
18
|
+
*/
|
|
19
|
+
getClusters = async (maxResults) => {
|
|
20
|
+
await this.ensureInit();
|
|
21
|
+
const { ListClustersCommand } = await import("@aws-sdk/client-ecs");
|
|
22
|
+
let response = [];
|
|
23
|
+
let apiResponse = null;
|
|
24
|
+
while (null === apiResponse || apiResponse?.nextToken) {
|
|
25
|
+
const listClustersCommand = new ListClustersCommand({
|
|
26
|
+
maxResults,
|
|
27
|
+
nextToken: apiResponse?.nextToken,
|
|
28
|
+
});
|
|
29
|
+
apiResponse = await this.client.send(listClustersCommand);
|
|
30
|
+
if (isResponse200(apiResponse)) {
|
|
31
|
+
response = [
|
|
32
|
+
...response,
|
|
33
|
+
...apiResponse.clusterArns,
|
|
34
|
+
];
|
|
101
35
|
}
|
|
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
|
-
|
|
128
|
-
...apiResponse.taskArns,
|
|
129
|
-
];
|
|
130
|
-
}
|
|
36
|
+
}
|
|
37
|
+
return response;
|
|
38
|
+
};
|
|
39
|
+
/**
|
|
40
|
+
* https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/ecs/command/ListTaskDefinitionsCommand/
|
|
41
|
+
* https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-ecs/Interface/ListTaskDefinitionsCommandInput/
|
|
42
|
+
*/
|
|
43
|
+
getTaskDefinitions = async (props) => {
|
|
44
|
+
await this.ensureInit();
|
|
45
|
+
const { ListTaskDefinitionsCommand } = await import("@aws-sdk/client-ecs");
|
|
46
|
+
let response = [];
|
|
47
|
+
let apiResponse = null;
|
|
48
|
+
while (null === apiResponse || apiResponse?.nextToken) {
|
|
49
|
+
const listTaskDefinitionsCommand = new ListTaskDefinitionsCommand({
|
|
50
|
+
maxResults: props?.maxResults,
|
|
51
|
+
familyPrefix: props?.familyPrefix,
|
|
52
|
+
sort: props?.sort,
|
|
53
|
+
status: props?.status,
|
|
54
|
+
nextToken: apiResponse?.nextToken,
|
|
55
|
+
});
|
|
56
|
+
apiResponse = await global.awsEcsClient.send(listTaskDefinitionsCommand);
|
|
57
|
+
if (isResponse200(apiResponse)) {
|
|
58
|
+
response = [
|
|
59
|
+
...response,
|
|
60
|
+
...apiResponse.taskDefinitionArns,
|
|
61
|
+
];
|
|
131
62
|
}
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
63
|
+
}
|
|
64
|
+
return response;
|
|
65
|
+
};
|
|
66
|
+
/**
|
|
67
|
+
* https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/ecs/command/ListTasksCommand/
|
|
68
|
+
* https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-ecs/Interface/ListTasksCommandInput/
|
|
69
|
+
*/
|
|
70
|
+
getTasks = async (props) => {
|
|
71
|
+
await this.ensureInit();
|
|
72
|
+
const { ListTasksCommand } = await import("@aws-sdk/client-ecs");
|
|
73
|
+
let response = [];
|
|
74
|
+
let apiResponse = null;
|
|
75
|
+
while (null === apiResponse || apiResponse?.nextToken) {
|
|
76
|
+
const listTasksCommand = new ListTasksCommand({
|
|
144
77
|
cluster: props?.cluster,
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
78
|
+
containerInstance: props?.containerInstance,
|
|
79
|
+
desiredStatus: props?.desiredStatus,
|
|
80
|
+
family: props?.family,
|
|
81
|
+
maxResults: props?.maxResults,
|
|
82
|
+
nextToken: apiResponse?.nextToken,
|
|
83
|
+
serviceName: props?.serviceName,
|
|
84
|
+
startedBy: props?.startedBy,
|
|
149
85
|
});
|
|
150
|
-
|
|
151
|
-
if (
|
|
152
|
-
response =
|
|
86
|
+
apiResponse = await global.awsEcsClient.send(listTasksCommand);
|
|
87
|
+
if (isResponse200(apiResponse)) {
|
|
88
|
+
response = [
|
|
89
|
+
...response,
|
|
90
|
+
...apiResponse.taskArns,
|
|
91
|
+
];
|
|
153
92
|
}
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
}
|
|
93
|
+
}
|
|
94
|
+
return response;
|
|
95
|
+
};
|
|
96
|
+
/**
|
|
97
|
+
* Initialise and run a task
|
|
98
|
+
* https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/ecs/command/RunTaskCommand/
|
|
99
|
+
* https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-ecs/Interface/RunTaskCommandInput/
|
|
100
|
+
*/
|
|
101
|
+
runTask = async (props) => {
|
|
102
|
+
await this.ensureInit();
|
|
103
|
+
const { RunTaskCommand } = await import("@aws-sdk/client-ecs");
|
|
104
|
+
let response = false;
|
|
105
|
+
const runtTaskCommand = new RunTaskCommand({
|
|
106
|
+
cluster: props?.cluster,
|
|
107
|
+
launchType: props?.launchType,
|
|
108
|
+
networkConfiguration: props?.networkConfiguration,
|
|
109
|
+
overrides: props?.overrides,
|
|
110
|
+
taskDefinition: props?.taskDefinition,
|
|
111
|
+
});
|
|
112
|
+
const apiResponse = await global.awsEcsClient.send(runtTaskCommand);
|
|
113
|
+
if (isResponse200(apiResponse)) {
|
|
114
|
+
response = apiResponse;
|
|
115
|
+
}
|
|
116
|
+
return response;
|
|
117
|
+
};
|
|
157
118
|
}
|
|
158
|
-
exports.AwsEcsNamespace = AwsEcsNamespace;
|
package/aws/ecs/server.js
CHANGED
|
@@ -1,16 +1,12 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
exports.awsEcsClient = void 0;
|
|
4
|
-
const AwsEcsNamespace_1 = require("./AwsEcsNamespace");
|
|
5
|
-
const server_1 = require("../server");
|
|
1
|
+
import { AwsEcsNamespace } from "./AwsEcsNamespace";
|
|
2
|
+
import { getConfig } from "../server";
|
|
6
3
|
const awsEcsNamespaces = new Map();
|
|
7
|
-
const awsEcsClient = async (key = "default", config, vaultId, itemId) => {
|
|
4
|
+
export const awsEcsClient = async (key = "default", config, vaultId, itemId) => {
|
|
8
5
|
if (awsEcsNamespaces.has(key)) {
|
|
9
6
|
return awsEcsNamespaces.get(key);
|
|
10
7
|
}
|
|
11
|
-
const instanceConfig = await
|
|
12
|
-
const namespace = new
|
|
8
|
+
const instanceConfig = await getConfig(key, config, vaultId, itemId);
|
|
9
|
+
const namespace = new AwsEcsNamespace(key, instanceConfig);
|
|
13
10
|
awsEcsNamespaces.set(key, namespace);
|
|
14
11
|
return namespace;
|
|
15
12
|
};
|
|
16
|
-
exports.awsEcsClient = awsEcsClient;
|
|
@@ -1,69 +1,29 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
}
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
}
|
|
13
|
-
|
|
14
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
-
}) : function(o, v) {
|
|
16
|
-
o["default"] = v;
|
|
17
|
-
});
|
|
18
|
-
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
-
var ownKeys = function(o) {
|
|
20
|
-
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
-
var ar = [];
|
|
22
|
-
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
-
return ar;
|
|
24
|
-
};
|
|
25
|
-
return ownKeys(o);
|
|
1
|
+
import { BaseNamespace } from "../../_class";
|
|
2
|
+
import { isResponse200 } from "../server";
|
|
3
|
+
export class AwsGlueNamespace extends BaseNamespace {
|
|
4
|
+
ensureInit = async () => {
|
|
5
|
+
if (!this.client) {
|
|
6
|
+
try {
|
|
7
|
+
const { GlueClient } = await import("@aws-sdk/client-glue");
|
|
8
|
+
this.client = new GlueClient(this.config);
|
|
9
|
+
}
|
|
10
|
+
catch (e) {
|
|
11
|
+
throw new Error("AWS Glue Client not installed");
|
|
12
|
+
}
|
|
13
|
+
}
|
|
26
14
|
};
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
15
|
+
/**
|
|
16
|
+
* Invoke an AWS Glue Crawler by passing in the name of the Crawler.
|
|
17
|
+
*/
|
|
18
|
+
invoke = async (crawler) => {
|
|
19
|
+
await this.ensureInit();
|
|
20
|
+
const { StartCrawlerCommand } = await import("@aws-sdk/client-glue");
|
|
21
|
+
const command = new StartCrawlerCommand({
|
|
22
|
+
Name: crawler,
|
|
23
|
+
});
|
|
24
|
+
// Fire the event but don't wait for it to complete
|
|
25
|
+
const apiResponse = await this.client.send(command);
|
|
26
|
+
// Success
|
|
27
|
+
return isResponse200(apiResponse);
|
|
33
28
|
};
|
|
34
|
-
})();
|
|
35
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
-
exports.AwsGlueNamespace = void 0;
|
|
37
|
-
const _class_1 = require("../../_class");
|
|
38
|
-
const server_1 = require("../server");
|
|
39
|
-
class AwsGlueNamespace extends _class_1.BaseNamespace {
|
|
40
|
-
constructor() {
|
|
41
|
-
super(...arguments);
|
|
42
|
-
this.ensureInit = async () => {
|
|
43
|
-
if (!this.client) {
|
|
44
|
-
try {
|
|
45
|
-
const { GlueClient } = await Promise.resolve().then(() => __importStar(require("@aws-sdk/client-glue")));
|
|
46
|
-
this.client = new GlueClient(this.config);
|
|
47
|
-
}
|
|
48
|
-
catch (e) {
|
|
49
|
-
throw new Error("AWS Glue Client not installed");
|
|
50
|
-
}
|
|
51
|
-
}
|
|
52
|
-
};
|
|
53
|
-
/**
|
|
54
|
-
* Invoke an AWS Glue Crawler by passing in the name of the Crawler.
|
|
55
|
-
*/
|
|
56
|
-
this.invoke = async (crawler) => {
|
|
57
|
-
await this.ensureInit();
|
|
58
|
-
const { StartCrawlerCommand } = await Promise.resolve().then(() => __importStar(require("@aws-sdk/client-glue")));
|
|
59
|
-
const command = new StartCrawlerCommand({
|
|
60
|
-
Name: crawler,
|
|
61
|
-
});
|
|
62
|
-
// Fire the event but don't wait for it to complete
|
|
63
|
-
const apiResponse = await this.client.send(command);
|
|
64
|
-
// Success
|
|
65
|
-
return (0, server_1.isResponse200)(apiResponse);
|
|
66
|
-
};
|
|
67
|
-
}
|
|
68
29
|
}
|
|
69
|
-
exports.AwsGlueNamespace = AwsGlueNamespace;
|
package/aws/glue/server.js
CHANGED
|
@@ -1,16 +1,12 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
exports.awsGlueClient = void 0;
|
|
4
|
-
const AwsGlueNamespace_1 = require("./AwsGlueNamespace");
|
|
5
|
-
const server_1 = require("../server");
|
|
1
|
+
import { AwsGlueNamespace } from "./AwsGlueNamespace";
|
|
2
|
+
import { getConfig } from "../server";
|
|
6
3
|
const awsGlueNamespaces = new Map();
|
|
7
|
-
const awsGlueClient = async (key = "default", config, vaultId, itemId) => {
|
|
4
|
+
export const awsGlueClient = async (key = "default", config, vaultId, itemId) => {
|
|
8
5
|
if (awsGlueNamespaces.has(key)) {
|
|
9
6
|
return awsGlueNamespaces.get(key);
|
|
10
7
|
}
|
|
11
|
-
const instanceConfig = await
|
|
12
|
-
const namespace = new
|
|
8
|
+
const instanceConfig = await getConfig(key, config, vaultId, itemId);
|
|
9
|
+
const namespace = new AwsGlueNamespace(key, instanceConfig);
|
|
13
10
|
awsGlueNamespaces.set(key, namespace);
|
|
14
11
|
return namespace;
|
|
15
12
|
};
|
|
16
|
-
exports.awsGlueClient = awsGlueClient;
|
package/aws/isResponse200.js
CHANGED
|
@@ -1,16 +1,12 @@
|
|
|
1
|
-
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.isResponse200 = void 0;
|
|
4
|
-
const util_1 = require("../util");
|
|
1
|
+
import { defaultTo } from "../util";
|
|
5
2
|
/**
|
|
6
3
|
* Was the API response a 200?
|
|
7
4
|
*/
|
|
8
|
-
const isResponse200 = (apiResponse) => {
|
|
5
|
+
export const isResponse200 = (apiResponse) => {
|
|
9
6
|
let response = false;
|
|
10
|
-
const responseCode =
|
|
7
|
+
const responseCode = defaultTo(apiResponse, ["$metadata", "httpStatusCode"], 0);
|
|
11
8
|
if (200 === responseCode) {
|
|
12
9
|
response = true;
|
|
13
10
|
}
|
|
14
11
|
return response;
|
|
15
12
|
};
|
|
16
|
-
exports.isResponse200 = isResponse200;
|