@venturekit/infra 0.0.0-dev.20260701100017 → 0.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cdk/app-stack.d.ts +88 -0
- package/dist/cdk/app-stack.d.ts.map +1 -1
- package/dist/cdk/app-stack.js +292 -0
- package/dist/cdk/app-stack.js.map +1 -1
- package/dist/cdk/data-stack.d.ts +3 -4
- package/dist/cdk/data-stack.d.ts.map +1 -1
- package/dist/cdk/data-stack.js +44 -25
- package/dist/cdk/data-stack.js.map +1 -1
- package/dist/cdk/edge-stack.d.ts +2 -0
- package/dist/cdk/edge-stack.d.ts.map +1 -1
- package/dist/cdk/edge-stack.js +123 -17
- package/dist/cdk/edge-stack.js.map +1 -1
- package/dist/cdk/messaging-stack.d.ts +15 -0
- package/dist/cdk/messaging-stack.d.ts.map +1 -1
- package/dist/cdk/messaging-stack.js +49 -0
- package/dist/cdk/messaging-stack.js.map +1 -1
- package/dist/cdk/shared/ssm-keys.d.ts +20 -10
- package/dist/cdk/shared/ssm-keys.d.ts.map +1 -1
- package/dist/cdk/shared/ssm-keys.js +13 -5
- package/dist/cdk/shared/ssm-keys.js.map +1 -1
- package/dist/venture.d.ts +8 -1
- package/dist/venture.d.ts.map +1 -1
- package/dist/venture.js +1 -0
- package/dist/venture.js.map +1 -1
- package/package.json +7 -3
package/dist/cdk/data-stack.d.ts
CHANGED
|
@@ -34,7 +34,9 @@
|
|
|
34
34
|
* (id `'rate-limits'`)
|
|
35
35
|
* - `dataKeys.cacheEndpoint` / `cachePort` / `cacheSecurityGroupId`
|
|
36
36
|
* per cache id
|
|
37
|
-
*
|
|
37
|
+
*
|
|
38
|
+
* The internal Lambda-to-Lambda HMAC signing key is owned by the
|
|
39
|
+
* APP stack, not here — see the breadcrumb in the constructor.
|
|
38
40
|
*
|
|
39
41
|
* Outputs (`cdk.CfnOutput`) are deliberately NOT used — see plan §3.
|
|
40
42
|
*
|
|
@@ -64,7 +66,6 @@ import * as ec2 from 'aws-cdk-lib/aws-ec2';
|
|
|
64
66
|
import * as rds from 'aws-cdk-lib/aws-rds';
|
|
65
67
|
import * as s3 from 'aws-cdk-lib/aws-s3';
|
|
66
68
|
import * as dynamodb from 'aws-cdk-lib/aws-dynamodb';
|
|
67
|
-
import * as secretsmanager from 'aws-cdk-lib/aws-secretsmanager';
|
|
68
69
|
import { Construct } from 'constructs';
|
|
69
70
|
import { type EnvConfig, type VentureIntent } from '@venturekit/core';
|
|
70
71
|
export interface VentureDataStackProps extends cdk.StackProps {
|
|
@@ -163,8 +164,6 @@ export declare class VentureDataStack extends cdk.Stack {
|
|
|
163
164
|
* when no `databases` intent is declared.
|
|
164
165
|
*/
|
|
165
166
|
readonly rateLimitTable: dynamodb.Table;
|
|
166
|
-
/** Internal HMAC secret used by `@venturekit/auth/runtime`. */
|
|
167
|
-
readonly internalHmacSecret: secretsmanager.Secret;
|
|
168
167
|
/**
|
|
169
168
|
* Captured once in the constructor and reused by every private
|
|
170
169
|
* `create…` method. Avoids re-deriving from `envConfig.dataSafety`
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"data-stack.d.ts","sourceRoot":"","sources":["../../src/cdk/data-stack.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"data-stack.d.ts","sourceRoot":"","sources":["../../src/cdk/data-stack.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8DG;AAEH,OAAO,KAAK,GAAG,MAAM,aAAa,CAAC;AACnC,OAAO,KAAK,GAAG,MAAM,qBAAqB,CAAC;AAC3C,OAAO,KAAK,GAAG,MAAM,qBAAqB,CAAC;AAC3C,OAAO,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAEzC,OAAO,KAAK,QAAQ,MAAM,0BAA0B,CAAC;AAGrD,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AACvC,OAAO,EAAsB,KAAK,SAAS,EAAE,KAAK,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAM1F,MAAM,WAAW,qBAAsB,SAAQ,GAAG,CAAC,UAAU;IAC3D,sDAAsD;IACtD,WAAW,EAAE,MAAM,CAAC;IAEpB,8BAA8B;IAC9B,KAAK,EAAE,MAAM,CAAC;IAEd,iEAAiE;IACjE,SAAS,EAAE,SAAS,CAAC;IAErB;;;;OAIG;IACH,cAAc,EAAE,aAAa,CAAC;IAE9B;;;;;;;;;;OAUG;IACH,GAAG,CAAC,EAAE,GAAG,CAAC,IAAI,CAAC;IAEf,yDAAyD;IACzD,UAAU,EAAE,OAAO,CAAC;IAEpB;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA4BG;IACH,UAAU,CAAC,EAAE;QACX,gEAAgE;QAChE,UAAU,EAAE,MAAM,CAAC;QAEnB;;;;WAIG;QACH,YAAY,EAAE,MAAM,CAAC;QAErB;;;;;WAKG;QACH,qBAAqB,CAAC,EAAE,MAAM,EAAE,CAAC;KAClC,CAAC;CACH;AAgCD,qBAAa,gBAAiB,SAAQ,GAAG,CAAC,KAAK;IAC7C;;;;;;OAMG;IACH,SAAgB,SAAS,EAAE,GAAG,CAC5B,MAAM,EACN;QAAE,QAAQ,EAAE,GAAG,CAAC,gBAAgB,GAAG,GAAG,CAAC,4BAA4B,CAAC;QAAC,MAAM,EAAE,GAAG,CAAA;KAAE,CACnF,CAAa;IAEd,SAAgB,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE;QAAE,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC;QAAC,MAAM,EAAE,GAAG,CAAA;KAAE,CAAC,CAAa;IAErF,SAAgB,YAAY,EAAE,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC,KAAK,CAAC,CAAa;IAEtE;;;OAGG;IACH,SAAgB,cAAc,EAAE,QAAQ,CAAC,KAAK,CAAC;IAE/C;;;;;OAKG;IACH,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAU;IAEzC;;;OAGG;IACH,OAAO,CAAC,QAAQ,CAAC,wBAAwB,CAAU;IAEnD;;;;;OAKG;IACH,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAsC;IAExE,mDAAmD;IACnD,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAS;IAE1C,6DAA6D;IAC7D,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;gBAErB,KAAK,EAAE,SAAS,EAAE,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,qBAAqB;IA6EtE,OAAO,CAAC,cAAc;IAiMtB,OAAO,CAAC,mBAAmB;IAiD3B,OAAO,CAAC,oBAAoB;IA0C5B,OAAO,CAAC,aAAa;IA8GrB,OAAO,CAAC,WAAW;CAkEpB"}
|
package/dist/cdk/data-stack.js
CHANGED
|
@@ -34,7 +34,9 @@
|
|
|
34
34
|
* (id `'rate-limits'`)
|
|
35
35
|
* - `dataKeys.cacheEndpoint` / `cachePort` / `cacheSecurityGroupId`
|
|
36
36
|
* per cache id
|
|
37
|
-
*
|
|
37
|
+
*
|
|
38
|
+
* The internal Lambda-to-Lambda HMAC signing key is owned by the
|
|
39
|
+
* APP stack, not here — see the breadcrumb in the constructor.
|
|
38
40
|
*
|
|
39
41
|
* Outputs (`cdk.CfnOutput`) are deliberately NOT used — see plan §3.
|
|
40
42
|
*
|
|
@@ -65,7 +67,6 @@ import * as rds from 'aws-cdk-lib/aws-rds';
|
|
|
65
67
|
import * as s3 from 'aws-cdk-lib/aws-s3';
|
|
66
68
|
import * as elasticache from 'aws-cdk-lib/aws-elasticache';
|
|
67
69
|
import * as dynamodb from 'aws-cdk-lib/aws-dynamodb';
|
|
68
|
-
import * as secretsmanager from 'aws-cdk-lib/aws-secretsmanager';
|
|
69
70
|
import * as iam from 'aws-cdk-lib/aws-iam';
|
|
70
71
|
import { DATA_SAFETY_CONFIG } from '@venturekit/core';
|
|
71
72
|
import * as path from 'path';
|
|
@@ -116,8 +117,6 @@ export class VentureDataStack extends cdk.Stack {
|
|
|
116
117
|
* when no `databases` intent is declared.
|
|
117
118
|
*/
|
|
118
119
|
rateLimitTable;
|
|
119
|
-
/** Internal HMAC secret used by `@venturekit/auth/runtime`. */
|
|
120
|
-
internalHmacSecret;
|
|
121
120
|
/**
|
|
122
121
|
* Captured once in the constructor and reused by every private
|
|
123
122
|
* `create…` method. Avoids re-deriving from `envConfig.dataSafety`
|
|
@@ -151,27 +150,18 @@ export class VentureDataStack extends cdk.Stack {
|
|
|
151
150
|
this.logRetentionDays = envConfig.observability.logs.retentionDays;
|
|
152
151
|
this.natType = envConfig.vpc.natType;
|
|
153
152
|
const isStrictRetain = this.isStrictRetain;
|
|
154
|
-
// ─── Internal HMAC secret
|
|
155
|
-
//
|
|
156
|
-
//
|
|
157
|
-
//
|
|
158
|
-
//
|
|
159
|
-
//
|
|
160
|
-
//
|
|
161
|
-
//
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
passwordLength: 64,
|
|
167
|
-
excludePunctuation: true,
|
|
168
|
-
excludeCharacters: '"\'\\/',
|
|
169
|
-
requireEachIncludedType: false,
|
|
170
|
-
includeSpace: false,
|
|
171
|
-
},
|
|
172
|
-
removalPolicy: isStrictRetain ? cdk.RemovalPolicy.RETAIN : cdk.RemovalPolicy.DESTROY,
|
|
173
|
-
});
|
|
174
|
-
writeSsm(this, dataKeys.internalHmacSecretArn(projectName, stage), this.internalHmacSecret.secretArn, { description: 'Internal HMAC secret ARN' });
|
|
153
|
+
// ─── Internal HMAC secret: owned by the APP stack ───────────
|
|
154
|
+
// The Lambda-to-Lambda HMAC signing key is created in the APP
|
|
155
|
+
// stack (`VentureAppStack.internalHmacSecret`), which injects its
|
|
156
|
+
// VALUE as `VENTURE_INTERNAL_HMAC_SECRET` — the only thing
|
|
157
|
+
// `@venturekit/runtime` reads. It is app-tier (its lifetime
|
|
158
|
+
// tracks the Lambdas that use it). It is deliberately NOT created
|
|
159
|
+
// here: both stacks deploy together for any data-bearing project,
|
|
160
|
+
// so a second `AWS::SecretsManager::Secret` with the same
|
|
161
|
+
// `secretName` would collide at CreateSecret, and the data-stack
|
|
162
|
+
// copy was never consumed (the published SSM ARN had no reader).
|
|
163
|
+
// See plan finding WA4. The HMAC rotation runbook lives alongside
|
|
164
|
+
// the secret in `app-stack.ts`.
|
|
175
165
|
// ─── Databases ───────────────────────────────────────────────
|
|
176
166
|
if (infrastructure.databases) {
|
|
177
167
|
for (const intent of infrastructure.databases) {
|
|
@@ -234,6 +224,11 @@ export class VentureDataStack extends cdk.Stack {
|
|
|
234
224
|
instanceType,
|
|
235
225
|
vpc,
|
|
236
226
|
vpcSubnets: { subnetType },
|
|
227
|
+
// Never give the DB a public IP. CDK already defaults this to
|
|
228
|
+
// false for private/isolated subnet placement, but pinning it
|
|
229
|
+
// explicitly makes the no-public-endpoint posture intentional and
|
|
230
|
+
// testable (a future subnet-type change can't silently flip it).
|
|
231
|
+
publiclyAccessible: false,
|
|
237
232
|
removalPolicy: isStrictRetain ? cdk.RemovalPolicy.RETAIN : cdk.RemovalPolicy.DESTROY,
|
|
238
233
|
// Native RDS deletion protection — CFN-level RETAIN doesn't
|
|
239
234
|
// block console / CLI deletes; this flag does.
|
|
@@ -280,6 +275,30 @@ export class VentureDataStack extends cdk.Stack {
|
|
|
280
275
|
}
|
|
281
276
|
}
|
|
282
277
|
}
|
|
278
|
+
// ─── Optional credential rotation (S5) ──────────────────────
|
|
279
|
+
// RDS master credentials are generated once and, by default, never
|
|
280
|
+
// rotate. Opt in per database with `credentialRotationDays`: CDK
|
|
281
|
+
// deploys the AWS-managed single-user rotation (a rotation Lambda +
|
|
282
|
+
// a Secrets Manager schedule). The rotation Lambda needs VPC egress
|
|
283
|
+
// to reach the Secrets Manager endpoint, so it's skipped (with a
|
|
284
|
+
// warning) when the VPC has no NAT — set `vpc.natType` to
|
|
285
|
+
// 'gateway'/'instance', or add a Secrets Manager VPC endpoint, to
|
|
286
|
+
// enable it on isolated-only networks.
|
|
287
|
+
const rotationDays = intent.credentialRotationDays;
|
|
288
|
+
if (typeof rotationDays === 'number' && rotationDays > 0) {
|
|
289
|
+
if (this.natType === 'none') {
|
|
290
|
+
console.warn(`[venturekit] Skipping credential rotation for db "${intent.id}": ` +
|
|
291
|
+
`natType is 'none', so the rotation Lambda can't reach the ` +
|
|
292
|
+
`Secrets Manager endpoint. Set 'infrastructure.vpc.natType' to ` +
|
|
293
|
+
`'gateway'/'instance' (or add a SecretsManager VPC endpoint) to ` +
|
|
294
|
+
`enable rotation.`);
|
|
295
|
+
}
|
|
296
|
+
else {
|
|
297
|
+
instance.addRotationSingleUser({
|
|
298
|
+
automaticallyAfter: cdk.Duration.days(rotationDays),
|
|
299
|
+
});
|
|
300
|
+
}
|
|
301
|
+
}
|
|
283
302
|
this.databases.set(intent.id, { instance, intent });
|
|
284
303
|
// ─── Migration runner (CodeBuild in-VPC) ────────────────────
|
|
285
304
|
// Provisioned only for Postgres + when the project has a
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"data-stack.js","sourceRoot":"","sources":["../../src/cdk/data-stack.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"data-stack.js","sourceRoot":"","sources":["../../src/cdk/data-stack.ts"],"names":[],"mappings":"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"}
|
package/dist/cdk/edge-stack.d.ts
CHANGED
|
@@ -96,6 +96,8 @@ export declare class VentureEdgeStack extends cdk.Stack {
|
|
|
96
96
|
*/
|
|
97
97
|
readonly cdnPublishedDomains: Map<string, string>;
|
|
98
98
|
private readonly isStrictRetain;
|
|
99
|
+
/** Env log-retention window, reused for CloudFront access-log expiry. */
|
|
100
|
+
private readonly logRetentionDays;
|
|
99
101
|
constructor(scope: Construct, id: string, props: VentureEdgeStackProps);
|
|
100
102
|
private createDomain;
|
|
101
103
|
private createStorageCdn;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"edge-stack.d.ts","sourceRoot":"","sources":["../../src/cdk/edge-stack.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwDG;AAEH,OAAO,KAAK,GAAG,MAAM,aAAa,CAAC;AACnC,OAAO,KAAK,YAAY,MAAM,8BAA8B,CAAC;AAI7D,OAAO,KAAK,UAAU,MAAM,4BAA4B,CAAC;AAEzD,OAAO,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAEzC,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AACvC,OAAO,EAAsB,KAAK,SAAS,EAAE,KAAK,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAI1F,MAAM,WAAW,qBAAsB,SAAQ,GAAG,CAAC,UAAU;IAC3D,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,SAAS,CAAC;IAErB,yDAAyD;IACzD,cAAc,EAAE,aAAa,CAAC;IAE9B;;;;;;;;;;OAUG;IACH,cAAc,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC;CAC1C;
|
|
1
|
+
{"version":3,"file":"edge-stack.d.ts","sourceRoot":"","sources":["../../src/cdk/edge-stack.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwDG;AAEH,OAAO,KAAK,GAAG,MAAM,aAAa,CAAC;AACnC,OAAO,KAAK,YAAY,MAAM,8BAA8B,CAAC;AAI7D,OAAO,KAAK,UAAU,MAAM,4BAA4B,CAAC;AAEzD,OAAO,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAEzC,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AACvC,OAAO,EAAsB,KAAK,SAAS,EAAE,KAAK,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAI1F,MAAM,WAAW,qBAAsB,SAAQ,GAAG,CAAC,UAAU;IAC3D,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,SAAS,CAAC;IAErB,yDAAyD;IACzD,cAAc,EAAE,aAAa,CAAC;IAE9B;;;;;;;;;;OAUG;IACH,cAAc,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC;CAC1C;AAiCD,qBAAa,gBAAiB,SAAQ,GAAG,CAAC,KAAK;IAC7C,SAAgB,GAAG,EAAE,YAAY,CAAC,OAAO,CAAC;IAE1C,SAAgB,aAAa,EAAE,GAAG,CAAC,MAAM,EAAE,UAAU,CAAC,YAAY,CAAC,CAAa;IAEhF;;;;;;;;;;OAUG;IACH,SAAgB,mBAAmB,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAa;IAErE,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAU;IAEzC,yEAAyE;IACzE,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAS;gBAE9B,KAAK,EAAE,SAAS,EAAE,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,qBAAqB;IA4LtE,OAAO,CAAC,YAAY;IA8FpB,OAAO,CAAC,gBAAgB;CA0LzB"}
|
package/dist/cdk/edge-stack.js
CHANGED
|
@@ -84,6 +84,25 @@ function toLogRetention(days) {
|
|
|
84
84
|
return logs.RetentionDays.ONE_YEAR;
|
|
85
85
|
return logs.RetentionDays.INFINITE;
|
|
86
86
|
}
|
|
87
|
+
/**
|
|
88
|
+
* Map a `StorageIntent.cdnPriceClass` value (bare `'100'|'200'|'all'`
|
|
89
|
+
* or the full `PRICE_CLASS_*` name) to the CloudFront enum. Defaults
|
|
90
|
+
* to `PRICE_CLASS_100` (North America + Europe) — the cheapest tier.
|
|
91
|
+
*/
|
|
92
|
+
function toPriceClass(value) {
|
|
93
|
+
switch (String(value ?? '').toLowerCase()) {
|
|
94
|
+
case '200':
|
|
95
|
+
case 'price_class_200':
|
|
96
|
+
return cloudfront.PriceClass.PRICE_CLASS_200;
|
|
97
|
+
case 'all':
|
|
98
|
+
case 'price_class_all':
|
|
99
|
+
return cloudfront.PriceClass.PRICE_CLASS_ALL;
|
|
100
|
+
case '100':
|
|
101
|
+
case 'price_class_100':
|
|
102
|
+
default:
|
|
103
|
+
return cloudfront.PriceClass.PRICE_CLASS_100;
|
|
104
|
+
}
|
|
105
|
+
}
|
|
87
106
|
export class VentureEdgeStack extends cdk.Stack {
|
|
88
107
|
api;
|
|
89
108
|
distributions = new Map();
|
|
@@ -100,6 +119,8 @@ export class VentureEdgeStack extends cdk.Stack {
|
|
|
100
119
|
*/
|
|
101
120
|
cdnPublishedDomains = new Map();
|
|
102
121
|
isStrictRetain;
|
|
122
|
+
/** Env log-retention window, reused for CloudFront access-log expiry. */
|
|
123
|
+
logRetentionDays;
|
|
103
124
|
constructor(scope, id, props) {
|
|
104
125
|
super(scope, id, props);
|
|
105
126
|
const { projectName, stage, envConfig, infrastructure, storageBuckets } = props;
|
|
@@ -107,6 +128,17 @@ export class VentureEdgeStack extends cdk.Stack {
|
|
|
107
128
|
DATA_SAFETY_CONFIG[envConfig.dataSafety].removalPolicy === 'retain';
|
|
108
129
|
const apiConfig = envConfig.api;
|
|
109
130
|
const obsConfig = envConfig.observability;
|
|
131
|
+
this.logRetentionDays = obsConfig.logs.retentionDays;
|
|
132
|
+
// ─── execute-api endpoint posture (S6) ──────────────────────
|
|
133
|
+
// Default: once a custom domain with a resolvable certificate is
|
|
134
|
+
// wired, disable the raw `*.execute-api.<region>.amazonaws.com` URL
|
|
135
|
+
// so clients can only reach the API through the custom domain (and
|
|
136
|
+
// any controls bound to it). A pending-validation domain (no cert
|
|
137
|
+
// ARN and no hosted zone) keeps execute-api enabled so the API stays
|
|
138
|
+
// reachable while DNS/cert validation completes. Override per-env
|
|
139
|
+
// with `api.disableExecuteApiEndpoint`.
|
|
140
|
+
const hasResolvableCustomDomain = (infrastructure.domains ?? []).some((d) => Boolean(d.certificateArn) || Boolean(d.hostedZoneId));
|
|
141
|
+
const disableExecuteApi = apiConfig.disableExecuteApiEndpoint ?? hasResolvableCustomDomain;
|
|
110
142
|
// ─── HttpApi shell ──────────────────────────────────────────
|
|
111
143
|
// Created with NO routes — routes live in the app stack.
|
|
112
144
|
// CORS preflight, throttling, and access logging are all
|
|
@@ -122,19 +154,12 @@ export class VentureEdgeStack extends cdk.Stack {
|
|
|
122
154
|
allowCredentials: apiConfig.cors.allowCredentials,
|
|
123
155
|
maxAge: cdk.Duration.seconds(apiConfig.cors.maxAgeSec),
|
|
124
156
|
}
|
|
125
|
-
:
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
apigatewayv2.CorsHttpMethod.DELETE,
|
|
132
|
-
apigatewayv2.CorsHttpMethod.PATCH,
|
|
133
|
-
apigatewayv2.CorsHttpMethod.OPTIONS,
|
|
134
|
-
],
|
|
135
|
-
allowHeaders: ['*'],
|
|
136
|
-
},
|
|
137
|
-
disableExecuteApiEndpoint: false,
|
|
157
|
+
: // No `api.cors` configured → fail-closed: emit NO CORS
|
|
158
|
+
// preflight rather than the old allow-all (`*` origins + `*`
|
|
159
|
+
// headers). Browsers then block cross-origin calls by default;
|
|
160
|
+
// operators opt in by setting `api.cors.allowOrigins`.
|
|
161
|
+
undefined,
|
|
162
|
+
disableExecuteApiEndpoint: disableExecuteApi,
|
|
138
163
|
});
|
|
139
164
|
if (this.isStrictRetain) {
|
|
140
165
|
// The `*.execute-api.{region}.amazonaws.com` URL embeds the
|
|
@@ -145,6 +170,14 @@ export class VentureEdgeStack extends cdk.Stack {
|
|
|
145
170
|
cfnApi.cfnOptions.deletionPolicy = cdk.CfnDeletionPolicy.RETAIN;
|
|
146
171
|
cfnApi.cfnOptions.updateReplacePolicy = cdk.CfnDeletionPolicy.RETAIN;
|
|
147
172
|
}
|
|
173
|
+
// Fail-closed CORS leaves browser cross-origin clients blocked
|
|
174
|
+
// until `api.cors` is set — warn at synth so it's not a silent
|
|
175
|
+
// surprise during a frontend integration.
|
|
176
|
+
if (!apiConfig.cors) {
|
|
177
|
+
cdk.Annotations.of(this).addWarning(`[venturekit] No 'api.cors' configured for ${projectName}/${stage}: ` +
|
|
178
|
+
`CORS preflight is disabled (fail-closed). Browser clients on a ` +
|
|
179
|
+
`different origin will be blocked until you set 'api.cors.allowOrigins'.`);
|
|
180
|
+
}
|
|
148
181
|
// ─── Access logging on the default stage ─────────────────────
|
|
149
182
|
const apiLogGroup = new logs.LogGroup(this, 'ApiAccessLog', {
|
|
150
183
|
logGroupName: `/venturekit/${projectName}/${stage}/api-access`,
|
|
@@ -169,12 +202,31 @@ export class VentureEdgeStack extends cdk.Stack {
|
|
|
169
202
|
userAgent: '$context.identity.userAgent',
|
|
170
203
|
}),
|
|
171
204
|
};
|
|
205
|
+
// ─── Edge throttling ────────────────────────────────────────
|
|
206
|
+
// Apply the per-environment request throttle at the gateway.
|
|
207
|
+
// Historically the preset `throttleRateLimit` / `throttleBurstLimit`
|
|
208
|
+
// values (and the README presets table) were never wired to the
|
|
209
|
+
// stage, so the API accepted unbounded request volume — a DoS /
|
|
210
|
+
// cost-bomb exposure with no edge backpressure. HTTP API exposes
|
|
211
|
+
// throttling via the default stage's DefaultRouteSettings.
|
|
212
|
+
defaultStage.defaultRouteSettings = {
|
|
213
|
+
throttlingRateLimit: apiConfig.throttleRateLimit,
|
|
214
|
+
throttlingBurstLimit: apiConfig.throttleBurstLimit,
|
|
215
|
+
detailedMetricsEnabled: apiConfig.detailedMetricsEnabled,
|
|
216
|
+
};
|
|
172
217
|
}
|
|
173
218
|
// ─── Public surface ─────────────────────────────────────────
|
|
174
219
|
writeSsm(this, edgeKeys.apiId(projectName, stage), this.api.apiId, {
|
|
175
220
|
description: `HttpApi ID — app stack imports via fromHttpApiAttributes.`,
|
|
176
221
|
});
|
|
177
|
-
|
|
222
|
+
// `apiEndpoint` is the raw `*.execute-api` URL. When that endpoint is
|
|
223
|
+
// disabled (S6 — custom domain with a resolvable cert), CDK makes
|
|
224
|
+
// `this.api.apiEndpoint` throw and there is genuinely no such URL to
|
|
225
|
+
// publish; consumers read the custom domain via `apiCustomDomain`
|
|
226
|
+
// instead. Only publish it while execute-api is live.
|
|
227
|
+
if (!disableExecuteApi) {
|
|
228
|
+
writeSsm(this, edgeKeys.apiEndpoint(projectName, stage), this.api.apiEndpoint, { description: `HttpApi default endpoint URL.` });
|
|
229
|
+
}
|
|
178
230
|
writeSsm(this, edgeKeys.apiDefaultStageName(projectName, stage),
|
|
179
231
|
// HttpApi always uses `$default`. Publishing it explicitly
|
|
180
232
|
// means future named-stage support doesn't break consumers.
|
|
@@ -326,6 +378,57 @@ export class VentureEdgeStack extends cdk.Stack {
|
|
|
326
378
|
bucketName: bucket.bucketName,
|
|
327
379
|
bucketRegionalDomainName: bucket.bucketRegionalDomainName,
|
|
328
380
|
});
|
|
381
|
+
// ─── WA2: default security-headers response policy ──────────
|
|
382
|
+
// Every CDN response carries HSTS, `X-Content-Type-Options:
|
|
383
|
+
// nosniff`, a strict referrer policy, and clickjacking
|
|
384
|
+
// protection. The policy name is left to CloudFormation so two
|
|
385
|
+
// distributions never collide on a fixed name.
|
|
386
|
+
const securityHeaders = new cloudfront.ResponseHeadersPolicy(this, `${logicalId}-security-headers`, {
|
|
387
|
+
comment: `VentureKit security headers — ${intent.id}`,
|
|
388
|
+
securityHeadersBehavior: {
|
|
389
|
+
strictTransportSecurity: {
|
|
390
|
+
accessControlMaxAge: cdk.Duration.days(365),
|
|
391
|
+
includeSubdomains: true,
|
|
392
|
+
preload: true,
|
|
393
|
+
override: true,
|
|
394
|
+
},
|
|
395
|
+
contentTypeOptions: { override: true },
|
|
396
|
+
frameOptions: {
|
|
397
|
+
frameOption: cloudfront.HeadersFrameOption.DENY,
|
|
398
|
+
override: true,
|
|
399
|
+
},
|
|
400
|
+
referrerPolicy: {
|
|
401
|
+
referrerPolicy: cloudfront.HeadersReferrerPolicy.STRICT_ORIGIN_WHEN_CROSS_ORIGIN,
|
|
402
|
+
override: true,
|
|
403
|
+
},
|
|
404
|
+
},
|
|
405
|
+
});
|
|
406
|
+
// ─── WA2: optional CloudFront access logging ────────────────
|
|
407
|
+
// Off by default; opt in per storage intent with
|
|
408
|
+
// `cdnAccessLogs: true`. Logs land in a private, encrypted,
|
|
409
|
+
// lifecycle-expired bucket. CloudFront's log delivery writes via
|
|
410
|
+
// ACL, so the bucket allows BUCKET_OWNER_PREFERRED ownership.
|
|
411
|
+
let loggingProps = {};
|
|
412
|
+
if (intent.cdnAccessLogs === true) {
|
|
413
|
+
const logBucket = new s3.Bucket(this, `${logicalId}-logs`, {
|
|
414
|
+
objectOwnership: s3.ObjectOwnership.BUCKET_OWNER_PREFERRED,
|
|
415
|
+
encryption: s3.BucketEncryption.S3_MANAGED,
|
|
416
|
+
blockPublicAccess: s3.BlockPublicAccess.BLOCK_ALL,
|
|
417
|
+
enforceSSL: true,
|
|
418
|
+
lifecycleRules: [
|
|
419
|
+
{ expiration: cdk.Duration.days(this.logRetentionDays) },
|
|
420
|
+
],
|
|
421
|
+
removalPolicy: this.isStrictRetain
|
|
422
|
+
? cdk.RemovalPolicy.RETAIN
|
|
423
|
+
: cdk.RemovalPolicy.DESTROY,
|
|
424
|
+
autoDeleteObjects: !this.isStrictRetain,
|
|
425
|
+
});
|
|
426
|
+
loggingProps = {
|
|
427
|
+
enableLogging: true,
|
|
428
|
+
logBucket,
|
|
429
|
+
logFilePrefix: `${intent.id}/`,
|
|
430
|
+
};
|
|
431
|
+
}
|
|
329
432
|
const distribution = new cloudfront.Distribution(this, logicalId, {
|
|
330
433
|
comment: `${projectName}-${intent.id}-${stage}`,
|
|
331
434
|
defaultBehavior: {
|
|
@@ -340,11 +443,14 @@ export class VentureEdgeStack extends cdk.Stack {
|
|
|
340
443
|
cachedMethods: cloudfront.CachedMethods.CACHE_GET_HEAD_OPTIONS,
|
|
341
444
|
cachePolicy: cloudfront.CachePolicy.CACHING_OPTIMIZED,
|
|
342
445
|
compress: true,
|
|
446
|
+
// WA2: attach the security-headers policy to every response.
|
|
447
|
+
responseHeadersPolicy: securityHeaders,
|
|
343
448
|
},
|
|
344
|
-
// PriceClass 100
|
|
345
|
-
//
|
|
346
|
-
priceClass:
|
|
449
|
+
// PriceClass default 100 (US/Canada/Europe edges only) — cheaper
|
|
450
|
+
// than global. Override per storage intent via `cdnPriceClass`.
|
|
451
|
+
priceClass: toPriceClass(intent.cdnPriceClass),
|
|
347
452
|
enabled: true,
|
|
453
|
+
...loggingProps,
|
|
348
454
|
...aliasProps,
|
|
349
455
|
});
|
|
350
456
|
if (this.isStrictRetain) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"edge-stack.js","sourceRoot":"","sources":["../../src/cdk/edge-stack.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"edge-stack.js","sourceRoot":"","sources":["../../src/cdk/edge-stack.ts"],"names":[],"mappings":"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"}
|
|
@@ -81,6 +81,7 @@
|
|
|
81
81
|
import * as cdk from 'aws-cdk-lib';
|
|
82
82
|
import * as sqs from 'aws-cdk-lib/aws-sqs';
|
|
83
83
|
import * as sns from 'aws-cdk-lib/aws-sns';
|
|
84
|
+
import * as events from 'aws-cdk-lib/aws-events';
|
|
84
85
|
import * as secretsmanager from 'aws-cdk-lib/aws-secretsmanager';
|
|
85
86
|
import { Construct } from 'constructs';
|
|
86
87
|
import { type EnvConfig, type VentureIntent } from '@venturekit/core';
|
|
@@ -101,10 +102,24 @@ export declare class VentureMessagingStack extends cdk.Stack {
|
|
|
101
102
|
readonly notifyDispatcherDlqs: Map<string, sqs.Queue>;
|
|
102
103
|
readonly notifyBounceDlqs: Map<string, sqs.Queue>;
|
|
103
104
|
readonly whatsappTokenSecrets: Map<string, secretsmanager.Secret>;
|
|
105
|
+
/** EventBridge custom buses for OWNED `events` intents (external ones create nothing here). */
|
|
106
|
+
readonly eventBuses: Map<string, events.EventBus>;
|
|
104
107
|
private readonly isStrictRetain;
|
|
105
108
|
private readonly removalPolicy;
|
|
106
109
|
constructor(scope: Construct, id: string, props: VentureMessagingStackProps);
|
|
107
110
|
private createQueue;
|
|
108
111
|
private createNotify;
|
|
112
|
+
/**
|
|
113
|
+
* Create one EventBridge custom bus per OWNED `events` intent and
|
|
114
|
+
* publish its name + ARN to SSM. The bus is the durable routing
|
|
115
|
+
* surface; the rules + Lambda/queue targets that consume it live in
|
|
116
|
+
* the app stack (same split as `schedules` — a Rule with no target is
|
|
117
|
+
* dead infrastructure, and the targets are app-tier code).
|
|
118
|
+
*
|
|
119
|
+
* `events:PutEvents` is granted to the publisher's shared Lambda role
|
|
120
|
+
* in the app stack, NOT here, for the same reason SQS
|
|
121
|
+
* receive/send grants live there: they need the role+resource pair.
|
|
122
|
+
*/
|
|
123
|
+
private createEventBus;
|
|
109
124
|
}
|
|
110
125
|
//# sourceMappingURL=messaging-stack.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"messaging-stack.d.ts","sourceRoot":"","sources":["../../src/cdk/messaging-stack.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+EG;AAEH,OAAO,KAAK,GAAG,MAAM,aAAa,CAAC;AACnC,OAAO,KAAK,GAAG,MAAM,qBAAqB,CAAC;AAC3C,OAAO,KAAK,GAAG,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"messaging-stack.d.ts","sourceRoot":"","sources":["../../src/cdk/messaging-stack.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+EG;AAEH,OAAO,KAAK,GAAG,MAAM,aAAa,CAAC;AACnC,OAAO,KAAK,GAAG,MAAM,qBAAqB,CAAC;AAC3C,OAAO,KAAK,GAAG,MAAM,qBAAqB,CAAC;AAC3C,OAAO,KAAK,MAAM,MAAM,wBAAwB,CAAC;AAGjD,OAAO,KAAK,cAAc,MAAM,gCAAgC,CAAC;AACjE,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AACvC,OAAO,EAAsB,KAAK,SAAS,EAAE,KAAK,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAI1F,MAAM,WAAW,0BAA2B,SAAQ,GAAG,CAAC,UAAU;IAChE,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,SAAS,CAAC;IACrB,gEAAgE;IAChE,cAAc,EAAE,aAAa,CAAC;CAC/B;AAED,qBAAa,qBAAsB,SAAQ,GAAG,CAAC,KAAK;IAClD,SAAgB,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE;QAAE,KAAK,EAAE,GAAG,CAAC,KAAK,CAAC;QAAC,GAAG,EAAE,GAAG,CAAC,KAAK,CAAA;KAAE,CAAC,CAAa;IACtF,SAAgB,kBAAkB,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,KAAK,CAAC,CAAa;IACvE,SAAgB,2BAA2B,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAa;IAC7E,SAAgB,oBAAoB,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,KAAK,CAAC,CAAa;IACzE,SAAgB,gBAAgB,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,KAAK,CAAC,CAAa;IACrE,SAAgB,oBAAoB,EAAE,GAAG,CAAC,MAAM,EAAE,cAAc,CAAC,MAAM,CAAC,CAAa;IACrF,+FAA+F;IAC/F,SAAgB,UAAU,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAa;IAErE,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAU;IACzC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAoB;gBAEtC,KAAK,EAAE,SAAS,EAAE,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,0BAA0B;IA6B3E,OAAO,CAAC,WAAW;IAqEnB,OAAO,CAAC,YAAY;IAsNpB;;;;;;;;;;OAUG;IACH,OAAO,CAAC,cAAc;CA4BvB"}
|
|
@@ -81,6 +81,7 @@
|
|
|
81
81
|
import * as cdk from 'aws-cdk-lib';
|
|
82
82
|
import * as sqs from 'aws-cdk-lib/aws-sqs';
|
|
83
83
|
import * as sns from 'aws-cdk-lib/aws-sns';
|
|
84
|
+
import * as events from 'aws-cdk-lib/aws-events';
|
|
84
85
|
import * as ses from 'aws-cdk-lib/aws-ses';
|
|
85
86
|
import * as route53 from 'aws-cdk-lib/aws-route53';
|
|
86
87
|
import * as secretsmanager from 'aws-cdk-lib/aws-secretsmanager';
|
|
@@ -94,6 +95,8 @@ export class VentureMessagingStack extends cdk.Stack {
|
|
|
94
95
|
notifyDispatcherDlqs = new Map();
|
|
95
96
|
notifyBounceDlqs = new Map();
|
|
96
97
|
whatsappTokenSecrets = new Map();
|
|
98
|
+
/** EventBridge custom buses for OWNED `events` intents (external ones create nothing here). */
|
|
99
|
+
eventBuses = new Map();
|
|
97
100
|
isStrictRetain;
|
|
98
101
|
removalPolicy;
|
|
99
102
|
constructor(scope, id, props) {
|
|
@@ -111,6 +114,16 @@ export class VentureMessagingStack extends cdk.Stack {
|
|
|
111
114
|
this.createNotify(intent, projectName, stage);
|
|
112
115
|
}
|
|
113
116
|
}
|
|
117
|
+
if (infrastructure.events) {
|
|
118
|
+
for (const intent of infrastructure.events) {
|
|
119
|
+
// Only OWNED buses are created here. A subscriber-only intent
|
|
120
|
+
// (`external.busName` set) attaches its rules in the app stack
|
|
121
|
+
// to a bus owned by another venture and creates no bus.
|
|
122
|
+
if (intent.external)
|
|
123
|
+
continue;
|
|
124
|
+
this.createEventBus(intent, projectName, stage);
|
|
125
|
+
}
|
|
126
|
+
}
|
|
114
127
|
}
|
|
115
128
|
// ─── SQS ─────────────────────────────────────────────────────────────
|
|
116
129
|
createQueue(intent, projectName, stage) {
|
|
@@ -333,5 +346,41 @@ export class VentureMessagingStack extends cdk.Stack {
|
|
|
333
346
|
writeSsm(this, messagingKeys.notifyDispatcherDlqArn(projectName, stage, intent.id), dispatcherDlq.queueArn, { description: `Dispatcher Lambda on-failure DLQ ARN.` });
|
|
334
347
|
writeSsm(this, messagingKeys.notifyBounceDlqArn(projectName, stage, intent.id), bounceDlq.queueArn, { description: `Bounce-handler Lambda on-failure DLQ ARN.` });
|
|
335
348
|
}
|
|
349
|
+
// ─── EventBridge (domain-event bus) ──────────────────────────────────
|
|
350
|
+
/**
|
|
351
|
+
* Create one EventBridge custom bus per OWNED `events` intent and
|
|
352
|
+
* publish its name + ARN to SSM. The bus is the durable routing
|
|
353
|
+
* surface; the rules + Lambda/queue targets that consume it live in
|
|
354
|
+
* the app stack (same split as `schedules` — a Rule with no target is
|
|
355
|
+
* dead infrastructure, and the targets are app-tier code).
|
|
356
|
+
*
|
|
357
|
+
* `events:PutEvents` is granted to the publisher's shared Lambda role
|
|
358
|
+
* in the app stack, NOT here, for the same reason SQS
|
|
359
|
+
* receive/send grants live there: they need the role+resource pair.
|
|
360
|
+
*/
|
|
361
|
+
createEventBus(intent, projectName, stage) {
|
|
362
|
+
const logicalId = `events-${intent.id}`;
|
|
363
|
+
const busName = intent.busName ?? `${projectName}-${stage}-${intent.id}`;
|
|
364
|
+
const bus = new events.EventBus(this, logicalId, { eventBusName: busName });
|
|
365
|
+
// A custom bus holds no durable state (events are transient), so
|
|
366
|
+
// RETAIN here isn't about message preservation — it's about the
|
|
367
|
+
// NAME. Subscriber ventures + the publisher's `EVENT_BUS_*` env var
|
|
368
|
+
// reference the bus by name, so a destroy+recreate would briefly
|
|
369
|
+
// break every cross-stack rule pointing at it. Pin RETAIN under
|
|
370
|
+
// strict so the name is stable across a messaging-stack churn.
|
|
371
|
+
if (this.isStrictRetain) {
|
|
372
|
+
const cfn = bus.node.defaultChild;
|
|
373
|
+
cfn.cfnOptions.deletionPolicy = cdk.CfnDeletionPolicy.RETAIN;
|
|
374
|
+
cfn.cfnOptions.updateReplacePolicy = cdk.CfnDeletionPolicy.RETAIN;
|
|
375
|
+
}
|
|
376
|
+
this.eventBuses.set(intent.id, bus);
|
|
377
|
+
writeSsm(this, messagingKeys.eventBusName(projectName, stage, intent.id), bus.eventBusName, {
|
|
378
|
+
description: `EventBridge bus name for '${intent.id}' — publishers read it ` +
|
|
379
|
+
`(EVENT_BUS_<ID>_NAME); subscribers reference it by name.`,
|
|
380
|
+
});
|
|
381
|
+
writeSsm(this, messagingKeys.eventBusArn(projectName, stage, intent.id), bus.eventBusArn, {
|
|
382
|
+
description: `EventBridge bus ARN for '${intent.id}' — events:PutEvents IAM scoping target.`,
|
|
383
|
+
});
|
|
384
|
+
}
|
|
336
385
|
}
|
|
337
386
|
//# sourceMappingURL=messaging-stack.js.map
|