@rio-cloud/cdk-v2-constructs 6.21.1 → 6.22.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/.jsii +1088 -154
- package/docs/API.md +1636 -65
- package/docs/changelog.md +19 -0
- package/lib/contributions/team-claid/aws-glue/csv-table.d.ts +74 -0
- package/lib/contributions/team-claid/aws-glue/csv-table.js +64 -0
- package/lib/contributions/team-claid/aws-glue/index.d.ts +3 -0
- package/lib/contributions/team-claid/aws-glue/index.js +20 -0
- package/lib/contributions/team-claid/aws-glue/schema.d.ts +27 -0
- package/lib/contributions/team-claid/aws-glue/schema.js +74 -0
- package/lib/contributions/team-claid/aws-glue/view-table.d.ts +126 -0
- package/lib/contributions/team-claid/aws-glue/view-table.js +142 -0
- package/lib/contributions/team-claid/index.d.ts +3 -0
- package/lib/contributions/team-claid/index.js +20 -0
- package/lib/contributions/team-transport-two/datadog-synthetics/datadog-synthetics-test.d.ts +2 -2
- package/lib/contributions/team-transport-two/datadog-synthetics/datadog-synthetics-test.js +1 -1
- package/lib/index.d.ts +1 -2
- package/lib/index.js +2 -3
- package/package.json +10 -2
- package/version.json +1 -1
- package/lib/contributions/team-transport-two/datadog-synthetics/datadog-synthetics-test-custom-resource/handler.d.ts +0 -4
- package/lib/contributions/team-transport-two/datadog-synthetics/datadog-synthetics-test-custom-resource/handler.js +0 -101
- package/lib/datadogv2/secret-locator-custom-resource/on-create.d.ts +0 -2
- package/lib/datadogv2/secret-locator-custom-resource/on-create.js +0 -45
- package/lib/datadogv2/service-catalog-custom-resource/on-create.d.ts +0 -12
- package/lib/datadogv2/service-catalog-custom-resource/on-create.js +0 -69
- package/lib/fargate/codedeploy-custom-resources/create-deployment-is-complete.d.ts +0 -39
- package/lib/fargate/codedeploy-custom-resources/create-deployment-is-complete.js +0 -102
- package/lib/fargate/codedeploy-custom-resources/create-deployment-on-create.d.ts +0 -10
- package/lib/fargate/codedeploy-custom-resources/create-deployment-on-create.js +0 -75
- package/lib/fargate/codedeploy-custom-resources/run-monitoring-test-suite-runner.d.ts +0 -1
- package/lib/fargate/codedeploy-custom-resources/run-monitoring-test-suite-runner.js +0 -85
- package/lib/ses/lambda/ses-logger.d.ts +0 -2
- package/lib/ses/lambda/ses-logger.js +0 -28
|
@@ -1,75 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.handler = void 0;
|
|
4
|
-
const codedeploy = require("@aws-sdk/client-codedeploy");
|
|
5
|
-
const handler = async (event) => {
|
|
6
|
-
const codedeployClient = new codedeploy.CodeDeployClient();
|
|
7
|
-
console.info('Received event:', JSON.stringify(event, null, 2));
|
|
8
|
-
if (event.RequestType === 'Create' || event.RequestType === 'Update') {
|
|
9
|
-
const appSpecContent = {
|
|
10
|
-
Version: '0.0.1',
|
|
11
|
-
Hooks: [],
|
|
12
|
-
Resources: [
|
|
13
|
-
{
|
|
14
|
-
TargetService: {
|
|
15
|
-
Type: 'AWS::ECS::Service',
|
|
16
|
-
Properties: {
|
|
17
|
-
TaskDefinition: event.ResourceProperties.TaskDefinitionArn,
|
|
18
|
-
LoadBalancerInfo: {
|
|
19
|
-
ContainerName: event.ResourceProperties.ContainerName,
|
|
20
|
-
ContainerPort: event.ResourceProperties.ContainerPort,
|
|
21
|
-
},
|
|
22
|
-
},
|
|
23
|
-
},
|
|
24
|
-
},
|
|
25
|
-
],
|
|
26
|
-
};
|
|
27
|
-
if (event.ResourceProperties.AfterAllowTestTrafficHook) {
|
|
28
|
-
appSpecContent.Hooks.push({ AfterAllowTestTraffic: event.ResourceProperties.AfterAllowTestTrafficHook });
|
|
29
|
-
}
|
|
30
|
-
const createDeploymentCommand = new codedeploy.CreateDeploymentCommand({
|
|
31
|
-
applicationName: event.ResourceProperties.ApplicationName,
|
|
32
|
-
deploymentGroupName: event.ResourceProperties.DeploymentGroupName,
|
|
33
|
-
revision: {
|
|
34
|
-
revisionType: codedeploy.RevisionLocationType.AppSpecContent,
|
|
35
|
-
appSpecContent: {
|
|
36
|
-
content: JSON.stringify(appSpecContent),
|
|
37
|
-
},
|
|
38
|
-
},
|
|
39
|
-
});
|
|
40
|
-
try {
|
|
41
|
-
const result = await codedeployClient.send(createDeploymentCommand);
|
|
42
|
-
console.log(result);
|
|
43
|
-
return {
|
|
44
|
-
PhysicalResourceId: result.deploymentId,
|
|
45
|
-
Data: {
|
|
46
|
-
DeploymentId: result.deploymentId, // Also adding deployment id as an attribute to support any future use cases where the id is needed by another resource in the stack. At the moment it is not used.
|
|
47
|
-
},
|
|
48
|
-
};
|
|
49
|
-
}
|
|
50
|
-
catch (error) {
|
|
51
|
-
console.error(error);
|
|
52
|
-
throw error;
|
|
53
|
-
;
|
|
54
|
-
}
|
|
55
|
-
}
|
|
56
|
-
else if (event.RequestType === 'Delete') {
|
|
57
|
-
console.log('Delete event');
|
|
58
|
-
try {
|
|
59
|
-
await codedeployClient.send(new codedeploy.StopDeploymentCommand({
|
|
60
|
-
deploymentId: event.PhysicalResourceId,
|
|
61
|
-
autoRollbackEnabled: true,
|
|
62
|
-
}));
|
|
63
|
-
}
|
|
64
|
-
catch (error) {
|
|
65
|
-
console.error('Caught error while stopping deployment', error);
|
|
66
|
-
}
|
|
67
|
-
return {};
|
|
68
|
-
}
|
|
69
|
-
else {
|
|
70
|
-
console.error('Invalid request type');
|
|
71
|
-
throw new Error('Invalid request type');
|
|
72
|
-
}
|
|
73
|
-
};
|
|
74
|
-
exports.handler = handler;
|
|
75
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLWRlcGxveW1lbnQtb24tY3JlYXRlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2ZhcmdhdGUvY29kZWRlcGxveS1jdXN0b20tcmVzb3VyY2VzL2NyZWF0ZS1kZXBsb3ltZW50LW9uLWNyZWF0ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSx5REFBeUQ7QUFHbEQsTUFBTSxPQUFPLEdBQUcsS0FBSyxFQUFFLEtBQXlELEVBQUMsRUFBRTtJQUN4RixNQUFNLGdCQUFnQixHQUFHLElBQUksVUFBVSxDQUFDLGdCQUFnQixFQUFFLENBQUM7SUFDM0QsT0FBTyxDQUFDLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUVoRSxJQUFJLEtBQUssQ0FBQyxXQUFXLEtBQUssUUFBUSxJQUFJLEtBQUssQ0FBQyxXQUFXLEtBQUssUUFBUSxFQUFFLENBQUM7UUFDckUsTUFBTSxjQUFjLEdBQVE7WUFDMUIsT0FBTyxFQUFFLE9BQU87WUFDaEIsS0FBSyxFQUFFLEVBQUU7WUFDVCxTQUFTLEVBQUU7Z0JBQ1Q7b0JBQ0UsYUFBYSxFQUFFO3dCQUNiLElBQUksRUFBRSxtQkFBbUI7d0JBQ3pCLFVBQVUsRUFBRTs0QkFDVixjQUFjLEVBQUUsS0FBSyxDQUFDLGtCQUFrQixDQUFDLGlCQUFpQjs0QkFDMUQsZ0JBQWdCLEVBQUU7Z0NBQ2hCLGFBQWEsRUFBRSxLQUFLLENBQUMsa0JBQWtCLENBQUMsYUFBYTtnQ0FDckQsYUFBYSxFQUFFLEtBQUssQ0FBQyxrQkFBa0IsQ0FBQyxhQUFhOzZCQUN0RDt5QkFDRjtxQkFDRjtpQkFDRjthQUNGO1NBQ0YsQ0FBQztRQUNGLElBQUksS0FBSyxDQUFDLGtCQUFrQixDQUFDLHlCQUF5QixFQUFFLENBQUM7WUFDdkQsY0FBYyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsRUFBRSxxQkFBcUIsRUFBRSxLQUFLLENBQUMsa0JBQWtCLENBQUMseUJBQXlCLEVBQUUsQ0FBQyxDQUFDO1FBQzNHLENBQUM7UUFDRCxNQUFNLHVCQUF1QixHQUFHLElBQUksVUFBVSxDQUFDLHVCQUF1QixDQUFDO1lBQ3JFLGVBQWUsRUFBRSxLQUFLLENBQUMsa0JBQWtCLENBQUMsZUFBZTtZQUN6RCxtQkFBbUIsRUFBRSxLQUFLLENBQUMsa0JBQWtCLENBQUMsbUJBQW1CO1lBQ2pFLFFBQVEsRUFBRTtnQkFDUixZQUFZLEVBQUUsVUFBVSxDQUFDLG9CQUFvQixDQUFDLGNBQWM7Z0JBQzVELGNBQWMsRUFBRTtvQkFDZCxPQUFPLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxjQUFjLENBQUM7aUJBQ3hDO2FBQ0Y7U0FDRixDQUFDLENBQUM7UUFFSCxJQUFJLENBQUM7WUFDSCxNQUFNLE1BQU0sR0FBRyxNQUFNLGdCQUFnQixDQUFDLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxDQUFDO1lBQ3BFLE9BQU8sQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLENBQUM7WUFDcEIsT0FBTztnQkFDTCxrQkFBa0IsRUFBRSxNQUFNLENBQUMsWUFBWTtnQkFDdkMsSUFBSSxFQUFFO29CQUNKLFlBQVksRUFBRSxNQUFNLENBQUMsWUFBWSxFQUFFLG1LQUFtSztpQkFDdk07YUFDRixDQUFDO1FBQ0osQ0FBQztRQUFDLE9BQU8sS0FBSyxFQUFFLENBQUM7WUFDZixPQUFPLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQ3JCLE1BQU0sS0FBSyxDQUFDO1lBQ1osQ0FBQztRQUVILENBQUM7SUFDSCxDQUFDO1NBQU0sSUFBSSxLQUFLLENBQUMsV0FBVyxLQUFLLFFBQVEsRUFBRSxDQUFDO1FBQzFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsY0FBYyxDQUFDLENBQUM7UUFDNUIsSUFBSSxDQUFDO1lBQ0gsTUFBTSxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsSUFBSSxVQUFVLENBQUMscUJBQXFCLENBQUM7Z0JBQy9ELFlBQVksRUFBRSxLQUFLLENBQUMsa0JBQWtCO2dCQUN0QyxtQkFBbUIsRUFBRSxJQUFJO2FBQzFCLENBQUMsQ0FBQyxDQUFDO1FBQ04sQ0FBQztRQUFDLE9BQU8sS0FBSyxFQUFFLENBQUM7WUFDZixPQUFPLENBQUMsS0FBSyxDQUFDLHdDQUF3QyxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQ2pFLENBQUM7UUFDRCxPQUFPLEVBQUUsQ0FBQztJQUNaLENBQUM7U0FBTSxDQUFDO1FBQ04sT0FBTyxDQUFDLEtBQUssQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDO1FBQ3RDLE1BQU0sSUFBSSxLQUFLLENBQUMsc0JBQXNCLENBQUMsQ0FBQztJQUMxQyxDQUFDO0FBQ0gsQ0FBQyxDQUFDO0FBbkVXLFFBQUEsT0FBTyxXQW1FbEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBjb2RlZGVwbG95IGZyb20gJ0Bhd3Mtc2RrL2NsaWVudC1jb2RlZGVwbG95JztcbmltcG9ydCAqIGFzIGxhbWJkYUV2ZW50VHlwZXMgZnJvbSAnYXdzLWxhbWJkYSc7XG5cbmV4cG9ydCBjb25zdCBoYW5kbGVyID0gYXN5bmMgKGV2ZW50OiBsYW1iZGFFdmVudFR5cGVzLkNsb3VkRm9ybWF0aW9uQ3VzdG9tUmVzb3VyY2VFdmVudCk9PiB7XG4gIGNvbnN0IGNvZGVkZXBsb3lDbGllbnQgPSBuZXcgY29kZWRlcGxveS5Db2RlRGVwbG95Q2xpZW50KCk7XG4gIGNvbnNvbGUuaW5mbygnUmVjZWl2ZWQgZXZlbnQ6JywgSlNPTi5zdHJpbmdpZnkoZXZlbnQsIG51bGwsIDIpKTtcblxuICBpZiAoZXZlbnQuUmVxdWVzdFR5cGUgPT09ICdDcmVhdGUnIHx8IGV2ZW50LlJlcXVlc3RUeXBlID09PSAnVXBkYXRlJykge1xuICAgIGNvbnN0IGFwcFNwZWNDb250ZW50OiBhbnkgPSB7XG4gICAgICBWZXJzaW9uOiAnMC4wLjEnLFxuICAgICAgSG9va3M6IFtdLFxuICAgICAgUmVzb3VyY2VzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICBUYXJnZXRTZXJ2aWNlOiB7XG4gICAgICAgICAgICBUeXBlOiAnQVdTOjpFQ1M6OlNlcnZpY2UnLFxuICAgICAgICAgICAgUHJvcGVydGllczoge1xuICAgICAgICAgICAgICBUYXNrRGVmaW5pdGlvbjogZXZlbnQuUmVzb3VyY2VQcm9wZXJ0aWVzLlRhc2tEZWZpbml0aW9uQXJuLFxuICAgICAgICAgICAgICBMb2FkQmFsYW5jZXJJbmZvOiB7XG4gICAgICAgICAgICAgICAgQ29udGFpbmVyTmFtZTogZXZlbnQuUmVzb3VyY2VQcm9wZXJ0aWVzLkNvbnRhaW5lck5hbWUsXG4gICAgICAgICAgICAgICAgQ29udGFpbmVyUG9ydDogZXZlbnQuUmVzb3VyY2VQcm9wZXJ0aWVzLkNvbnRhaW5lclBvcnQsXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICBdLFxuICAgIH07XG4gICAgaWYgKGV2ZW50LlJlc291cmNlUHJvcGVydGllcy5BZnRlckFsbG93VGVzdFRyYWZmaWNIb29rKSB7XG4gICAgICBhcHBTcGVjQ29udGVudC5Ib29rcy5wdXNoKHsgQWZ0ZXJBbGxvd1Rlc3RUcmFmZmljOiBldmVudC5SZXNvdXJjZVByb3BlcnRpZXMuQWZ0ZXJBbGxvd1Rlc3RUcmFmZmljSG9vayB9KTtcbiAgICB9XG4gICAgY29uc3QgY3JlYXRlRGVwbG95bWVudENvbW1hbmQgPSBuZXcgY29kZWRlcGxveS5DcmVhdGVEZXBsb3ltZW50Q29tbWFuZCh7XG4gICAgICBhcHBsaWNhdGlvbk5hbWU6IGV2ZW50LlJlc291cmNlUHJvcGVydGllcy5BcHBsaWNhdGlvbk5hbWUsXG4gICAgICBkZXBsb3ltZW50R3JvdXBOYW1lOiBldmVudC5SZXNvdXJjZVByb3BlcnRpZXMuRGVwbG95bWVudEdyb3VwTmFtZSxcbiAgICAgIHJldmlzaW9uOiB7XG4gICAgICAgIHJldmlzaW9uVHlwZTogY29kZWRlcGxveS5SZXZpc2lvbkxvY2F0aW9uVHlwZS5BcHBTcGVjQ29udGVudCxcbiAgICAgICAgYXBwU3BlY0NvbnRlbnQ6IHtcbiAgICAgICAgICBjb250ZW50OiBKU09OLnN0cmluZ2lmeShhcHBTcGVjQ29udGVudCksXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgIH0pO1xuXG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IHJlc3VsdCA9IGF3YWl0IGNvZGVkZXBsb3lDbGllbnQuc2VuZChjcmVhdGVEZXBsb3ltZW50Q29tbWFuZCk7XG4gICAgICBjb25zb2xlLmxvZyhyZXN1bHQpO1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgUGh5c2ljYWxSZXNvdXJjZUlkOiByZXN1bHQuZGVwbG95bWVudElkLFxuICAgICAgICBEYXRhOiB7XG4gICAgICAgICAgRGVwbG95bWVudElkOiByZXN1bHQuZGVwbG95bWVudElkLCAvLyBBbHNvIGFkZGluZyBkZXBsb3ltZW50IGlkIGFzIGFuIGF0dHJpYnV0ZSB0byBzdXBwb3J0IGFueSBmdXR1cmUgdXNlIGNhc2VzIHdoZXJlIHRoZSBpZCBpcyBuZWVkZWQgYnkgYW5vdGhlciByZXNvdXJjZSBpbiB0aGUgc3RhY2suIEF0IHRoZSBtb21lbnQgaXQgaXMgbm90IHVzZWQuXG4gICAgICAgIH0sXG4gICAgICB9O1xuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICBjb25zb2xlLmVycm9yKGVycm9yKTtcbiAgICAgIHRocm93IGVycm9yO1xuICAgICAgO1xuXG4gICAgfVxuICB9IGVsc2UgaWYgKGV2ZW50LlJlcXVlc3RUeXBlID09PSAnRGVsZXRlJykge1xuICAgIGNvbnNvbGUubG9nKCdEZWxldGUgZXZlbnQnKTtcbiAgICB0cnkge1xuICAgICAgYXdhaXQgY29kZWRlcGxveUNsaWVudC5zZW5kKG5ldyBjb2RlZGVwbG95LlN0b3BEZXBsb3ltZW50Q29tbWFuZCh7XG4gICAgICAgIGRlcGxveW1lbnRJZDogZXZlbnQuUGh5c2ljYWxSZXNvdXJjZUlkLFxuICAgICAgICBhdXRvUm9sbGJhY2tFbmFibGVkOiB0cnVlLFxuICAgICAgfSkpO1xuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICBjb25zb2xlLmVycm9yKCdDYXVnaHQgZXJyb3Igd2hpbGUgc3RvcHBpbmcgZGVwbG95bWVudCcsIGVycm9yKTtcbiAgICB9XG4gICAgcmV0dXJuIHt9O1xuICB9IGVsc2Uge1xuICAgIGNvbnNvbGUuZXJyb3IoJ0ludmFsaWQgcmVxdWVzdCB0eXBlJyk7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdJbnZhbGlkIHJlcXVlc3QgdHlwZScpO1xuICB9XG59OyJdfQ==
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export declare const handler: (event: any) => Promise<void>;
|
|
@@ -1,85 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.handler = void 0;
|
|
4
|
-
const ecs = require("@aws-sdk/client-ecs");
|
|
5
|
-
const handler = async (event) => {
|
|
6
|
-
console.info('Received event:', JSON.stringify(event, null, 2));
|
|
7
|
-
const lifecycleEventHookExecutionId = event.LifecycleEventHookExecutionId;
|
|
8
|
-
const deploymentId = event.DeploymentId;
|
|
9
|
-
const ecsClient = new ecs.ECSClient();
|
|
10
|
-
const serviceName = 'monitoring-testsuite-runner';
|
|
11
|
-
const clusterName = await getClusterName(ecsClient, serviceName);
|
|
12
|
-
const taskDefinition = await getTaskDefinition(ecsClient, serviceName);
|
|
13
|
-
const subnets = getRequiredEnvVar('SUBNETS').split(',');
|
|
14
|
-
try {
|
|
15
|
-
await ecsClient.send(new ecs.RunTaskCommand({
|
|
16
|
-
taskDefinition,
|
|
17
|
-
cluster: clusterName,
|
|
18
|
-
networkConfiguration: {
|
|
19
|
-
awsvpcConfiguration: {
|
|
20
|
-
subnets,
|
|
21
|
-
assignPublicIp: ecs.AssignPublicIp.DISABLED,
|
|
22
|
-
},
|
|
23
|
-
},
|
|
24
|
-
launchType: ecs.LaunchType.FARGATE,
|
|
25
|
-
overrides: {
|
|
26
|
-
containerOverrides: [
|
|
27
|
-
{
|
|
28
|
-
name: serviceName,
|
|
29
|
-
environment: [
|
|
30
|
-
{
|
|
31
|
-
name: 'DEPLOYMENT_ID',
|
|
32
|
-
value: deploymentId,
|
|
33
|
-
},
|
|
34
|
-
{
|
|
35
|
-
name: 'LIFECYCLE_EVENT_HOOK_EXECUTION_ID',
|
|
36
|
-
value: lifecycleEventHookExecutionId,
|
|
37
|
-
},
|
|
38
|
-
{
|
|
39
|
-
name: 'BLUE_GREEN_DEPLOYMENT_TEST',
|
|
40
|
-
value: 'true',
|
|
41
|
-
},
|
|
42
|
-
{
|
|
43
|
-
name: 'CAPABILITIES_NAME',
|
|
44
|
-
value: getRequiredEnvVar('CAPABILITIES_NAME'),
|
|
45
|
-
},
|
|
46
|
-
],
|
|
47
|
-
},
|
|
48
|
-
],
|
|
49
|
-
},
|
|
50
|
-
}));
|
|
51
|
-
}
|
|
52
|
-
catch (error) {
|
|
53
|
-
console.error('Error running task:', error);
|
|
54
|
-
throw error;
|
|
55
|
-
}
|
|
56
|
-
};
|
|
57
|
-
exports.handler = handler;
|
|
58
|
-
const getClusterName = async (ecsClient, clusterNamePrefix) => {
|
|
59
|
-
const clusters = await ecsClient.send(new ecs.ListClustersCommand({}));
|
|
60
|
-
for (const clusterArns of clusters.clusterArns ?? []) {
|
|
61
|
-
const clusterName = clusterArns.split('/').pop();
|
|
62
|
-
console.info('Cluster name:', clusterName);
|
|
63
|
-
if (clusterName && clusterName.includes(clusterNamePrefix)) {
|
|
64
|
-
return clusterName;
|
|
65
|
-
}
|
|
66
|
-
}
|
|
67
|
-
throw new Error('No cluster found');
|
|
68
|
-
};
|
|
69
|
-
const getTaskDefinition = async (ecsClient, taskDefinitionName) => {
|
|
70
|
-
const taskDefinitions = await ecsClient.send(new ecs.ListTaskDefinitionsCommand({ status: ecs.TaskDefinitionStatus.ACTIVE }));
|
|
71
|
-
for (const taskDefinition of taskDefinitions.taskDefinitionArns ?? []) {
|
|
72
|
-
if (taskDefinition.includes(taskDefinitionName)) {
|
|
73
|
-
return taskDefinition;
|
|
74
|
-
}
|
|
75
|
-
}
|
|
76
|
-
throw new Error('No task definition found');
|
|
77
|
-
};
|
|
78
|
-
const getRequiredEnvVar = (envVar) => {
|
|
79
|
-
const value = process.env[envVar];
|
|
80
|
-
if (!value) {
|
|
81
|
-
throw new Error(`Missing required environment variable: ${envVar}`);
|
|
82
|
-
}
|
|
83
|
-
return value;
|
|
84
|
-
};
|
|
85
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicnVuLW1vbml0b3JpbmctdGVzdC1zdWl0ZS1ydW5uZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvZmFyZ2F0ZS9jb2RlZGVwbG95LWN1c3RvbS1yZXNvdXJjZXMvcnVuLW1vbml0b3JpbmctdGVzdC1zdWl0ZS1ydW5uZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsMkNBQTJDO0FBR3BDLE1BQU0sT0FBTyxHQUFHLEtBQUssRUFBRSxLQUFVLEVBQUMsRUFBRTtJQUN6QyxPQUFPLENBQUMsSUFBSSxDQUFDLGlCQUFpQixFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxFQUFFLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ2hFLE1BQU0sNkJBQTZCLEdBQUcsS0FBSyxDQUFDLDZCQUE2QixDQUFDO0lBQzFFLE1BQU0sWUFBWSxHQUFHLEtBQUssQ0FBQyxZQUFZLENBQUM7SUFFeEMsTUFBTSxTQUFTLEdBQUcsSUFBSSxHQUFHLENBQUMsU0FBUyxFQUFFLENBQUM7SUFDdEMsTUFBTSxXQUFXLEdBQUcsNkJBQTZCLENBQUM7SUFDbEQsTUFBTSxXQUFXLEdBQUcsTUFBTSxjQUFjLENBQUMsU0FBUyxFQUFFLFdBQVcsQ0FBQyxDQUFDO0lBQ2pFLE1BQU0sY0FBYyxHQUFHLE1BQU0saUJBQWlCLENBQUMsU0FBUyxFQUFFLFdBQVcsQ0FBQyxDQUFDO0lBQ3ZFLE1BQU0sT0FBTyxHQUFHLGlCQUFpQixDQUFDLFNBQVMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUN4RCxJQUFJLENBQUM7UUFDSCxNQUFNLFNBQVMsQ0FBQyxJQUFJLENBQUMsSUFBSSxHQUFHLENBQUMsY0FBYyxDQUFDO1lBQzFDLGNBQWM7WUFDZCxPQUFPLEVBQUUsV0FBVztZQUNwQixvQkFBb0IsRUFBRTtnQkFDcEIsbUJBQW1CLEVBQUU7b0JBQ25CLE9BQU87b0JBQ1AsY0FBYyxFQUFFLEdBQUcsQ0FBQyxjQUFjLENBQUMsUUFBUTtpQkFDNUM7YUFDRjtZQUNELFVBQVUsRUFBRSxHQUFHLENBQUMsVUFBVSxDQUFDLE9BQU87WUFDbEMsU0FBUyxFQUFFO2dCQUNULGtCQUFrQixFQUFFO29CQUNsQjt3QkFDRSxJQUFJLEVBQUUsV0FBVzt3QkFDakIsV0FBVyxFQUFFOzRCQUNYO2dDQUNFLElBQUksRUFBRSxlQUFlO2dDQUNyQixLQUFLLEVBQUUsWUFBWTs2QkFDcEI7NEJBQ0Q7Z0NBQ0UsSUFBSSxFQUFFLG1DQUFtQztnQ0FDekMsS0FBSyxFQUFFLDZCQUE2Qjs2QkFDckM7NEJBQ0Q7Z0NBQ0UsSUFBSSxFQUFFLDRCQUE0QjtnQ0FDbEMsS0FBSyxFQUFFLE1BQU07NkJBQ2Q7NEJBQ0Q7Z0NBQ0UsSUFBSSxFQUFFLG1CQUFtQjtnQ0FDekIsS0FBSyxFQUFFLGlCQUFpQixDQUFDLG1CQUFtQixDQUFDOzZCQUM5Qzt5QkFDRjtxQkFDRjtpQkFDRjthQUNGO1NBQ0YsQ0FBQyxDQUFDLENBQUM7SUFDTixDQUFDO0lBQUMsT0FBTyxLQUFLLEVBQUUsQ0FBQztRQUNmLE9BQU8sQ0FBQyxLQUFLLENBQUMscUJBQXFCLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFDNUMsTUFBTSxLQUFLLENBQUM7SUFDZCxDQUFDO0FBRUgsQ0FBQyxDQUFDO0FBcERXLFFBQUEsT0FBTyxXQW9EbEI7QUFFRixNQUFNLGNBQWMsR0FBRyxLQUFLLEVBQUUsU0FBd0IsRUFBRSxpQkFBeUIsRUFBRSxFQUFFO0lBQ25GLE1BQU0sUUFBUSxHQUFHLE1BQU0sU0FBUyxDQUFDLElBQUksQ0FBQyxJQUFJLEdBQUcsQ0FBQyxtQkFBbUIsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBQ3ZFLEtBQUssTUFBTSxXQUFXLElBQUksUUFBUSxDQUFDLFdBQVcsSUFBSSxFQUFFLEVBQUUsQ0FBQztRQUNyRCxNQUFNLFdBQVcsR0FBRyxXQUFXLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsRUFBRSxDQUFDO1FBQ2pELE9BQU8sQ0FBQyxJQUFJLENBQUMsZUFBZSxFQUFFLFdBQVcsQ0FBQyxDQUFDO1FBQzNDLElBQUksV0FBVyxJQUFJLFdBQVcsQ0FBQyxRQUFRLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDO1lBQzNELE9BQU8sV0FBVyxDQUFDO1FBQ3JCLENBQUM7SUFDSCxDQUFDO0lBQ0QsTUFBTSxJQUFJLEtBQUssQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO0FBQ3RDLENBQUMsQ0FBQztBQUVGLE1BQU0saUJBQWlCLEdBQUcsS0FBSyxFQUFFLFNBQXdCLEVBQUUsa0JBQTBCLEVBQUUsRUFBRTtJQUN2RixNQUFNLGVBQWUsR0FBRyxNQUFNLFNBQVMsQ0FBQyxJQUFJLENBQUMsSUFBSSxHQUFHLENBQUMsMEJBQTBCLENBQUMsRUFBRSxNQUFNLEVBQUUsR0FBRyxDQUFDLG9CQUFvQixDQUFDLE1BQU0sRUFBRSxDQUFDLENBQUMsQ0FBQztJQUM5SCxLQUFLLE1BQU0sY0FBYyxJQUFJLGVBQWUsQ0FBQyxrQkFBa0IsSUFBSSxFQUFFLEVBQUUsQ0FBQztRQUN0RSxJQUFJLGNBQWMsQ0FBQyxRQUFRLENBQUMsa0JBQWtCLENBQUMsRUFBRSxDQUFDO1lBQ2hELE9BQU8sY0FBYyxDQUFDO1FBQ3hCLENBQUM7SUFDSCxDQUFDO0lBQ0QsTUFBTSxJQUFJLEtBQUssQ0FBQywwQkFBMEIsQ0FBQyxDQUFDO0FBQzlDLENBQUMsQ0FBQztBQUVGLE1BQU0saUJBQWlCLEdBQUcsQ0FBQyxNQUFjLEVBQUUsRUFBRTtJQUMzQyxNQUFNLEtBQUssR0FBRyxPQUFPLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ2xDLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUNYLE1BQU0sSUFBSSxLQUFLLENBQUMsMENBQTBDLE1BQU0sRUFBRSxDQUFDLENBQUM7SUFDdEUsQ0FBQztJQUNELE9BQU8sS0FBSyxDQUFDO0FBQ2YsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgZWNzIGZyb20gJ0Bhd3Mtc2RrL2NsaWVudC1lY3MnO1xuXG5cbmV4cG9ydCBjb25zdCBoYW5kbGVyID0gYXN5bmMgKGV2ZW50OiBhbnkpPT4ge1xuICBjb25zb2xlLmluZm8oJ1JlY2VpdmVkIGV2ZW50OicsIEpTT04uc3RyaW5naWZ5KGV2ZW50LCBudWxsLCAyKSk7XG4gIGNvbnN0IGxpZmVjeWNsZUV2ZW50SG9va0V4ZWN1dGlvbklkID0gZXZlbnQuTGlmZWN5Y2xlRXZlbnRIb29rRXhlY3V0aW9uSWQ7XG4gIGNvbnN0IGRlcGxveW1lbnRJZCA9IGV2ZW50LkRlcGxveW1lbnRJZDtcblxuICBjb25zdCBlY3NDbGllbnQgPSBuZXcgZWNzLkVDU0NsaWVudCgpO1xuICBjb25zdCBzZXJ2aWNlTmFtZSA9ICdtb25pdG9yaW5nLXRlc3RzdWl0ZS1ydW5uZXInO1xuICBjb25zdCBjbHVzdGVyTmFtZSA9IGF3YWl0IGdldENsdXN0ZXJOYW1lKGVjc0NsaWVudCwgc2VydmljZU5hbWUpO1xuICBjb25zdCB0YXNrRGVmaW5pdGlvbiA9IGF3YWl0IGdldFRhc2tEZWZpbml0aW9uKGVjc0NsaWVudCwgc2VydmljZU5hbWUpO1xuICBjb25zdCBzdWJuZXRzID0gZ2V0UmVxdWlyZWRFbnZWYXIoJ1NVQk5FVFMnKS5zcGxpdCgnLCcpO1xuICB0cnkge1xuICAgIGF3YWl0IGVjc0NsaWVudC5zZW5kKG5ldyBlY3MuUnVuVGFza0NvbW1hbmQoe1xuICAgICAgdGFza0RlZmluaXRpb24sXG4gICAgICBjbHVzdGVyOiBjbHVzdGVyTmFtZSxcbiAgICAgIG5ldHdvcmtDb25maWd1cmF0aW9uOiB7XG4gICAgICAgIGF3c3ZwY0NvbmZpZ3VyYXRpb246IHtcbiAgICAgICAgICBzdWJuZXRzLFxuICAgICAgICAgIGFzc2lnblB1YmxpY0lwOiBlY3MuQXNzaWduUHVibGljSXAuRElTQUJMRUQsXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgICAgbGF1bmNoVHlwZTogZWNzLkxhdW5jaFR5cGUuRkFSR0FURSxcbiAgICAgIG92ZXJyaWRlczoge1xuICAgICAgICBjb250YWluZXJPdmVycmlkZXM6IFtcbiAgICAgICAgICB7XG4gICAgICAgICAgICBuYW1lOiBzZXJ2aWNlTmFtZSxcbiAgICAgICAgICAgIGVudmlyb25tZW50OiBbXG4gICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBuYW1lOiAnREVQTE9ZTUVOVF9JRCcsXG4gICAgICAgICAgICAgICAgdmFsdWU6IGRlcGxveW1lbnRJZCxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIG5hbWU6ICdMSUZFQ1lDTEVfRVZFTlRfSE9PS19FWEVDVVRJT05fSUQnLFxuICAgICAgICAgICAgICAgIHZhbHVlOiBsaWZlY3ljbGVFdmVudEhvb2tFeGVjdXRpb25JZCxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIG5hbWU6ICdCTFVFX0dSRUVOX0RFUExPWU1FTlRfVEVTVCcsXG4gICAgICAgICAgICAgICAgdmFsdWU6ICd0cnVlJyxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIG5hbWU6ICdDQVBBQklMSVRJRVNfTkFNRScsXG4gICAgICAgICAgICAgICAgdmFsdWU6IGdldFJlcXVpcmVkRW52VmFyKCdDQVBBQklMSVRJRVNfTkFNRScpLFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgXSxcbiAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgfSxcbiAgICB9KSk7XG4gIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgY29uc29sZS5lcnJvcignRXJyb3IgcnVubmluZyB0YXNrOicsIGVycm9yKTtcbiAgICB0aHJvdyBlcnJvcjtcbiAgfVxuXG59O1xuXG5jb25zdCBnZXRDbHVzdGVyTmFtZSA9IGFzeW5jIChlY3NDbGllbnQ6IGVjcy5FQ1NDbGllbnQsIGNsdXN0ZXJOYW1lUHJlZml4OiBzdHJpbmcpID0+IHtcbiAgY29uc3QgY2x1c3RlcnMgPSBhd2FpdCBlY3NDbGllbnQuc2VuZChuZXcgZWNzLkxpc3RDbHVzdGVyc0NvbW1hbmQoe30pKTtcbiAgZm9yIChjb25zdCBjbHVzdGVyQXJucyBvZiBjbHVzdGVycy5jbHVzdGVyQXJucyA/PyBbXSkge1xuICAgIGNvbnN0IGNsdXN0ZXJOYW1lID0gY2x1c3RlckFybnMuc3BsaXQoJy8nKS5wb3AoKTtcbiAgICBjb25zb2xlLmluZm8oJ0NsdXN0ZXIgbmFtZTonLCBjbHVzdGVyTmFtZSk7XG4gICAgaWYgKGNsdXN0ZXJOYW1lICYmIGNsdXN0ZXJOYW1lLmluY2x1ZGVzKGNsdXN0ZXJOYW1lUHJlZml4KSkge1xuICAgICAgcmV0dXJuIGNsdXN0ZXJOYW1lO1xuICAgIH1cbiAgfVxuICB0aHJvdyBuZXcgRXJyb3IoJ05vIGNsdXN0ZXIgZm91bmQnKTtcbn07XG5cbmNvbnN0IGdldFRhc2tEZWZpbml0aW9uID0gYXN5bmMgKGVjc0NsaWVudDogZWNzLkVDU0NsaWVudCwgdGFza0RlZmluaXRpb25OYW1lOiBzdHJpbmcpID0+IHtcbiAgY29uc3QgdGFza0RlZmluaXRpb25zID0gYXdhaXQgZWNzQ2xpZW50LnNlbmQobmV3IGVjcy5MaXN0VGFza0RlZmluaXRpb25zQ29tbWFuZCh7IHN0YXR1czogZWNzLlRhc2tEZWZpbml0aW9uU3RhdHVzLkFDVElWRSB9KSk7XG4gIGZvciAoY29uc3QgdGFza0RlZmluaXRpb24gb2YgdGFza0RlZmluaXRpb25zLnRhc2tEZWZpbml0aW9uQXJucyA/PyBbXSkge1xuICAgIGlmICh0YXNrRGVmaW5pdGlvbi5pbmNsdWRlcyh0YXNrRGVmaW5pdGlvbk5hbWUpKSB7XG4gICAgICByZXR1cm4gdGFza0RlZmluaXRpb247XG4gICAgfVxuICB9XG4gIHRocm93IG5ldyBFcnJvcignTm8gdGFzayBkZWZpbml0aW9uIGZvdW5kJyk7XG59O1xuXG5jb25zdCBnZXRSZXF1aXJlZEVudlZhciA9IChlbnZWYXI6IHN0cmluZykgPT4ge1xuICBjb25zdCB2YWx1ZSA9IHByb2Nlc3MuZW52W2VudlZhcl07XG4gIGlmICghdmFsdWUpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoYE1pc3NpbmcgcmVxdWlyZWQgZW52aXJvbm1lbnQgdmFyaWFibGU6ICR7ZW52VmFyfWApO1xuICB9XG4gIHJldHVybiB2YWx1ZTtcbn07Il19
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.handler = void 0;
|
|
4
|
-
const handler = async (event) => {
|
|
5
|
-
try {
|
|
6
|
-
// Parse and write one log per event/email
|
|
7
|
-
const perEmailEvents = event.Records.map(({ Sns, ...rest }) => ({
|
|
8
|
-
...event,
|
|
9
|
-
Records: undefined,
|
|
10
|
-
Record: {
|
|
11
|
-
...rest,
|
|
12
|
-
Sns: {
|
|
13
|
-
...Sns,
|
|
14
|
-
Message: JSON.parse(Sns.Message),
|
|
15
|
-
},
|
|
16
|
-
},
|
|
17
|
-
}));
|
|
18
|
-
perEmailEvents.forEach((perEmailEvent) => {
|
|
19
|
-
console.log(perEmailEvent);
|
|
20
|
-
});
|
|
21
|
-
}
|
|
22
|
-
catch (err) {
|
|
23
|
-
console.error(err);
|
|
24
|
-
console.log(event);
|
|
25
|
-
}
|
|
26
|
-
};
|
|
27
|
-
exports.handler = handler;
|
|
28
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VzLWxvZ2dlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9zZXMvbGFtYmRhL3Nlcy1sb2dnZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBRU8sTUFBTSxPQUFPLEdBQUcsS0FBSyxFQUFFLEtBQWUsRUFBRSxFQUFFO0lBQy9DLElBQUksQ0FBQztRQUNILDBDQUEwQztRQUMxQyxNQUFNLGNBQWMsR0FBRyxLQUFLLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQUUsR0FBRyxFQUFFLEdBQUcsSUFBSSxFQUFFLEVBQUUsRUFBRSxDQUFDLENBQUM7WUFDOUQsR0FBRyxLQUFLO1lBQ1IsT0FBTyxFQUFFLFNBQVM7WUFDbEIsTUFBTSxFQUFFO2dCQUNOLEdBQUcsSUFBSTtnQkFDUCxHQUFHLEVBQUU7b0JBQ0gsR0FBRyxHQUFHO29CQUNOLE9BQU8sRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQVc7aUJBQzNDO2FBQ0Y7U0FDRixDQUFDLENBQUMsQ0FBQztRQUNKLGNBQWMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxhQUFhLEVBQUUsRUFBRTtZQUN2QyxPQUFPLENBQUMsR0FBRyxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBQzdCLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUFDLE9BQU8sR0FBRyxFQUFFLENBQUM7UUFDYixPQUFPLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ25CLE9BQU8sQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDckIsQ0FBQztBQUNILENBQUMsQ0FBQztBQXJCVyxRQUFBLE9BQU8sV0FxQmxCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgU05TRXZlbnQgfSBmcm9tICdhd3MtbGFtYmRhJztcblxuZXhwb3J0IGNvbnN0IGhhbmRsZXIgPSBhc3luYyAoZXZlbnQ6IFNOU0V2ZW50KSA9PiB7XG4gIHRyeSB7XG4gICAgLy8gUGFyc2UgYW5kIHdyaXRlIG9uZSBsb2cgcGVyIGV2ZW50L2VtYWlsXG4gICAgY29uc3QgcGVyRW1haWxFdmVudHMgPSBldmVudC5SZWNvcmRzLm1hcCgoeyBTbnMsIC4uLnJlc3QgfSkgPT4gKHtcbiAgICAgIC4uLmV2ZW50LFxuICAgICAgUmVjb3JkczogdW5kZWZpbmVkLFxuICAgICAgUmVjb3JkOiB7XG4gICAgICAgIC4uLnJlc3QsXG4gICAgICAgIFNuczoge1xuICAgICAgICAgIC4uLlNucyxcbiAgICAgICAgICBNZXNzYWdlOiBKU09OLnBhcnNlKFNucy5NZXNzYWdlKSBhcyBvYmplY3QsXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgIH0pKTtcbiAgICBwZXJFbWFpbEV2ZW50cy5mb3JFYWNoKChwZXJFbWFpbEV2ZW50KSA9PiB7XG4gICAgICBjb25zb2xlLmxvZyhwZXJFbWFpbEV2ZW50KTtcbiAgICB9KTtcbiAgfSBjYXRjaCAoZXJyKSB7XG4gICAgY29uc29sZS5lcnJvcihlcnIpO1xuICAgIGNvbnNvbGUubG9nKGV2ZW50KTtcbiAgfVxufTtcbiJdfQ==
|