@gradientedge/cdk-utils 4.1.2 → 4.2.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.
@@ -64,6 +64,8 @@ export declare class SiteWithEcsBackend extends CommonConstruct {
64
64
  siteInternalDomainName: string;
65
65
  siteExternalDomainName: string;
66
66
  siteDomainNames: string[];
67
+ siteCloudfrontFunction: cloudfront.Function;
68
+ siteFunctionAssociations: cloudfront.FunctionAssociation[];
67
69
  /**
68
70
  * @summary Constructor to initialise the SiteWithEcsBackend Construct
69
71
  * @param {Construct} parent
@@ -148,6 +150,16 @@ export declare class SiteWithEcsBackend extends CommonConstruct {
148
150
  */
149
151
  protected createSiteLogBucket(): void;
150
152
  protected createSiteOrigin(): void;
153
+ /**
154
+ * @summary Method to create a site cloudfront function
155
+ * @protected
156
+ */
157
+ protected createSiteCloudfrontFunction(): void;
158
+ /**
159
+ * @summary Method to create a site cloudfront function associations
160
+ * @protected
161
+ */
162
+ protected resolveSiteFunctionAssociations(): void;
151
163
  /**
152
164
  * Method to create Site distribution
153
165
  * @protected
@@ -1 +1 @@
1
- {"version":3,"file":"siteWithEcsBackend.d.ts","sourceRoot":"","sources":["../../../../src/lib/construct/siteWithEcsBackend.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"siteWithEcsBackend.d.ts","sourceRoot":"","sources":["../../../../src/lib/construct/siteWithEcsBackend.ts"],"names":[],"mappings":"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"}
@@ -79,6 +79,8 @@ class SiteWithEcsBackend extends commonConstruct_1.CommonConstruct {
79
79
  siteInternalDomainName;
80
80
  siteExternalDomainName;
81
81
  siteDomainNames;
82
+ siteCloudfrontFunction;
83
+ siteFunctionAssociations;
82
84
  /**
83
85
  * @summary Constructor to initialise the SiteWithEcsBackend Construct
84
86
  * @param {Construct} parent
@@ -110,6 +112,8 @@ class SiteWithEcsBackend extends commonConstruct_1.CommonConstruct {
110
112
  this.createEcsService();
111
113
  this.createSiteLogBucket();
112
114
  this.createSiteOrigin();
115
+ this.createSiteCloudfrontFunction();
116
+ this.resolveSiteFunctionAssociations();
113
117
  this.createDistribution();
114
118
  this.createNetworkMappings();
115
119
  this.invalidateDistributionCache();
@@ -284,12 +288,35 @@ class SiteWithEcsBackend extends commonConstruct_1.CommonConstruct {
284
288
  protocolPolicy: cloudfront.OriginProtocolPolicy.HTTP_ONLY,
285
289
  });
286
290
  }
291
+ /**
292
+ * @summary Method to create a site cloudfront function
293
+ * @protected
294
+ */
295
+ createSiteCloudfrontFunction() {
296
+ if (this.props.siteCloudfrontFunctionProps) {
297
+ this.siteCloudfrontFunction = this.cloudFrontManager.createCloudfrontFunction(`${this.id}-function`, this, this.props.siteCloudfrontFunctionProps);
298
+ }
299
+ }
300
+ /**
301
+ * @summary Method to create a site cloudfront function associations
302
+ * @protected
303
+ */
304
+ resolveSiteFunctionAssociations() {
305
+ if (this.props.siteCloudfrontFunctionProps) {
306
+ this.siteFunctionAssociations = [
307
+ {
308
+ function: this.siteCloudfrontFunction,
309
+ eventType: cloudfront.FunctionEventType.VIEWER_REQUEST,
310
+ },
311
+ ];
312
+ }
313
+ }
287
314
  /**
288
315
  * Method to create Site distribution
289
316
  * @protected
290
317
  */
291
318
  createDistribution() {
292
- this.siteDistribution = this.cloudFrontManager.createDistributionWithHttpOrigin(`${this.id}-distribution`, this, this.props.siteDistribution, this.siteOrigin, this.siteDomainNames, this.siteLogBucket, this.siteCertificate);
319
+ this.siteDistribution = this.cloudFrontManager.createDistributionWithHttpOrigin(`${this.id}-distribution`, this, this.props.siteDistribution, this.siteOrigin, this.siteDomainNames, this.siteLogBucket, this.siteCertificate, this.siteFunctionAssociations);
293
320
  }
294
321
  /**
295
322
  * Method to create Route53 records for distribution
@@ -1 +1 @@
1
- {"version":3,"file":"siteWithEcsBackend.js","sourceRoot":"","sources":["../../../../src/lib/construct/siteWithEcsBackend.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AACA,+DAA2D;AAE3D,iDAAkC;AAClC,yDAA0C;AAE1C,yDAA0C;AAI1C,uEAAwD;AACxD,0EAA2D;AAE3D,4EAA6D;AAI7D;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,MAAa,kBAAmB,SAAQ,iCAAe;IACrD,qBAAqB;IACrB,KAAK,CAAyB;IAC9B,EAAE,CAAQ;IAEV,oBAAoB;IACpB,cAAc,CAAqB;IACnC,eAAe,CAAiC;IAChD,aAAa,CAAoB;IACjC,WAAW,CAAU;IACrB,kBAAkB,CAA2B;IAC7C,OAAO,CAAS;IAChB,WAAW,CAAK;IAChB,cAAc,CAAa;IAC3B,eAAe,CAAe;IAC9B,gBAAgB,GAAQ,EAAE,CAAA;IAC1B,qBAAqB,CAAgB;IACrC,cAAc,CAAoB;IAClC,qBAAqB,CAA2B;IAChD,eAAe,CAAyB;IACxC,mBAAmB,CAA6B;IAChD,kBAAkB,CAA4B;IAC9C,aAAa,CAAY;IACzB,UAAU,CAAoB;IAC9B,gBAAgB,CAAyB;IACzC,iBAAiB,CAAwB;IACzC,sBAAsB,CAAQ;IAC9B,sBAAsB,CAAQ;IAC9B,eAAe,CAAU;IAEzB;;;;;OAKG;IACH,YAAY,MAAiB,EAAE,EAAU,EAAE,KAA8B;QACvE,KAAK,CAAC,MAAM,EAAE,EAAE,EAAE,KAAK,CAAC,CAAA;QAExB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAA;QAClB,IAAI,CAAC,EAAE,GAAG,EAAE,CAAA;IACd,CAAC;IAED;;;OAGG;IACO,aAAa;QACrB,IAAI,CAAC,iBAAiB,EAAE,CAAA;QACxB,IAAI,CAAC,kBAAkB,EAAE,CAAA;QACzB,IAAI,CAAC,kBAAkB,EAAE,CAAA;QACzB,IAAI,CAAC,sBAAsB,EAAE,CAAA;QAC7B,IAAI,CAAC,SAAS,EAAE,CAAA;QAChB,IAAI,CAAC,eAAe,EAAE,CAAA;QACtB,IAAI,CAAC,aAAa,EAAE,CAAA;QACpB,IAAI,CAAC,oBAAoB,EAAE,CAAA;QAC3B,IAAI,CAAC,gBAAgB,EAAE,CAAA;QACvB,IAAI,CAAC,iBAAiB,EAAE,CAAA;QACxB,IAAI,CAAC,kBAAkB,EAAE,CAAA;QACzB,IAAI,CAAC,uBAAuB,EAAE,CAAA;QAC9B,IAAI,CAAC,gBAAgB,EAAE,CAAA;QACvB,IAAI,CAAC,mBAAmB,EAAE,CAAA;QAC1B,IAAI,CAAC,gBAAgB,EAAE,CAAA;QACvB,IAAI,CAAC,kBAAkB,EAAE,CAAA;QACzB,IAAI,CAAC,qBAAqB,EAAE,CAAA;QAC5B,IAAI,CAAC,2BAA2B,EAAE,CAAA;IACpC,CAAC;IAED;;;OAGG;IACO,iBAAiB;QACzB,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,CAAC,0CAA0C,CAClF,GAAG,IAAI,CAAC,EAAE,cAAc,EACxB,IAAI,EACJ,IAAI,CAAC,KAAK,CAAC,qBAAqB,CACjC,CAAA;IACH,CAAC;IAED;;;OAGG;IACO,kBAAkB;QAC1B,gCAAgC;QAChC,IACE,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,sBAAsB;YACjD,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,kBAAkB;YAC7C,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,iBAAiB,EAC5C;YACA,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,cAAc,GAAG,IAAI,CAAC,UAAU,CAAC,6BAA6B,CACvF,GAAG,IAAI,CAAC,EAAE,wBAAwB,EAClC,IAAI,EACJ,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,kBAAkB,EAC7C,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,iBAAiB,CAC7C,CAAA;SACF;QACD,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,UAAU,CAAC,kBAAkB,CACvD,GAAG,IAAI,CAAC,EAAE,cAAc,EACxB,IAAI,EACJ,IAAI,CAAC,KAAK,CAAC,eAAe,CAC3B,CAAA;IACH,CAAC;IAED;;;;OAIG;IACO,kBAAkB,KAAI,CAAC;IAEjC;;;OAGG;IACO,sBAAsB;QAC9B,0CAA0C;QAC1C,IAAI,CAAC,sBAAsB,GAAG,IAAI,CAAC,iBAAiB,EAAE;YACpD,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,aAAa,aAAa,IAAI,CAAC,wBAAwB,EAAE;YACzE,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,aAAa,aAAa,IAAI,CAAC,KAAK,CAAC,KAAK,IAAI,IAAI,CAAC,wBAAwB,EAAE,CAAA;QAE/F,oDAAoD;QACpD,IAAI,CAAC,sBAAsB,GAAG,IAAI,CAAC,iBAAiB,EAAE;YACpD,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,aAAa,IAAI,IAAI,CAAC,wBAAwB,EAAE;YAChE,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,aAAa,IAAI,IAAI,CAAC,KAAK,CAAC,KAAK,IAAI,IAAI,CAAC,wBAAwB,EAAE,CAAA;QAEtF,IAAI,CAAC,eAAe,GAAG,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAA;IACtD,CAAC;IAED;;;OAGG;IACO,SAAS;QACjB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,eAAe,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;IACtG,CAAC;IAED;;;OAGG;IACO,eAAe;QACvB,IAAI,CAAC,aAAa,GAAG,IAAI,GAAG,CAAC,cAAc,CAAC;YAC1C,UAAU,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,uBAAuB,CAAC,IAAI,CAAC,CAAC;SAC5D,CAAC,CAAA;IACJ,CAAC;IAED;;;OAGG;IACO,aAAa;QACrB,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,UAAU,CAAC,yBAAyB,CAAC,GAAG,IAAI,CAAC,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,CAAC,aAAa,CAAC,CAAA;IAC/G,CAAC;IAED;;;OAGG;IACO,oBAAoB;QAC5B,IAAI,CAAC,kBAAkB,GAAG;YACxB,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO;YAC5B,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,QAAQ;YAC9B,EAAE,EAAE,IAAI,CAAC,KAAK,CAAC,QAAQ;SACxB,CAAA;IACH,CAAC;IAED;;;OAGG;IACO,gBAAgB;QACxB,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,UAAU,CAAC,gBAAgB,CACpD,GAAG,IAAI,CAAC,EAAE,UAAU,EACpB,IAAI,EACJ,IAAI,CAAC,KAAK,CAAC,WAAW,EACtB,IAAI,CAAC,OAAO,CACb,CAAA;IACH,CAAC;IAED;;;OAGG;IACO,iBAAiB;QACzB,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC,GAAG,IAAI,CAAC,EAAE,gBAAgB,EAAE,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;IAC7G,CAAC;IAED;;;OAGG;IACO,kBAAkB;QAC1B,IAAI,CAAC,gBAAgB,GAAG,EAAE,CAAA;IAC5B,CAAC;IAED;;;OAGG;IACO,uBAAuB;QAC/B,IAAI,CAAC,qBAAqB,GAAG,GAAG,CAAC,cAAc,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,yBAAyB,EAAE;YAC9F,SAAS,EAAE,IAAI,CAAC,gBAAgB;SACjC,CAAC,CAAA;IACJ,CAAC;IAED;;;OAGG;IACO,gBAAgB;QACxB,MAAM,cAAc,GAAG,IAAI,WAAW,CAAC,qCAAqC,CAAC,IAAI,EAAE,GAAG,IAAI,CAAC,EAAE,cAAc,EAAE;YAC3G,OAAO,EAAE,IAAI,CAAC,cAAc;YAC5B,YAAY,EAAE,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,YAAY;YAC9C,oBAAoB,EAAE,IAAI;YAC1B,WAAW,EAAE,GAAG,IAAI,CAAC,EAAE,IAAI,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE;YAC7C,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG;YAC5B,gBAAgB,EAAE,GAAG,IAAI,CAAC,EAAE,IAAI,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE;YAClD,UAAU,EAAE,IAAI,CAAC,sBAAsB;YACvC,UAAU,EAAE,IAAI,CAAC,cAAc;YAC/B,YAAY,EAAE,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,YAAY;YAC9C,cAAc,EAAE,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,cAAc;YAClD,sBAAsB,EAAE,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;YAChD,cAAc,EAAE,IAAI;YACpB,gBAAgB,EAAE;gBAChB,aAAa,EAAE,IAAI;gBACnB,SAAS,EAAE,GAAG,CAAC,SAAS,CAAC,OAAO,CAAC;oBAC/B,QAAQ,EAAE,IAAI,CAAC,eAAe;oBAC9B,YAAY,EAAE,GAAG,IAAI,CAAC,EAAE,IAAI,IAAI,CAAC,KAAK,CAAC,KAAK,MAAM;iBACnD,CAAC;gBACF,KAAK,EAAE,IAAI,CAAC,qBAAqB;gBACjC,aAAa,EAAE,IAAI,CAAC,WAAW;gBAC/B,QAAQ,EAAE,IAAI,CAAC,WAAW;gBAC1B,aAAa,EAAE,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,gBAAgB,EAAE,aAAa;gBAClE,WAAW,EAAE,IAAI,CAAC,kBAAkB;gBACpC,OAAO,EAAE,IAAI,CAAC,WAAW;aAC1B;SACF,CAAC,CAAA;QAEF,IAAI,IAAI,CAAC,KAAK,CAAC,eAAe,EAAE;YAC9B,cAAc,CAAC,WAAW,CAAC,oBAAoB,CAAC;gBAC9C,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,OAAO,IAAI,IAAI;gBACnD,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,IAAI,IAAI,GAAG;gBAC5C,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,IAAI;gBACrC,QAAQ,EAAE,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,cAAc,CAAC;gBACzE,OAAO,EAAE,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,aAAa,CAAC;gBACvE,qBAAqB,EAAE,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,qBAAqB;gBACvE,uBAAuB,EAAE,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,uBAAuB;gBAC3E,gBAAgB,EAAE,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,gBAAgB;gBAC7D,gBAAgB,EAAE,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,gBAAgB;gBAC7D,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,QAAQ;aAC9C,CAAC,CAAA;SACH;QAED,IAAI,CAAC,cAAc,GAAG,cAAc,CAAC,OAAO,CAAA;QAC5C,IAAI,CAAC,qBAAqB,GAAG,cAAc,CAAC,cAAc,CAAA;QAC1D,IAAI,CAAC,eAAe,GAAG,cAAc,CAAC,QAAQ,CAAA;QAC9C,IAAI,CAAC,mBAAmB,GAAG,cAAc,CAAC,YAAY,CAAA;QACtD,IAAI,CAAC,kBAAkB,GAAG,cAAc,CAAC,WAAW,CAAA;IACtD,CAAC;IAED;;;OAGG;IACO,mBAAmB;QAC3B,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,GAAG,IAAI,CAAC,EAAE,YAAY,EAAE,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,CAAA;IAC5G,CAAC;IAES,gBAAgB;QACxB,IAAI,CAAC,UAAU,GAAG,IAAI,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,mBAAmB,CAAC,mBAAmB,EAAE;YACrF,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,YAAY;YAC1C,cAAc,EAAE,UAAU,CAAC,oBAAoB,CAAC,SAAS;SAC1D,CAAC,CAAA;IACJ,CAAC;IAED;;;OAGG;IACO,kBAAkB;QAC1B,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,iBAAiB,CAAC,gCAAgC,CAC7E,GAAG,IAAI,CAAC,EAAE,eAAe,EACzB,IAAI,EACJ,IAAI,CAAC,KAAK,CAAC,gBAAgB,EAC3B,IAAI,CAAC,UAAU,EACf,IAAI,CAAC,eAAe,EACpB,IAAI,CAAC,aAAa,EAClB,IAAI,CAAC,eAAe,CACrB,CAAA;IACH,CAAC;IAED;;;OAGG;IACO,qBAAqB;QAC7B,IAAI,CAAC,cAAc,CAAC,6BAA6B,CAC/C,GAAG,IAAI,CAAC,EAAE,WAAW,EACrB,IAAI,EACJ,IAAI,CAAC,gBAAgB,EACrB,IAAI,CAAC,cAAc,EACnB,IAAI,CAAC,KAAK,CAAC,cAAc,CAC1B,CAAA;IACH,CAAC;IAED;;;OAGG;IACO,2BAA2B;QACnC,IAAI,IAAI,CAAC,KAAK,CAAC,mCAAmC,EAAE;YAClD,IAAI,CAAC,iBAAiB,CAAC,eAAe,CACpC,GAAG,IAAI,CAAC,EAAE,qBAAqB,EAC/B,IAAI,EACJ,IAAI,CAAC,KAAK,CAAC,mCAAmC,EAC9C,IAAI,CAAC,gBAAgB,CAAC,cAAc,CACrC,CAAA;SACF;IACH,CAAC;CACF;AAjUD,gDAiUC"}
1
+ {"version":3,"file":"siteWithEcsBackend.js","sourceRoot":"","sources":["../../../../src/lib/construct/siteWithEcsBackend.ts"],"names":[],"mappings":"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"}
@@ -42,6 +42,8 @@ export declare class StaticSite extends CommonConstruct {
42
42
  siteDistribution: cloudfront.Distribution;
43
43
  siteLogBucket: s3.IBucket;
44
44
  siteOriginAccessIdentity: cloudfront.OriginAccessIdentity;
45
+ siteCloudfrontFunction: cloudfront.Function;
46
+ siteFunctionAssociations: cloudfront.FunctionAssociation[];
45
47
  /**
46
48
  * @summary Constructor to initialise the StaticSite Construct
47
49
  * @param {Construct} parent
@@ -75,6 +77,16 @@ export declare class StaticSite extends CommonConstruct {
75
77
  */
76
78
  protected createSiteBucket(): void;
77
79
  protected createSiteOrigin(): void;
80
+ /**
81
+ * @summary Method to create a site cloudfront function
82
+ * @protected
83
+ */
84
+ protected createSiteCloudfrontFunction(): void;
85
+ /**
86
+ * @summary Method to create a site cloudfront function associations
87
+ * @protected
88
+ */
89
+ protected resolveSiteFunctionAssociations(): void;
78
90
  /**
79
91
  * @summary Method to create a site cloudfront distribution
80
92
  * @protected
@@ -1 +1 @@
1
- {"version":3,"file":"staticSite.d.ts","sourceRoot":"","sources":["../../../../src/lib/construct/staticSite.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAA;AAC3D,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAA;AAC1C,OAAO,KAAK,OAAO,MAAM,yBAAyB,CAAA;AAClD,OAAO,KAAK,kBAAkB,MAAM,oCAAoC,CAAA;AACxE,OAAO,KAAK,EAAE,MAAM,oBAAoB,CAAA;AACxC,OAAO,KAAK,UAAU,MAAM,4BAA4B,CAAA;AACxD,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAA;AACtC,OAAO,KAAK,OAAO,MAAM,oCAAoC,CAAA;AAE7D;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,qBAAa,UAAW,SAAQ,eAAe;IAE7C,KAAK,EAAE,eAAe,CAAA;IACtB,EAAE,EAAE,MAAM,CAAA;IAGV,cAAc,EAAE,OAAO,CAAC,WAAW,CAAA;IACnC,eAAe,EAAE,kBAAkB,CAAC,YAAY,CAAA;IAChD,WAAW,EAAE,OAAO,CAAC,OAAO,CAAA;IAC5B,cAAc,EAAE,OAAO,CAAC,OAAO,CAAA;IAC/B,UAAU,EAAE,EAAE,CAAC,OAAO,CAAA;IACtB,UAAU,EAAE,OAAO,CAAC,QAAQ,CAAA;IAC5B,gBAAgB,EAAE,UAAU,CAAC,YAAY,CAAA;IACzC,aAAa,EAAE,EAAE,CAAC,OAAO,CAAA;IACzB,wBAAwB,EAAE,UAAU,CAAC,oBAAoB,CAAA;IAEzD;;;;;OAKG;gBACS,MAAM,EAAE,SAAS,EAAE,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,eAAe;IAOjE;;;OAGG;IACH,SAAS,CAAC,aAAa;IAWvB;;;OAGG;IACH,SAAS,CAAC,iBAAiB;IAQ3B;;;OAGG;IACH,SAAS,CAAC,kBAAkB;IAoB5B;;;OAGG;IACH,SAAS,CAAC,mBAAmB;IAI7B;;;OAGG;IACH,SAAS,CAAC,gBAAgB;IAI1B,SAAS,CAAC,gBAAgB;IAI1B;;;OAGG;IACH,SAAS,CAAC,sBAAsB;IAgBhC;;;OAGG;IACH,SAAS,CAAC,qBAAqB;IAoB/B;;;OAGG;IACH,SAAS,CAAC,UAAU;CAWrB"}
1
+ {"version":3,"file":"staticSite.d.ts","sourceRoot":"","sources":["../../../../src/lib/construct/staticSite.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAA;AAC3D,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAA;AAC1C,OAAO,KAAK,OAAO,MAAM,yBAAyB,CAAA;AAClD,OAAO,KAAK,kBAAkB,MAAM,oCAAoC,CAAA;AACxE,OAAO,KAAK,EAAE,MAAM,oBAAoB,CAAA;AACxC,OAAO,KAAK,UAAU,MAAM,4BAA4B,CAAA;AACxD,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAA;AACtC,OAAO,KAAK,OAAO,MAAM,oCAAoC,CAAA;AAE7D;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,qBAAa,UAAW,SAAQ,eAAe;IAE7C,KAAK,EAAE,eAAe,CAAA;IACtB,EAAE,EAAE,MAAM,CAAA;IAGV,cAAc,EAAE,OAAO,CAAC,WAAW,CAAA;IACnC,eAAe,EAAE,kBAAkB,CAAC,YAAY,CAAA;IAChD,WAAW,EAAE,OAAO,CAAC,OAAO,CAAA;IAC5B,cAAc,EAAE,OAAO,CAAC,OAAO,CAAA;IAC/B,UAAU,EAAE,EAAE,CAAC,OAAO,CAAA;IACtB,UAAU,EAAE,OAAO,CAAC,QAAQ,CAAA;IAC5B,gBAAgB,EAAE,UAAU,CAAC,YAAY,CAAA;IACzC,aAAa,EAAE,EAAE,CAAC,OAAO,CAAA;IACzB,wBAAwB,EAAE,UAAU,CAAC,oBAAoB,CAAA;IACzD,sBAAsB,EAAE,UAAU,CAAC,QAAQ,CAAA;IAC3C,wBAAwB,EAAE,UAAU,CAAC,mBAAmB,EAAE,CAAA;IAE1D;;;;;OAKG;gBACS,MAAM,EAAE,SAAS,EAAE,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,eAAe;IAOjE;;;OAGG;IACH,SAAS,CAAC,aAAa;IAavB;;;OAGG;IACH,SAAS,CAAC,iBAAiB;IAQ3B;;;OAGG;IACH,SAAS,CAAC,kBAAkB;IAoB5B;;;OAGG;IACH,SAAS,CAAC,mBAAmB;IAI7B;;;OAGG;IACH,SAAS,CAAC,gBAAgB;IAI1B,SAAS,CAAC,gBAAgB;IAI1B;;;OAGG;IACH,SAAS,CAAC,4BAA4B;IAUtC;;;OAGG;IACH,SAAS,CAAC,+BAA+B;IAWzC;;;OAGG;IACH,SAAS,CAAC,sBAAsB;IAiBhC;;;OAGG;IACH,SAAS,CAAC,qBAAqB;IAoB/B;;;OAGG;IACH,SAAS,CAAC,UAAU;CAWrB"}
@@ -21,6 +21,7 @@ var __importStar = (this && this.__importStar) || function (mod) {
21
21
  Object.defineProperty(exports, "__esModule", { value: true });
22
22
  exports.StaticSite = void 0;
23
23
  const commonConstruct_1 = require("../common/commonConstruct");
24
+ const cloudfront = __importStar(require("aws-cdk-lib/aws-cloudfront"));
24
25
  const origins = __importStar(require("aws-cdk-lib/aws-cloudfront-origins"));
25
26
  /**
26
27
  * @stability stable
@@ -60,6 +61,8 @@ class StaticSite extends commonConstruct_1.CommonConstruct {
60
61
  siteDistribution;
61
62
  siteLogBucket;
62
63
  siteOriginAccessIdentity;
64
+ siteCloudfrontFunction;
65
+ siteFunctionAssociations;
63
66
  /**
64
67
  * @summary Constructor to initialise the StaticSite Construct
65
68
  * @param {Construct} parent
@@ -81,6 +84,8 @@ class StaticSite extends commonConstruct_1.CommonConstruct {
81
84
  this.createSiteLogBucket();
82
85
  this.createSiteBucket();
83
86
  this.createSiteOrigin();
87
+ this.createSiteCloudfrontFunction();
88
+ this.resolveSiteFunctionAssociations();
84
89
  this.createSiteDistribution();
85
90
  this.createSiteRouteAssets();
86
91
  this.deploySite();
@@ -121,6 +126,29 @@ class StaticSite extends commonConstruct_1.CommonConstruct {
121
126
  createSiteOrigin() {
122
127
  this.siteOrigin = new origins.S3Origin(this.siteBucket);
123
128
  }
129
+ /**
130
+ * @summary Method to create a site cloudfront function
131
+ * @protected
132
+ */
133
+ createSiteCloudfrontFunction() {
134
+ if (this.props.siteCloudfrontFunctionProps) {
135
+ this.siteCloudfrontFunction = this.cloudFrontManager.createCloudfrontFunction(`${this.id}-function`, this, this.props.siteCloudfrontFunctionProps);
136
+ }
137
+ }
138
+ /**
139
+ * @summary Method to create a site cloudfront function associations
140
+ * @protected
141
+ */
142
+ resolveSiteFunctionAssociations() {
143
+ if (this.props.siteCloudfrontFunctionProps) {
144
+ this.siteFunctionAssociations = [
145
+ {
146
+ function: this.siteCloudfrontFunction,
147
+ eventType: cloudfront.FunctionEventType.VIEWER_REQUEST,
148
+ },
149
+ ];
150
+ }
151
+ }
124
152
  /**
125
153
  * @summary Method to create a site cloudfront distribution
126
154
  * @protected
@@ -128,7 +156,7 @@ class StaticSite extends commonConstruct_1.CommonConstruct {
128
156
  createSiteDistribution() {
129
157
  if (!this.props.siteDistribution)
130
158
  throw 'SiteDistribution props undefined';
131
- this.siteDistribution = this.cloudFrontManager.createDistributionWithS3Origin(`${this.id}-distribution`, this, this.props.siteDistribution, this.siteOrigin, this.siteBucket, this.siteLogBucket, this.siteOriginAccessIdentity, this.siteCertificate, this.props.siteAliases);
159
+ this.siteDistribution = this.cloudFrontManager.createDistributionWithS3Origin(`${this.id}-distribution`, this, this.props.siteDistribution, this.siteOrigin, this.siteBucket, this.siteLogBucket, this.siteOriginAccessIdentity, this.siteCertificate, this.props.siteAliases, this.siteFunctionAssociations);
132
160
  }
133
161
  /**
134
162
  * @summary Method to create route53 records for static site
@@ -1 +1 @@
1
- {"version":3,"file":"staticSite.js","sourceRoot":"","sources":["../../../../src/lib/construct/staticSite.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"staticSite.js","sourceRoot":"","sources":["../../../../src/lib/construct/staticSite.ts"],"names":[],"mappings":"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"}
@@ -3,7 +3,7 @@ import * as cloudfront from 'aws-cdk-lib/aws-cloudfront';
3
3
  import * as lambda from 'aws-cdk-lib/aws-lambda';
4
4
  import * as s3 from 'aws-cdk-lib/aws-s3';
5
5
  import { CommonConstruct } from '../common/commonConstruct';
6
- import { CloudFrontProps, DistributionProps, LambdaEdgeProps } from '../types';
6
+ import { CloudFrontProps, DistributionProps, LambdaEdgeProps, CloudfrontFunctionProps } from '../types';
7
7
  import * as ec2 from 'aws-cdk-lib/aws-ec2';
8
8
  import * as efs from 'aws-cdk-lib/aws-efs';
9
9
  import * as origins from 'aws-cdk-lib/aws-cloudfront-origins';
@@ -60,8 +60,9 @@ export declare class CloudFrontManager {
60
60
  * @param {cloudfront.OriginAccessIdentity?} oai
61
61
  * @param {acm.ICertificate?} certificate
62
62
  * @param {string[]?} aliases
63
+ * @param {cloudfront.FunctionAssociation?} defaultFunctionAssociations
63
64
  */
64
- createDistributionWithS3Origin(id: string, scope: CommonConstruct, props: DistributionProps, origin: origins.S3Origin, siteBucket: s3.IBucket, logBucket?: s3.IBucket, oai?: cloudfront.OriginAccessIdentity, certificate?: acm.ICertificate, aliases?: string[]): cloudfront.Distribution;
65
+ createDistributionWithS3Origin(id: string, scope: CommonConstruct, props: DistributionProps, origin: origins.S3Origin, siteBucket: s3.IBucket, logBucket?: s3.IBucket, oai?: cloudfront.OriginAccessIdentity, certificate?: acm.ICertificate, aliases?: string[], defaultFunctionAssociations?: cloudfront.FunctionAssociation[]): cloudfront.Distribution;
65
66
  /**
66
67
  * Method to create a CloudFront distribution with HTTP Origin
67
68
  * @param {string} id scoped id of the resource
@@ -71,8 +72,9 @@ export declare class CloudFrontManager {
71
72
  * @param {string[]} domainNames
72
73
  * @param {s3.IBucket?} logBucket
73
74
  * @param {acm.ICertificate?} certificate
75
+ * @param {cloudfront.FunctionAssociation?} defaultFunctionAssociations
74
76
  */
75
- createDistributionWithHttpOrigin(id: string, scope: CommonConstruct, props: DistributionProps, origin: origins.HttpOrigin, domainNames: string[], logBucket?: s3.IBucket, certificate?: acm.ICertificate): cloudfront.Distribution;
77
+ createDistributionWithHttpOrigin(id: string, scope: CommonConstruct, props: DistributionProps, origin: origins.HttpOrigin, domainNames: string[], logBucket?: s3.IBucket, certificate?: acm.ICertificate, defaultFunctionAssociations?: cloudfront.FunctionAssociation[]): cloudfront.Distribution;
76
78
  /**
77
79
  * @summary Method to provision a Lambda@Edge function
78
80
  *
@@ -97,5 +99,13 @@ export declare class CloudFrontManager {
97
99
  * @param paths
98
100
  */
99
101
  invalidateCache(id: string, scope: CommonConstruct, dockerFilePath: string, distributionId: string, paths?: string): void;
102
+ /**
103
+ * @summary Method to provision a Cloudfront function
104
+ *
105
+ * @param {string} id scoped id of the resource
106
+ * @param {CommonConstruct} scope scope in which this resource is defined
107
+ * @param {CloudfrontFunctionProps} props
108
+ */
109
+ createCloudfrontFunction(id: string, scope: CommonConstruct, props: CloudfrontFunctionProps): cloudfront.Function;
100
110
  }
101
111
  //# sourceMappingURL=cloudFrontManager.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"cloudFrontManager.d.ts","sourceRoot":"","sources":["../../../../src/lib/manager/cloudFrontManager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,GAAG,MAAM,oCAAoC,CAAA;AACzD,OAAO,KAAK,UAAU,MAAM,4BAA4B,CAAA;AACxD,OAAO,KAAK,MAAM,MAAM,wBAAwB,CAAA;AAChD,OAAO,KAAK,EAAE,MAAM,oBAAoB,CAAA;AACxC,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAA;AAC3D,OAAO,EAAE,eAAe,EAAE,iBAAiB,EAAE,eAAe,EAAE,MAAM,UAAU,CAAA;AAG9E,OAAO,KAAK,GAAG,MAAM,qBAAqB,CAAA;AAC1C,OAAO,KAAK,GAAG,MAAM,qBAAqB,CAAA;AAC1C,OAAO,KAAK,OAAO,MAAM,oCAAoC,CAAA;AAG7D;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,qBAAa,iBAAiB;IACrB,0BAA0B,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,eAAe,EAAE,YAAY,CAAC,EAAE,EAAE,CAAC,OAAO;IAS/F;;;;;;;;;;;;OAYG;IACI,4BAA4B,CACjC,EAAE,EAAE,MAAM,EACV,KAAK,EAAE,eAAe,EACtB,KAAK,EAAE,eAAe,EACtB,UAAU,CAAC,EAAE,EAAE,CAAC,OAAO,EACvB,SAAS,CAAC,EAAE,EAAE,CAAC,OAAO,EACtB,GAAG,CAAC,EAAE,UAAU,CAAC,oBAAoB,EACrC,WAAW,CAAC,EAAE,GAAG,CAAC,YAAY,EAC9B,OAAO,CAAC,EAAE,MAAM,EAAE;IA0CpB;;;;;;;;;;;OAWG;IACI,8BAA8B,CACnC,EAAE,EAAE,MAAM,EACV,KAAK,EAAE,eAAe,EACtB,KAAK,EAAE,iBAAiB,EACxB,MAAM,EAAE,OAAO,CAAC,QAAQ,EACxB,UAAU,EAAE,EAAE,CAAC,OAAO,EACtB,SAAS,CAAC,EAAE,EAAE,CAAC,OAAO,EACtB,GAAG,CAAC,EAAE,UAAU,CAAC,oBAAoB,EACrC,WAAW,CAAC,EAAE,GAAG,CAAC,YAAY,EAC9B,OAAO,CAAC,EAAE,MAAM,EAAE;IAiCpB;;;;;;;;;OASG;IACI,gCAAgC,CACrC,EAAE,EAAE,MAAM,EACV,KAAK,EAAE,eAAe,EACtB,KAAK,EAAE,iBAAiB,EACxB,MAAM,EAAE,OAAO,CAAC,UAAU,EAC1B,WAAW,EAAE,MAAM,EAAE,EACrB,SAAS,CAAC,EAAE,EAAE,CAAC,OAAO,EACtB,WAAW,CAAC,EAAE,GAAG,CAAC,YAAY;IAiChC;;;;;;;;;;;;;OAaG;IACI,kBAAkB,CACvB,EAAE,EAAE,MAAM,EACV,KAAK,EAAE,eAAe,EACtB,KAAK,EAAE,eAAe,EACtB,MAAM,EAAE,MAAM,CAAC,aAAa,EAAE,EAC9B,IAAI,EAAE,MAAM,CAAC,SAAS,EACtB,WAAW,CAAC,EAAE,GAAG,EACjB,GAAG,CAAC,EAAE,GAAG,CAAC,IAAI,EACd,cAAc,CAAC,EAAE,GAAG,CAAC,cAAc,EAAE,EACrC,WAAW,CAAC,EAAE,GAAG,CAAC,YAAY,EAC9B,SAAS,CAAC,EAAE,MAAM;IA8BpB;;;;;;;OAOG;IACI,eAAe,CACpB,EAAE,EAAE,MAAM,EACV,KAAK,EAAE,eAAe,EACtB,cAAc,EAAE,MAAM,EACtB,cAAc,EAAE,MAAM,EACtB,KAAK,CAAC,EAAE,MAAM;CAoBjB"}
1
+ {"version":3,"file":"cloudFrontManager.d.ts","sourceRoot":"","sources":["../../../../src/lib/manager/cloudFrontManager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,GAAG,MAAM,oCAAoC,CAAA;AACzD,OAAO,KAAK,UAAU,MAAM,4BAA4B,CAAA;AACxD,OAAO,KAAK,MAAM,MAAM,wBAAwB,CAAA;AAChD,OAAO,KAAK,EAAE,MAAM,oBAAoB,CAAA;AACxC,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAA;AAC3D,OAAO,EAAE,eAAe,EAAE,iBAAiB,EAAE,eAAe,EAAE,uBAAuB,EAAE,MAAM,UAAU,CAAA;AAGvG,OAAO,KAAK,GAAG,MAAM,qBAAqB,CAAA;AAC1C,OAAO,KAAK,GAAG,MAAM,qBAAqB,CAAA;AAC1C,OAAO,KAAK,OAAO,MAAM,oCAAoC,CAAA;AAG7D;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,qBAAa,iBAAiB;IACrB,0BAA0B,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,eAAe,EAAE,YAAY,CAAC,EAAE,EAAE,CAAC,OAAO;IAS/F;;;;;;;;;;;;OAYG;IACI,4BAA4B,CACjC,EAAE,EAAE,MAAM,EACV,KAAK,EAAE,eAAe,EACtB,KAAK,EAAE,eAAe,EACtB,UAAU,CAAC,EAAE,EAAE,CAAC,OAAO,EACvB,SAAS,CAAC,EAAE,EAAE,CAAC,OAAO,EACtB,GAAG,CAAC,EAAE,UAAU,CAAC,oBAAoB,EACrC,WAAW,CAAC,EAAE,GAAG,CAAC,YAAY,EAC9B,OAAO,CAAC,EAAE,MAAM,EAAE;IA0CpB;;;;;;;;;;;;OAYG;IACI,8BAA8B,CACnC,EAAE,EAAE,MAAM,EACV,KAAK,EAAE,eAAe,EACtB,KAAK,EAAE,iBAAiB,EACxB,MAAM,EAAE,OAAO,CAAC,QAAQ,EACxB,UAAU,EAAE,EAAE,CAAC,OAAO,EACtB,SAAS,CAAC,EAAE,EAAE,CAAC,OAAO,EACtB,GAAG,CAAC,EAAE,UAAU,CAAC,oBAAoB,EACrC,WAAW,CAAC,EAAE,GAAG,CAAC,YAAY,EAC9B,OAAO,CAAC,EAAE,MAAM,EAAE,EAClB,2BAA2B,CAAC,EAAE,UAAU,CAAC,mBAAmB,EAAE;IAkChE;;;;;;;;;;OAUG;IACI,gCAAgC,CACrC,EAAE,EAAE,MAAM,EACV,KAAK,EAAE,eAAe,EACtB,KAAK,EAAE,iBAAiB,EACxB,MAAM,EAAE,OAAO,CAAC,UAAU,EAC1B,WAAW,EAAE,MAAM,EAAE,EACrB,SAAS,CAAC,EAAE,EAAE,CAAC,OAAO,EACtB,WAAW,CAAC,EAAE,GAAG,CAAC,YAAY,EAC9B,2BAA2B,CAAC,EAAE,UAAU,CAAC,mBAAmB,EAAE;IAkChE;;;;;;;;;;;;;OAaG;IACI,kBAAkB,CACvB,EAAE,EAAE,MAAM,EACV,KAAK,EAAE,eAAe,EACtB,KAAK,EAAE,eAAe,EACtB,MAAM,EAAE,MAAM,CAAC,aAAa,EAAE,EAC9B,IAAI,EAAE,MAAM,CAAC,SAAS,EACtB,WAAW,CAAC,EAAE,GAAG,EACjB,GAAG,CAAC,EAAE,GAAG,CAAC,IAAI,EACd,cAAc,CAAC,EAAE,GAAG,CAAC,cAAc,EAAE,EACrC,WAAW,CAAC,EAAE,GAAG,CAAC,YAAY,EAC9B,SAAS,CAAC,EAAE,MAAM;IA8BpB;;;;;;;OAOG;IACI,eAAe,CACpB,EAAE,EAAE,MAAM,EACV,KAAK,EAAE,eAAe,EACtB,cAAc,EAAE,MAAM,EACtB,cAAc,EAAE,MAAM,EACtB,KAAK,CAAC,EAAE,MAAM;IAqBhB;;;;;;OAMG;IACI,wBAAwB,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,eAAe,EAAE,KAAK,EAAE,uBAAuB;CAcnG"}
@@ -124,8 +124,9 @@ class CloudFrontManager {
124
124
  * @param {cloudfront.OriginAccessIdentity?} oai
125
125
  * @param {acm.ICertificate?} certificate
126
126
  * @param {string[]?} aliases
127
+ * @param {cloudfront.FunctionAssociation?} defaultFunctionAssociations
127
128
  */
128
- createDistributionWithS3Origin(id, scope, props, origin, siteBucket, logBucket, oai, certificate, aliases) {
129
+ createDistributionWithS3Origin(id, scope, props, origin, siteBucket, logBucket, oai, certificate, aliases, defaultFunctionAssociations) {
129
130
  const distribution = new cloudfront.Distribution(scope, `${id}`, {
130
131
  certificate: certificate,
131
132
  comment: `${id} - ${scope.props.stage} stage`,
@@ -133,6 +134,7 @@ class CloudFrontManager {
133
134
  cachePolicy: props.defaultBehavior ? props.defaultBehavior.cachePolicy : undefined,
134
135
  origin: origin,
135
136
  originRequestPolicy: props.defaultBehavior ? props.defaultBehavior.originRequestPolicy : undefined,
137
+ functionAssociations: defaultFunctionAssociations ?? undefined,
136
138
  },
137
139
  additionalBehaviors: props.additionalBehaviors,
138
140
  defaultRootObject: props.defaultRootObject,
@@ -163,8 +165,9 @@ class CloudFrontManager {
163
165
  * @param {string[]} domainNames
164
166
  * @param {s3.IBucket?} logBucket
165
167
  * @param {acm.ICertificate?} certificate
168
+ * @param {cloudfront.FunctionAssociation?} defaultFunctionAssociations
166
169
  */
167
- createDistributionWithHttpOrigin(id, scope, props, origin, domainNames, logBucket, certificate) {
170
+ createDistributionWithHttpOrigin(id, scope, props, origin, domainNames, logBucket, certificate, defaultFunctionAssociations) {
168
171
  const distribution = new cloudfront.Distribution(scope, `${id}`, {
169
172
  certificate: certificate,
170
173
  comment: `${id} - ${scope.props.stage} stage`,
@@ -172,6 +175,7 @@ class CloudFrontManager {
172
175
  cachePolicy: props.defaultBehavior ? props.defaultBehavior.cachePolicy : undefined,
173
176
  origin: origin,
174
177
  originRequestPolicy: props.defaultBehavior ? props.defaultBehavior.originRequestPolicy : undefined,
178
+ functionAssociations: defaultFunctionAssociations ?? undefined,
175
179
  },
176
180
  additionalBehaviors: props.additionalBehaviors,
177
181
  defaultRootObject: props.defaultRootObject,
@@ -254,6 +258,25 @@ class CloudFrontManager {
254
258
  policy: cr.AwsCustomResourcePolicy.fromSdkCalls({ resources: cr.AwsCustomResourcePolicy.ANY_RESOURCE }),
255
259
  });
256
260
  }
261
+ /**
262
+ * @summary Method to provision a Cloudfront function
263
+ *
264
+ * @param {string} id scoped id of the resource
265
+ * @param {CommonConstruct} scope scope in which this resource is defined
266
+ * @param {CloudfrontFunctionProps} props
267
+ */
268
+ createCloudfrontFunction(id, scope, props) {
269
+ const cloudfrontFunction = new cloudfront.Function(scope, `${id}`, {
270
+ code: cloudfront.FunctionCode.fromFile({
271
+ filePath: props.functionFilePath,
272
+ }),
273
+ comment: props.comment,
274
+ functionName: `${props.functionName}-${scope.props.stage}`,
275
+ });
276
+ (0, utils_1.createCfnOutput)(`${id}-functionArn`, scope, cloudfrontFunction.functionArn);
277
+ (0, utils_1.createCfnOutput)(`${id}-functionName`, scope, cloudfrontFunction.functionName);
278
+ return cloudfrontFunction;
279
+ }
257
280
  }
258
281
  exports.CloudFrontManager = CloudFrontManager;
259
282
  //# sourceMappingURL=cloudFrontManager.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"cloudFrontManager.js","sourceRoot":"","sources":["../../../../src/lib/manager/cloudFrontManager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cloudFrontManager.js","sourceRoot":"","sources":["../../../../src/lib/manager/cloudFrontManager.ts"],"names":[],"mappings":"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"}
@@ -47,6 +47,8 @@ export interface SiteWithEcsBackendProps extends CommonStackProps {
47
47
  siteCertificate: AcmProps;
48
48
  siteCluster: EcsClusterProps;
49
49
  siteDistribution: DistributionProps;
50
+ siteCloudfrontFunctionProps?: CloudfrontFunctionProps;
51
+ siteFunctionFilePath?: string;
50
52
  siteEcsContainerImagePath: string;
51
53
  siteLog: LogProps;
52
54
  siteLogBucket: S3BucketProps;
@@ -65,6 +67,8 @@ export interface StaticSiteProps extends CommonStackProps {
65
67
  siteBucket: S3BucketProps;
66
68
  siteLogBucket: S3BucketProps;
67
69
  siteDistribution?: DistributionProps;
70
+ siteCloudfrontFunctionProps?: CloudfrontFunctionProps;
71
+ siteFunctionFilePath?: string;
68
72
  siteSource: s3deploy.ISource;
69
73
  siteHostedZoneDomainName?: string;
70
74
  siteRecordName?: string;
@@ -121,6 +125,13 @@ export interface SSMParameterReaderProps {
121
125
  */
122
126
  export interface CloudFrontProps extends cloudfront.CloudFrontWebDistributionProps {
123
127
  }
128
+ /**
129
+ * @category Networking & Content Delivery
130
+ */
131
+ export interface CloudfrontFunctionProps extends cloudfront.FunctionProps {
132
+ functionFilePath: string;
133
+ eventType: string;
134
+ }
124
135
  /**
125
136
  * @category Networking & Content Delivery
126
137
  */
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/lib/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/lib/types.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gradientedge/cdk-utils",
3
- "version": "4.1.2",
3
+ "version": "4.2.0",
4
4
  "description": "Utilities for AWS CDK provisioning",
5
5
  "main": "dist/index.js",
6
6
  "engines": {
@@ -27,6 +27,7 @@
27
27
  "scripts": {
28
28
  "build": "rimraf dist/ && npx tsc",
29
29
  "ci": "yarn install --frozen-lockfile && yarn build && yarn validate && yarn docs",
30
+ "cz": "npx cz",
30
31
  "typedocs": "rimraf api-docs/ && npx typedoc",
31
32
  "docs": "rimraf api-docs && npx jsdoc --pedantic -c jsdoc.json .",
32
33
  "fix": "yarn prettify && eslint --fix **/*.ts",
@@ -64,6 +65,7 @@
64
65
  "babel-eslint": "^10.1.0",
65
66
  "better-docs": "^2.3.2",
66
67
  "codecov": "^3.8.3",
68
+ "commitizen": "^4.2.4",
67
69
  "dotenv": "^14.2.0",
68
70
  "eslint": "^8.7.0",
69
71
  "eslint-config-prettier": "^8.3.0",
@@ -87,5 +89,10 @@
87
89
  "optionalDependencies": {
88
90
  "@babel/core": "^7.16.10",
89
91
  "prop-types": "^15.8.1"
92
+ },
93
+ "config": {
94
+ "commitizen": {
95
+ "path": "./node_modules/cz-conventional-changelog"
96
+ }
90
97
  }
91
98
  }
@@ -68,6 +68,8 @@ export class SiteWithEcsBackend extends CommonConstruct {
68
68
  siteInternalDomainName: string
69
69
  siteExternalDomainName: string
70
70
  siteDomainNames: string[]
71
+ siteCloudfrontFunction: cloudfront.Function
72
+ siteFunctionAssociations: cloudfront.FunctionAssociation[]
71
73
 
72
74
  /**
73
75
  * @summary Constructor to initialise the SiteWithEcsBackend Construct
@@ -102,6 +104,8 @@ export class SiteWithEcsBackend extends CommonConstruct {
102
104
  this.createEcsService()
103
105
  this.createSiteLogBucket()
104
106
  this.createSiteOrigin()
107
+ this.createSiteCloudfrontFunction()
108
+ this.resolveSiteFunctionAssociations()
105
109
  this.createDistribution()
106
110
  this.createNetworkMappings()
107
111
  this.invalidateDistributionCache()
@@ -316,6 +320,35 @@ export class SiteWithEcsBackend extends CommonConstruct {
316
320
  })
317
321
  }
318
322
 
323
+ /**
324
+ * @summary Method to create a site cloudfront function
325
+ * @protected
326
+ */
327
+ protected createSiteCloudfrontFunction() {
328
+ if (this.props.siteCloudfrontFunctionProps) {
329
+ this.siteCloudfrontFunction = this.cloudFrontManager.createCloudfrontFunction(
330
+ `${this.id}-function`,
331
+ this,
332
+ this.props.siteCloudfrontFunctionProps
333
+ )
334
+ }
335
+ }
336
+
337
+ /**
338
+ * @summary Method to create a site cloudfront function associations
339
+ * @protected
340
+ */
341
+ protected resolveSiteFunctionAssociations() {
342
+ if (this.props.siteCloudfrontFunctionProps) {
343
+ this.siteFunctionAssociations = [
344
+ {
345
+ function: this.siteCloudfrontFunction,
346
+ eventType: cloudfront.FunctionEventType.VIEWER_REQUEST,
347
+ },
348
+ ]
349
+ }
350
+ }
351
+
319
352
  /**
320
353
  * Method to create Site distribution
321
354
  * @protected
@@ -328,7 +361,8 @@ export class SiteWithEcsBackend extends CommonConstruct {
328
361
  this.siteOrigin,
329
362
  this.siteDomainNames,
330
363
  this.siteLogBucket,
331
- this.siteCertificate
364
+ this.siteCertificate,
365
+ this.siteFunctionAssociations
332
366
  )
333
367
  }
334
368
 
@@ -46,6 +46,8 @@ export class StaticSite extends CommonConstruct {
46
46
  siteDistribution: cloudfront.Distribution
47
47
  siteLogBucket: s3.IBucket
48
48
  siteOriginAccessIdentity: cloudfront.OriginAccessIdentity
49
+ siteCloudfrontFunction: cloudfront.Function
50
+ siteFunctionAssociations: cloudfront.FunctionAssociation[]
49
51
 
50
52
  /**
51
53
  * @summary Constructor to initialise the StaticSite Construct
@@ -70,6 +72,8 @@ export class StaticSite extends CommonConstruct {
70
72
  this.createSiteLogBucket()
71
73
  this.createSiteBucket()
72
74
  this.createSiteOrigin()
75
+ this.createSiteCloudfrontFunction()
76
+ this.resolveSiteFunctionAssociations()
73
77
  this.createSiteDistribution()
74
78
  this.createSiteRouteAssets()
75
79
  this.deploySite()
@@ -131,6 +135,35 @@ export class StaticSite extends CommonConstruct {
131
135
  this.siteOrigin = new origins.S3Origin(this.siteBucket)
132
136
  }
133
137
 
138
+ /**
139
+ * @summary Method to create a site cloudfront function
140
+ * @protected
141
+ */
142
+ protected createSiteCloudfrontFunction() {
143
+ if (this.props.siteCloudfrontFunctionProps) {
144
+ this.siteCloudfrontFunction = this.cloudFrontManager.createCloudfrontFunction(
145
+ `${this.id}-function`,
146
+ this,
147
+ this.props.siteCloudfrontFunctionProps
148
+ )
149
+ }
150
+ }
151
+
152
+ /**
153
+ * @summary Method to create a site cloudfront function associations
154
+ * @protected
155
+ */
156
+ protected resolveSiteFunctionAssociations() {
157
+ if (this.props.siteCloudfrontFunctionProps) {
158
+ this.siteFunctionAssociations = [
159
+ {
160
+ function: this.siteCloudfrontFunction,
161
+ eventType: cloudfront.FunctionEventType.VIEWER_REQUEST,
162
+ },
163
+ ]
164
+ }
165
+ }
166
+
134
167
  /**
135
168
  * @summary Method to create a site cloudfront distribution
136
169
  * @protected
@@ -147,7 +180,8 @@ export class StaticSite extends CommonConstruct {
147
180
  this.siteLogBucket,
148
181
  this.siteOriginAccessIdentity,
149
182
  this.siteCertificate,
150
- this.props.siteAliases
183
+ this.props.siteAliases,
184
+ this.siteFunctionAssociations
151
185
  )
152
186
  }
153
187
 
@@ -3,7 +3,7 @@ import * as cloudfront from 'aws-cdk-lib/aws-cloudfront'
3
3
  import * as lambda from 'aws-cdk-lib/aws-lambda'
4
4
  import * as s3 from 'aws-cdk-lib/aws-s3'
5
5
  import { CommonConstruct } from '../common/commonConstruct'
6
- import { CloudFrontProps, DistributionProps, LambdaEdgeProps } from '../types'
6
+ import { CloudFrontProps, DistributionProps, LambdaEdgeProps, CloudfrontFunctionProps } from '../types'
7
7
  import { createCfnOutput } from '../utils'
8
8
  import * as cdk from 'aws-cdk-lib'
9
9
  import * as ec2 from 'aws-cdk-lib/aws-ec2'
@@ -121,6 +121,7 @@ export class CloudFrontManager {
121
121
  * @param {cloudfront.OriginAccessIdentity?} oai
122
122
  * @param {acm.ICertificate?} certificate
123
123
  * @param {string[]?} aliases
124
+ * @param {cloudfront.FunctionAssociation?} defaultFunctionAssociations
124
125
  */
125
126
  public createDistributionWithS3Origin(
126
127
  id: string,
@@ -131,7 +132,8 @@ export class CloudFrontManager {
131
132
  logBucket?: s3.IBucket,
132
133
  oai?: cloudfront.OriginAccessIdentity,
133
134
  certificate?: acm.ICertificate,
134
- aliases?: string[]
135
+ aliases?: string[],
136
+ defaultFunctionAssociations?: cloudfront.FunctionAssociation[]
135
137
  ) {
136
138
  const distribution = new cloudfront.Distribution(scope, `${id}`, {
137
139
  certificate: certificate,
@@ -140,6 +142,7 @@ export class CloudFrontManager {
140
142
  cachePolicy: props.defaultBehavior ? props.defaultBehavior.cachePolicy : undefined,
141
143
  origin: origin,
142
144
  originRequestPolicy: props.defaultBehavior ? props.defaultBehavior.originRequestPolicy : undefined,
145
+ functionAssociations: defaultFunctionAssociations ?? undefined,
143
146
  },
144
147
  additionalBehaviors: props.additionalBehaviors,
145
148
  defaultRootObject: props.defaultRootObject,
@@ -173,6 +176,7 @@ export class CloudFrontManager {
173
176
  * @param {string[]} domainNames
174
177
  * @param {s3.IBucket?} logBucket
175
178
  * @param {acm.ICertificate?} certificate
179
+ * @param {cloudfront.FunctionAssociation?} defaultFunctionAssociations
176
180
  */
177
181
  public createDistributionWithHttpOrigin(
178
182
  id: string,
@@ -181,7 +185,8 @@ export class CloudFrontManager {
181
185
  origin: origins.HttpOrigin,
182
186
  domainNames: string[],
183
187
  logBucket?: s3.IBucket,
184
- certificate?: acm.ICertificate
188
+ certificate?: acm.ICertificate,
189
+ defaultFunctionAssociations?: cloudfront.FunctionAssociation[]
185
190
  ) {
186
191
  const distribution = new cloudfront.Distribution(scope, `${id}`, {
187
192
  certificate: certificate,
@@ -190,6 +195,7 @@ export class CloudFrontManager {
190
195
  cachePolicy: props.defaultBehavior ? props.defaultBehavior.cachePolicy : undefined,
191
196
  origin: origin,
192
197
  originRequestPolicy: props.defaultBehavior ? props.defaultBehavior.originRequestPolicy : undefined,
198
+ functionAssociations: defaultFunctionAssociations ?? undefined,
193
199
  },
194
200
  additionalBehaviors: props.additionalBehaviors,
195
201
  defaultRootObject: props.defaultRootObject,
@@ -301,4 +307,26 @@ export class CloudFrontManager {
301
307
  policy: cr.AwsCustomResourcePolicy.fromSdkCalls({ resources: cr.AwsCustomResourcePolicy.ANY_RESOURCE }),
302
308
  })
303
309
  }
310
+
311
+ /**
312
+ * @summary Method to provision a Cloudfront function
313
+ *
314
+ * @param {string} id scoped id of the resource
315
+ * @param {CommonConstruct} scope scope in which this resource is defined
316
+ * @param {CloudfrontFunctionProps} props
317
+ */
318
+ public createCloudfrontFunction(id: string, scope: CommonConstruct, props: CloudfrontFunctionProps) {
319
+ const cloudfrontFunction = new cloudfront.Function(scope, `${id}`, {
320
+ code: cloudfront.FunctionCode.fromFile({
321
+ filePath: props.functionFilePath,
322
+ }),
323
+ comment: props.comment,
324
+ functionName: `${props.functionName}-${scope.props.stage}`,
325
+ })
326
+
327
+ createCfnOutput(`${id}-functionArn`, scope, cloudfrontFunction.functionArn)
328
+ createCfnOutput(`${id}-functionName`, scope, cloudfrontFunction.functionName)
329
+
330
+ return cloudfrontFunction
331
+ }
304
332
  }
package/src/lib/types.ts CHANGED
@@ -50,6 +50,8 @@ export interface SiteWithEcsBackendProps extends CommonStackProps {
50
50
  siteCertificate: AcmProps
51
51
  siteCluster: EcsClusterProps
52
52
  siteDistribution: DistributionProps
53
+ siteCloudfrontFunctionProps?: CloudfrontFunctionProps
54
+ siteFunctionFilePath?: string
53
55
  siteEcsContainerImagePath: string
54
56
  siteLog: LogProps
55
57
  siteLogBucket: S3BucketProps
@@ -69,6 +71,8 @@ export interface StaticSiteProps extends CommonStackProps {
69
71
  siteBucket: S3BucketProps
70
72
  siteLogBucket: S3BucketProps
71
73
  siteDistribution?: DistributionProps
74
+ siteCloudfrontFunctionProps?: CloudfrontFunctionProps
75
+ siteFunctionFilePath?: string
72
76
  siteSource: s3deploy.ISource
73
77
  siteHostedZoneDomainName?: string
74
78
  siteRecordName?: string
@@ -131,6 +135,14 @@ export interface SSMParameterReaderProps {
131
135
  */
132
136
  export interface CloudFrontProps extends cloudfront.CloudFrontWebDistributionProps {}
133
137
 
138
+ /**
139
+ * @category Networking & Content Delivery
140
+ */
141
+ export interface CloudfrontFunctionProps extends cloudfront.FunctionProps {
142
+ functionFilePath: string
143
+ eventType: string
144
+ }
145
+
134
146
  /**
135
147
  * @category Networking & Content Delivery
136
148
  */