@venturekit/infra 0.0.5 → 0.0.7

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.
@@ -485,6 +485,8 @@ export declare class VentureAppStack extends cdk.Stack {
485
485
  * makes the policy surface auditable.
486
486
  *
487
487
  * Grant inventory:
488
+ * - Rate-limit DDB table read+write (ALWAYS — the table is
489
+ * unconditionally provisioned by the data stack; not import-gated)
488
490
  * - DB master credential secret read (one per database)
489
491
  * - Federated provider Secret reads (one per provider per auth intent)
490
492
  * - WhatsApp token Secret reads (one per notify intent with channel)
@@ -1 +1 @@
1
- {"version":3,"file":"app-stack.d.ts","sourceRoot":"","sources":["../../src/cdk/app-stack.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"app-stack.d.ts","sourceRoot":"","sources":["../../src/cdk/app-stack.ts"],"names":[],"mappings":"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"}
@@ -72,6 +72,7 @@ import * as ec2 from 'aws-cdk-lib/aws-ec2';
72
72
  import * as lambda from 'aws-cdk-lib/aws-lambda';
73
73
  import * as lambdaEventSources from 'aws-cdk-lib/aws-lambda-event-sources';
74
74
  import * as s3 from 'aws-cdk-lib/aws-s3';
75
+ import * as dynamodb from 'aws-cdk-lib/aws-dynamodb';
75
76
  import * as sqs from 'aws-cdk-lib/aws-sqs';
76
77
  import * as events from 'aws-cdk-lib/aws-events';
77
78
  import * as eventsTargets from 'aws-cdk-lib/aws-events-targets';
@@ -334,6 +335,16 @@ export class VentureAppStack extends cdk.Stack {
334
335
  this.baseEnvVars = {
335
336
  VENTURE_PROJECT_NAME: projectName,
336
337
  VENTURE_STAGE: stage,
338
+ // Rate-limit DDB table. The data stack ALWAYS provisions
339
+ // `${project}-rate-limits-${stage}` (createRateLimitTable), and
340
+ // @venturekit/runtime's rate limiter resolves the name from this
341
+ // env var first (resolveRateLimitTableName). Inject it explicitly
342
+ // so resolution never has to fall through to its project+stage
343
+ // reconstruction. Paired with the always-on IAM grant in
344
+ // applyImportedGrants — without that grant the limiter's atomic
345
+ // UpdateItem is denied at runtime and every rate-limited route
346
+ // fails closed.
347
+ VENTURE_RATE_LIMIT_TABLE: `${projectName}-rate-limits-${stage}`,
337
348
  // Inline value, not ARN. Lambdas read it directly from
338
349
  // env without hitting Secrets Manager — zero cold-start cost
339
350
  // for HMAC verification.
@@ -505,6 +516,11 @@ export class VentureAppStack extends cdk.Stack {
505
516
  bundleHandlerCode: (file) => this.bundleHandlerCode(file),
506
517
  routes: wsRoutes,
507
518
  isStrictRetain: this.isStrictRetain,
519
+ // WebSocket custom domains live in the same top-level `domains`
520
+ // intent as the HTTP ones, distinguished by `target`. The edge
521
+ // stack takes the `'http'` (default) entries; the WS API here
522
+ // takes the `'websocket'` ones.
523
+ domains: (infrastructure.domains ?? []).filter((d) => d.target === 'websocket'),
508
524
  });
509
525
  // Merge ws env vars into baseEnvVars so EVERY other Lambda
510
526
  // (HTTP routes, queue consumers, crons) sees them — not just
@@ -1201,6 +1217,8 @@ export class VentureAppStack extends cdk.Stack {
1201
1217
  * makes the policy surface auditable.
1202
1218
  *
1203
1219
  * Grant inventory:
1220
+ * - Rate-limit DDB table read+write (ALWAYS — the table is
1221
+ * unconditionally provisioned by the data stack; not import-gated)
1204
1222
  * - DB master credential secret read (one per database)
1205
1223
  * - Federated provider Secret reads (one per provider per auth intent)
1206
1224
  * - WhatsApp token Secret reads (one per notify intent with channel)
@@ -1215,6 +1233,22 @@ export class VentureAppStack extends cdk.Stack {
1215
1233
  * (added by `LambdaFunction` target).
1216
1234
  */
1217
1235
  applyImportedGrants(imports) {
1236
+ // ── Rate-limit DDB table (ALWAYS — NOT import-gated) ──────
1237
+ // The data stack unconditionally provisions
1238
+ // `${project}-rate-limits-${stage}` (createRateLimitTable), and
1239
+ // @venturekit/runtime's rate limiter does an atomic `UpdateItem`
1240
+ // against it on every throttled request. Unlike the grants below,
1241
+ // there is no intent to gate on — the table exists for every
1242
+ // venture — so this grant is always attached. The name is fully
1243
+ // determined by project + stage (identical to the data stack's
1244
+ // `tableName` and the runtime's `resolveRateLimitTableName`
1245
+ // fallback), so we import by name rather than threading the ARN
1246
+ // through the generator. The table uses an AWS-managed key, so no
1247
+ // KMS grant is required. Without this, deployed Lambdas hit
1248
+ // `AccessDeniedException: not authorized to perform
1249
+ // dynamodb:UpdateItem` and every rate-limited route fails closed.
1250
+ const rateLimitTable = dynamodb.Table.fromTableName(this, 'imported-rate-limit-table', `${this.projectName}-rate-limits-${this.stage}`);
1251
+ rateLimitTable.grantReadWriteData(this.lambdaRole);
1218
1252
  // ── DB secrets ────────────────────────────────────────────
1219
1253
  if (imports.databaseEndpointsById) {
1220
1254
  for (const [id, db] of imports.databaseEndpointsById) {
@@ -1 +1 @@
1
- {"version":3,"file":"app-stack.js","sourceRoot":"","sources":["../../src/cdk/app-stack.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"app-stack.js","sourceRoot":"","sources":["../../src/cdk/app-stack.ts"],"names":[],"mappings":"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"}
@@ -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;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"}
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;IAoMtE,OAAO,CAAC,YAAY;IA6GpB,OAAO,CAAC,gBAAgB;CA0LzB"}
@@ -137,7 +137,12 @@ export class VentureEdgeStack extends cdk.Stack {
137
137
  // ARN and no hosted zone) keeps execute-api enabled so the API stays
138
138
  // reachable while DNS/cert validation completes. Override per-env
139
139
  // with `api.disableExecuteApiEndpoint`.
140
- const hasResolvableCustomDomain = (infrastructure.domains ?? []).some((d) => Boolean(d.certificateArn) || Boolean(d.hostedZoneId));
140
+ const hasResolvableCustomDomain = (infrastructure.domains ?? [])
141
+ // `target: 'websocket'` domains bind to the WebSocket API in the
142
+ // app stack, not this HTTP API — they must not influence the HTTP
143
+ // API's execute-api posture.
144
+ .filter((d) => d.target !== 'websocket')
145
+ .some((d) => Boolean(d.certificateArn) || Boolean(d.hostedZoneId));
141
146
  const disableExecuteApi = apiConfig.disableExecuteApiEndpoint ?? hasResolvableCustomDomain;
142
147
  // ─── HttpApi shell ──────────────────────────────────────────
143
148
  // Created with NO routes — routes live in the app stack.
@@ -239,6 +244,12 @@ export class VentureEdgeStack extends cdk.Stack {
239
244
  // `apiCustomDomain` (the canonical one app code reads).
240
245
  let primaryDomain;
241
246
  for (const intent of infrastructure.domains) {
247
+ // `target: 'websocket'` domains belong to the WebSocket API in
248
+ // the app stack (see shared/websocket-construct.ts), not this
249
+ // HTTP API. Skip them — don't map them onto the HTTP API or
250
+ // publish them as the HTTP `apiCustomDomain`.
251
+ if (intent.target === 'websocket')
252
+ continue;
242
253
  this.createDomain(intent, projectName, stage);
243
254
  if (!primaryDomain)
244
255
  primaryDomain = intent.domain;
@@ -274,17 +285,27 @@ export class VentureEdgeStack extends cdk.Stack {
274
285
  }
275
286
  createDomain(intent, projectName, stage) {
276
287
  const resourceName = `${projectName}-${intent.id}`;
288
+ // DNS mode: 'external' (default) means VentureKit creates NO Route53
289
+ // records — the operator manages DNS on their own host (CloudFlare,
290
+ // etc.). Route53 automation is opt-in; a bare `hostedZoneId` implies
291
+ // 'route53' for backward compatibility.
292
+ const dns = intent.dns ?? (intent.hostedZoneId ? 'route53' : 'external');
293
+ if (dns === 'route53' && !intent.hostedZoneId) {
294
+ throw new Error(`[venturekit] domain '${intent.domain}': dns: 'route53' requires a ` +
295
+ `hostedZoneId. Provide one, or use dns: 'external' (the default) to ` +
296
+ `manage DNS records on your own host (e.g. CloudFlare).`);
297
+ }
277
298
  // Three certificate paths:
278
299
  // 1. Operator pre-issued an ACM cert: pass the ARN.
279
- // 2. We own the Route53 zone: auto-issue with DNS validation.
280
- // 3. Neither: create the cert without DNS validation — it
281
- // will sit in PENDING until the operator publishes the
282
- // validation CNAMEs from the AWS console.
300
+ // 2. dns 'route53': we own the zone auto-issue with DNS validation.
301
+ // 3. Otherwise (external DNS): create the cert without validation —
302
+ // it sits in PENDING until the operator publishes the validation
303
+ // CNAMEs on their DNS host.
283
304
  let certificate;
284
305
  if (intent.certificateArn) {
285
306
  certificate = acm.Certificate.fromCertificateArn(this, `${resourceName}-cert`, intent.certificateArn);
286
307
  }
287
- else if (intent.hostedZoneId) {
308
+ else if (dns === 'route53') {
288
309
  const hostedZone = route53.HostedZone.fromHostedZoneAttributes(this, `${resourceName}-zone`, {
289
310
  hostedZoneId: intent.hostedZoneId,
290
311
  // `intent.domain` may be `api.example.com` (apex zone is
@@ -328,8 +349,9 @@ export class VentureEdgeStack extends cdk.Stack {
328
349
  cfnMapping.cfnOptions.deletionPolicy = cdk.CfnDeletionPolicy.RETAIN;
329
350
  cfnMapping.cfnOptions.updateReplacePolicy = cdk.CfnDeletionPolicy.RETAIN;
330
351
  }
331
- // Route53 alias when we own the zone.
332
- if (intent.hostedZoneId) {
352
+ // Route53 alias only in route53 mode. External DNS (the default)
353
+ // is published by the operator on their own host (e.g. CloudFlare).
354
+ if (dns === 'route53') {
333
355
  const hostedZone = route53.HostedZone.fromHostedZoneAttributes(this, `${resourceName}-zone-record`, {
334
356
  hostedZoneId: intent.hostedZoneId,
335
357
  zoneName: intent.domain.split('.').slice(-2).join('.'),
@@ -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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"}
@@ -0,0 +1,107 @@
1
+ /**
2
+ * Shared custom-domain helpers for API Gateway v2 (HTTP **and**
3
+ * WebSocket APIs).
4
+ *
5
+ * # Why this exists
6
+ *
7
+ * Both API Gateway v2 flavours — the HTTP API in the edge stack and the
8
+ * WebSocket API in the app stack — attach a custom domain the same way:
9
+ *
10
+ * 1. an ACM certificate (three provenance paths, see below),
11
+ * 2. an `AWS::ApiGatewayV2::DomainName`,
12
+ * 3. an `AWS::ApiGatewayV2::ApiMapping` binding the domain to a stage,
13
+ * 4. (optional) a Route53 alias A-record — ONLY when `dns: 'route53'`
14
+ * (we own the zone). VentureKit does NOT assume Route53; external
15
+ * DNS (CloudFlare, etc.) is the default and creates no records.
16
+ *
17
+ * Steps 1, 2 and 4 are byte-for-byte identical between the two; only the
18
+ * `ApiMapping` differs (HTTP maps to the API's `$default` stage; the
19
+ * WebSocket API maps to its named stage). Those two shared pieces live
20
+ * here so the cert-provenance logic is written once.
21
+ *
22
+ * # Certificate is REGIONAL, not us-east-1
23
+ *
24
+ * Unlike CloudFront (which demands a us-east-1 cert), API Gateway v2
25
+ * regional custom domains take a cert **in the same region as the API**.
26
+ * Both consumers create the cert inside their own regional stack, so
27
+ * `new acm.Certificate(scope, …)` lands in the deploy region — correct
28
+ * for both. Do NOT route these through a us-east-1 cross-region cert.
29
+ *
30
+ * # Construct-id contract
31
+ *
32
+ * The caller passes a `resourceName` prefix (e.g. `${project}-${id}`);
33
+ * every construct id is derived from it deterministically
34
+ * (`${resourceName}-cert`, `-domain`, `-zone`, `-zone-record`,
35
+ * `-a-record`). Keeping the prefix stable across deploys keeps the
36
+ * CloudFormation logical ids — and therefore the RETAIN'd domain — in
37
+ * place.
38
+ */
39
+ import * as apigatewayv2 from 'aws-cdk-lib/aws-apigatewayv2';
40
+ import { Construct } from 'constructs';
41
+ /**
42
+ * Inputs shared by the cert + DomainName creation. Mirrors the relevant
43
+ * fields of `@venturekit/core`'s `DomainIntent`.
44
+ */
45
+ export interface ApiGatewayV2DomainProps {
46
+ /**
47
+ * Stable construct-id prefix, e.g. `${projectName}-${intent.id}`.
48
+ * See the "Construct-id contract" note in the file header — changing
49
+ * this between deploys REPLACES the (possibly RETAIN'd) domain.
50
+ */
51
+ resourceName: string;
52
+ /** The fully-qualified hostname, e.g. `ws.example.com`. */
53
+ domain: string;
54
+ /**
55
+ * Pre-issued ACM cert ARN. When set, the cert is imported and the
56
+ * `hostedZoneId` path is skipped. The cert MUST be in the same region
57
+ * as the API (regional custom domains don't accept us-east-1 certs).
58
+ */
59
+ certificateArn?: string;
60
+ /**
61
+ * Route53 hosted zone id owning `domain`. Consulted ONLY in
62
+ * `dns: 'route53'` mode, where it's REQUIRED — the cert is DNS-
63
+ * validated against it and an alias A-record is published. Ignored
64
+ * when `dns` is `'external'`.
65
+ */
66
+ hostedZoneId?: string;
67
+ /**
68
+ * DNS record management mode.
69
+ *
70
+ * - `'route53'` — DNS-validate the cert against `hostedZoneId` (which
71
+ * becomes REQUIRED) and let the caller publish an alias A-record.
72
+ * - `'external'` — no Route53: the cert is imported (`certificateArn`)
73
+ * or issued PENDING for manual validation, and the caller must NOT
74
+ * publish an alias. Records are managed on the operator's own DNS
75
+ * host (CloudFlare, etc.).
76
+ */
77
+ dns: 'route53' | 'external';
78
+ /**
79
+ * When true, tag the DomainName with RETAIN deletion/update-replace
80
+ * policies. The custom domain is the public contract with the world;
81
+ * deleting it forces DNS reconfiguration on every client, so strict
82
+ * deployments keep it claimed to the account for `cdk import` recovery.
83
+ */
84
+ retain: boolean;
85
+ }
86
+ /**
87
+ * Create an API Gateway v2 `DomainName` (with its ACM cert) for a custom
88
+ * domain. Does NOT create the `ApiMapping` — the caller owns that
89
+ * because the target stage differs between the HTTP API (`$default`)
90
+ * and the WebSocket API (its named stage).
91
+ *
92
+ * Returns the `DomainName` so the caller can build the mapping and (for
93
+ * the Route53 path) an alias record via {@link createApiGatewayV2AliasRecord}.
94
+ */
95
+ export declare function createApiGatewayV2DomainName(scope: Construct, props: ApiGatewayV2DomainProps): apigatewayv2.DomainName;
96
+ /**
97
+ * Publish a Route53 alias A-record pointing `domain` at the API
98
+ * Gateway v2 regional domain. Only call this when the operator gave us
99
+ * a `hostedZoneId` (we own the zone); otherwise they publish DNS by hand.
100
+ */
101
+ export declare function createApiGatewayV2AliasRecord(scope: Construct, props: {
102
+ resourceName: string;
103
+ domain: string;
104
+ hostedZoneId: string;
105
+ domainName: apigatewayv2.DomainName;
106
+ }): void;
107
+ //# sourceMappingURL=domain-helpers.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"domain-helpers.d.ts","sourceRoot":"","sources":["../../../src/cdk/shared/domain-helpers.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AAMH,OAAO,KAAK,YAAY,MAAM,8BAA8B,CAAC;AAC7D,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAEvC;;;GAGG;AACH,MAAM,WAAW,uBAAuB;IACtC;;;;OAIG;IACH,YAAY,EAAE,MAAM,CAAC;IAErB,2DAA2D;IAC3D,MAAM,EAAE,MAAM,CAAC;IAEf;;;;OAIG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IAExB;;;;;OAKG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB;;;;;;;;;OASG;IACH,GAAG,EAAE,SAAS,GAAG,UAAU,CAAC;IAE5B;;;;;OAKG;IACH,MAAM,EAAE,OAAO,CAAC;CACjB;AAwDD;;;;;;;;GAQG;AACH,wBAAgB,4BAA4B,CAC1C,KAAK,EAAE,SAAS,EAChB,KAAK,EAAE,uBAAuB,GAC7B,YAAY,CAAC,UAAU,CA2BzB;AAED;;;;GAIG;AACH,wBAAgB,6BAA6B,CAC3C,KAAK,EAAE,SAAS,EAChB,KAAK,EAAE;IACL,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,YAAY,CAAC,UAAU,CAAC;CACrC,GACA,IAAI,CAsBN"}
@@ -0,0 +1,127 @@
1
+ /**
2
+ * Shared custom-domain helpers for API Gateway v2 (HTTP **and**
3
+ * WebSocket APIs).
4
+ *
5
+ * # Why this exists
6
+ *
7
+ * Both API Gateway v2 flavours — the HTTP API in the edge stack and the
8
+ * WebSocket API in the app stack — attach a custom domain the same way:
9
+ *
10
+ * 1. an ACM certificate (three provenance paths, see below),
11
+ * 2. an `AWS::ApiGatewayV2::DomainName`,
12
+ * 3. an `AWS::ApiGatewayV2::ApiMapping` binding the domain to a stage,
13
+ * 4. (optional) a Route53 alias A-record — ONLY when `dns: 'route53'`
14
+ * (we own the zone). VentureKit does NOT assume Route53; external
15
+ * DNS (CloudFlare, etc.) is the default and creates no records.
16
+ *
17
+ * Steps 1, 2 and 4 are byte-for-byte identical between the two; only the
18
+ * `ApiMapping` differs (HTTP maps to the API's `$default` stage; the
19
+ * WebSocket API maps to its named stage). Those two shared pieces live
20
+ * here so the cert-provenance logic is written once.
21
+ *
22
+ * # Certificate is REGIONAL, not us-east-1
23
+ *
24
+ * Unlike CloudFront (which demands a us-east-1 cert), API Gateway v2
25
+ * regional custom domains take a cert **in the same region as the API**.
26
+ * Both consumers create the cert inside their own regional stack, so
27
+ * `new acm.Certificate(scope, …)` lands in the deploy region — correct
28
+ * for both. Do NOT route these through a us-east-1 cross-region cert.
29
+ *
30
+ * # Construct-id contract
31
+ *
32
+ * The caller passes a `resourceName` prefix (e.g. `${project}-${id}`);
33
+ * every construct id is derived from it deterministically
34
+ * (`${resourceName}-cert`, `-domain`, `-zone`, `-zone-record`,
35
+ * `-a-record`). Keeping the prefix stable across deploys keeps the
36
+ * CloudFormation logical ids — and therefore the RETAIN'd domain — in
37
+ * place.
38
+ */
39
+ import * as cdk from 'aws-cdk-lib';
40
+ import * as acm from 'aws-cdk-lib/aws-certificatemanager';
41
+ import * as route53 from 'aws-cdk-lib/aws-route53';
42
+ import * as route53Targets from 'aws-cdk-lib/aws-route53-targets';
43
+ import * as apigatewayv2 from 'aws-cdk-lib/aws-apigatewayv2';
44
+ /**
45
+ * Resolve the ACM certificate for a custom domain via the three
46
+ * provenance paths, in priority order:
47
+ *
48
+ * 1. `certificateArn` present → import it.
49
+ * 2. `hostedZoneId` present → auto-issue with DNS validation
50
+ * against that zone.
51
+ * 3. neither → issue a cert that sits in PENDING
52
+ * until the operator publishes the ACM
53
+ * validation CNAMEs from the console.
54
+ */
55
+ function resolveCertificate(scope, props) {
56
+ const { resourceName, domain, certificateArn, hostedZoneId, dns } = props;
57
+ // 1. Pre-issued cert — works with ANY DNS provider.
58
+ if (certificateArn) {
59
+ return acm.Certificate.fromCertificateArn(scope, `${resourceName}-cert`, certificateArn);
60
+ }
61
+ // 2. Route53-owned zone — auto-issue with DNS validation. Only in
62
+ // 'route53' mode; `hostedZoneId` presence is enforced by the
63
+ // caller (createApiGatewayV2DomainName) before we get here.
64
+ if (dns === 'route53' && hostedZoneId) {
65
+ const hostedZone = route53.HostedZone.fromHostedZoneAttributes(scope, `${resourceName}-zone`, {
66
+ hostedZoneId,
67
+ // `domain` may be a subdomain (`ws.example.com`); the apex zone
68
+ // is `example.com`. Take the trailing two labels — Route53
69
+ // doesn't accept a subdomain as the zone name.
70
+ zoneName: domain.split('.').slice(-2).join('.'),
71
+ });
72
+ return new acm.Certificate(scope, `${resourceName}-cert`, {
73
+ domainName: domain,
74
+ validation: acm.CertificateValidation.fromDns(hostedZone),
75
+ });
76
+ }
77
+ // 3. External DNS (CloudFlare, etc.) — issue a PENDING cert; the
78
+ // operator publishes the ACM validation record by hand.
79
+ return new acm.Certificate(scope, `${resourceName}-cert`, {
80
+ domainName: domain,
81
+ });
82
+ }
83
+ /**
84
+ * Create an API Gateway v2 `DomainName` (with its ACM cert) for a custom
85
+ * domain. Does NOT create the `ApiMapping` — the caller owns that
86
+ * because the target stage differs between the HTTP API (`$default`)
87
+ * and the WebSocket API (its named stage).
88
+ *
89
+ * Returns the `DomainName` so the caller can build the mapping and (for
90
+ * the Route53 path) an alias record via {@link createApiGatewayV2AliasRecord}.
91
+ */
92
+ export function createApiGatewayV2DomainName(scope, props) {
93
+ if (props.dns === 'route53' && !props.hostedZoneId) {
94
+ throw new Error(`[venturekit] domain '${props.domain}': dns: 'route53' requires a ` +
95
+ `hostedZoneId. Provide one, or use dns: 'external' (the default) to ` +
96
+ `manage DNS records on your own host (e.g. CloudFlare).`);
97
+ }
98
+ const certificate = resolveCertificate(scope, props);
99
+ const domainName = new apigatewayv2.DomainName(scope, `${props.resourceName}-domain`, {
100
+ domainName: props.domain,
101
+ certificate,
102
+ });
103
+ if (props.retain) {
104
+ const cfnDomain = domainName.node.defaultChild;
105
+ cfnDomain.cfnOptions.deletionPolicy = cdk.CfnDeletionPolicy.RETAIN;
106
+ cfnDomain.cfnOptions.updateReplacePolicy = cdk.CfnDeletionPolicy.RETAIN;
107
+ }
108
+ return domainName;
109
+ }
110
+ /**
111
+ * Publish a Route53 alias A-record pointing `domain` at the API
112
+ * Gateway v2 regional domain. Only call this when the operator gave us
113
+ * a `hostedZoneId` (we own the zone); otherwise they publish DNS by hand.
114
+ */
115
+ export function createApiGatewayV2AliasRecord(scope, props) {
116
+ const { resourceName, domain, hostedZoneId, domainName } = props;
117
+ const hostedZone = route53.HostedZone.fromHostedZoneAttributes(scope, `${resourceName}-zone-record`, {
118
+ hostedZoneId,
119
+ zoneName: domain.split('.').slice(-2).join('.'),
120
+ });
121
+ new route53.ARecord(scope, `${resourceName}-a-record`, {
122
+ zone: hostedZone,
123
+ recordName: domain,
124
+ target: route53.RecordTarget.fromAlias(new route53Targets.ApiGatewayv2DomainProperties(domainName.regionalDomainName, domainName.regionalHostedZoneId)),
125
+ });
126
+ }
127
+ //# sourceMappingURL=domain-helpers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"domain-helpers.js","sourceRoot":"","sources":["../../../src/cdk/shared/domain-helpers.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AAEH,OAAO,KAAK,GAAG,MAAM,aAAa,CAAC;AACnC,OAAO,KAAK,GAAG,MAAM,oCAAoC,CAAC;AAC1D,OAAO,KAAK,OAAO,MAAM,yBAAyB,CAAC;AACnD,OAAO,KAAK,cAAc,MAAM,iCAAiC,CAAC;AAClE,OAAO,KAAK,YAAY,MAAM,8BAA8B,CAAC;AAsD7D;;;;;;;;;;GAUG;AACH,SAAS,kBAAkB,CACzB,KAAgB,EAChB,KAA8B;IAE9B,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,cAAc,EAAE,YAAY,EAAE,GAAG,EAAE,GAAG,KAAK,CAAC;IAE1E,oDAAoD;IACpD,IAAI,cAAc,EAAE,CAAC;QACnB,OAAO,GAAG,CAAC,WAAW,CAAC,kBAAkB,CACvC,KAAK,EACL,GAAG,YAAY,OAAO,EACtB,cAAc,CACf,CAAC;IACJ,CAAC;IAED,kEAAkE;IAClE,gEAAgE;IAChE,+DAA+D;IAC/D,IAAI,GAAG,KAAK,SAAS,IAAI,YAAY,EAAE,CAAC;QACtC,MAAM,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC,wBAAwB,CAC5D,KAAK,EACL,GAAG,YAAY,OAAO,EACtB;YACE,YAAY;YACZ,gEAAgE;YAChE,2DAA2D;YAC3D,+CAA+C;YAC/C,QAAQ,EAAE,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC;SAChD,CACF,CAAC;QACF,OAAO,IAAI,GAAG,CAAC,WAAW,CAAC,KAAK,EAAE,GAAG,YAAY,OAAO,EAAE;YACxD,UAAU,EAAE,MAAM;YAClB,UAAU,EAAE,GAAG,CAAC,qBAAqB,CAAC,OAAO,CAAC,UAAU,CAAC;SAC1D,CAAC,CAAC;IACL,CAAC;IAED,iEAAiE;IACjE,2DAA2D;IAC3D,OAAO,IAAI,GAAG,CAAC,WAAW,CAAC,KAAK,EAAE,GAAG,YAAY,OAAO,EAAE;QACxD,UAAU,EAAE,MAAM;KACnB,CAAC,CAAC;AACL,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,4BAA4B,CAC1C,KAAgB,EAChB,KAA8B;IAE9B,IAAI,KAAK,CAAC,GAAG,KAAK,SAAS,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC;QACnD,MAAM,IAAI,KAAK,CACb,wBAAwB,KAAK,CAAC,MAAM,+BAA+B;YACnE,qEAAqE;YACrE,wDAAwD,CACzD,CAAC;IACJ,CAAC;IAED,MAAM,WAAW,GAAG,kBAAkB,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;IAErD,MAAM,UAAU,GAAG,IAAI,YAAY,CAAC,UAAU,CAC5C,KAAK,EACL,GAAG,KAAK,CAAC,YAAY,SAAS,EAC9B;QACE,UAAU,EAAE,KAAK,CAAC,MAAM;QACxB,WAAW;KACZ,CACF,CAAC;IAEF,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;QACjB,MAAM,SAAS,GAAG,UAAU,CAAC,IAAI,CAAC,YAA+B,CAAC;QAClE,SAAS,CAAC,UAAU,CAAC,cAAc,GAAG,GAAG,CAAC,iBAAiB,CAAC,MAAM,CAAC;QACnE,SAAS,CAAC,UAAU,CAAC,mBAAmB,GAAG,GAAG,CAAC,iBAAiB,CAAC,MAAM,CAAC;IAC1E,CAAC;IAED,OAAO,UAAU,CAAC;AACpB,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,6BAA6B,CAC3C,KAAgB,EAChB,KAKC;IAED,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,YAAY,EAAE,UAAU,EAAE,GAAG,KAAK,CAAC;IAEjE,MAAM,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC,wBAAwB,CAC5D,KAAK,EACL,GAAG,YAAY,cAAc,EAC7B;QACE,YAAY;QACZ,QAAQ,EAAE,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC;KAChD,CACF,CAAC;IAEF,IAAI,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,YAAY,WAAW,EAAE;QACrD,IAAI,EAAE,UAAU;QAChB,UAAU,EAAE,MAAM;QAClB,MAAM,EAAE,OAAO,CAAC,YAAY,CAAC,SAAS,CACpC,IAAI,cAAc,CAAC,4BAA4B,CAC7C,UAAU,CAAC,kBAAkB,EAC7B,UAAU,CAAC,oBAAoB,CAChC,CACF;KACF,CAAC,CAAC;AACL,CAAC"}
@@ -38,11 +38,18 @@
38
38
  * are dispatched by the project's `$default` handler in user
39
39
  * code — the runtime's two-phase auth model assumes this.
40
40
  *
41
- * - **No domain mapping.** API Gateway WebSocket custom domains exist
42
- * but require a separate `WebSocketApiMapping` + ACM cert in
43
- * `us-east-1`-or-region-local depending on the edge mode. Out of
44
- * scope for v1 the default `wss://<api-id>.execute-api.<region>.amazonaws.com/<stage>`
45
- * endpoint is exposed via `VENTURE_WS_*` env vars on every Lambda.
41
+ * # Custom domains
42
+ *
43
+ * Pass `domains` (the `target: 'websocket'` entries from the project's
44
+ * top-level `domains` intent) to expose the API at `wss://<domain>`
45
+ * instead of the raw
46
+ * `wss://<api-id>.execute-api.<region>.amazonaws.com/<stage>` endpoint.
47
+ * Each becomes an `AWS::ApiGatewayV2::DomainName` + a REGIONAL ACM cert
48
+ * (three provenance paths — see `shared/domain-helpers.ts`) + an
49
+ * `ApiMapping` at the ROOT, so the stage name never appears in the
50
+ * client URL. When omitted, the default execute-api endpoint is the
51
+ * only entry point. Either way that default endpoint stays live and is
52
+ * exposed via the `VENTURE_WS_*` env vars on every Lambda.
46
53
  */
47
54
  import * as iam from 'aws-cdk-lib/aws-iam';
48
55
  import * as ec2 from 'aws-cdk-lib/aws-ec2';
@@ -50,7 +57,7 @@ import * as lambda from 'aws-cdk-lib/aws-lambda';
50
57
  import * as dynamodb from 'aws-cdk-lib/aws-dynamodb';
51
58
  import * as apigatewayv2 from 'aws-cdk-lib/aws-apigatewayv2';
52
59
  import { Construct } from 'constructs';
53
- import type { EnvConfig } from '@venturekit/core';
60
+ import type { EnvConfig, DomainIntent } from '@venturekit/core';
54
61
  import { type DiscoveredWsRoute } from './ws-discovery.js';
55
62
  /**
56
63
  * Result returned by {@link attachWebSocketApi} so the caller can
@@ -76,6 +83,8 @@ export interface WebSocketAttachment {
76
83
  * `<api-id>.execute-api.<region>.amazonaws.com`.
77
84
  * - `VENTURE_WS_CALLBACK_URL` — `https://<domain>/<stage>` — full
78
85
  * URL `ApiGatewayManagementApiClient` needs as `endpoint`.
86
+ * - `VENTURE_WS_CUSTOM_DOMAIN` — (only when `domains` is non-empty)
87
+ * the primary custom domain; clients connect to `wss://<domain>`.
79
88
  */
80
89
  envVars: Record<string, string>;
81
90
  /** The three Lambda functions, keyed by `routeKey`. */
@@ -137,6 +146,14 @@ export interface AttachWebSocketApiProps {
137
146
  * table itself is always DESTROY (see file header).
138
147
  */
139
148
  isStrictRetain: boolean;
149
+ /**
150
+ * WebSocket-targeted custom domains — the `target: 'websocket'`
151
+ * entries from the project's `domains` intent, pre-filtered by the
152
+ * app-stack caller. Each is exposed at `wss://<domain>` via a
153
+ * DomainName + regional ACM cert + a root ApiMapping. Empty/undefined
154
+ * → only the default execute-api endpoint is reachable.
155
+ */
156
+ domains?: DomainIntent[];
140
157
  }
141
158
  /**
142
159
  * Attach a WebSocket API + connections table + 3 ws Lambdas to the
@@ -1 +1 @@
1
- {"version":3,"file":"websocket-construct.d.ts","sourceRoot":"","sources":["../../../src/cdk/shared/websocket-construct.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6CG;AAGH,OAAO,KAAK,GAAG,MAAM,qBAAqB,CAAC;AAC3C,OAAO,KAAK,GAAG,MAAM,qBAAqB,CAAC;AAC3C,OAAO,KAAK,MAAM,MAAM,wBAAwB,CAAC;AAEjD,OAAO,KAAK,QAAQ,MAAM,0BAA0B,CAAC;AACrD,OAAO,KAAK,YAAY,MAAM,8BAA8B,CAAC;AAE7D,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AACvC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAQlD,OAAO,EAAoB,KAAK,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAE7E;;;;GAIG;AACH,MAAM,WAAW,mBAAmB;IAClC,uDAAuD;IACvD,KAAK,EAAE,QAAQ,CAAC,KAAK,CAAC;IAEtB,qCAAqC;IACrC,GAAG,EAAE,YAAY,CAAC,YAAY,CAAC;IAE/B,qFAAqF;IACrF,KAAK,EAAE,YAAY,CAAC,cAAc,CAAC;IAEnC;;;;;;;;;;;;OAYG;IACH,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAEhC,uDAAuD;IACvD,iBAAiB,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC;CACjD;AAED;;;;;GAKG;AACH,MAAM,WAAW,uBAAuB;IACtC,oDAAoD;IACpD,WAAW,EAAE,MAAM,CAAC;IAEpB,yEAAyE;IACzE,KAAK,EAAE,MAAM,CAAC;IAEd;;;;;OAKG;IACH,SAAS,EAAE,SAAS,CAAC;IAErB,mEAAmE;IACnE,UAAU,EAAE,GAAG,CAAC,IAAI,CAAC;IAErB,oEAAoE;IACpE,mBAAmB,CAAC,EAAE,GAAG,CAAC,cAAc,CAAC;IAEzC,mEAAmE;IACnE,GAAG,CAAC,EAAE,GAAG,CAAC,IAAI,CAAC;IAEf;;;;;OAKG;IACH,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAEpC;;;OAGG;IACH,YAAY,EAAE,OAAO,CAAC;IAEtB;;;;;OAKG;IACH,iBAAiB,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK,MAAM,CAAC,IAAI,CAAC;IAExD;;;;;OAKG;IACH,MAAM,EAAE,iBAAiB,EAAE,CAAC;IAE5B;;;;OAIG;IACH,cAAc,EAAE,OAAO,CAAC;CACzB;AAED;;;;;;;;GAQG;AACH,wBAAgB,kBAAkB,CAChC,KAAK,EAAE,SAAS,EAChB,KAAK,EAAE,uBAAuB,GAC7B,mBAAmB,CA0MrB"}
1
+ {"version":3,"file":"websocket-construct.d.ts","sourceRoot":"","sources":["../../../src/cdk/shared/websocket-construct.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoDG;AAGH,OAAO,KAAK,GAAG,MAAM,qBAAqB,CAAC;AAC3C,OAAO,KAAK,GAAG,MAAM,qBAAqB,CAAC;AAC3C,OAAO,KAAK,MAAM,MAAM,wBAAwB,CAAC;AAEjD,OAAO,KAAK,QAAQ,MAAM,0BAA0B,CAAC;AACrD,OAAO,KAAK,YAAY,MAAM,8BAA8B,CAAC;AAE7D,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AACvC,OAAO,KAAK,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAQhE,OAAO,EAAoB,KAAK,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAM7E;;;;GAIG;AACH,MAAM,WAAW,mBAAmB;IAClC,uDAAuD;IACvD,KAAK,EAAE,QAAQ,CAAC,KAAK,CAAC;IAEtB,qCAAqC;IACrC,GAAG,EAAE,YAAY,CAAC,YAAY,CAAC;IAE/B,qFAAqF;IACrF,KAAK,EAAE,YAAY,CAAC,cAAc,CAAC;IAEnC;;;;;;;;;;;;;;OAcG;IACH,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAEhC,uDAAuD;IACvD,iBAAiB,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC;CACjD;AAED;;;;;GAKG;AACH,MAAM,WAAW,uBAAuB;IACtC,oDAAoD;IACpD,WAAW,EAAE,MAAM,CAAC;IAEpB,yEAAyE;IACzE,KAAK,EAAE,MAAM,CAAC;IAEd;;;;;OAKG;IACH,SAAS,EAAE,SAAS,CAAC;IAErB,mEAAmE;IACnE,UAAU,EAAE,GAAG,CAAC,IAAI,CAAC;IAErB,oEAAoE;IACpE,mBAAmB,CAAC,EAAE,GAAG,CAAC,cAAc,CAAC;IAEzC,mEAAmE;IACnE,GAAG,CAAC,EAAE,GAAG,CAAC,IAAI,CAAC;IAEf;;;;;OAKG;IACH,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAEpC;;;OAGG;IACH,YAAY,EAAE,OAAO,CAAC;IAEtB;;;;;OAKG;IACH,iBAAiB,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK,MAAM,CAAC,IAAI,CAAC;IAExD;;;;;OAKG;IACH,MAAM,EAAE,iBAAiB,EAAE,CAAC;IAE5B;;;;OAIG;IACH,cAAc,EAAE,OAAO,CAAC;IAExB;;;;;;OAMG;IACH,OAAO,CAAC,EAAE,YAAY,EAAE,CAAC;CAC1B;AAED;;;;;;;;GAQG;AACH,wBAAgB,kBAAkB,CAChC,KAAK,EAAE,SAAS,EAChB,KAAK,EAAE,uBAAuB,GAC7B,mBAAmB,CA2QrB"}
@@ -38,11 +38,18 @@
38
38
  * are dispatched by the project's `$default` handler in user
39
39
  * code — the runtime's two-phase auth model assumes this.
40
40
  *
41
- * - **No domain mapping.** API Gateway WebSocket custom domains exist
42
- * but require a separate `WebSocketApiMapping` + ACM cert in
43
- * `us-east-1`-or-region-local depending on the edge mode. Out of
44
- * scope for v1 the default `wss://<api-id>.execute-api.<region>.amazonaws.com/<stage>`
45
- * endpoint is exposed via `VENTURE_WS_*` env vars on every Lambda.
41
+ * # Custom domains
42
+ *
43
+ * Pass `domains` (the `target: 'websocket'` entries from the project's
44
+ * top-level `domains` intent) to expose the API at `wss://<domain>`
45
+ * instead of the raw
46
+ * `wss://<api-id>.execute-api.<region>.amazonaws.com/<stage>` endpoint.
47
+ * Each becomes an `AWS::ApiGatewayV2::DomainName` + a REGIONAL ACM cert
48
+ * (three provenance paths — see `shared/domain-helpers.ts`) + an
49
+ * `ApiMapping` at the ROOT, so the stage name never appears in the
50
+ * client URL. When omitted, the default execute-api endpoint is the
51
+ * only entry point. Either way that default endpoint stays live and is
52
+ * exposed via the `VENTURE_WS_*` env vars on every Lambda.
46
53
  */
47
54
  import * as cdk from 'aws-cdk-lib';
48
55
  import * as ec2 from 'aws-cdk-lib/aws-ec2';
@@ -52,6 +59,7 @@ import * as dynamodb from 'aws-cdk-lib/aws-dynamodb';
52
59
  import * as apigatewayv2 from 'aws-cdk-lib/aws-apigatewayv2';
53
60
  import * as apigatewayv2Integrations from 'aws-cdk-lib/aws-apigatewayv2-integrations';
54
61
  import { toLambdaArchitecture, toLambdaRuntime, toLogRetention, clampLambdaFunctionName, uniqueLogGroupName, } from './lambda-helpers.js';
62
+ import { createApiGatewayV2DomainName, createApiGatewayV2AliasRecord, } from './domain-helpers.js';
55
63
  /**
56
64
  * Attach a WebSocket API + connections table + 3 ws Lambdas to the
57
65
  * caller's stack. Returns the env vars the caller should merge into
@@ -62,7 +70,7 @@ import { toLambdaArchitecture, toLambdaRuntime, toLogRetention, clampLambdaFunct
62
70
  * the HTTP-route Lambdas created later.
63
71
  */
64
72
  export function attachWebSocketApi(scope, props) {
65
- const { projectName, stage, envConfig, lambdaRole, lambdaSecurityGroup, vpc, baseEnvVars, bundleHandlerCode, routes, isStrictRetain, } = props;
73
+ const { projectName, stage, envConfig, lambdaRole, lambdaSecurityGroup, vpc, baseEnvVars, bundleHandlerCode, routes, isStrictRetain, domains, } = props;
66
74
  if (routes.length === 0) {
67
75
  throw new Error(`[venturekit] websocket: envConfig.websocket.enabled is true but no ` +
68
76
  `handlers were discovered under src/ws/. Create at least one of ` +
@@ -208,6 +216,53 @@ export function attachWebSocketApi(scope, props) {
208
216
  // WebSocketApi.
209
217
  api.addRoute(route.routeKey, { integration });
210
218
  }
219
+ // ─── Custom domains (optional) ─────────────────────────────────
220
+ // Each `target: 'websocket'` domain gets its own DomainName +
221
+ // regional ACM cert + an ApiMapping at the ROOT (no mapping key), so
222
+ // clients connect to `wss://<domain>` with no `/<stage>` suffix. The
223
+ // default execute-api endpoint stays live alongside these.
224
+ const wsDomains = domains ?? [];
225
+ for (const domainIntent of wsDomains) {
226
+ const domainResourceName = `${projectName}-${domainIntent.id}`;
227
+ // Default to external DNS (operator manages records, e.g.
228
+ // CloudFlare). Route53 automation is opt-in; a bare `hostedZoneId`
229
+ // still implies route53 for backward compatibility.
230
+ const dns = domainIntent.dns ?? (domainIntent.hostedZoneId ? 'route53' : 'external');
231
+ const domainName = createApiGatewayV2DomainName(scope, {
232
+ resourceName: domainResourceName,
233
+ domain: domainIntent.domain,
234
+ certificateArn: domainIntent.certificateArn,
235
+ hostedZoneId: domainIntent.hostedZoneId,
236
+ dns,
237
+ // The custom domain is the public contract; retain it under
238
+ // strict dataSafety so a stack delete doesn't strand clients.
239
+ retain: isStrictRetain,
240
+ });
241
+ const domainMapping = new apigatewayv2.ApiMapping(scope, `${domainResourceName}-mapping`, {
242
+ api,
243
+ domainName,
244
+ stage: wsStage,
245
+ });
246
+ // Mappings re-create cleanly, so RETAIN is just a recovery
247
+ // convenience mirroring the DomainName above.
248
+ if (isStrictRetain) {
249
+ const cfnMapping = domainMapping.node.defaultChild;
250
+ cfnMapping.cfnOptions.deletionPolicy = cdk.CfnDeletionPolicy.RETAIN;
251
+ cfnMapping.cfnOptions.updateReplacePolicy = cdk.CfnDeletionPolicy.RETAIN;
252
+ }
253
+ // Route53 alias ONLY in route53 mode. `hostedZoneId` is guaranteed
254
+ // present here (createApiGatewayV2DomainName throws otherwise). In
255
+ // external-DNS mode (the default) the operator publishes the record
256
+ // by hand on their own host (e.g. CloudFlare).
257
+ if (dns === 'route53') {
258
+ createApiGatewayV2AliasRecord(scope, {
259
+ resourceName: domainResourceName,
260
+ domain: domainIntent.domain,
261
+ hostedZoneId: domainIntent.hostedZoneId,
262
+ domainName,
263
+ });
264
+ }
265
+ }
211
266
  // ─── Env vars to forward to every other Lambda ────────────────
212
267
  // The runtime's `connectionStore.postToConnection(domain, stage, ...)`
213
268
  // takes `domain` + `stage` separately, so we expose both. The
@@ -222,6 +277,14 @@ export function attachWebSocketApi(scope, props) {
222
277
  VENTURE_WS_DOMAIN: domain,
223
278
  VENTURE_WS_CALLBACK_URL: `https://${domain}/${wsStage.stageName}`,
224
279
  };
280
+ // When custom domains are attached, expose the PRIMARY (first) one so
281
+ // app code can build the client-facing `wss://<domain>` URL without
282
+ // knowing the execute-api id. Multi-tenant apps typically derive the
283
+ // ws host from the request host, but the primary is a useful default
284
+ // (mirrors the edge stack's `apiCustomDomain`).
285
+ if (wsDomains.length > 0) {
286
+ envVars.VENTURE_WS_CUSTOM_DOMAIN = wsDomains[0].domain;
287
+ }
225
288
  return {
226
289
  table,
227
290
  api,
@@ -1 +1 @@
1
- {"version":3,"file":"websocket-construct.js","sourceRoot":"","sources":["../../../src/cdk/shared/websocket-construct.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"websocket-construct.js","sourceRoot":"","sources":["../../../src/cdk/shared/websocket-construct.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@venturekit/infra",
3
- "version": "0.0.5",
3
+ "version": "0.0.7",
4
4
  "description": "VentureKit infrastructure - AWS CDK constructs",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -41,7 +41,7 @@
41
41
  ],
42
42
  "license": "Apache-2.0",
43
43
  "dependencies": {
44
- "@venturekit/core": "0.0.5",
44
+ "@venturekit/core": "0.0.7",
45
45
  "aws-cdk-lib": "^2.259.0",
46
46
  "constructs": "^10.6.0",
47
47
  "esbuild": "^0.28.1"