@flit/cdk-bucket-mesh 0.1.6 → 0.3.0
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 +34 -5
- package/dist/bucket-mesh/index.js +18 -2
- package/dist/lambda-base.js +4 -2
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +12 -12
- package/src/bucket-mesh/handler/go.mod +19 -18
- package/src/bucket-mesh/handler/go.sum +38 -36
- package/src/bucket-mesh/handler/main.go +4 -1
- package/src/bucket-mesh/index.ts +19 -0
- package/src/lambda-base.ts +4 -2
package/.jsii
CHANGED
|
@@ -16,8 +16,8 @@
|
|
|
16
16
|
}
|
|
17
17
|
],
|
|
18
18
|
"dependencies": {
|
|
19
|
-
"aws-cdk-lib": "^2.
|
|
20
|
-
"constructs": "^10.4.
|
|
19
|
+
"aws-cdk-lib": "^2.233.0",
|
|
20
|
+
"constructs": "^10.4.4"
|
|
21
21
|
},
|
|
22
22
|
"dependencyClosure": {
|
|
23
23
|
"@aws-cdk/asset-awscli-v1": {
|
|
@@ -1210,6 +1210,19 @@
|
|
|
1210
1210
|
}
|
|
1211
1211
|
}
|
|
1212
1212
|
},
|
|
1213
|
+
"aws-cdk-lib.aws_devopsagent": {
|
|
1214
|
+
"targets": {
|
|
1215
|
+
"dotnet": {
|
|
1216
|
+
"namespace": "Amazon.CDK.AWS.DevOpsAgent"
|
|
1217
|
+
},
|
|
1218
|
+
"java": {
|
|
1219
|
+
"package": "software.amazon.awscdk.services.devopsagent"
|
|
1220
|
+
},
|
|
1221
|
+
"python": {
|
|
1222
|
+
"module": "aws_cdk.aws_devopsagent"
|
|
1223
|
+
}
|
|
1224
|
+
}
|
|
1225
|
+
},
|
|
1213
1226
|
"aws-cdk-lib.aws_devopsguru": {
|
|
1214
1227
|
"targets": {
|
|
1215
1228
|
"dotnet": {
|
|
@@ -5225,6 +5238,22 @@
|
|
|
5225
5238
|
}
|
|
5226
5239
|
}
|
|
5227
5240
|
},
|
|
5241
|
+
"aws-cdk-lib.interfaces.aws_devopsagent": {
|
|
5242
|
+
"targets": {
|
|
5243
|
+
"dotnet": {
|
|
5244
|
+
"namespace": "Amazon.CDK.Interfaces.DevOpsAgent"
|
|
5245
|
+
},
|
|
5246
|
+
"go": {
|
|
5247
|
+
"packageName": "interfacesawsdevopsagent"
|
|
5248
|
+
},
|
|
5249
|
+
"java": {
|
|
5250
|
+
"package": "software.amazon.awscdk.interfaces.devopsagent"
|
|
5251
|
+
},
|
|
5252
|
+
"python": {
|
|
5253
|
+
"module": "aws_cdk.interfaces.aws_devopsagent"
|
|
5254
|
+
}
|
|
5255
|
+
}
|
|
5256
|
+
},
|
|
5228
5257
|
"aws-cdk-lib.interfaces.aws_devopsguru": {
|
|
5229
5258
|
"targets": {
|
|
5230
5259
|
"dotnet": {
|
|
@@ -8420,7 +8449,7 @@
|
|
|
8420
8449
|
"stability": "stable"
|
|
8421
8450
|
},
|
|
8422
8451
|
"homepage": "https://github.com/vierroth/cdk-bucket-mesh",
|
|
8423
|
-
"jsiiVersion": "5.9.
|
|
8452
|
+
"jsiiVersion": "5.9.20 (build 6e2b13a)",
|
|
8424
8453
|
"keywords": [
|
|
8425
8454
|
"aws",
|
|
8426
8455
|
"cdk",
|
|
@@ -8542,6 +8571,6 @@
|
|
|
8542
8571
|
"symbolId": "src/bucket-mesh/index:BucketMeshProps"
|
|
8543
8572
|
}
|
|
8544
8573
|
},
|
|
8545
|
-
"version": "0.
|
|
8546
|
-
"fingerprint": "
|
|
8574
|
+
"version": "0.3.0",
|
|
8575
|
+
"fingerprint": "UugOu4CXla722+5EK45YOjXwEoJcC3p9xWA+RY+lMtw="
|
|
8547
8576
|
}
|
|
@@ -36,6 +36,22 @@ class BucketMesh extends constructs_1.Construct {
|
|
|
36
36
|
actions: ["s3:GetReplicationConfiguration", "s3:ListBucket"],
|
|
37
37
|
resources: props.buckets.map(({ bucketArn }) => bucketArn),
|
|
38
38
|
}));
|
|
39
|
+
replicationRole.addToPolicy(new aws_iam_1.PolicyStatement({
|
|
40
|
+
effect: aws_iam_1.Effect.ALLOW,
|
|
41
|
+
actions: [
|
|
42
|
+
"s3:GetObjectVersion",
|
|
43
|
+
"s3:GetObjectVersionAcl",
|
|
44
|
+
"s3:GetObjectVersionTagging",
|
|
45
|
+
"s3:GetObjectVersionForReplication",
|
|
46
|
+
"s3:GetObjectRetention",
|
|
47
|
+
"s3:GetObjectLegalHold",
|
|
48
|
+
"s3:ReplicateObject",
|
|
49
|
+
"s3:ReplicateDelete",
|
|
50
|
+
"s3:ReplicateTags",
|
|
51
|
+
"s3:ObjectOwnerOverrideToBucketOwner",
|
|
52
|
+
],
|
|
53
|
+
resources: props.buckets.map(({ bucketArn }) => `${bucketArn}/*`),
|
|
54
|
+
}));
|
|
39
55
|
new BucketMeshResource(this, "Resource", {
|
|
40
56
|
buckets: props.buckets,
|
|
41
57
|
role: replicationRole,
|
|
@@ -44,5 +60,5 @@ class BucketMesh extends constructs_1.Construct {
|
|
|
44
60
|
}
|
|
45
61
|
exports.BucketMesh = BucketMesh;
|
|
46
62
|
_a = JSII_RTTI_SYMBOL_1;
|
|
47
|
-
BucketMesh[_a] = { fqn: "@flit/cdk-bucket-mesh.BucketMesh", version: "0.
|
|
48
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
63
|
+
BucketMesh[_a] = { fqn: "@flit/cdk-bucket-mesh.BucketMesh", version: "0.3.0" };
|
|
64
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvYnVja2V0LW1lc2gvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSwyQ0FBdUM7QUFDdkMsNkNBQW9EO0FBRXBELGlEQUs2QjtBQUU3Qix5Q0FBc0M7QUFPdEMsTUFBTSxrQkFBbUIsU0FBUSw0QkFBYztJQUM5QyxZQUFZLEtBQWdCLEVBQUUsRUFBVSxFQUFFLEtBQThCO1FBQ3ZFLEtBQUssQ0FBQyxLQUFLLEVBQUUsRUFBRSxFQUFFO1lBQ2hCLFlBQVksRUFBRSxvQkFBb0I7WUFDbEMsWUFBWSxFQUFFLG1CQUFRLENBQUMsV0FBVyxDQUFDLEtBQUssRUFBRSxLQUFLLENBQUMsT0FBTyxFQUFFLEtBQUssQ0FBQyxJQUFJLENBQUM7WUFDcEUsVUFBVSxFQUFFO2dCQUNYLE9BQU8sRUFBRSxLQUFLLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQztvQkFDbEMsSUFBSSxFQUFFLENBQUMsQ0FBQyxVQUFVO29CQUNsQixNQUFNLEVBQUUsbUJBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTTtpQkFDMUIsQ0FBQyxDQUFDO2dCQUNILGtCQUFrQixFQUFFLEtBQUssQ0FBQyxJQUFJLENBQUMsT0FBTzthQUN0QztTQUNELENBQUMsQ0FBQztJQUNKLENBQUM7Q0FDRDtBQU1EOztHQUVHO0FBQ0gsTUFBYSxVQUFXLFNBQVEsc0JBQVM7SUFDeEMsWUFBWSxLQUFnQixFQUFFLEVBQVUsRUFBRSxLQUFzQjtRQUMvRCxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBRWpCLE1BQU0sZUFBZSxHQUFHLElBQUksY0FBSSxDQUFDLElBQUksRUFBRSx1QkFBdUIsRUFBRTtZQUMvRCxTQUFTLEVBQUUsSUFBSSwwQkFBZ0IsQ0FBQyxrQkFBa0IsQ0FBQztTQUNuRCxDQUFDLENBQUM7UUFFSCxlQUFlLENBQUMsV0FBVyxDQUMxQixJQUFJLHlCQUFlLENBQUM7WUFDbkIsTUFBTSxFQUFFLGdCQUFNLENBQUMsS0FBSztZQUNwQixPQUFPLEVBQUUsQ0FBQyxnQ0FBZ0MsRUFBRSxlQUFlLENBQUM7WUFDNUQsU0FBUyxFQUFFLEtBQUssQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBRSxTQUFTLEVBQUUsRUFBRSxFQUFFLENBQUMsU0FBUyxDQUFDO1NBQzFELENBQUMsQ0FDRixDQUFDO1FBRUYsZUFBZSxDQUFDLFdBQVcsQ0FDMUIsSUFBSSx5QkFBZSxDQUFDO1lBQ25CLE1BQU0sRUFBRSxnQkFBTSxDQUFDLEtBQUs7WUFDcEIsT0FBTyxFQUFFO2dCQUNSLHFCQUFxQjtnQkFDckIsd0JBQXdCO2dCQUN4Qiw0QkFBNEI7Z0JBQzVCLG1DQUFtQztnQkFDbkMsdUJBQXVCO2dCQUN2Qix1QkFBdUI7Z0JBQ3ZCLG9CQUFvQjtnQkFDcEIsb0JBQW9CO2dCQUNwQixrQkFBa0I7Z0JBQ2xCLHFDQUFxQzthQUNyQztZQUNELFNBQVMsRUFBRSxLQUFLLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQUUsU0FBUyxFQUFFLEVBQUUsRUFBRSxDQUFDLEdBQUcsU0FBUyxJQUFJLENBQUM7U0FDakUsQ0FBQyxDQUNGLENBQUM7UUFFRixJQUFJLGtCQUFrQixDQUFDLElBQUksRUFBRSxVQUFVLEVBQUU7WUFDeEMsT0FBTyxFQUFFLEtBQUssQ0FBQyxPQUFPO1lBQ3RCLElBQUksRUFBRSxlQUFlO1NBQ3JCLENBQUMsQ0FBQztJQUNKLENBQUM7O0FBdkNGLGdDQXdDQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gXCJjb25zdHJ1Y3RzXCI7XG5pbXBvcnQgeyBDdXN0b21SZXNvdXJjZSwgU3RhY2sgfSBmcm9tIFwiYXdzLWNkay1saWJcIjtcbmltcG9ydCB7IEJ1Y2tldCB9IGZyb20gXCJhd3MtY2RrLWxpYi9hd3MtczNcIjtcbmltcG9ydCB7XG5cdEVmZmVjdCxcblx0UG9saWN5U3RhdGVtZW50LFxuXHRSb2xlLFxuXHRTZXJ2aWNlUHJpbmNpcGFsLFxufSBmcm9tIFwiYXdzLWNkay1saWIvYXdzLWlhbVwiO1xuXG5pbXBvcnQgeyBQcm92aWRlciB9IGZyb20gXCIuL3Byb3ZpZGVyXCI7XG5cbmludGVyZmFjZSBCdWNrZXRNZXNoUmVzb3VyY2VQcm9wcyB7XG5cdHJlYWRvbmx5IGJ1Y2tldHM6IEJ1Y2tldFtdO1xuXHRyZWFkb25seSByb2xlOiBSb2xlO1xufVxuXG5jbGFzcyBCdWNrZXRNZXNoUmVzb3VyY2UgZXh0ZW5kcyBDdXN0b21SZXNvdXJjZSB7XG5cdGNvbnN0cnVjdG9yKHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcsIHByb3BzOiBCdWNrZXRNZXNoUmVzb3VyY2VQcm9wcykge1xuXHRcdHN1cGVyKHNjb3BlLCBpZCwge1xuXHRcdFx0cmVzb3VyY2VUeXBlOiBcIkN1c3RvbTo6QnVja2V0TWVzaFwiLFxuXHRcdFx0c2VydmljZVRva2VuOiBQcm92aWRlci5nZXRPckNyZWF0ZShzY29wZSwgcHJvcHMuYnVja2V0cywgcHJvcHMucm9sZSksXG5cdFx0XHRwcm9wZXJ0aWVzOiB7XG5cdFx0XHRcdGJ1Y2tldHM6IHByb3BzLmJ1Y2tldHMubWFwKChiKSA9PiAoe1xuXHRcdFx0XHRcdG5hbWU6IGIuYnVja2V0TmFtZSxcblx0XHRcdFx0XHRyZWdpb246IFN0YWNrLm9mKGIpLnJlZ2lvbixcblx0XHRcdFx0fSkpLFxuXHRcdFx0XHRyZXBsaWNhdGlvblJvbGVBcm46IHByb3BzLnJvbGUucm9sZUFybixcblx0XHRcdH0sXG5cdFx0fSk7XG5cdH1cbn1cblxuZXhwb3J0IGludGVyZmFjZSBCdWNrZXRNZXNoUHJvcHMge1xuXHRyZWFkb25seSBidWNrZXRzOiBCdWNrZXRbXTtcbn1cblxuLyoqXG4gKiBAY2F0ZWdvcnkgQ29uc3RydWN0c1xuICovXG5leHBvcnQgY2xhc3MgQnVja2V0TWVzaCBleHRlbmRzIENvbnN0cnVjdCB7XG5cdGNvbnN0cnVjdG9yKHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcsIHByb3BzOiBCdWNrZXRNZXNoUHJvcHMpIHtcblx0XHRzdXBlcihzY29wZSwgaWQpO1xuXG5cdFx0Y29uc3QgcmVwbGljYXRpb25Sb2xlID0gbmV3IFJvbGUodGhpcywgXCJCdWNrZXRSZXBsaWNhdGlvblJvbGVcIiwge1xuXHRcdFx0YXNzdW1lZEJ5OiBuZXcgU2VydmljZVByaW5jaXBhbChcInMzLmFtYXpvbmF3cy5jb21cIiksXG5cdFx0fSk7XG5cblx0XHRyZXBsaWNhdGlvblJvbGUuYWRkVG9Qb2xpY3koXG5cdFx0XHRuZXcgUG9saWN5U3RhdGVtZW50KHtcblx0XHRcdFx0ZWZmZWN0OiBFZmZlY3QuQUxMT1csXG5cdFx0XHRcdGFjdGlvbnM6IFtcInMzOkdldFJlcGxpY2F0aW9uQ29uZmlndXJhdGlvblwiLCBcInMzOkxpc3RCdWNrZXRcIl0sXG5cdFx0XHRcdHJlc291cmNlczogcHJvcHMuYnVja2V0cy5tYXAoKHsgYnVja2V0QXJuIH0pID0+IGJ1Y2tldEFybiksXG5cdFx0XHR9KSxcblx0XHQpO1xuXG5cdFx0cmVwbGljYXRpb25Sb2xlLmFkZFRvUG9saWN5KFxuXHRcdFx0bmV3IFBvbGljeVN0YXRlbWVudCh7XG5cdFx0XHRcdGVmZmVjdDogRWZmZWN0LkFMTE9XLFxuXHRcdFx0XHRhY3Rpb25zOiBbXG5cdFx0XHRcdFx0XCJzMzpHZXRPYmplY3RWZXJzaW9uXCIsXG5cdFx0XHRcdFx0XCJzMzpHZXRPYmplY3RWZXJzaW9uQWNsXCIsXG5cdFx0XHRcdFx0XCJzMzpHZXRPYmplY3RWZXJzaW9uVGFnZ2luZ1wiLFxuXHRcdFx0XHRcdFwiczM6R2V0T2JqZWN0VmVyc2lvbkZvclJlcGxpY2F0aW9uXCIsXG5cdFx0XHRcdFx0XCJzMzpHZXRPYmplY3RSZXRlbnRpb25cIixcblx0XHRcdFx0XHRcInMzOkdldE9iamVjdExlZ2FsSG9sZFwiLFxuXHRcdFx0XHRcdFwiczM6UmVwbGljYXRlT2JqZWN0XCIsXG5cdFx0XHRcdFx0XCJzMzpSZXBsaWNhdGVEZWxldGVcIixcblx0XHRcdFx0XHRcInMzOlJlcGxpY2F0ZVRhZ3NcIixcblx0XHRcdFx0XHRcInMzOk9iamVjdE93bmVyT3ZlcnJpZGVUb0J1Y2tldE93bmVyXCIsXG5cdFx0XHRcdF0sXG5cdFx0XHRcdHJlc291cmNlczogcHJvcHMuYnVja2V0cy5tYXAoKHsgYnVja2V0QXJuIH0pID0+IGAke2J1Y2tldEFybn0vKmApLFxuXHRcdFx0fSksXG5cdFx0KTtcblxuXHRcdG5ldyBCdWNrZXRNZXNoUmVzb3VyY2UodGhpcywgXCJSZXNvdXJjZVwiLCB7XG5cdFx0XHRidWNrZXRzOiBwcm9wcy5idWNrZXRzLFxuXHRcdFx0cm9sZTogcmVwbGljYXRpb25Sb2xlLFxuXHRcdH0pO1xuXHR9XG59XG4iXX0=
|
package/dist/lambda-base.js
CHANGED
|
@@ -11,7 +11,9 @@ class LambdaBase extends aws_lambda_go_alpha_1.GoFunction {
|
|
|
11
11
|
super(scope, id, {
|
|
12
12
|
architecture: aws_lambda_1.Architecture.ARM_64,
|
|
13
13
|
timeout: aws_cdk_lib_1.Duration.minutes(2),
|
|
14
|
-
|
|
14
|
+
logGroup: new aws_logs_1.LogGroup(scope, `${id}LogGroup`, {
|
|
15
|
+
retention: aws_logs_1.RetentionDays.ONE_WEEK,
|
|
16
|
+
}),
|
|
15
17
|
role: new LambdaRole(scope, `${id}Role`),
|
|
16
18
|
bundling: {
|
|
17
19
|
environment: {
|
|
@@ -47,4 +49,4 @@ class LambdaRole extends aws_iam_1.Role {
|
|
|
47
49
|
}
|
|
48
50
|
}
|
|
49
51
|
exports.LambdaRole = LambdaRole;
|
|
50
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
52
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGFtYmRhLWJhc2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvbGFtYmRhLWJhc2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQ0EsNkNBQThDO0FBQzlDLHVEQUFzRDtBQUN0RCxtREFBK0Q7QUFDL0QsaURBSzZCO0FBQzdCLHNFQUEyRTtBQUUzRSxNQUFhLFVBQVcsU0FBUSxnQ0FBVTtJQUN6QyxZQUFZLEtBQWdCLEVBQUUsRUFBVSxFQUFFLEtBQXNCO1FBQy9ELEtBQUssQ0FBQyxLQUFLLEVBQUUsRUFBRSxFQUFFO1lBQ2hCLFlBQVksRUFBRSx5QkFBWSxDQUFDLE1BQU07WUFDakMsT0FBTyxFQUFFLHNCQUFRLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQztZQUM1QixRQUFRLEVBQUUsSUFBSSxtQkFBUSxDQUFDLEtBQUssRUFBRSxHQUFHLEVBQUUsVUFBVSxFQUFFO2dCQUM5QyxTQUFTLEVBQUUsd0JBQWEsQ0FBQyxRQUFRO2FBQ2pDLENBQUM7WUFDRixJQUFJLEVBQUUsSUFBSSxVQUFVLENBQUMsS0FBSyxFQUFFLEdBQUcsRUFBRSxNQUFNLENBQUM7WUFDeEMsUUFBUSxFQUFFO2dCQUNULFdBQVcsRUFBRTtvQkFDWixNQUFNLEVBQUUsS0FBSztpQkFDYjthQUNEO1lBQ0QsR0FBRyxLQUFLO1NBQ1IsQ0FBQyxDQUFDO0lBQ0osQ0FBQztDQUNEO0FBakJELGdDQWlCQztBQUVELE1BQWEsVUFBVyxTQUFRLGNBQUk7SUFDbkMsWUFBWSxLQUFnQixFQUFFLEVBQVU7UUFDdkMsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLEVBQUU7WUFDaEIsU0FBUyxFQUFFLElBQUksMEJBQWdCLENBQUMsc0JBQXNCLENBQUM7WUFDdkQsY0FBYyxFQUFFO2dCQUNmLE9BQU8sRUFBRSxJQUFJLHdCQUFjLENBQUM7b0JBQzNCLFVBQVUsRUFBRTt3QkFDWCxJQUFJLHlCQUFlLENBQUM7NEJBQ25CLE9BQU8sRUFBRTtnQ0FDUixxQkFBcUI7Z0NBQ3JCLHNCQUFzQjtnQ0FDdEIsbUJBQW1COzZCQUNuQjs0QkFDRCxTQUFTLEVBQUU7Z0NBQ1YsZ0JBQWdCLG1CQUFLLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxDQUFDLE1BQU0sSUFDckMsbUJBQUssQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLENBQUMsT0FDakIsMEJBQTBCOzZCQUMxQjt5QkFDRCxDQUFDO3FCQUNGO2lCQUNELENBQUM7YUFDRjtTQUNELENBQUMsQ0FBQztJQUNKLENBQUM7Q0FDRDtBQXhCRCxnQ0F3QkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb25zdHJ1Y3QgfSBmcm9tIFwiY29uc3RydWN0c1wiO1xuaW1wb3J0IHsgRHVyYXRpb24sIFN0YWNrIH0gZnJvbSBcImF3cy1jZGstbGliXCI7XG5pbXBvcnQgeyBBcmNoaXRlY3R1cmUgfSBmcm9tIFwiYXdzLWNkay1saWIvYXdzLWxhbWJkYVwiO1xuaW1wb3J0IHsgTG9nR3JvdXAsIFJldGVudGlvbkRheXMgfSBmcm9tIFwiYXdzLWNkay1saWIvYXdzLWxvZ3NcIjtcbmltcG9ydCB7XG5cdFBvbGljeURvY3VtZW50LFxuXHRQb2xpY3lTdGF0ZW1lbnQsXG5cdFJvbGUsXG5cdFNlcnZpY2VQcmluY2lwYWwsXG59IGZyb20gXCJhd3MtY2RrLWxpYi9hd3MtaWFtXCI7XG5pbXBvcnQgeyBHb0Z1bmN0aW9uLCBHb0Z1bmN0aW9uUHJvcHMgfSBmcm9tIFwiQGF3cy1jZGsvYXdzLWxhbWJkYS1nby1hbHBoYVwiO1xuXG5leHBvcnQgY2xhc3MgTGFtYmRhQmFzZSBleHRlbmRzIEdvRnVuY3Rpb24ge1xuXHRjb25zdHJ1Y3RvcihzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wczogR29GdW5jdGlvblByb3BzKSB7XG5cdFx0c3VwZXIoc2NvcGUsIGlkLCB7XG5cdFx0XHRhcmNoaXRlY3R1cmU6IEFyY2hpdGVjdHVyZS5BUk1fNjQsXG5cdFx0XHR0aW1lb3V0OiBEdXJhdGlvbi5taW51dGVzKDIpLFxuXHRcdFx0bG9nR3JvdXA6IG5ldyBMb2dHcm91cChzY29wZSwgYCR7aWR9TG9nR3JvdXBgLCB7XG5cdFx0XHRcdHJldGVudGlvbjogUmV0ZW50aW9uRGF5cy5PTkVfV0VFSyxcblx0XHRcdH0pLFxuXHRcdFx0cm9sZTogbmV3IExhbWJkYVJvbGUoc2NvcGUsIGAke2lkfVJvbGVgKSxcblx0XHRcdGJ1bmRsaW5nOiB7XG5cdFx0XHRcdGVudmlyb25tZW50OiB7XG5cdFx0XHRcdFx0R09XT1JLOiBcIm9mZlwiLFxuXHRcdFx0XHR9LFxuXHRcdFx0fSxcblx0XHRcdC4uLnByb3BzLFxuXHRcdH0pO1xuXHR9XG59XG5cbmV4cG9ydCBjbGFzcyBMYW1iZGFSb2xlIGV4dGVuZHMgUm9sZSB7XG5cdGNvbnN0cnVjdG9yKHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcpIHtcblx0XHRzdXBlcihzY29wZSwgaWQsIHtcblx0XHRcdGFzc3VtZWRCeTogbmV3IFNlcnZpY2VQcmluY2lwYWwoXCJsYW1iZGEuYW1hem9uYXdzLmNvbVwiKSxcblx0XHRcdGlubGluZVBvbGljaWVzOiB7XG5cdFx0XHRcdGxvZ2dpbmc6IG5ldyBQb2xpY3lEb2N1bWVudCh7XG5cdFx0XHRcdFx0c3RhdGVtZW50czogW1xuXHRcdFx0XHRcdFx0bmV3IFBvbGljeVN0YXRlbWVudCh7XG5cdFx0XHRcdFx0XHRcdGFjdGlvbnM6IFtcblx0XHRcdFx0XHRcdFx0XHRcImxvZ3M6Q3JlYXRlTG9nR3JvdXBcIixcblx0XHRcdFx0XHRcdFx0XHRcImxvZ3M6Q3JlYXRlTG9nU3RyZWFtXCIsXG5cdFx0XHRcdFx0XHRcdFx0XCJsb2dzOlB1dExvZ0V2ZW50c1wiLFxuXHRcdFx0XHRcdFx0XHRdLFxuXHRcdFx0XHRcdFx0XHRyZXNvdXJjZXM6IFtcblx0XHRcdFx0XHRcdFx0XHRgYXJuOmF3czpsb2dzOiR7U3RhY2sub2Yoc2NvcGUpLnJlZ2lvbn06JHtcblx0XHRcdFx0XHRcdFx0XHRcdFN0YWNrLm9mKHNjb3BlKS5hY2NvdW50XG5cdFx0XHRcdFx0XHRcdFx0fTpsb2ctZ3JvdXA6L2F3cy9sYW1iZGEvKmAsXG5cdFx0XHRcdFx0XHRcdF0sXG5cdFx0XHRcdFx0XHR9KSxcblx0XHRcdFx0XHRdLFxuXHRcdFx0XHR9KSxcblx0XHRcdH0sXG5cdFx0fSk7XG5cdH1cbn1cbiJdfQ==
|