@bitblit/ratchet-epsilon-deployment 5.0.484-alpha → 5.0.488-alpha
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/lib/deployment/cdk/epsilon-api-stack-props.d.ts +2 -0
- package/lib/deployment/cdk/epsilon-api-stack.js +5 -0
- package/lib/deployment/cdk/epsilon-api-stack.js.map +1 -1
- package/lib/deployment/cdk/epsilon-route-53-handling.d.ts +5 -0
- package/lib/deployment/cdk/epsilon-route-53-handling.js +5 -0
- package/lib/deployment/cdk/epsilon-route-53-handling.js.map +1 -0
- package/lib/deployment/cdk/epsilon-simple-lambda-cloudfront-distribution-stack-props.d.ts +14 -0
- package/lib/deployment/cdk/epsilon-simple-lambda-cloudfront-distribution-stack-props.js +2 -0
- package/lib/deployment/cdk/epsilon-simple-lambda-cloudfront-distribution-stack-props.js.map +1 -0
- package/lib/deployment/cdk/epsilon-simple-lambda-cloudfront-distribution-stack.d.ts +6 -0
- package/lib/deployment/cdk/epsilon-simple-lambda-cloudfront-distribution-stack.js +43 -0
- package/lib/deployment/cdk/epsilon-simple-lambda-cloudfront-distribution-stack.js.map +1 -0
- package/lib/deployment/cdk/epsilon-stack-util.d.ts +1 -0
- package/lib/deployment/cdk/epsilon-stack-util.js +8 -0
- package/lib/deployment/cdk/epsilon-stack-util.js.map +1 -1
- package/lib/deployment/cdk/epsilon-website-stack-props.d.ts +2 -6
- package/lib/deployment/cdk/epsilon-website-stack-props.js +1 -4
- package/lib/deployment/cdk/epsilon-website-stack-props.js.map +1 -1
- package/lib/deployment/cdk/epsilon-website-stack.d.ts +0 -1
- package/lib/deployment/cdk/epsilon-website-stack.js +4 -11
- package/lib/deployment/cdk/epsilon-website-stack.js.map +1 -1
- package/package.json +5 -5
|
@@ -2,6 +2,7 @@ import { StackProps } from 'aws-cdk-lib';
|
|
|
2
2
|
import { PolicyStatement } from 'aws-cdk-lib/aws-iam';
|
|
3
3
|
import { EpsilonApiStackFeature } from './epsilon-api-stack-feature.js';
|
|
4
4
|
import { SubnetAttributes } from "aws-cdk-lib/aws-ec2";
|
|
5
|
+
import { EpsilonSimpleLambdaCloudfrontDistributionStackProps } from "./epsilon-simple-lambda-cloudfront-distribution-stack-props";
|
|
5
6
|
export interface EpsilonApiStackProps extends StackProps {
|
|
6
7
|
batchInstancesEc2KeyPairName?: string;
|
|
7
8
|
additionalPolicyStatements: PolicyStatement[];
|
|
@@ -18,4 +19,5 @@ export interface EpsilonApiStackProps extends StackProps {
|
|
|
18
19
|
webTimeoutSeconds?: number;
|
|
19
20
|
backgroundTimeoutSeconds?: number;
|
|
20
21
|
replaceBatchComputeEnvironment?: boolean;
|
|
22
|
+
autoCloudfrontDistribution?: EpsilonSimpleLambdaCloudfrontDistributionStackProps;
|
|
21
23
|
}
|
|
@@ -14,6 +14,7 @@ import { EcsFargateContainerDefinition, EcsJobDefinition, FargateComputeEnvironm
|
|
|
14
14
|
import { SecurityGroup, Subnet, Vpc } from "aws-cdk-lib/aws-ec2";
|
|
15
15
|
import { ContainerImage } from 'aws-cdk-lib/aws-ecs';
|
|
16
16
|
import { EpsilonApiStackFeature } from './epsilon-api-stack-feature.js';
|
|
17
|
+
import { EpsilonSimpleLambdaCloudfrontDistributionStack } from "./epsilon-simple-lambda-cloudfront-distribution-stack";
|
|
17
18
|
export class EpsilonApiStack extends Stack {
|
|
18
19
|
webHandler;
|
|
19
20
|
backgroundHandler;
|
|
@@ -184,6 +185,10 @@ export class EpsilonApiStack extends Stack {
|
|
|
184
185
|
});
|
|
185
186
|
rule.addTarget(new LambdaFunction(this.backgroundHandler));
|
|
186
187
|
}
|
|
188
|
+
if (props.autoCloudfrontDistribution) {
|
|
189
|
+
const distroProps = Object.assign({}, { lambdaFunctionDomain: this.webFunctionUrl }, props.autoCloudfrontDistribution);
|
|
190
|
+
new EpsilonSimpleLambdaCloudfrontDistributionStack(this, id + 'ApiCloudfrontDisto', distroProps);
|
|
191
|
+
}
|
|
187
192
|
}
|
|
188
193
|
}
|
|
189
194
|
//# sourceMappingURL=epsilon-api-stack.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"epsilon-api-stack.js","sourceRoot":"","sources":["../../../src/deployment/cdk/epsilon-api-stack.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAE1D,OAAO,EAAE,eAAe,EAAE,mBAAmB,EAAe,mBAAmB,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAC5H,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,IAAI,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAC5F,OAAO,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAC;AAC5C,OAAO,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAC;AAC5C,OAAO,EAAE,kBAAkB,EAAE,MAAM,mCAAmC,CAAC;AAEvE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAChE,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAC9D,OAAO,EAAE,aAAa,EAAE,MAAM,6CAA6C,CAAC;AAC5E,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAE3D,OAAO,EAAE,4BAA4B,EAAE,MAAM,gDAAgD,CAAC;AAC9F,OAAO,EACL,6BAA6B,EAE7B,gBAAgB,EAEhB,yBAAyB,EAEzB,QAAQ,GAET,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,aAAa,EAAE,MAAM,EAAmB,GAAG,EAAE,MAAM,qBAAqB,CAAC;AAElF,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,sBAAsB,EAAE,MAAM,gCAAgC,CAAC;
|
|
1
|
+
{"version":3,"file":"epsilon-api-stack.js","sourceRoot":"","sources":["../../../src/deployment/cdk/epsilon-api-stack.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"epsilon-route-53-handling.js","sourceRoot":"","sources":["../../../src/deployment/cdk/epsilon-route-53-handling.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,sBAAsB,GAAG;IACpC,MAAM,EAAE,QAAQ;IAChB,WAAW,EAAE,aAAa;CAC3B,CAAC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { StackProps } from "aws-cdk-lib";
|
|
2
|
+
import { ICachePolicy, PriceClass, SSLMethod, ViewerProtocolPolicy } from "aws-cdk-lib/aws-cloudfront";
|
|
3
|
+
import { FunctionUrl } from "aws-cdk-lib/aws-lambda";
|
|
4
|
+
import { EpsilonRoute53Handling } from "./epsilon-route-53-handling";
|
|
5
|
+
export interface EpsilonSimpleLambdaCloudfrontDistributionStackProps extends StackProps {
|
|
6
|
+
lambdaFunctionDomain: FunctionUrl;
|
|
7
|
+
httpsCertArn: string;
|
|
8
|
+
domainNames: string[];
|
|
9
|
+
protocolPolicy?: ViewerProtocolPolicy;
|
|
10
|
+
cachePolicy?: ICachePolicy;
|
|
11
|
+
priceClass?: PriceClass;
|
|
12
|
+
sslMethod?: SSLMethod;
|
|
13
|
+
route53Handling?: EpsilonRoute53Handling;
|
|
14
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"epsilon-simple-lambda-cloudfront-distribution-stack-props.js","sourceRoot":"","sources":["../../../src/deployment/cdk/epsilon-simple-lambda-cloudfront-distribution-stack-props.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { Stack } from "aws-cdk-lib";
|
|
2
|
+
import { Construct } from "constructs";
|
|
3
|
+
import { EpsilonSimpleLambdaCloudfrontDistributionStackProps } from "./epsilon-simple-lambda-cloudfront-distribution-stack-props";
|
|
4
|
+
export declare class EpsilonSimpleLambdaCloudfrontDistributionStack extends Stack {
|
|
5
|
+
constructor(scope: Construct, id: string, props?: EpsilonSimpleLambdaCloudfrontDistributionStackProps);
|
|
6
|
+
}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import { Stack } from "aws-cdk-lib";
|
|
2
|
+
import { CachePolicy, Distribution, PriceClass, SSLMethod, ViewerProtocolPolicy } from "aws-cdk-lib/aws-cloudfront";
|
|
3
|
+
import { FunctionUrlOrigin } from "aws-cdk-lib/aws-cloudfront-origins";
|
|
4
|
+
import { Certificate } from "aws-cdk-lib/aws-certificatemanager";
|
|
5
|
+
import { HostedZone, RecordSet, RecordType } from "aws-cdk-lib/aws-route53";
|
|
6
|
+
import { CloudFrontTarget } from "aws-cdk-lib/aws-route53-targets";
|
|
7
|
+
import { EpsilonRoute53Handling } from "./epsilon-route-53-handling";
|
|
8
|
+
import { EpsilonStackUtil } from "./epsilon-stack-util";
|
|
9
|
+
export class EpsilonSimpleLambdaCloudfrontDistributionStack extends Stack {
|
|
10
|
+
constructor(scope, id, props) {
|
|
11
|
+
super(scope, id, props);
|
|
12
|
+
const behavior = {
|
|
13
|
+
origin: new FunctionUrlOrigin(props.lambdaFunctionDomain),
|
|
14
|
+
compress: true,
|
|
15
|
+
viewerProtocolPolicy: props.protocolPolicy ?? ViewerProtocolPolicy.REDIRECT_TO_HTTPS,
|
|
16
|
+
cachePolicy: props.cachePolicy ?? CachePolicy.CACHING_DISABLED
|
|
17
|
+
};
|
|
18
|
+
const httpsCertificate = Certificate.fromCertificateArn(this, id + 'HttpsCert', props.httpsCertArn);
|
|
19
|
+
const distributionProps = {
|
|
20
|
+
defaultBehavior: behavior,
|
|
21
|
+
priceClass: props.priceClass ?? PriceClass.PRICE_CLASS_ALL,
|
|
22
|
+
certificate: httpsCertificate,
|
|
23
|
+
domainNames: props.domainNames,
|
|
24
|
+
sslSupportMethod: props.sslMethod ?? SSLMethod.SNI,
|
|
25
|
+
};
|
|
26
|
+
const dist = new Distribution(this, id + 'CloudfrontDistro', distributionProps);
|
|
27
|
+
if (props?.route53Handling === EpsilonRoute53Handling.Update) {
|
|
28
|
+
if (props?.domainNames?.length) {
|
|
29
|
+
for (let i = 0; i < props.domainNames.length; i++) {
|
|
30
|
+
const domain = new RecordSet(this, id + 'DomainName-' + props.domainNames[i], {
|
|
31
|
+
recordType: RecordType.A,
|
|
32
|
+
recordName: props.domainNames[i],
|
|
33
|
+
target: {
|
|
34
|
+
aliasTarget: new CloudFrontTarget(dist),
|
|
35
|
+
},
|
|
36
|
+
zone: HostedZone.fromLookup(this, id, { domainName: EpsilonStackUtil.extractApexDomain(props.domainNames[i]) }),
|
|
37
|
+
});
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
//# sourceMappingURL=epsilon-simple-lambda-cloudfront-distribution-stack.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"epsilon-simple-lambda-cloudfront-distribution-stack.js","sourceRoot":"","sources":["../../../src/deployment/cdk/epsilon-simple-lambda-cloudfront-distribution-stack.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAEpC,OAAO,EAEL,WAAW,EAAE,YAAY,EAEzB,UAAU,EACV,SAAS,EACT,oBAAoB,EACrB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,iBAAiB,EAAE,MAAM,oCAAoC,CAAC;AAIvE,OAAO,EAAE,WAAW,EAAgB,MAAM,oCAAoC,CAAC;AAC/E,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAC5E,OAAO,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AACnE,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AACrE,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAExD,MAAM,OAAO,8CAA+C,SAAQ,KAAK;IACvE,YAAY,KAAgB,EAAE,EAAU,EAAE,KAA2D;QACnG,KAAK,CAAC,KAAK,EAAE,EAAE,EAAE,KAAK,CAAC,CAAC;QAExB,MAAM,QAAQ,GAAoB;YAChC,MAAM,EAAE,IAAI,iBAAiB,CAAC,KAAK,CAAC,oBAAoB,CAAC;YACzD,QAAQ,EAAE,IAAI;YACd,oBAAoB,EAAE,KAAK,CAAC,cAAc,IAAI,oBAAoB,CAAC,iBAAiB;YACpF,WAAW,EAAE,KAAK,CAAC,WAAW,IAAI,WAAW,CAAC,gBAAgB;SAC/D,CAAC;QAEF,MAAM,gBAAgB,GAAiB,WAAW,CAAC,kBAAkB,CAAC,IAAI,EAAE,EAAE,GAAG,WAAW,EAAE,KAAK,CAAC,YAAY,CAAC,CAAC;QAElH,MAAM,iBAAiB,GAAsB;YAC3C,eAAe,EAAE,QAAQ;YACzB,UAAU,EAAE,KAAK,CAAC,UAAU,IAAI,UAAU,CAAC,eAAe;YAC1D,WAAW,EAAE,gBAAgB;YAC7B,WAAW,EAAE,KAAK,CAAC,WAAW;YAC9B,gBAAgB,EAAE,KAAK,CAAC,SAAS,IAAI,SAAS,CAAC,GAAG;SACnD,CAAC;QAEF,MAAM,IAAI,GAAiB,IAAI,YAAY,CAAC,IAAI,EAAE,EAAE,GAAG,kBAAkB,EAAE,iBAAiB,CAAC,CAAC;QAG9F,IAAI,KAAK,EAAE,eAAe,KAAK,sBAAsB,CAAC,MAAM,EAAE,CAAC;YAC7D,IAAI,KAAK,EAAE,WAAW,EAAE,MAAM,EAAE,CAAC;gBAC/B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,WAAW,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;oBAClD,MAAM,MAAM,GAAG,IAAI,SAAS,CAAC,IAAI,EAAE,EAAE,GAAG,aAAa,GAAG,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE;wBAC5E,UAAU,EAAE,UAAU,CAAC,CAAC;wBACxB,UAAU,EAAE,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC;wBAChC,MAAM,EAAE;4BACN,WAAW,EAAE,IAAI,gBAAgB,CAAC,IAAI,CAAC;yBACxC;wBACD,IAAI,EAAE,UAAU,CAAC,UAAU,CAAC,IAAI,EAAE,EAAE,EAAE,EAAE,UAAU,EAAE,gBAAgB,CAAC,iBAAiB,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;qBAChH,CAAC,CAAC;gBACL,CAAC;YACH,CAAC;QACH,CAAC;IAEH,CAAC;CACF"}
|
|
@@ -11,4 +11,5 @@ export declare class EpsilonStackUtil {
|
|
|
11
11
|
static readonly ALLOW_RESTRICTED_LOGS: PolicyStatement;
|
|
12
12
|
static readonly ALLOW_FARGATE_SECRET_READING: PolicyStatement[];
|
|
13
13
|
static readonly ECS_POLICY_STATEMENTS: PolicyStatement[];
|
|
14
|
+
static extractApexDomain(domainName: string): string;
|
|
14
15
|
}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { Logger } from '@bitblit/ratchet-common/logger/logger';
|
|
2
2
|
import { StringRatchet } from '@bitblit/ratchet-common/lang/string-ratchet';
|
|
3
3
|
import { Effect, PolicyStatement } from 'aws-cdk-lib/aws-iam';
|
|
4
|
+
import { ErrorRatchet } from "@bitblit/ratchet-common/lang/error-ratchet";
|
|
4
5
|
export class EpsilonStackUtil {
|
|
5
6
|
constructor() { }
|
|
6
7
|
static toEnvironmentVariables(input) {
|
|
@@ -95,5 +96,12 @@ export class EpsilonStackUtil {
|
|
|
95
96
|
EpsilonStackUtil.ALLOW_ECR,
|
|
96
97
|
EpsilonStackUtil.ALLOW_RESTRICTED_LOGS,
|
|
97
98
|
].concat(EpsilonStackUtil.ALLOW_FARGATE_SECRET_READING);
|
|
99
|
+
static extractApexDomain(domainName) {
|
|
100
|
+
const pieces = StringRatchet.trimToEmpty(domainName).split('.');
|
|
101
|
+
if (pieces.length < 2) {
|
|
102
|
+
ErrorRatchet.throwFormattedErr('Not a valid domain name : %s', domainName);
|
|
103
|
+
}
|
|
104
|
+
return pieces[pieces.length - 2] + '.' + pieces[pieces.length - 1];
|
|
105
|
+
}
|
|
98
106
|
}
|
|
99
107
|
//# sourceMappingURL=epsilon-stack-util.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"epsilon-stack-util.js","sourceRoot":"","sources":["../../../src/deployment/cdk/epsilon-stack-util.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,uCAAuC,CAAC;AAC/D,OAAO,EAAE,aAAa,EAAE,MAAM,6CAA6C,CAAC;AAC5E,OAAO,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"epsilon-stack-util.js","sourceRoot":"","sources":["../../../src/deployment/cdk/epsilon-stack-util.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,19 +3,15 @@ import { SimpleAdditionalS3WebsiteMapping } from './simple-additional-s3-website
|
|
|
3
3
|
import { EpsilonLambdaToCloudfrontPathMapping } from './epsilon-lambda-to-cloudfront-path-mapping.js';
|
|
4
4
|
import { Behavior } from 'aws-cdk-lib/aws-cloudfront';
|
|
5
5
|
import { EpsilonWebsiteCacheBehavior } from './epsilon-website-cache-behavior.js';
|
|
6
|
+
import { EpsilonRoute53Handling } from "./epsilon-route-53-handling.js";
|
|
6
7
|
export interface EpsilonWebsiteStackProps extends StackProps {
|
|
7
8
|
targetBucketName: string;
|
|
8
9
|
cloudFrontHttpsCertificateArn: string;
|
|
9
10
|
cloudFrontDomainNames: string[];
|
|
10
11
|
apiMappings: EpsilonLambdaToCloudfrontPathMapping[];
|
|
11
12
|
pathsToAssets: string[];
|
|
12
|
-
route53Handling:
|
|
13
|
+
route53Handling: EpsilonRoute53Handling;
|
|
13
14
|
simpleAdditionalMappings?: SimpleAdditionalS3WebsiteMapping[];
|
|
14
15
|
websiteCacheBehavior?: EpsilonWebsiteCacheBehavior;
|
|
15
16
|
websiteBehaviorOverride?: Behavior[];
|
|
16
17
|
}
|
|
17
|
-
export declare const EpsilonWebsiteStackPropsRoute53Handling: {
|
|
18
|
-
Update: string;
|
|
19
|
-
DoNotUpdate: string;
|
|
20
|
-
};
|
|
21
|
-
export type EpsilonWebsiteStackPropsRoute53Handling = (typeof EpsilonWebsiteStackPropsRoute53Handling)[keyof typeof EpsilonWebsiteStackPropsRoute53Handling];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"epsilon-website-stack-props.js","sourceRoot":"","sources":["../../../src/deployment/cdk/epsilon-website-stack-props.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"epsilon-website-stack-props.js","sourceRoot":"","sources":["../../../src/deployment/cdk/epsilon-website-stack-props.ts"],"names":[],"mappings":""}
|
|
@@ -3,5 +3,4 @@ import { Construct } from 'constructs';
|
|
|
3
3
|
import { EpsilonWebsiteStackProps } from './epsilon-website-stack-props.js';
|
|
4
4
|
export declare class EpsilonWebsiteStack extends Stack {
|
|
5
5
|
constructor(scope: Construct, id: string, props?: EpsilonWebsiteStackProps);
|
|
6
|
-
static extractApexDomain(domainName: string): string;
|
|
7
6
|
}
|
|
@@ -5,10 +5,10 @@ import { CloudFrontAllowedCachedMethods, CloudFrontAllowedMethods, CloudFrontWeb
|
|
|
5
5
|
import { HostedZone, RecordSet, RecordType } from 'aws-cdk-lib/aws-route53';
|
|
6
6
|
import { CloudFrontTarget } from 'aws-cdk-lib/aws-route53-targets';
|
|
7
7
|
import { BucketDeployment, Source } from 'aws-cdk-lib/aws-s3-deployment';
|
|
8
|
-
import { EpsilonWebsiteStackPropsRoute53Handling } from './epsilon-website-stack-props.js';
|
|
9
8
|
import { ErrorRatchet } from '@bitblit/ratchet-common/lang/error-ratchet';
|
|
10
|
-
import { StringRatchet } from '@bitblit/ratchet-common/lang/string-ratchet';
|
|
11
9
|
import { EpsilonWebsiteCacheBehavior } from './epsilon-website-cache-behavior.js';
|
|
10
|
+
import { EpsilonStackUtil } from "./epsilon-stack-util.js";
|
|
11
|
+
import { EpsilonRoute53Handling } from "./epsilon-route-53-handling";
|
|
12
12
|
export class EpsilonWebsiteStack extends Stack {
|
|
13
13
|
constructor(scope, id, props) {
|
|
14
14
|
super(scope, id, props);
|
|
@@ -151,7 +151,7 @@ export class EpsilonWebsiteStack extends Stack {
|
|
|
151
151
|
},
|
|
152
152
|
};
|
|
153
153
|
const cloudfrontDistro = new CloudFrontWebDistribution(this, id + 'CloudfrontDistro', distributionProps);
|
|
154
|
-
if (props?.route53Handling ===
|
|
154
|
+
if (props?.route53Handling === EpsilonRoute53Handling.Update) {
|
|
155
155
|
if (props?.cloudFrontDomainNames?.length) {
|
|
156
156
|
for (let i = 0; i < props.cloudFrontDomainNames.length; i++) {
|
|
157
157
|
const domain = new RecordSet(this, id + 'DomainName-' + props.cloudFrontDomainNames[i], {
|
|
@@ -160,7 +160,7 @@ export class EpsilonWebsiteStack extends Stack {
|
|
|
160
160
|
target: {
|
|
161
161
|
aliasTarget: new CloudFrontTarget(cloudfrontDistro),
|
|
162
162
|
},
|
|
163
|
-
zone: HostedZone.fromLookup(this, id, { domainName:
|
|
163
|
+
zone: HostedZone.fromLookup(this, id, { domainName: EpsilonStackUtil.extractApexDomain(props.cloudFrontDomainNames[i]) }),
|
|
164
164
|
});
|
|
165
165
|
}
|
|
166
166
|
}
|
|
@@ -172,12 +172,5 @@ export class EpsilonWebsiteStack extends Stack {
|
|
|
172
172
|
distributionPaths: ['/*'],
|
|
173
173
|
});
|
|
174
174
|
}
|
|
175
|
-
static extractApexDomain(domainName) {
|
|
176
|
-
const pieces = StringRatchet.trimToEmpty(domainName).split('.');
|
|
177
|
-
if (pieces.length < 2) {
|
|
178
|
-
ErrorRatchet.throwFormattedErr('Not a valid domain name : %s', domainName);
|
|
179
|
-
}
|
|
180
|
-
return pieces[pieces.length - 2] + '.' + pieces[pieces.length - 1];
|
|
181
|
-
}
|
|
182
175
|
}
|
|
183
176
|
//# sourceMappingURL=epsilon-website-stack.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"epsilon-website-stack.js","sourceRoot":"","sources":["../../../src/deployment/cdk/epsilon-website-stack.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAC9D,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAE9C,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAEL,8BAA8B,EAC9B,wBAAwB,EACxB,yBAAyB,EAEzB,WAAW,EACX,oBAAoB,EACpB,oBAAoB,EACpB,UAAU,EAEV,oBAAoB,GACrB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAC5E,OAAO,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AACnE,OAAO,EAAE,gBAAgB,EAAE,MAAM,EAAE,MAAM,+BAA+B,CAAC;
|
|
1
|
+
{"version":3,"file":"epsilon-website-stack.js","sourceRoot":"","sources":["../../../src/deployment/cdk/epsilon-website-stack.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAC9D,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAE9C,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAEL,8BAA8B,EAC9B,wBAAwB,EACxB,yBAAyB,EAEzB,WAAW,EACX,oBAAoB,EACpB,oBAAoB,EACpB,UAAU,EAEV,oBAAoB,GACrB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAC5E,OAAO,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AACnE,OAAO,EAAE,gBAAgB,EAAE,MAAM,EAAE,MAAM,+BAA+B,CAAC;AAEzE,OAAO,EAAE,YAAY,EAAE,MAAM,4CAA4C,CAAC;AAE1E,OAAO,EAAE,2BAA2B,EAAE,MAAM,qCAAqC,CAAC;AAClF,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AAErE,MAAM,OAAO,mBAAoB,SAAQ,KAAK;IAC5C,YAAY,KAAgB,EAAE,EAAU,EAAE,KAAgC;QACxE,KAAK,CAAC,KAAK,EAAE,EAAE,EAAE,KAAK,CAAC,CAAC;QAExB,MAAM,cAAc,GAAyB,IAAI,oBAAoB,CAAC,IAAI,EAAE,EAAE,GAAG,gBAAgB,CAAC,CAAC;QAEnG,MAAM,aAAa,GAAG,IAAI,MAAM,CAAC,IAAI,EAAE,EAAE,GAAG,cAAc,EAAE;YAC1D,UAAU,EAAE,KAAK,CAAC,gBAAgB;YAGlC,SAAS,EAAE,KAAK;YAChB,gBAAgB,EAAE,KAAK;YACvB,UAAU,EAAE,gBAAgB,CAAC,UAAU;SA2BxC,CAAC,CAAC;QAGH,MAAM,oBAAoB,GAAmC,CAAC,KAAK,CAAC,wBAAwB,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE;YAC7G,MAAM,UAAU,GAAG,MAAM,CAAC,oBAAoB,CAAC,IAAI,EAAE,EAAE,CAAC,UAAU,GAAG,gBAAgB,EAAE;gBACrF,UAAU,EAAE,EAAE,CAAC,UAAU;aAC1B,CAAC,CAAC;YAEH,MAAM,MAAM,GAAiC;gBAC3C,MAAM,EAAE,UAAU;gBAClB,YAAY,EAAE;oBACZ,cAAc,EAAE;wBACd,cAAc,EAAE,UAAU;wBAC1B,oBAAoB,EAAE,cAAc;qBACrC;oBACD,SAAS,EAAE;wBACT;4BACE,WAAW,EAAE,EAAE,CAAC,WAAW;4BAC3B,iBAAiB,EAAE,KAAK;4BACxB,QAAQ,EAAE,IAAI;4BAEd,UAAU,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC;4BAC/B,MAAM,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC;4BAC3B,MAAM,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC;4BAC3B,eAAe,EAAE;gCACf,WAAW,EAAE,KAAK;6BACnB;yBACF;qBACF;iBACF;aACF,CAAC;YACF,OAAO,MAAM,CAAC;QAChB,CAAC,CAAC,CAAC;QAKH,IAAI,KAAK,CAAC,oBAAoB,KAAK,2BAA2B,CAAC,MAAM,IAAI,CAAC,KAAK,EAAE,uBAAuB,EAAE,MAAM,EAAE,CAAC;YACjH,MAAM,YAAY,CAAC,IAAI,CAAC,uDAAuD,CAAC,CAAC;QACnF,CAAC;QACD,IAAI,KAAK,CAAC,oBAAoB,KAAK,2BAA2B,CAAC,MAAM,IAAI,KAAK,EAAE,uBAAuB,EAAE,MAAM,EAAE,CAAC;YAChH,MAAM,YAAY,CAAC,IAAI,CAAC,wDAAwD,CAAC,CAAC;QACpF,CAAC;QACD,IAAI,gBAA4B,CAAC;QACjC,QAAQ,KAAK,CAAC,oBAAoB,EAAE,CAAC;YAEnC,KAAK,2BAA2B,CAAC,OAAO;gBACtC,gBAAgB,GAAG;oBACjB;wBACE,iBAAiB,EAAE,IAAI;wBACvB,QAAQ,EAAE,IAAI;wBACd,UAAU,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC;wBAC/B,MAAM,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC;wBAC3B,MAAM,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC;wBAC3B,eAAe,EAAE;4BACf,WAAW,EAAE,KAAK;yBACnB;qBACF;iBACF,CAAC;gBACF,MAAM;YACR,KAAK,2BAA2B,CAAC,MAAM;gBACrC,gBAAgB,GAAG,KAAK,CAAC,uBAAuB,CAAC;gBACjD,MAAM;YACR;gBACE,gBAAgB,GAAG;oBACjB;wBACE,iBAAiB,EAAE,IAAI;wBACvB,QAAQ,EAAE,IAAI;wBACd,UAAU,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC;wBAC/B,MAAM,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC;wBAC3B,MAAM,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC;wBAC3B,eAAe,EAAE;4BACf,WAAW,EAAE,KAAK;yBACnB;qBACF;iBACF,CAAC;gBACF,MAAM;QACV,CAAC;QAED,MAAM,WAAW,GAAwB;YACvC,cAAc,EAAE;gBACd,cAAc,EAAE,aAAa;gBAC7B,oBAAoB,EAAE,cAAc;aACrC;YACD,SAAS,EAAE,gBAAgB;SAC5B,CAAC;QAGF,MAAM,UAAU,GAA0B,CAAC,KAAK,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;YAC5E,MAAM,IAAI,GAAwB;gBAChC,kBAAkB,EAAE;oBAClB,UAAU,EAAE,CAAC,CAAC,aAAa;oBAC3B,oBAAoB,EAAE,oBAAoB,CAAC,UAAU;iBACtD;gBAED,SAAS,EAAE;oBACT;wBACE,QAAQ,EAAE,IAAI;wBACd,eAAe,EAAE;4BACf,WAAW,EAAE,IAAI;4BACjB,OAAO,EAAE;gCACP,OAAO,EAAE,WAAW;gCACpB,gBAAgB,EAAE,CAAC,SAAS,CAAC;6BAC9B;4BACD,OAAO,EAAE,CAAC,QAAQ,EAAE,SAAS,EAAE,eAAe,EAAE,cAAc,CAAC;yBAChE;wBACD,WAAW,EAAE,CAAC,CAAC,WAAW;wBAC1B,UAAU,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC;wBAC/B,MAAM,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC;wBAC3B,MAAM,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC;wBAC3B,cAAc,EAAE,wBAAwB,CAAC,GAAG;wBAC5C,aAAa,EAAE,8BAA8B,CAAC,QAAQ;qBACvD;iBACF;aACF,CAAC;YACF,OAAO,IAAI,CAAC;QACd,CAAC,CAAC,CAAC;QAEH,MAAM,iBAAiB,GAAmC;YACxD,WAAW,EAAE,WAAW,CAAC,KAAK;YAC9B,iBAAiB,EAAE,YAAY;YAC/B,aAAa,EAAE,CAAC,WAAW,EAAE,GAAG,UAAU,EAAE,GAAG,oBAAoB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC;YAC/F,mBAAmB,EAAE;gBACnB;oBACE,SAAS,EAAE,GAAG;oBACd,kBAAkB,EAAE,GAAG;oBACvB,YAAY,EAAE,GAAG;oBACjB,gBAAgB,EAAE,aAAa;iBAChC;gBACD;oBACE,SAAS,EAAE,GAAG;oBACd,kBAAkB,EAAE,GAAG;oBACvB,YAAY,EAAE,GAAG;oBACjB,gBAAgB,EAAE,aAAa;iBAChC;aACF;YACD,UAAU,EAAE,UAAU,CAAC,eAAe;YACtC,oBAAoB,EAAE,oBAAoB,CAAC,iBAAiB;YAC5D,iBAAiB,EAAE;gBACjB,OAAO,EAAE,KAAK,CAAC,qBAAqB;gBACpC,KAAK,EAAE;oBACL,iBAAiB,EAAE,KAAK,CAAC,6BAA6B;oBACtD,gBAAgB,EAAE,UAAU;iBAC7B;aACF;SACF,CAAC;QAEF,MAAM,gBAAgB,GAA8B,IAAI,yBAAyB,CAAC,IAAI,EAAE,EAAE,GAAG,kBAAkB,EAAE,iBAAiB,CAAC,CAAC;QAGpI,IAAI,KAAK,EAAE,eAAe,KAAK,sBAAsB,CAAC,MAAM,EAAE,CAAC;YAC7D,IAAI,KAAK,EAAE,qBAAqB,EAAE,MAAM,EAAE,CAAC;gBACzC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,qBAAqB,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;oBAC5D,MAAM,MAAM,GAAG,IAAI,SAAS,CAAC,IAAI,EAAE,EAAE,GAAG,aAAa,GAAG,KAAK,CAAC,qBAAqB,CAAC,CAAC,CAAC,EAAE;wBACtF,UAAU,EAAE,UAAU,CAAC,CAAC;wBACxB,UAAU,EAAE,KAAK,CAAC,qBAAqB,CAAC,CAAC,CAAC;wBAC1C,MAAM,EAAE;4BACN,WAAW,EAAE,IAAI,gBAAgB,CAAC,gBAAgB,CAAC;yBACpD;wBACD,IAAI,EAAE,UAAU,CAAC,UAAU,CAAC,IAAI,EAAE,EAAE,EAAE,EAAE,UAAU,EAAE,gBAAgB,CAAC,iBAAiB,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;qBAC1H,CAAC,CAAC;gBACL,CAAC;YACH,CAAC;QACH,CAAC;QAGD,IAAI,gBAAgB,CAAC,IAAI,EAAE,EAAE,GAAG,YAAY,EAAE;YAC5C,OAAO,EAAE,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;YAChF,iBAAiB,EAAE,aAAa;YAChC,YAAY,EAAE,gBAAgB;YAC9B,iBAAiB,EAAE,CAAC,IAAI,CAAC;SAC1B,CAAC,CAAC;IACL,CAAC;CAEF"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@bitblit/ratchet-epsilon-deployment",
|
|
3
|
-
"version": "5.0.
|
|
3
|
+
"version": "5.0.488-alpha",
|
|
4
4
|
"description": "Epsilon CDK extensions to simplify deployment",
|
|
5
5
|
"sideEffects": false,
|
|
6
6
|
"type": "module",
|
|
@@ -50,14 +50,14 @@
|
|
|
50
50
|
},
|
|
51
51
|
"license": "Apache-2.0",
|
|
52
52
|
"dependencies": {
|
|
53
|
-
"@bitblit/ratchet-aws": "5.0.
|
|
54
|
-
"@bitblit/ratchet-common": "5.0.
|
|
55
|
-
"@bitblit/ratchet-epsilon-common": "5.0.
|
|
53
|
+
"@bitblit/ratchet-aws": "5.0.488-alpha",
|
|
54
|
+
"@bitblit/ratchet-common": "5.0.488-alpha",
|
|
55
|
+
"@bitblit/ratchet-epsilon-common": "5.0.488-alpha",
|
|
56
56
|
"aws-cdk-lib": "2.161.1",
|
|
57
57
|
"constructs": "10.3.0"
|
|
58
58
|
},
|
|
59
59
|
"peerDependencies": {
|
|
60
|
-
"@bitblit/ratchet-common": "5.0.
|
|
60
|
+
"@bitblit/ratchet-common": "5.0.488-alpha",
|
|
61
61
|
"aws-cdk-lib": "^2.161.1",
|
|
62
62
|
"constructs": "^10.3.0"
|
|
63
63
|
}
|