cloudstructs 0.4.16 → 0.4.20
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/.gitattributes +1 -0
- package/.jsii +10 -10
- package/assets/slack-textract/detect.lambda/index.js +5 -2
- package/assets/toolkit-cleaner/clean-images.lambda/index.js +7 -1
- package/assets/toolkit-cleaner/clean-objects.lambda/index.js +9 -2
- package/assets/toolkit-cleaner/extract-template-hashes.lambda/index.js +45 -0
- package/changelog.md +1 -1
- package/lib/codecommit-mirror/index.d.ts +14 -39
- package/lib/codecommit-mirror/index.js +10 -19
- package/lib/ecs-service-roller/index.d.ts +10 -30
- package/lib/ecs-service-roller/index.js +7 -18
- package/lib/email-receiver/receiver.d.ts +7 -23
- package/lib/email-receiver/receiver.js +4 -8
- package/lib/saml-identity-provider/index.d.ts +6 -17
- package/lib/saml-identity-provider/index.js +5 -11
- package/lib/slack-app/manifest.d.ts +52 -133
- package/lib/slack-app/manifest.js +15 -12
- package/lib/slack-app/slack-app.d.ts +21 -53
- package/lib/slack-app/slack-app.js +8 -20
- package/lib/slack-events/index.d.ts +6 -19
- package/lib/slack-events/index.js +3 -8
- package/lib/slack-textract/index.d.ts +3 -16
- package/lib/slack-textract/index.js +3 -8
- package/lib/state-machine-cr-provider/index.d.ts +7 -23
- package/lib/state-machine-cr-provider/index.js +3 -8
- package/lib/static-website/index.d.ts +14 -36
- package/lib/static-website/index.js +5 -12
- package/lib/toolkit-cleaner/clean-images.lambda.js +8 -2
- package/lib/toolkit-cleaner/clean-objects.lambda.js +10 -3
- package/lib/toolkit-cleaner/extract-template-hashes-function.d.ts +13 -0
- package/lib/toolkit-cleaner/extract-template-hashes-function.js +23 -0
- package/lib/toolkit-cleaner/extract-template-hashes.lambda.d.ts +1 -0
- package/lib/toolkit-cleaner/extract-template-hashes.lambda.js +17 -0
- package/lib/toolkit-cleaner/index.d.ts +5 -18
- package/lib/toolkit-cleaner/index.js +15 -19
- package/lib/url-shortener/index.d.ts +9 -25
- package/lib/url-shortener/index.js +3 -8
- package/node_modules/@slack/logger/node_modules/@types/node/README.md +1 -1
- package/node_modules/@slack/logger/node_modules/@types/node/buffer.d.ts +91 -1
- package/node_modules/@slack/logger/node_modules/@types/node/package.json +2 -2
- package/node_modules/@slack/logger/node_modules/@types/node/url.d.ts +10 -6
- package/node_modules/@slack/web-api/node_modules/@types/node/README.md +1 -1
- package/node_modules/@slack/web-api/node_modules/@types/node/buffer.d.ts +91 -1
- package/node_modules/@slack/web-api/node_modules/@types/node/package.json +2 -2
- package/node_modules/@slack/web-api/node_modules/@types/node/url.d.ts +10 -6
- package/node_modules/@types/cacheable-request/node_modules/@types/node/README.md +1 -1
- package/node_modules/@types/cacheable-request/node_modules/@types/node/buffer.d.ts +91 -1
- package/node_modules/@types/cacheable-request/node_modules/@types/node/package.json +2 -2
- package/node_modules/@types/cacheable-request/node_modules/@types/node/url.d.ts +10 -6
- package/node_modules/@types/is-stream/node_modules/@types/node/README.md +1 -1
- package/node_modules/@types/is-stream/node_modules/@types/node/buffer.d.ts +91 -1
- package/node_modules/@types/is-stream/node_modules/@types/node/package.json +2 -2
- package/node_modules/@types/is-stream/node_modules/@types/node/url.d.ts +10 -6
- package/node_modules/@types/keyv/node_modules/@types/node/README.md +1 -1
- package/node_modules/@types/keyv/node_modules/@types/node/buffer.d.ts +91 -1
- package/node_modules/@types/keyv/node_modules/@types/node/package.json +2 -2
- package/node_modules/@types/keyv/node_modules/@types/node/url.d.ts +10 -6
- package/node_modules/@types/responselike/node_modules/@types/node/README.md +1 -1
- package/node_modules/@types/responselike/node_modules/@types/node/buffer.d.ts +91 -1
- package/node_modules/@types/responselike/node_modules/@types/node/package.json +2 -2
- package/node_modules/@types/responselike/node_modules/@types/node/url.d.ts +10 -6
- package/node_modules/follow-redirects/index.js +7 -3
- package/node_modules/follow-redirects/package.json +1 -1
- package/node_modules/keyv/.nyc_output/{adb04494-7d0a-443f-9130-94b19c3fa19c.json → 5d6b8dd1-67cf-42ee-8492-c8ae62ce826c.json} +0 -0
- package/node_modules/keyv/.nyc_output/{17c338d1-cd21-4d2f-9d97-398f18a945cf.json → ce27532e-5888-46d4-ae10-5a71058d3f0c.json} +0 -0
- package/node_modules/keyv/.nyc_output/processinfo/5d6b8dd1-67cf-42ee-8492-c8ae62ce826c.json +1 -0
- package/node_modules/keyv/.nyc_output/processinfo/ce27532e-5888-46d4-ae10-5a71058d3f0c.json +1 -0
- package/node_modules/keyv/.nyc_output/processinfo/index.json +1 -1
- package/node_modules/keyv/package.json +7 -7
- package/node_modules/keyv/test/testdb.sqlite +0 -0
- package/package.json +8 -6
- package/releasetag.txt +1 -1
- package/version.txt +1 -1
- package/node_modules/keyv/.nyc_output/67b1f344-0eec-41a3-a665-c824c346e898.json +0 -1
- package/node_modules/keyv/.nyc_output/processinfo/17c338d1-cd21-4d2f-9d97-398f18a945cf.json +0 -1
- package/node_modules/keyv/.nyc_output/processinfo/67b1f344-0eec-41a3-a665-c824c346e898.json +0 -1
- package/node_modules/keyv/.nyc_output/processinfo/adb04494-7d0a-443f-9130-94b19c3fa19c.json +0 -1
package/.gitattributes
CHANGED
|
@@ -25,6 +25,7 @@
|
|
|
25
25
|
/src/slack-textract/detect-function.ts linguist-generated
|
|
26
26
|
/src/toolkit-cleaner/clean-images-function.ts linguist-generated
|
|
27
27
|
/src/toolkit-cleaner/clean-objects-function.ts linguist-generated
|
|
28
|
+
/src/toolkit-cleaner/extract-template-hashes-function.ts linguist-generated
|
|
28
29
|
/src/toolkit-cleaner/get-stack-names-function.ts linguist-generated
|
|
29
30
|
/src/url-shortener/shortener-function.ts linguist-generated
|
|
30
31
|
/tsconfig.dev.json linguist-generated
|
package/.jsii
CHANGED
|
@@ -2844,7 +2844,7 @@
|
|
|
2844
2844
|
"stability": "stable"
|
|
2845
2845
|
},
|
|
2846
2846
|
"homepage": "https://github.com/jogold/cloudstructs.git",
|
|
2847
|
-
"jsiiVersion": "1.
|
|
2847
|
+
"jsiiVersion": "1.54.0 (build b1b977a)",
|
|
2848
2848
|
"keywords": [
|
|
2849
2849
|
"cdk"
|
|
2850
2850
|
],
|
|
@@ -5816,7 +5816,7 @@
|
|
|
5816
5816
|
},
|
|
5817
5817
|
"locationInModule": {
|
|
5818
5818
|
"filename": "src/toolkit-cleaner/index.ts",
|
|
5819
|
-
"line":
|
|
5819
|
+
"line": 53
|
|
5820
5820
|
},
|
|
5821
5821
|
"parameters": [
|
|
5822
5822
|
{
|
|
@@ -5843,7 +5843,7 @@
|
|
|
5843
5843
|
"kind": "class",
|
|
5844
5844
|
"locationInModule": {
|
|
5845
5845
|
"filename": "src/toolkit-cleaner/index.ts",
|
|
5846
|
-
"line":
|
|
5846
|
+
"line": 52
|
|
5847
5847
|
},
|
|
5848
5848
|
"name": "ToolkitCleaner",
|
|
5849
5849
|
"symbolId": "src/toolkit-cleaner/index:ToolkitCleaner"
|
|
@@ -5859,7 +5859,7 @@
|
|
|
5859
5859
|
"kind": "interface",
|
|
5860
5860
|
"locationInModule": {
|
|
5861
5861
|
"filename": "src/toolkit-cleaner/index.ts",
|
|
5862
|
-
"line":
|
|
5862
|
+
"line": 19
|
|
5863
5863
|
},
|
|
5864
5864
|
"name": "ToolkitCleanerProps",
|
|
5865
5865
|
"properties": [
|
|
@@ -5872,7 +5872,7 @@
|
|
|
5872
5872
|
"immutable": true,
|
|
5873
5873
|
"locationInModule": {
|
|
5874
5874
|
"filename": "src/toolkit-cleaner/index.ts",
|
|
5875
|
-
"line":
|
|
5875
|
+
"line": 39
|
|
5876
5876
|
},
|
|
5877
5877
|
"name": "dryRun",
|
|
5878
5878
|
"optional": true,
|
|
@@ -5890,7 +5890,7 @@
|
|
|
5890
5890
|
"immutable": true,
|
|
5891
5891
|
"locationInModule": {
|
|
5892
5892
|
"filename": "src/toolkit-cleaner/index.ts",
|
|
5893
|
-
"line":
|
|
5893
|
+
"line": 46
|
|
5894
5894
|
},
|
|
5895
5895
|
"name": "retainAssetsNewerThan",
|
|
5896
5896
|
"optional": true,
|
|
@@ -5908,7 +5908,7 @@
|
|
|
5908
5908
|
"immutable": true,
|
|
5909
5909
|
"locationInModule": {
|
|
5910
5910
|
"filename": "src/toolkit-cleaner/index.ts",
|
|
5911
|
-
"line":
|
|
5911
|
+
"line": 25
|
|
5912
5912
|
},
|
|
5913
5913
|
"name": "schedule",
|
|
5914
5914
|
"optional": true,
|
|
@@ -5927,7 +5927,7 @@
|
|
|
5927
5927
|
"immutable": true,
|
|
5928
5928
|
"locationInModule": {
|
|
5929
5929
|
"filename": "src/toolkit-cleaner/index.ts",
|
|
5930
|
-
"line":
|
|
5930
|
+
"line": 33
|
|
5931
5931
|
},
|
|
5932
5932
|
"name": "scheduleEnabled",
|
|
5933
5933
|
"optional": true,
|
|
@@ -6088,6 +6088,6 @@
|
|
|
6088
6088
|
"symbolId": "src/url-shortener/index:UrlShortenerProps"
|
|
6089
6089
|
}
|
|
6090
6090
|
},
|
|
6091
|
-
"version": "0.4.
|
|
6092
|
-
"fingerprint": "
|
|
6091
|
+
"version": "0.4.20",
|
|
6092
|
+
"fingerprint": "S0pnPVlyzmLP0xrQBlVIU0fK4eY8XRO8nRZz7Ypg4rY="
|
|
6093
6093
|
}
|
|
@@ -2540,7 +2540,7 @@ var require_follow_redirects = __commonJS({
|
|
|
2540
2540
|
this._isRedirect = true;
|
|
2541
2541
|
var redirectUrlParts = url.parse(redirectUrl);
|
|
2542
2542
|
Object.assign(this._options, redirectUrlParts);
|
|
2543
|
-
if (
|
|
2543
|
+
if (redirectUrlParts.protocol !== currentUrlParts.protocol || !isSameOrSubdomain(redirectUrlParts.host, currentHost)) {
|
|
2544
2544
|
removeMatchingHeaders(/^(?:authorization|cookie)$/i, this._options.headers);
|
|
2545
2545
|
}
|
|
2546
2546
|
if (typeof this._options.beforeRedirect === "function") {
|
|
@@ -2665,7 +2665,10 @@ var require_follow_redirects = __commonJS({
|
|
|
2665
2665
|
request.on("error", noop);
|
|
2666
2666
|
request.abort();
|
|
2667
2667
|
}
|
|
2668
|
-
function
|
|
2668
|
+
function isSameOrSubdomain(subdomain, domain) {
|
|
2669
|
+
if (subdomain === domain) {
|
|
2670
|
+
return true;
|
|
2671
|
+
}
|
|
2669
2672
|
const dot = subdomain.length - domain.length - 1;
|
|
2670
2673
|
return dot > 0 && subdomain[dot] === "." && subdomain.endsWith(domain);
|
|
2671
2674
|
}
|
|
@@ -43,8 +43,14 @@ async function handler(assetHashes) {
|
|
|
43
43
|
nextToken
|
|
44
44
|
}).promise();
|
|
45
45
|
const toDelete = (_a = response.imageDetails) == null ? void 0 : _a.filter((x) => {
|
|
46
|
-
|
|
46
|
+
if (!x.imageTags) {
|
|
47
|
+
return false;
|
|
48
|
+
}
|
|
49
|
+
let pred = !assetHashes.includes(x.imageTags[0]);
|
|
47
50
|
if (process.env.RETAIN_MILLISECONDS) {
|
|
51
|
+
if (!x.imagePushedAt) {
|
|
52
|
+
return false;
|
|
53
|
+
}
|
|
48
54
|
const limitDate = new Date(Date.now() - parseInt(process.env.RETAIN_MILLISECONDS));
|
|
49
55
|
pred = pred && x.imagePushedAt && x.imagePushedAt < limitDate;
|
|
50
56
|
}
|
|
@@ -49,10 +49,17 @@ async function handler(assetHashes) {
|
|
|
49
49
|
ContinuationToken: nextToken
|
|
50
50
|
}).promise();
|
|
51
51
|
const toDelete = (_a = response.Contents) == null ? void 0 : _a.filter((x) => {
|
|
52
|
-
|
|
52
|
+
if (!x.Key) {
|
|
53
|
+
return false;
|
|
54
|
+
}
|
|
55
|
+
const hash = path.basename(x.Key, path.extname(x.Key));
|
|
56
|
+
let pred = !assetHashes.includes(hash);
|
|
53
57
|
if (process.env.RETAIN_MILLISECONDS) {
|
|
58
|
+
if (!x.LastModified) {
|
|
59
|
+
return false;
|
|
60
|
+
}
|
|
54
61
|
const limitDate = new Date(Date.now() - parseInt(process.env.RETAIN_MILLISECONDS));
|
|
55
|
-
pred = pred && x.LastModified
|
|
62
|
+
pred = pred && x.LastModified < limitDate;
|
|
56
63
|
}
|
|
57
64
|
return pred;
|
|
58
65
|
});
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
var __defProp = Object.defineProperty;
|
|
2
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
3
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
4
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
5
|
+
var __markAsModule = (target) => __defProp(target, "__esModule", { value: true });
|
|
6
|
+
var __export = (target, all) => {
|
|
7
|
+
for (var name in all)
|
|
8
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
9
|
+
};
|
|
10
|
+
var __reExport = (target, module2, copyDefault, desc) => {
|
|
11
|
+
if (module2 && typeof module2 === "object" || typeof module2 === "function") {
|
|
12
|
+
for (let key of __getOwnPropNames(module2))
|
|
13
|
+
if (!__hasOwnProp.call(target, key) && (copyDefault || key !== "default"))
|
|
14
|
+
__defProp(target, key, { get: () => module2[key], enumerable: !(desc = __getOwnPropDesc(module2, key)) || desc.enumerable });
|
|
15
|
+
}
|
|
16
|
+
return target;
|
|
17
|
+
};
|
|
18
|
+
var __toCommonJS = /* @__PURE__ */ ((cache) => {
|
|
19
|
+
return (module2, temp) => {
|
|
20
|
+
return cache && cache.get(module2) || (temp = __reExport(__markAsModule({}), module2, 1), cache && cache.set(module2, temp), temp);
|
|
21
|
+
};
|
|
22
|
+
})(typeof WeakMap !== "undefined" ? /* @__PURE__ */ new WeakMap() : 0);
|
|
23
|
+
|
|
24
|
+
// src/toolkit-cleaner/extract-template-hashes.lambda.ts
|
|
25
|
+
var extract_template_hashes_lambda_exports = {};
|
|
26
|
+
__export(extract_template_hashes_lambda_exports, {
|
|
27
|
+
handler: () => handler
|
|
28
|
+
});
|
|
29
|
+
var import_aws_sdk = require("aws-sdk");
|
|
30
|
+
var cloudFormation = new import_aws_sdk.CloudFormation();
|
|
31
|
+
async function handler(stackName) {
|
|
32
|
+
const template = await cloudFormation.getTemplate({
|
|
33
|
+
StackName: stackName
|
|
34
|
+
}).promise();
|
|
35
|
+
if (!template.TemplateBody) {
|
|
36
|
+
return [];
|
|
37
|
+
}
|
|
38
|
+
const hashes = template.TemplateBody.match(/[a-f0-9]{64}/g);
|
|
39
|
+
return [...new Set(hashes)];
|
|
40
|
+
}
|
|
41
|
+
module.exports = __toCommonJS(extract_template_hashes_lambda_exports);
|
|
42
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
43
|
+
0 && (module.exports = {
|
|
44
|
+
handler
|
|
45
|
+
});
|
package/changelog.md
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
|
|
2
|
-
### [0.4.
|
|
2
|
+
### [0.4.20](https://github.com/jogold/cloudstructs/compare/v0.4.19...v0.4.20) (2022-02-17)
|
|
@@ -3,91 +3,66 @@ import * as ecs from 'aws-cdk-lib/aws-ecs';
|
|
|
3
3
|
import * as events from 'aws-cdk-lib/aws-events';
|
|
4
4
|
import { Construct } from 'constructs';
|
|
5
5
|
/**
|
|
6
|
-
* Properties for a CodeCommitMirror
|
|
7
|
-
*
|
|
8
|
-
* @stability stable
|
|
6
|
+
* Properties for a CodeCommitMirror
|
|
9
7
|
*/
|
|
10
8
|
export interface CodeCommitMirrorProps {
|
|
11
9
|
/**
|
|
12
|
-
* The source repository
|
|
13
|
-
*
|
|
14
|
-
* @stability stable
|
|
10
|
+
* The source repository
|
|
15
11
|
*/
|
|
16
12
|
readonly repository: CodeCommitMirrorSourceRepository;
|
|
17
13
|
/**
|
|
18
|
-
* The ECS cluster where to run the mirroring operation
|
|
19
|
-
*
|
|
20
|
-
* @stability stable
|
|
14
|
+
* The ECS cluster where to run the mirroring operation
|
|
21
15
|
*/
|
|
22
16
|
readonly cluster: ecs.ICluster;
|
|
23
17
|
/**
|
|
24
|
-
* The schedule for the mirroring operation
|
|
18
|
+
* The schedule for the mirroring operation
|
|
25
19
|
*
|
|
26
20
|
* @default - everyday at midnight
|
|
27
|
-
* @stability stable
|
|
28
21
|
*/
|
|
29
22
|
readonly schedule?: events.Schedule;
|
|
30
23
|
/**
|
|
31
|
-
* Where to run the mirroring Fargate tasks
|
|
24
|
+
* Where to run the mirroring Fargate tasks
|
|
32
25
|
*
|
|
33
26
|
* @default - public subnets
|
|
34
|
-
* @stability stable
|
|
35
27
|
*/
|
|
36
28
|
readonly subnetSelection?: ec2.SubnetSelection;
|
|
37
29
|
}
|
|
38
30
|
/**
|
|
39
|
-
* A source repository for AWS CodeCommit mirroring
|
|
40
|
-
*
|
|
41
|
-
* @stability stable
|
|
31
|
+
* A source repository for AWS CodeCommit mirroring
|
|
42
32
|
*/
|
|
43
33
|
export declare abstract class CodeCommitMirrorSourceRepository {
|
|
44
34
|
/**
|
|
45
|
-
* Public GitHub repository
|
|
46
|
-
*
|
|
47
|
-
* @stability stable
|
|
35
|
+
* Public GitHub repository
|
|
48
36
|
*/
|
|
49
37
|
static gitHub(owner: string, name: string): CodeCommitMirrorSourceRepository;
|
|
50
38
|
/**
|
|
51
|
-
* Private repository with HTTPS clone URL stored in a AWS Secrets Manager secret or
|
|
39
|
+
* Private repository with HTTPS clone URL stored in a AWS Secrets Manager secret or
|
|
40
|
+
* a AWS Systems Manager secure string parameter.
|
|
52
41
|
*
|
|
53
|
-
* @param name the repository name
|
|
54
|
-
* @param url the secret containing the HTTPS clone URL
|
|
55
|
-
* @stability stable
|
|
42
|
+
* @param name the repository name
|
|
43
|
+
* @param url the secret containing the HTTPS clone URL
|
|
56
44
|
*/
|
|
57
45
|
static private(name: string, url: ecs.Secret): CodeCommitMirrorSourceRepository;
|
|
58
46
|
/**
|
|
59
|
-
* The name of the repository
|
|
60
|
-
*
|
|
61
|
-
* @stability stable
|
|
47
|
+
* The name of the repository
|
|
62
48
|
*/
|
|
63
49
|
abstract readonly name: string;
|
|
64
|
-
/**
|
|
65
|
-
* The HTTPS clone URL in plain text, used for a public repository.
|
|
66
|
-
*
|
|
67
|
-
* @stability stable
|
|
68
|
-
*/
|
|
50
|
+
/** The HTTPS clone URL in plain text, used for a public repository */
|
|
69
51
|
abstract readonly plainTextUrl?: string;
|
|
70
52
|
/**
|
|
71
53
|
* The HTTPS clone URL if the repository is private.
|
|
72
54
|
*
|
|
73
55
|
* The secret should contain the username and/or token.
|
|
74
56
|
*
|
|
75
|
-
* @stability stable
|
|
76
57
|
* @example
|
|
77
|
-
*
|
|
78
58
|
* `https://TOKEN@github.com/owner/name`
|
|
79
59
|
* `https://USERNAME:TOKEN@bitbucket.org/owner/name.git`
|
|
80
60
|
*/
|
|
81
61
|
abstract readonly secretUrl?: ecs.Secret;
|
|
82
62
|
}
|
|
83
63
|
/**
|
|
84
|
-
* Mirror a repository to AWS CodeCommit on schedule
|
|
85
|
-
*
|
|
86
|
-
* @stability stable
|
|
64
|
+
* Mirror a repository to AWS CodeCommit on schedule
|
|
87
65
|
*/
|
|
88
66
|
export declare class CodeCommitMirror extends Construct {
|
|
89
|
-
/**
|
|
90
|
-
* @stability stable
|
|
91
|
-
*/
|
|
92
67
|
constructor(scope: Construct, id: string, props: CodeCommitMirrorProps);
|
|
93
68
|
}
|
|
@@ -13,15 +13,11 @@ const iam = require("aws-cdk-lib/aws-iam");
|
|
|
13
13
|
const logs = require("aws-cdk-lib/aws-logs");
|
|
14
14
|
const constructs_1 = require("constructs");
|
|
15
15
|
/**
|
|
16
|
-
* A source repository for AWS CodeCommit mirroring
|
|
17
|
-
*
|
|
18
|
-
* @stability stable
|
|
16
|
+
* A source repository for AWS CodeCommit mirroring
|
|
19
17
|
*/
|
|
20
18
|
class CodeCommitMirrorSourceRepository {
|
|
21
19
|
/**
|
|
22
|
-
* Public GitHub repository
|
|
23
|
-
*
|
|
24
|
-
* @stability stable
|
|
20
|
+
* Public GitHub repository
|
|
25
21
|
*/
|
|
26
22
|
static gitHub(owner, name) {
|
|
27
23
|
return {
|
|
@@ -30,11 +26,11 @@ class CodeCommitMirrorSourceRepository {
|
|
|
30
26
|
};
|
|
31
27
|
}
|
|
32
28
|
/**
|
|
33
|
-
* Private repository with HTTPS clone URL stored in a AWS Secrets Manager secret or
|
|
29
|
+
* Private repository with HTTPS clone URL stored in a AWS Secrets Manager secret or
|
|
30
|
+
* a AWS Systems Manager secure string parameter.
|
|
34
31
|
*
|
|
35
|
-
* @param name the repository name
|
|
36
|
-
* @param url the secret containing the HTTPS clone URL
|
|
37
|
-
* @stability stable
|
|
32
|
+
* @param name the repository name
|
|
33
|
+
* @param url the secret containing the HTTPS clone URL
|
|
38
34
|
*/
|
|
39
35
|
static private(name, url) {
|
|
40
36
|
return {
|
|
@@ -45,16 +41,11 @@ class CodeCommitMirrorSourceRepository {
|
|
|
45
41
|
}
|
|
46
42
|
exports.CodeCommitMirrorSourceRepository = CodeCommitMirrorSourceRepository;
|
|
47
43
|
_a = JSII_RTTI_SYMBOL_1;
|
|
48
|
-
CodeCommitMirrorSourceRepository[_a] = { fqn: "cloudstructs.CodeCommitMirrorSourceRepository", version: "0.4.
|
|
44
|
+
CodeCommitMirrorSourceRepository[_a] = { fqn: "cloudstructs.CodeCommitMirrorSourceRepository", version: "0.4.20" };
|
|
49
45
|
/**
|
|
50
|
-
* Mirror a repository to AWS CodeCommit on schedule
|
|
51
|
-
*
|
|
52
|
-
* @stability stable
|
|
46
|
+
* Mirror a repository to AWS CodeCommit on schedule
|
|
53
47
|
*/
|
|
54
48
|
class CodeCommitMirror extends constructs_1.Construct {
|
|
55
|
-
/**
|
|
56
|
-
* @stability stable
|
|
57
|
-
*/
|
|
58
49
|
constructor(scope, id, props) {
|
|
59
50
|
var _c, _d;
|
|
60
51
|
super(scope, id);
|
|
@@ -99,5 +90,5 @@ class CodeCommitMirror extends constructs_1.Construct {
|
|
|
99
90
|
}
|
|
100
91
|
exports.CodeCommitMirror = CodeCommitMirror;
|
|
101
92
|
_b = JSII_RTTI_SYMBOL_1;
|
|
102
|
-
CodeCommitMirror[_b] = { fqn: "cloudstructs.CodeCommitMirror", version: "0.4.
|
|
103
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
93
|
+
CodeCommitMirror[_b] = { fqn: "cloudstructs.CodeCommitMirror", version: "0.4.20" };
|
|
94
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvY29kZWNvbW1pdC1taXJyb3IvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSw2QkFBNkI7QUFDN0IseURBQXlEO0FBQ3pELDJDQUEyQztBQUMzQywyQ0FBMkM7QUFDM0MsaURBQWlEO0FBQ2pELDBEQUEwRDtBQUMxRCwyQ0FBMkM7QUFDM0MsNkNBQTZDO0FBQzdDLDJDQUF1QztBQStCdkM7O0dBRUc7QUFDSCxNQUFzQixnQ0FBZ0M7SUFDcEQ7O09BRUc7SUFDSSxNQUFNLENBQUMsTUFBTSxDQUFDLEtBQWEsRUFBRSxJQUFZO1FBQzlDLE9BQU87WUFDTCxJQUFJO1lBQ0osWUFBWSxFQUFFLHNCQUFzQixLQUFLLElBQUksSUFBSSxFQUFFO1NBQ3BELENBQUM7SUFDSixDQUFDO0lBRUQ7Ozs7OztPQU1HO0lBQ0ksTUFBTSxDQUFDLE9BQU8sQ0FBQyxJQUFZLEVBQUUsR0FBZTtRQUNqRCxPQUFPO1lBQ0wsSUFBSTtZQUNKLFNBQVMsRUFBRSxHQUFHO1NBQ2YsQ0FBQztJQUNKLENBQUM7O0FBdkJILDRFQTJDQzs7O0FBRUQ7O0dBRUc7QUFDSCxNQUFhLGdCQUFpQixTQUFRLHNCQUFTO0lBQzdDLFlBQVksS0FBZ0IsRUFBRSxFQUFVLEVBQUUsS0FBNEI7O1FBQ3BFLEtBQUssQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFFakIsTUFBTSxXQUFXLEdBQUcsSUFBSSxVQUFVLENBQUMsVUFBVSxDQUFDLElBQUksRUFBRSxZQUFZLEVBQUU7WUFDaEUsY0FBYyxFQUFFLEtBQUssQ0FBQyxVQUFVLENBQUMsSUFBSTtZQUNyQyxXQUFXLEVBQUUsYUFBYSxLQUFLLENBQUMsVUFBVSxDQUFDLElBQUksRUFBRTtTQUNsRCxDQUFDLENBQUM7UUFFSCxNQUFNLGNBQWMsR0FBRyxJQUFJLEdBQUcsQ0FBQyxxQkFBcUIsQ0FBQyxJQUFJLEVBQUUsZ0JBQWdCLENBQUMsQ0FBQztRQUU3RSxjQUFjLENBQUMsWUFBWSxDQUFDLFdBQVcsRUFBRTtZQUN2QyxLQUFLLEVBQUUsR0FBRyxDQUFDLGNBQWMsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxRQUFRLEVBQUUsbUJBQW1CLEVBQUUsUUFBUSxDQUFDLENBQUM7WUFDOUcsT0FBTyxFQUFFLElBQUksR0FBRyxDQUFDLFlBQVksQ0FBQztnQkFDNUIsWUFBWSxFQUFFLEtBQUssQ0FBQyxVQUFVLENBQUMsSUFBSTtnQkFDbkMsWUFBWSxFQUFFLElBQUksQ0FBQyxhQUFhLENBQUMsVUFBVTthQUM1QyxDQUFDO1lBQ0YsV0FBVyxFQUFFO2dCQUNYLElBQUksRUFBRSxLQUFLLENBQUMsVUFBVSxDQUFDLElBQUk7Z0JBQzNCLFdBQVcsRUFBRSxXQUFXLENBQUMscUJBQXFCO2dCQUM5QyxHQUFHLEtBQUssQ0FBQyxVQUFVLENBQUMsWUFBWTtvQkFDOUIsQ0FBQyxDQUFDLEVBQUUsTUFBTSxFQUFFLEtBQUssQ0FBQyxVQUFVLENBQUMsWUFBWSxFQUFFO29CQUMzQyxDQUFDLENBQUMsRUFBRTthQUNQO1lBQ0QsT0FBTyxFQUFFLEtBQUssQ0FBQyxVQUFVLENBQUMsU0FBUztnQkFDakMsQ0FBQyxDQUFDLEVBQUUsTUFBTSxFQUFFLEtBQUssQ0FBQyxVQUFVLENBQUMsU0FBUyxFQUFFO2dCQUN4QyxDQUFDLENBQUMsU0FBUztTQUNkLENBQUMsQ0FBQztRQUVILGNBQWMsQ0FBQyxtQkFBbUIsQ0FBQyxJQUFJLEdBQUcsQ0FBQyxlQUFlLENBQUM7WUFDekQsT0FBTyxFQUFFLENBQUMsb0JBQW9CLENBQUM7WUFDL0IsU0FBUyxFQUFFLENBQUMsV0FBVyxDQUFDLGFBQWEsQ0FBQztTQUN2QyxDQUFDLENBQUMsQ0FBQztRQUVKLE1BQU0sSUFBSSxHQUFHLElBQUksTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsTUFBTSxFQUFFO1lBQ3pDLFFBQVEsUUFBRSxLQUFLLENBQUMsUUFBUSxtQ0FBSSxNQUFNLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQztnQkFDL0MsTUFBTSxFQUFFLEdBQUc7Z0JBQ1gsSUFBSSxFQUFFLEdBQUc7YUFDVixDQUFDO1NBQ0gsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLE9BQU8sQ0FBQyxPQUFPLENBQUM7WUFDakMsT0FBTyxFQUFFLEtBQUssQ0FBQyxPQUFPO1lBQ3RCLGNBQWM7WUFDZCxlQUFlLFFBQUUsS0FBSyxDQUFDLGVBQWUsbUNBQUksRUFBRSxVQUFVLEVBQUUsR0FBRyxDQUFDLFVBQVUsQ0FBQyxNQUFNLEVBQUU7U0FDaEYsQ0FBQyxDQUFDLENBQUM7SUFDTixDQUFDOztBQTlDSCw0Q0ErQ0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBwYXRoIGZyb20gJ3BhdGgnO1xuaW1wb3J0ICogYXMgY29kZWNvbW1pdCBmcm9tICdhd3MtY2RrLWxpYi9hd3MtY29kZWNvbW1pdCc7XG5pbXBvcnQgKiBhcyBlYzIgZnJvbSAnYXdzLWNkay1saWIvYXdzLWVjMic7XG5pbXBvcnQgKiBhcyBlY3MgZnJvbSAnYXdzLWNkay1saWIvYXdzLWVjcyc7XG5pbXBvcnQgKiBhcyBldmVudHMgZnJvbSAnYXdzLWNkay1saWIvYXdzLWV2ZW50cyc7XG5pbXBvcnQgKiBhcyB0YXJnZXRzIGZyb20gJ2F3cy1jZGstbGliL2F3cy1ldmVudHMtdGFyZ2V0cyc7XG5pbXBvcnQgKiBhcyBpYW0gZnJvbSAnYXdzLWNkay1saWIvYXdzLWlhbSc7XG5pbXBvcnQgKiBhcyBsb2dzIGZyb20gJ2F3cy1jZGstbGliL2F3cy1sb2dzJztcbmltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gJ2NvbnN0cnVjdHMnO1xuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIGEgQ29kZUNvbW1pdE1pcnJvclxuICovXG5leHBvcnQgaW50ZXJmYWNlIENvZGVDb21taXRNaXJyb3JQcm9wcyB7XG4gIC8qKlxuICAgKiBUaGUgc291cmNlIHJlcG9zaXRvcnlcbiAgICovXG4gIHJlYWRvbmx5IHJlcG9zaXRvcnk6IENvZGVDb21taXRNaXJyb3JTb3VyY2VSZXBvc2l0b3J5O1xuXG4gIC8qKlxuICAgKiBUaGUgRUNTIGNsdXN0ZXIgd2hlcmUgdG8gcnVuIHRoZSBtaXJyb3Jpbmcgb3BlcmF0aW9uXG4gICAqL1xuICByZWFkb25seSBjbHVzdGVyOiBlY3MuSUNsdXN0ZXI7XG5cbiAgLyoqXG4gICAqIFRoZSBzY2hlZHVsZSBmb3IgdGhlIG1pcnJvcmluZyBvcGVyYXRpb25cbiAgICpcbiAgICogQGRlZmF1bHQgLSBldmVyeWRheSBhdCBtaWRuaWdodFxuICAgKi9cbiAgcmVhZG9ubHkgc2NoZWR1bGU/OiBldmVudHMuU2NoZWR1bGU7XG5cbiAgLyoqXG4gICAqIFdoZXJlIHRvIHJ1biB0aGUgbWlycm9yaW5nIEZhcmdhdGUgdGFza3NcbiAgICpcbiAgICogQGRlZmF1bHQgLSBwdWJsaWMgc3VibmV0c1xuICAgKi9cbiAgcmVhZG9ubHkgc3VibmV0U2VsZWN0aW9uPzogZWMyLlN1Ym5ldFNlbGVjdGlvbjtcbn1cblxuLyoqXG4gKiBBIHNvdXJjZSByZXBvc2l0b3J5IGZvciBBV1MgQ29kZUNvbW1pdCBtaXJyb3JpbmdcbiAqL1xuZXhwb3J0IGFic3RyYWN0IGNsYXNzIENvZGVDb21taXRNaXJyb3JTb3VyY2VSZXBvc2l0b3J5IHtcbiAgLyoqXG4gICAqIFB1YmxpYyBHaXRIdWIgcmVwb3NpdG9yeVxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBnaXRIdWIob3duZXI6IHN0cmluZywgbmFtZTogc3RyaW5nKTogQ29kZUNvbW1pdE1pcnJvclNvdXJjZVJlcG9zaXRvcnkge1xuICAgIHJldHVybiB7XG4gICAgICBuYW1lLFxuICAgICAgcGxhaW5UZXh0VXJsOiBgaHR0cHM6Ly9naXRodWIuY29tLyR7b3duZXJ9LyR7bmFtZX1gLFxuICAgIH07XG4gIH1cblxuICAvKipcbiAgICogUHJpdmF0ZSByZXBvc2l0b3J5IHdpdGggSFRUUFMgY2xvbmUgVVJMIHN0b3JlZCBpbiBhIEFXUyBTZWNyZXRzIE1hbmFnZXIgc2VjcmV0IG9yXG4gICAqIGEgQVdTIFN5c3RlbXMgTWFuYWdlciBzZWN1cmUgc3RyaW5nIHBhcmFtZXRlci5cbiAgICpcbiAgICogQHBhcmFtIG5hbWUgdGhlIHJlcG9zaXRvcnkgbmFtZVxuICAgKiBAcGFyYW0gdXJsIHRoZSBzZWNyZXQgY29udGFpbmluZyB0aGUgSFRUUFMgY2xvbmUgVVJMXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIHByaXZhdGUobmFtZTogc3RyaW5nLCB1cmw6IGVjcy5TZWNyZXQpOiBDb2RlQ29tbWl0TWlycm9yU291cmNlUmVwb3NpdG9yeSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIG5hbWUsXG4gICAgICBzZWNyZXRVcmw6IHVybCxcbiAgICB9O1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBuYW1lIG9mIHRoZSByZXBvc2l0b3J5XG4gICAqL1xuICBwdWJsaWMgYWJzdHJhY3QgcmVhZG9ubHkgbmFtZTogc3RyaW5nO1xuXG4gIC8qKiBUaGUgSFRUUFMgY2xvbmUgVVJMIGluIHBsYWluIHRleHQsIHVzZWQgZm9yIGEgcHVibGljIHJlcG9zaXRvcnkgKi9cbiAgcHVibGljIGFic3RyYWN0IHJlYWRvbmx5IHBsYWluVGV4dFVybD86IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIEhUVFBTIGNsb25lIFVSTCBpZiB0aGUgcmVwb3NpdG9yeSBpcyBwcml2YXRlLlxuICAgKlxuICAgKiBUaGUgc2VjcmV0IHNob3VsZCBjb250YWluIHRoZSB1c2VybmFtZSBhbmQvb3IgdG9rZW4uXG4gICAqXG4gICAqIEBleGFtcGxlXG4gICAqIGBodHRwczovL1RPS0VOQGdpdGh1Yi5jb20vb3duZXIvbmFtZWBcbiAgICogYGh0dHBzOi8vVVNFUk5BTUU6VE9LRU5AYml0YnVja2V0Lm9yZy9vd25lci9uYW1lLmdpdGBcbiAgICovXG4gIHB1YmxpYyBhYnN0cmFjdCByZWFkb25seSBzZWNyZXRVcmw/OiBlY3MuU2VjcmV0O1xufVxuXG4vKipcbiAqIE1pcnJvciBhIHJlcG9zaXRvcnkgdG8gQVdTIENvZGVDb21taXQgb24gc2NoZWR1bGVcbiAqL1xuZXhwb3J0IGNsYXNzIENvZGVDb21taXRNaXJyb3IgZXh0ZW5kcyBDb25zdHJ1Y3Qge1xuICBjb25zdHJ1Y3RvcihzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wczogQ29kZUNvbW1pdE1pcnJvclByb3BzKSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkKTtcblxuICAgIGNvbnN0IGRlc3RpbmF0aW9uID0gbmV3IGNvZGVjb21taXQuUmVwb3NpdG9yeSh0aGlzLCAnUmVwb3NpdG9yeScsIHtcbiAgICAgIHJlcG9zaXRvcnlOYW1lOiBwcm9wcy5yZXBvc2l0b3J5Lm5hbWUsXG4gICAgICBkZXNjcmlwdGlvbjogYE1pcnJvciBvZiAke3Byb3BzLnJlcG9zaXRvcnkubmFtZX1gLFxuICAgIH0pO1xuXG4gICAgY29uc3QgdGFza0RlZmluaXRpb24gPSBuZXcgZWNzLkZhcmdhdGVUYXNrRGVmaW5pdGlvbih0aGlzLCAnVGFza0RlZmluaXRpb24nKTtcblxuICAgIHRhc2tEZWZpbml0aW9uLmFkZENvbnRhaW5lcignQ29udGFpbmVyJywge1xuICAgICAgaW1hZ2U6IGVjcy5Db250YWluZXJJbWFnZS5mcm9tQXNzZXQocGF0aC5qb2luKF9fZGlybmFtZSwgJy4uJywgJy4uJywgJ2Fzc2V0cycsICdjb2RlY29tbWl0LW1pcnJvcicsICdkb2NrZXInKSksXG4gICAgICBsb2dnaW5nOiBuZXcgZWNzLkF3c0xvZ0RyaXZlcih7XG4gICAgICAgIHN0cmVhbVByZWZpeDogcHJvcHMucmVwb3NpdG9yeS5uYW1lLFxuICAgICAgICBsb2dSZXRlbnRpb246IGxvZ3MuUmV0ZW50aW9uRGF5cy5UV09fTU9OVEhTLFxuICAgICAgfSksXG4gICAgICBlbnZpcm9ubWVudDoge1xuICAgICAgICBOQU1FOiBwcm9wcy5yZXBvc2l0b3J5Lm5hbWUsXG4gICAgICAgIERFU1RJTkFUSU9OOiBkZXN0aW5hdGlvbi5yZXBvc2l0b3J5Q2xvbmVVcmxHcmMsXG4gICAgICAgIC4uLnByb3BzLnJlcG9zaXRvcnkucGxhaW5UZXh0VXJsXG4gICAgICAgICAgPyB7IFNPVVJDRTogcHJvcHMucmVwb3NpdG9yeS5wbGFpblRleHRVcmwgfVxuICAgICAgICAgIDoge30sXG4gICAgICB9LFxuICAgICAgc2VjcmV0czogcHJvcHMucmVwb3NpdG9yeS5zZWNyZXRVcmxcbiAgICAgICAgPyB7IFNPVVJDRTogcHJvcHMucmVwb3NpdG9yeS5zZWNyZXRVcmwgfVxuICAgICAgICA6IHVuZGVmaW5lZCxcbiAgICB9KTtcblxuICAgIHRhc2tEZWZpbml0aW9uLmFkZFRvVGFza1JvbGVQb2xpY3kobmV3IGlhbS5Qb2xpY3lTdGF0ZW1lbnQoe1xuICAgICAgYWN0aW9uczogWydjb2RlY29tbWl0OkdpdFB1c2gnXSxcbiAgICAgIHJlc291cmNlczogW2Rlc3RpbmF0aW9uLnJlcG9zaXRvcnlBcm5dLFxuICAgIH0pKTtcblxuICAgIGNvbnN0IHJ1bGUgPSBuZXcgZXZlbnRzLlJ1bGUodGhpcywgJ1J1bGUnLCB7XG4gICAgICBzY2hlZHVsZTogcHJvcHMuc2NoZWR1bGUgPz8gZXZlbnRzLlNjaGVkdWxlLmNyb24oe1xuICAgICAgICBtaW51dGU6ICcwJyxcbiAgICAgICAgaG91cjogJzAnLFxuICAgICAgfSksXG4gICAgfSk7XG5cbiAgICBydWxlLmFkZFRhcmdldChuZXcgdGFyZ2V0cy5FY3NUYXNrKHtcbiAgICAgIGNsdXN0ZXI6IHByb3BzLmNsdXN0ZXIsXG4gICAgICB0YXNrRGVmaW5pdGlvbixcbiAgICAgIHN1Ym5ldFNlbGVjdGlvbjogcHJvcHMuc3VibmV0U2VsZWN0aW9uID8/IHsgc3VibmV0VHlwZTogZWMyLlN1Ym5ldFR5cGUuUFVCTElDIH0sXG4gICAgfSkpO1xuICB9XG59XG4iXX0=
|
|
@@ -2,72 +2,52 @@ import * as ecs from 'aws-cdk-lib/aws-ecs';
|
|
|
2
2
|
import * as events from 'aws-cdk-lib/aws-events';
|
|
3
3
|
import { Construct } from 'constructs';
|
|
4
4
|
/**
|
|
5
|
-
* Properties for a EcsServiceRoller
|
|
6
|
-
*
|
|
7
|
-
* @stability stable
|
|
5
|
+
* Properties for a EcsServiceRoller
|
|
8
6
|
*/
|
|
9
7
|
export interface EcsServiceRollerProps {
|
|
10
8
|
/**
|
|
11
|
-
* The ECS cluster where the services run
|
|
12
|
-
*
|
|
13
|
-
* @stability stable
|
|
9
|
+
* The ECS cluster where the services run
|
|
14
10
|
*/
|
|
15
11
|
readonly cluster: ecs.ICluster;
|
|
16
12
|
/**
|
|
17
|
-
* The ECS service for which tasks should be rolled
|
|
18
|
-
*
|
|
19
|
-
* @stability stable
|
|
13
|
+
* The ECS service for which tasks should be rolled
|
|
20
14
|
*/
|
|
21
15
|
readonly service: ecs.IService;
|
|
22
16
|
/**
|
|
23
|
-
* The rule or schedule that should trigger a roll
|
|
17
|
+
* The rule or schedule that should trigger a roll
|
|
24
18
|
*
|
|
25
19
|
* @default - roll everyday at midnight
|
|
26
|
-
* @stability stable
|
|
27
20
|
*/
|
|
28
21
|
readonly trigger?: RollTrigger;
|
|
29
22
|
}
|
|
30
23
|
/**
|
|
31
|
-
* The rule or schedule that should trigger a roll
|
|
32
|
-
*
|
|
33
|
-
* @stability stable
|
|
24
|
+
* The rule or schedule that should trigger a roll
|
|
34
25
|
*/
|
|
35
26
|
export declare abstract class RollTrigger {
|
|
36
27
|
/**
|
|
37
|
-
* Schedule that should trigger a roll
|
|
38
|
-
*
|
|
39
|
-
* @stability stable
|
|
28
|
+
* Schedule that should trigger a roll
|
|
40
29
|
*/
|
|
41
30
|
static fromSchedule(schedule: events.Schedule): RollTrigger;
|
|
42
31
|
/**
|
|
43
|
-
* Rule that should trigger a roll
|
|
44
|
-
*
|
|
45
|
-
* @stability stable
|
|
32
|
+
* Rule that should trigger a roll
|
|
46
33
|
*/
|
|
47
34
|
static fromRule(rule: events.Rule): RollTrigger;
|
|
48
35
|
/**
|
|
49
|
-
* Roll schedule
|
|
36
|
+
* Roll schedule
|
|
50
37
|
*
|
|
51
38
|
* @default - roll everyday at midnight
|
|
52
|
-
* @stability stable
|
|
53
39
|
*/
|
|
54
40
|
abstract readonly schedule?: events.Schedule;
|
|
55
41
|
/**
|
|
56
|
-
* Roll rule
|
|
42
|
+
* Roll rule
|
|
57
43
|
*
|
|
58
44
|
* @default - roll everyday at midnight
|
|
59
|
-
* @stability stable
|
|
60
45
|
*/
|
|
61
46
|
abstract readonly rule?: events.Rule;
|
|
62
47
|
}
|
|
63
48
|
/**
|
|
64
|
-
* Roll your ECS service tasks on schedule or with a rule
|
|
65
|
-
*
|
|
66
|
-
* @stability stable
|
|
49
|
+
* Roll your ECS service tasks on schedule or with a rule
|
|
67
50
|
*/
|
|
68
51
|
export declare class EcsServiceRoller extends Construct {
|
|
69
|
-
/**
|
|
70
|
-
* @stability stable
|
|
71
|
-
*/
|
|
72
52
|
constructor(scope: Construct, id: string, props: EcsServiceRollerProps);
|
|
73
53
|
}
|
|
@@ -9,23 +9,17 @@ const targets = require("aws-cdk-lib/aws-events-targets");
|
|
|
9
9
|
const iam = require("aws-cdk-lib/aws-iam");
|
|
10
10
|
const constructs_1 = require("constructs");
|
|
11
11
|
/**
|
|
12
|
-
* The rule or schedule that should trigger a roll
|
|
13
|
-
*
|
|
14
|
-
* @stability stable
|
|
12
|
+
* The rule or schedule that should trigger a roll
|
|
15
13
|
*/
|
|
16
14
|
class RollTrigger {
|
|
17
15
|
/**
|
|
18
|
-
* Schedule that should trigger a roll
|
|
19
|
-
*
|
|
20
|
-
* @stability stable
|
|
16
|
+
* Schedule that should trigger a roll
|
|
21
17
|
*/
|
|
22
18
|
static fromSchedule(schedule) {
|
|
23
19
|
return { schedule };
|
|
24
20
|
}
|
|
25
21
|
/**
|
|
26
|
-
* Rule that should trigger a roll
|
|
27
|
-
*
|
|
28
|
-
* @stability stable
|
|
22
|
+
* Rule that should trigger a roll
|
|
29
23
|
*/
|
|
30
24
|
static fromRule(rule) {
|
|
31
25
|
return { rule };
|
|
@@ -33,16 +27,11 @@ class RollTrigger {
|
|
|
33
27
|
}
|
|
34
28
|
exports.RollTrigger = RollTrigger;
|
|
35
29
|
_a = JSII_RTTI_SYMBOL_1;
|
|
36
|
-
RollTrigger[_a] = { fqn: "cloudstructs.RollTrigger", version: "0.4.
|
|
30
|
+
RollTrigger[_a] = { fqn: "cloudstructs.RollTrigger", version: "0.4.20" };
|
|
37
31
|
/**
|
|
38
|
-
* Roll your ECS service tasks on schedule or with a rule
|
|
39
|
-
*
|
|
40
|
-
* @stability stable
|
|
32
|
+
* Roll your ECS service tasks on schedule or with a rule
|
|
41
33
|
*/
|
|
42
34
|
class EcsServiceRoller extends constructs_1.Construct {
|
|
43
|
-
/**
|
|
44
|
-
* @stability stable
|
|
45
|
-
*/
|
|
46
35
|
constructor(scope, id, props) {
|
|
47
36
|
var _c, _d, _e, _f;
|
|
48
37
|
super(scope, id);
|
|
@@ -75,5 +64,5 @@ class EcsServiceRoller extends constructs_1.Construct {
|
|
|
75
64
|
}
|
|
76
65
|
exports.EcsServiceRoller = EcsServiceRoller;
|
|
77
66
|
_b = JSII_RTTI_SYMBOL_1;
|
|
78
|
-
EcsServiceRoller[_b] = { fqn: "cloudstructs.EcsServiceRoller", version: "0.4.
|
|
79
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
67
|
+
EcsServiceRoller[_b] = { fqn: "cloudstructs.EcsServiceRoller", version: "0.4.20" };
|
|
68
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvZWNzLXNlcnZpY2Utcm9sbGVyL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsNkNBQW9DO0FBRXBDLGlEQUFpRDtBQUNqRCwwREFBMEQ7QUFDMUQsMkNBQTJDO0FBQzNDLDJDQUF1QztBQXdCdkM7O0dBRUc7QUFDSCxNQUFzQixXQUFXO0lBQy9COztPQUVHO0lBQ0ksTUFBTSxDQUFDLFlBQVksQ0FBQyxRQUF5QjtRQUNsRCxPQUFPLEVBQUUsUUFBUSxFQUFFLENBQUM7SUFDdEIsQ0FBQztJQUVEOztPQUVHO0lBQ0ksTUFBTSxDQUFDLFFBQVEsQ0FBQyxJQUFpQjtRQUN0QyxPQUFPLEVBQUUsSUFBSSxFQUFFLENBQUM7SUFDbEIsQ0FBQzs7QUFiSCxrQ0E0QkM7OztBQUVEOztHQUVHO0FBQ0gsTUFBYSxnQkFBaUIsU0FBUSxzQkFBUztJQUM3QyxZQUFZLEtBQWdCLEVBQUUsRUFBVSxFQUFFLEtBQTRCOztRQUNwRSxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBRWpCLE1BQU0sSUFBSSxlQUFHLEtBQUssQ0FBQyxPQUFPLDBDQUFFLElBQUksbUNBQUksSUFBSSxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxNQUFNLEVBQUU7WUFDaEUsUUFBUSxjQUFFLEtBQUssQ0FBQyxPQUFPLDBDQUFFLFFBQVEsbUNBQUksTUFBTSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUM7Z0JBQ3hELE1BQU0sRUFBRSxHQUFHO2dCQUNYLElBQUksRUFBRSxHQUFHO2FBQ1YsQ0FBQztTQUNILENBQUMsQ0FBQztRQUdILElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxPQUFPLENBQUMsTUFBTSxDQUFDO1lBQ2hDLE9BQU8sRUFBRSxLQUFLO1lBQ2QsTUFBTSxFQUFFLGVBQWU7WUFDdkIsVUFBVSxFQUFFO2dCQUNWLE9BQU8sRUFBRSxLQUFLLENBQUMsT0FBTyxDQUFDLFdBQVc7Z0JBQ2xDLE9BQU8sRUFBRSxLQUFLLENBQUMsT0FBTyxDQUFDLFdBQVc7Z0JBQ2xDLGtCQUFrQixFQUFFLElBQUk7YUFDTztZQUNqQyx1R0FBdUc7WUFDdkcsdUVBQXVFO1lBQ3ZFLGVBQWUsRUFBRSxJQUFJLEdBQUcsQ0FBQyxlQUFlLENBQUM7Z0JBQ3ZDLE9BQU8sRUFBRSxDQUFDLG1CQUFtQixDQUFDO2dCQUM5QixTQUFTLEVBQUUsQ0FBQyxtQkFBSyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxTQUFTLENBQUM7d0JBQ25DLE9BQU8sRUFBRSxLQUFLO3dCQUNkLFFBQVEsRUFBRSxTQUFTO3dCQUNuQixZQUFZLEVBQUUsR0FBRyxLQUFLLENBQUMsT0FBTyxDQUFDLFdBQVcsSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLFdBQVcsRUFBRTtxQkFDMUUsQ0FBQyxDQUFDO2FBQ0osQ0FBQztTQUNILENBQUMsQ0FBQyxDQUFDO0lBQ04sQ0FBQzs7QUEvQkgsNENBZ0NDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgU3RhY2sgfSBmcm9tICdhd3MtY2RrLWxpYic7XG5pbXBvcnQgKiBhcyBlY3MgZnJvbSAnYXdzLWNkay1saWIvYXdzLWVjcyc7XG5pbXBvcnQgKiBhcyBldmVudHMgZnJvbSAnYXdzLWNkay1saWIvYXdzLWV2ZW50cyc7XG5pbXBvcnQgKiBhcyB0YXJnZXRzIGZyb20gJ2F3cy1jZGstbGliL2F3cy1ldmVudHMtdGFyZ2V0cyc7XG5pbXBvcnQgKiBhcyBpYW0gZnJvbSAnYXdzLWNkay1saWIvYXdzLWlhbSc7XG5pbXBvcnQgeyBDb25zdHJ1Y3QgfSBmcm9tICdjb25zdHJ1Y3RzJztcblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciBhIEVjc1NlcnZpY2VSb2xsZXJcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBFY3NTZXJ2aWNlUm9sbGVyUHJvcHMge1xuICAvKipcbiAgICogVGhlIEVDUyBjbHVzdGVyIHdoZXJlIHRoZSBzZXJ2aWNlcyBydW5cbiAgICovXG4gIHJlYWRvbmx5IGNsdXN0ZXI6IGVjcy5JQ2x1c3RlcjtcblxuICAvKipcbiAgICogVGhlIEVDUyBzZXJ2aWNlIGZvciB3aGljaCB0YXNrcyBzaG91bGQgYmUgcm9sbGVkXG4gICAqL1xuICByZWFkb25seSBzZXJ2aWNlOiBlY3MuSVNlcnZpY2U7XG5cbiAgLyoqXG4gICAqIFRoZSBydWxlIG9yIHNjaGVkdWxlIHRoYXQgc2hvdWxkIHRyaWdnZXIgYSByb2xsXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gcm9sbCBldmVyeWRheSBhdCBtaWRuaWdodFxuICAgKi9cbiAgcmVhZG9ubHkgdHJpZ2dlcj86IFJvbGxUcmlnZ2VyO1xufVxuXG4vKipcbiAqIFRoZSBydWxlIG9yIHNjaGVkdWxlIHRoYXQgc2hvdWxkIHRyaWdnZXIgYSByb2xsXG4gKi9cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBSb2xsVHJpZ2dlciB7XG4gIC8qKlxuICAgKiBTY2hlZHVsZSB0aGF0IHNob3VsZCB0cmlnZ2VyIGEgcm9sbFxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBmcm9tU2NoZWR1bGUoc2NoZWR1bGU6IGV2ZW50cy5TY2hlZHVsZSk6IFJvbGxUcmlnZ2VyIHtcbiAgICByZXR1cm4geyBzY2hlZHVsZSB9O1xuICB9XG5cbiAgLyoqXG4gICAqIFJ1bGUgdGhhdCBzaG91bGQgdHJpZ2dlciBhIHJvbGxcbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgZnJvbVJ1bGUocnVsZTogZXZlbnRzLlJ1bGUpOiBSb2xsVHJpZ2dlciB7XG4gICAgcmV0dXJuIHsgcnVsZSB9O1xuICB9XG5cbiAgLyoqXG4gICAqIFJvbGwgc2NoZWR1bGVcbiAgICpcbiAgICogQGRlZmF1bHQgLSByb2xsIGV2ZXJ5ZGF5IGF0IG1pZG5pZ2h0XG4gICAqL1xuICBwdWJsaWMgYWJzdHJhY3QgcmVhZG9ubHkgc2NoZWR1bGU/OiBldmVudHMuU2NoZWR1bGU7XG5cbiAgLyoqXG4gICAqIFJvbGwgcnVsZVxuICAgKlxuICAgKiBAZGVmYXVsdCAtIHJvbGwgZXZlcnlkYXkgYXQgbWlkbmlnaHRcbiAgICovXG4gIHB1YmxpYyBhYnN0cmFjdCByZWFkb25seSBydWxlPzogZXZlbnRzLlJ1bGU7XG59XG5cbi8qKlxuICogUm9sbCB5b3VyIEVDUyBzZXJ2aWNlIHRhc2tzIG9uIHNjaGVkdWxlIG9yIHdpdGggYSBydWxlXG4gKi9cbmV4cG9ydCBjbGFzcyBFY3NTZXJ2aWNlUm9sbGVyIGV4dGVuZHMgQ29uc3RydWN0IHtcbiAgY29uc3RydWN0b3Ioc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgcHJvcHM6IEVjc1NlcnZpY2VSb2xsZXJQcm9wcykge1xuICAgIHN1cGVyKHNjb3BlLCBpZCk7XG5cbiAgICBjb25zdCBydWxlID0gcHJvcHMudHJpZ2dlcj8ucnVsZSA/PyBuZXcgZXZlbnRzLlJ1bGUodGhpcywgJ1J1bGUnLCB7XG4gICAgICBzY2hlZHVsZTogcHJvcHMudHJpZ2dlcj8uc2NoZWR1bGUgPz8gZXZlbnRzLlNjaGVkdWxlLmNyb24oe1xuICAgICAgICBtaW51dGU6ICcwJyxcbiAgICAgICAgaG91cjogJzAnLFxuICAgICAgfSksXG4gICAgfSk7XG5cblxuICAgIHJ1bGUuYWRkVGFyZ2V0KG5ldyB0YXJnZXRzLkF3c0FwaSh7XG4gICAgICBzZXJ2aWNlOiAnRUNTJyxcbiAgICAgIGFjdGlvbjogJ3VwZGF0ZVNlcnZpY2UnLFxuICAgICAgcGFyYW1ldGVyczoge1xuICAgICAgICBzZXJ2aWNlOiBwcm9wcy5zZXJ2aWNlLnNlcnZpY2VOYW1lLFxuICAgICAgICBjbHVzdGVyOiBwcm9wcy5jbHVzdGVyLmNsdXN0ZXJOYW1lLFxuICAgICAgICBmb3JjZU5ld0RlcGxveW1lbnQ6IHRydWUsXG4gICAgICB9IGFzIEFXUy5FQ1MuVXBkYXRlU2VydmljZVJlcXVlc3QsXG4gICAgICAvLyBodHRwczovL2RvY3MuYXdzLmFtYXpvbi5jb20vQW1hem9uRUNTL2xhdGVzdC9kZXZlbG9wZXJndWlkZS9lY3Mtc3VwcG9ydGVkLWlhbS1hY3Rpb25zLXJlc291cmNlcy5odG1sXG4gICAgICAvLyBhcm46YXdzOmVjczo8cmVnaW9uPjo8YWNjb3VudD46c2VydmljZS88Y2x1c3Rlci1uYW1lPi88c2VydmljZS1uYW1lPlxuICAgICAgcG9saWN5U3RhdGVtZW50OiBuZXcgaWFtLlBvbGljeVN0YXRlbWVudCh7XG4gICAgICAgIGFjdGlvbnM6IFsnZWNzOlVwZGF0ZVNlcnZpY2UnXSxcbiAgICAgICAgcmVzb3VyY2VzOiBbU3RhY2sub2YodGhpcykuZm9ybWF0QXJuKHtcbiAgICAgICAgICBzZXJ2aWNlOiAnZWNzJyxcbiAgICAgICAgICByZXNvdXJjZTogJ3NlcnZpY2UnLFxuICAgICAgICAgIHJlc291cmNlTmFtZTogYCR7cHJvcHMuY2x1c3Rlci5jbHVzdGVyTmFtZX0vJHtwcm9wcy5zZXJ2aWNlLnNlcnZpY2VOYW1lfWAsXG4gICAgICAgIH0pXSxcbiAgICAgIH0pLFxuICAgIH0pKTtcbiAgfVxufVxuIl19
|
|
@@ -2,55 +2,39 @@ import * as lambda from 'aws-cdk-lib/aws-lambda';
|
|
|
2
2
|
import * as ses from 'aws-cdk-lib/aws-ses';
|
|
3
3
|
import { Construct } from 'constructs';
|
|
4
4
|
/**
|
|
5
|
-
* Properties for an EmailReceiver
|
|
6
|
-
*
|
|
7
|
-
* @stability stable
|
|
5
|
+
* Properties for an EmailReceiver
|
|
8
6
|
*/
|
|
9
7
|
export interface EmailReceiverProps {
|
|
10
8
|
/**
|
|
11
|
-
* The SES receipt rule set where a receipt rule will be added
|
|
12
|
-
*
|
|
13
|
-
* @stability stable
|
|
9
|
+
* The SES receipt rule set where a receipt rule will be added
|
|
14
10
|
*/
|
|
15
11
|
readonly receiptRuleSet: ses.IReceiptRuleSet;
|
|
16
12
|
/**
|
|
17
|
-
* The recipients for which emails should be received
|
|
18
|
-
*
|
|
19
|
-
* @stability stable
|
|
13
|
+
* The recipients for which emails should be received
|
|
20
14
|
*/
|
|
21
15
|
readonly recipients: string[];
|
|
22
16
|
/**
|
|
23
|
-
* A Lambda function to invoke after the message is saved to S3.
|
|
24
|
-
*
|
|
25
|
-
* The Lambda
|
|
17
|
+
* A Lambda function to invoke after the message is saved to S3. The Lambda
|
|
26
18
|
* function will be invoked with a SESMessage as event.
|
|
27
|
-
*
|
|
28
|
-
* @stability stable
|
|
29
19
|
*/
|
|
30
20
|
readonly function: lambda.IFunction;
|
|
31
21
|
/**
|
|
32
|
-
* A regular expression to whitelist source email addresses
|
|
22
|
+
* A regular expression to whitelist source email addresses
|
|
33
23
|
*
|
|
34
24
|
* @default - no whitelisting of source email addresses
|
|
35
|
-
* @stability stable
|
|
36
25
|
*/
|
|
37
26
|
readonly sourceWhitelist?: string;
|
|
38
27
|
/**
|
|
39
28
|
* An existing rule after which the new rule will be placed in the rule set.
|
|
40
29
|
*
|
|
41
30
|
* @default - The new rule is inserted at the beginning of the rule list.
|
|
42
|
-
* @stability stable
|
|
43
31
|
*/
|
|
44
32
|
readonly afterRule?: ses.IReceiptRule;
|
|
45
33
|
}
|
|
46
34
|
/**
|
|
47
|
-
* Receive emails through SES, save them to S3 and invokes a
|
|
48
|
-
*
|
|
49
|
-
* @stability stable
|
|
35
|
+
* Receive emails through SES, save them to S3 and invokes a
|
|
36
|
+
* Lambda function
|
|
50
37
|
*/
|
|
51
38
|
export declare class EmailReceiver extends Construct {
|
|
52
|
-
/**
|
|
53
|
-
* @stability stable
|
|
54
|
-
*/
|
|
55
39
|
constructor(scope: Construct, id: string, props: EmailReceiverProps);
|
|
56
40
|
}
|