@quiltdata/benchling-webhook 0.9.0-20251130T062440Z → 0.9.0-20251204T040448Z
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/README.md +63 -47
- package/cdk.json +1 -0
- package/dist/bin/benchling-webhook.js +13 -0
- package/dist/bin/benchling-webhook.js.map +1 -1
- package/dist/bin/commands/deploy.d.ts.map +1 -1
- package/dist/bin/commands/deploy.js +60 -95
- package/dist/bin/commands/deploy.js.map +1 -1
- package/dist/bin/commands/destroy.d.ts +0 -1
- package/dist/bin/commands/destroy.d.ts.map +1 -1
- package/dist/bin/commands/destroy.js +0 -1
- package/dist/bin/commands/destroy.js.map +1 -1
- package/dist/bin/commands/infer-quilt-config.d.ts.map +1 -1
- package/dist/bin/commands/infer-quilt-config.js +13 -10
- package/dist/bin/commands/infer-quilt-config.js.map +1 -1
- package/dist/bin/commands/setup-profile.js +1 -1
- package/dist/bin/commands/setup-profile.js.map +1 -1
- package/dist/bin/commands/setup-wizard.d.ts.map +1 -1
- package/dist/bin/commands/setup-wizard.js +1 -0
- package/dist/bin/commands/setup-wizard.js.map +1 -1
- package/dist/lib/benchling-webhook-stack.d.ts.map +1 -1
- package/dist/lib/benchling-webhook-stack.js +61 -38
- package/dist/lib/benchling-webhook-stack.js.map +1 -1
- package/dist/lib/fargate-service.js +1 -1
- package/dist/lib/fargate-service.js.map +1 -1
- package/dist/lib/index.d.ts +1 -1
- package/dist/lib/index.js +3 -3
- package/dist/lib/network-load-balancer.d.ts.map +1 -1
- package/dist/lib/network-load-balancer.js +0 -2
- package/dist/lib/network-load-balancer.js.map +1 -1
- package/dist/lib/{http-api-gateway.d.ts → rest-api-gateway.d.ts} +9 -9
- package/dist/lib/rest-api-gateway.d.ts.map +1 -0
- package/dist/lib/rest-api-gateway.js +212 -0
- package/dist/lib/rest-api-gateway.js.map +1 -0
- package/dist/lib/types/config.d.ts +36 -3
- package/dist/lib/types/config.d.ts.map +1 -1
- package/dist/lib/types/config.js.map +1 -1
- package/dist/lib/wizard/phase2-stack-query.d.ts.map +1 -1
- package/dist/lib/wizard/phase2-stack-query.js +46 -21
- package/dist/lib/wizard/phase2-stack-query.js.map +1 -1
- package/dist/lib/wizard/phase3-parameter-collection.d.ts.map +1 -1
- package/dist/lib/wizard/phase3-parameter-collection.js +101 -67
- package/dist/lib/wizard/phase3-parameter-collection.js.map +1 -1
- package/dist/lib/wizard/types.d.ts +11 -0
- package/dist/lib/wizard/types.d.ts.map +1 -1
- package/dist/package.json +2 -2
- package/dist/scripts/discover-vpc.js +12 -11
- package/dist/scripts/discover-vpc.js.map +1 -1
- package/package.json +2 -2
- package/dist/lib/http-api-gateway.d.ts.map +0 -1
- package/dist/lib/http-api-gateway.js +0 -166
- package/dist/lib/http-api-gateway.js.map +0 -1
- package/dist/lib/waf-web-acl.d.ts +0 -51
- package/dist/lib/waf-web-acl.d.ts.map +0 -1
- package/dist/lib/waf-web-acl.js +0 -192
- package/dist/lib/waf-web-acl.js.map +0 -1
package/dist/lib/index.js
CHANGED
|
@@ -26,13 +26,13 @@
|
|
|
26
26
|
* @module quilt-benchling-webhook
|
|
27
27
|
*/
|
|
28
28
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
29
|
-
exports.EcrRepository = exports.
|
|
29
|
+
exports.EcrRepository = exports.RestApiGateway = exports.FargateService = exports.BenchlingWebhookStack = void 0;
|
|
30
30
|
var benchling_webhook_stack_1 = require("./benchling-webhook-stack");
|
|
31
31
|
Object.defineProperty(exports, "BenchlingWebhookStack", { enumerable: true, get: function () { return benchling_webhook_stack_1.BenchlingWebhookStack; } });
|
|
32
32
|
var fargate_service_1 = require("./fargate-service");
|
|
33
33
|
Object.defineProperty(exports, "FargateService", { enumerable: true, get: function () { return fargate_service_1.FargateService; } });
|
|
34
|
-
var
|
|
35
|
-
Object.defineProperty(exports, "
|
|
34
|
+
var rest_api_gateway_1 = require("./rest-api-gateway");
|
|
35
|
+
Object.defineProperty(exports, "RestApiGateway", { enumerable: true, get: function () { return rest_api_gateway_1.RestApiGateway; } });
|
|
36
36
|
var ecr_repository_1 = require("./ecr-repository");
|
|
37
37
|
Object.defineProperty(exports, "EcrRepository", { enumerable: true, get: function () { return ecr_repository_1.EcrRepository; } });
|
|
38
38
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"network-load-balancer.d.ts","sourceRoot":"","sources":["../../lib/network-load-balancer.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,GAAG,MAAM,qBAAqB,CAAC;AAC3C,OAAO,KAAK,KAAK,MAAM,wCAAwC,CAAC;AAChE,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAEvC,MAAM,WAAW,wBAAwB;IACrC,QAAQ,CAAC,GAAG,EAAE,GAAG,CAAC,IAAI,CAAC;CAC1B;AAED;;;;;;;;;;;;;GAaG;AACH,qBAAa,mBAAoB,SAAQ,SAAS;IAC9C,SAAgB,YAAY,EAAE,KAAK,CAAC,mBAAmB,CAAC;IACxD,SAAgB,WAAW,EAAE,KAAK,CAAC,kBAAkB,CAAC;IACtD,SAAgB,QAAQ,EAAE,KAAK,CAAC,eAAe,CAAC;gBAEpC,KAAK,EAAE,SAAS,EAAE,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,wBAAwB;
|
|
1
|
+
{"version":3,"file":"network-load-balancer.d.ts","sourceRoot":"","sources":["../../lib/network-load-balancer.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,GAAG,MAAM,qBAAqB,CAAC;AAC3C,OAAO,KAAK,KAAK,MAAM,wCAAwC,CAAC;AAChE,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAEvC,MAAM,WAAW,wBAAwB;IACrC,QAAQ,CAAC,GAAG,EAAE,GAAG,CAAC,IAAI,CAAC;CAC1B;AAED;;;;;;;;;;;;;GAaG;AACH,qBAAa,mBAAoB,SAAQ,SAAS;IAC9C,SAAgB,YAAY,EAAE,KAAK,CAAC,mBAAmB,CAAC;IACxD,SAAgB,WAAW,EAAE,KAAK,CAAC,kBAAkB,CAAC;IACtD,SAAgB,QAAQ,EAAE,KAAK,CAAC,eAAe,CAAC;gBAEpC,KAAK,EAAE,SAAS,EAAE,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,wBAAwB;CA0D5E"}
|
|
@@ -59,7 +59,6 @@ class NetworkLoadBalancer extends constructs_1.Construct {
|
|
|
59
59
|
this.loadBalancer = new elbv2.NetworkLoadBalancer(this, "LoadBalancer", {
|
|
60
60
|
vpc: props.vpc,
|
|
61
61
|
internetFacing: false,
|
|
62
|
-
loadBalancerName: "benchling-webhook-nlb",
|
|
63
62
|
vpcSubnets: {
|
|
64
63
|
subnets: props.vpc.privateSubnets,
|
|
65
64
|
},
|
|
@@ -72,7 +71,6 @@ class NetworkLoadBalancer extends constructs_1.Construct {
|
|
|
72
71
|
port: 8080,
|
|
73
72
|
protocol: elbv2.Protocol.TCP,
|
|
74
73
|
targetType: elbv2.TargetType.IP, // Required for Fargate
|
|
75
|
-
targetGroupName: "benchling-webhook-tg",
|
|
76
74
|
deregistrationDelay: cdk.Duration.seconds(30), // Quick deregistration
|
|
77
75
|
// HTTP health checks for application health
|
|
78
76
|
// NLB supports HTTP health checks even with TCP listener
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"network-load-balancer.js","sourceRoot":"","sources":["../../lib/network-load-balancer.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,iDAAmC;AAEnC,8EAAgE;AAChE,2CAAuC;AAMvC;;;;;;;;;;;;;GAaG;AACH,MAAa,mBAAoB,SAAQ,sBAAS;IAK9C,YAAY,KAAgB,EAAE,EAAU,EAAE,KAA+B;QACrE,KAAK,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QAEjB,wCAAwC;QACxC,4DAA4D;QAC5D,IAAI,CAAC,YAAY,GAAG,IAAI,KAAK,CAAC,mBAAmB,CAAC,IAAI,EAAE,cAAc,EAAE;YACpE,GAAG,EAAE,KAAK,CAAC,GAAG;YACd,cAAc,EAAE,KAAK;YACrB,
|
|
1
|
+
{"version":3,"file":"network-load-balancer.js","sourceRoot":"","sources":["../../lib/network-load-balancer.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,iDAAmC;AAEnC,8EAAgE;AAChE,2CAAuC;AAMvC;;;;;;;;;;;;;GAaG;AACH,MAAa,mBAAoB,SAAQ,sBAAS;IAK9C,YAAY,KAAgB,EAAE,EAAU,EAAE,KAA+B;QACrE,KAAK,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QAEjB,wCAAwC;QACxC,4DAA4D;QAC5D,IAAI,CAAC,YAAY,GAAG,IAAI,KAAK,CAAC,mBAAmB,CAAC,IAAI,EAAE,cAAc,EAAE;YACpE,GAAG,EAAE,KAAK,CAAC,GAAG;YACd,cAAc,EAAE,KAAK;YACrB,UAAU,EAAE;gBACR,OAAO,EAAE,KAAK,CAAC,GAAG,CAAC,cAAc;aACpC;YACD,gBAAgB,EAAE,IAAI,EAAE,uCAAuC;SAClE,CAAC,CAAC;QAEH,oCAAoC;QACpC,+CAA+C;QAC/C,IAAI,CAAC,WAAW,GAAG,IAAI,KAAK,CAAC,kBAAkB,CAAC,IAAI,EAAE,aAAa,EAAE;YACjE,GAAG,EAAE,KAAK,CAAC,GAAG;YACd,IAAI,EAAE,IAAI;YACV,QAAQ,EAAE,KAAK,CAAC,QAAQ,CAAC,GAAG;YAC5B,UAAU,EAAE,KAAK,CAAC,UAAU,CAAC,EAAE,EAAE,uBAAuB;YACxD,mBAAmB,EAAE,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,uBAAuB;YAEtE,4CAA4C;YAC5C,yDAAyD;YACzD,WAAW,EAAE;gBACT,OAAO,EAAE,IAAI;gBACb,QAAQ,EAAE,KAAK,CAAC,QAAQ,CAAC,IAAI;gBAC7B,IAAI,EAAE,SAAS;gBACf,QAAQ,EAAE,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;gBAClC,OAAO,EAAE,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;gBACjC,qBAAqB,EAAE,CAAC,EAAG,gCAAgC;gBAC3D,uBAAuB,EAAE,CAAC,EAAE,8BAA8B;gBAC1D,gBAAgB,EAAE,KAAK;aAC1B;SACJ,CAAC,CAAC;QAEH,iCAAiC;QACjC,gDAAgD;QAChD,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC,UAAU,EAAE;YACtD,IAAI,EAAE,EAAE;YACR,QAAQ,EAAE,KAAK,CAAC,QAAQ,CAAC,GAAG;YAC5B,mBAAmB,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC;SAC1C,CAAC,CAAC;QAEH,wBAAwB;QACxB,IAAI,GAAG,CAAC,SAAS,CAAC,IAAI,EAAE,qBAAqB,EAAE;YAC3C,KAAK,EAAE,IAAI,CAAC,YAAY,CAAC,mBAAmB;YAC5C,WAAW,EAAE,gCAAgC;YAC7C,UAAU,EAAE,4BAA4B;SAC3C,CAAC,CAAC;QAEH,IAAI,GAAG,CAAC,SAAS,CAAC,IAAI,EAAE,gBAAgB,EAAE;YACtC,KAAK,EAAE,IAAI,CAAC,WAAW,CAAC,cAAc;YACtC,WAAW,EAAE,gCAAgC;YAC7C,UAAU,EAAE,gCAAgC;SAC/C,CAAC,CAAC;IACP,CAAC;CACJ;AA/DD,kDA+DC"}
|
|
@@ -1,22 +1,22 @@
|
|
|
1
|
-
import * as
|
|
1
|
+
import * as apigateway from "aws-cdk-lib/aws-apigateway";
|
|
2
2
|
import * as ec2 from "aws-cdk-lib/aws-ec2";
|
|
3
3
|
import * as elbv2 from "aws-cdk-lib/aws-elasticloadbalancingv2";
|
|
4
4
|
import * as logs from "aws-cdk-lib/aws-logs";
|
|
5
5
|
import { Construct } from "constructs";
|
|
6
6
|
import { ProfileConfig } from "./types/config";
|
|
7
|
-
|
|
8
|
-
export interface HttpApiGatewayProps {
|
|
7
|
+
export interface RestApiGatewayProps {
|
|
9
8
|
readonly vpc: ec2.IVpc;
|
|
10
9
|
readonly networkLoadBalancer: elbv2.INetworkLoadBalancer;
|
|
11
10
|
readonly nlbListener: elbv2.INetworkListener;
|
|
12
11
|
readonly serviceSecurityGroup: ec2.ISecurityGroup;
|
|
13
12
|
readonly config: ProfileConfig;
|
|
13
|
+
readonly stage: string;
|
|
14
14
|
}
|
|
15
|
-
export declare class
|
|
16
|
-
readonly api:
|
|
17
|
-
readonly vpcLink:
|
|
15
|
+
export declare class RestApiGateway {
|
|
16
|
+
readonly api: apigateway.RestApi;
|
|
17
|
+
readonly vpcLink: apigateway.VpcLink;
|
|
18
18
|
readonly logGroup: logs.ILogGroup;
|
|
19
|
-
readonly
|
|
20
|
-
constructor(scope: Construct, id: string, props:
|
|
19
|
+
readonly stage: string;
|
|
20
|
+
constructor(scope: Construct, id: string, props: RestApiGatewayProps);
|
|
21
21
|
}
|
|
22
|
-
//# sourceMappingURL=
|
|
22
|
+
//# sourceMappingURL=rest-api-gateway.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rest-api-gateway.d.ts","sourceRoot":"","sources":["../../lib/rest-api-gateway.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,UAAU,MAAM,4BAA4B,CAAC;AACzD,OAAO,KAAK,GAAG,MAAM,qBAAqB,CAAC;AAC3C,OAAO,KAAK,KAAK,MAAM,wCAAwC,CAAC;AAChE,OAAO,KAAK,IAAI,MAAM,sBAAsB,CAAC;AAE7C,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AACvC,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAE/C,MAAM,WAAW,mBAAmB;IAChC,QAAQ,CAAC,GAAG,EAAE,GAAG,CAAC,IAAI,CAAC;IACvB,QAAQ,CAAC,mBAAmB,EAAE,KAAK,CAAC,oBAAoB,CAAC;IACzD,QAAQ,CAAC,WAAW,EAAE,KAAK,CAAC,gBAAgB,CAAC;IAC7C,QAAQ,CAAC,oBAAoB,EAAE,GAAG,CAAC,cAAc,CAAC;IAClD,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAC;IAC/B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;CAC1B;AAED,qBAAa,cAAc;IACvB,SAAgB,GAAG,EAAE,UAAU,CAAC,OAAO,CAAC;IACxC,SAAgB,OAAO,EAAE,UAAU,CAAC,OAAO,CAAC;IAC5C,SAAgB,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC;IACzC,SAAgB,KAAK,EAAE,MAAM,CAAC;gBAElB,KAAK,EAAE,SAAS,EAAE,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,mBAAmB;CAgMvE"}
|
|
@@ -0,0 +1,212 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
35
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
+
exports.RestApiGateway = void 0;
|
|
37
|
+
const cdk = __importStar(require("aws-cdk-lib"));
|
|
38
|
+
const apigateway = __importStar(require("aws-cdk-lib/aws-apigateway"));
|
|
39
|
+
const logs = __importStar(require("aws-cdk-lib/aws-logs"));
|
|
40
|
+
const iam = __importStar(require("aws-cdk-lib/aws-iam"));
|
|
41
|
+
class RestApiGateway {
|
|
42
|
+
constructor(scope, id, props) {
|
|
43
|
+
this.stage = props.stage;
|
|
44
|
+
// Access logs for REST API
|
|
45
|
+
this.logGroup = new logs.LogGroup(scope, "ApiGatewayAccessLogs", {
|
|
46
|
+
logGroupName: "/aws/apigateway/benchling-webhook-rest",
|
|
47
|
+
retention: logs.RetentionDays.ONE_WEEK,
|
|
48
|
+
removalPolicy: cdk.RemovalPolicy.DESTROY,
|
|
49
|
+
});
|
|
50
|
+
// Create IAM role for API Gateway to push logs to CloudWatch
|
|
51
|
+
// This role is required for REST API access logging to work
|
|
52
|
+
const cloudWatchRole = new iam.Role(scope, "ApiGatewayCloudWatchRole", {
|
|
53
|
+
assumedBy: new iam.ServicePrincipal("apigateway.amazonaws.com"),
|
|
54
|
+
managedPolicies: [
|
|
55
|
+
iam.ManagedPolicy.fromAwsManagedPolicyName("service-role/AmazonAPIGatewayPushToCloudWatchLogs"),
|
|
56
|
+
],
|
|
57
|
+
description: "IAM role for API Gateway to push access logs to CloudWatch",
|
|
58
|
+
});
|
|
59
|
+
// Set account-level CloudWatch role (required for REST API logging)
|
|
60
|
+
// Note: This is a one-time account-level setting shared across all REST APIs
|
|
61
|
+
// Without this, API Gateway silently fails to write access logs
|
|
62
|
+
const cfnAccount = new apigateway.CfnAccount(scope, "ApiGatewayAccount", {
|
|
63
|
+
cloudWatchRoleArn: cloudWatchRole.roleArn,
|
|
64
|
+
});
|
|
65
|
+
// Ensure role is created before setting account config
|
|
66
|
+
cfnAccount.node.addDependency(cloudWatchRole);
|
|
67
|
+
// Parse IP allowlist from config
|
|
68
|
+
const webhookAllowList = props.config.security?.webhookAllowList || "";
|
|
69
|
+
const allowedIps = webhookAllowList
|
|
70
|
+
.split(",")
|
|
71
|
+
.map(ip => ip.trim())
|
|
72
|
+
.filter(ip => ip.length > 0);
|
|
73
|
+
// Build resource policy document with IP filtering
|
|
74
|
+
// Resource ARN format: execute-api:/*/<stage>/<method>/<path>
|
|
75
|
+
// When no allowlist: Single statement allowing all IPs
|
|
76
|
+
// When allowlist configured: Two statements (health exempt, webhooks restricted)
|
|
77
|
+
const policyStatements = [];
|
|
78
|
+
if (allowedIps.length === 0) {
|
|
79
|
+
// No IP filtering - allow all requests from anywhere
|
|
80
|
+
policyStatements.push(new iam.PolicyStatement({
|
|
81
|
+
effect: iam.Effect.ALLOW,
|
|
82
|
+
principals: [new iam.AnyPrincipal()],
|
|
83
|
+
actions: ["execute-api:Invoke"],
|
|
84
|
+
resources: ["execute-api:/*"],
|
|
85
|
+
}));
|
|
86
|
+
console.log("Resource Policy IP filtering: DISABLED (no webhookAllowList configured)");
|
|
87
|
+
console.log("All endpoints accessible from any IP");
|
|
88
|
+
}
|
|
89
|
+
else {
|
|
90
|
+
// IP filtering enabled - create two statements
|
|
91
|
+
// Statement 1: Health endpoints always accessible (no IP restriction)
|
|
92
|
+
policyStatements.push(new iam.PolicyStatement({
|
|
93
|
+
effect: iam.Effect.ALLOW,
|
|
94
|
+
principals: [new iam.AnyPrincipal()],
|
|
95
|
+
actions: ["execute-api:Invoke"],
|
|
96
|
+
resources: [
|
|
97
|
+
// Health check endpoints are always accessible
|
|
98
|
+
"execute-api:/*/GET/health",
|
|
99
|
+
"execute-api:/*/GET/health/ready",
|
|
100
|
+
"execute-api:/*/GET/health/live",
|
|
101
|
+
// Stage-prefixed health endpoints
|
|
102
|
+
"execute-api:/*/GET/*/health",
|
|
103
|
+
"execute-api:/*/GET/*/health/ready",
|
|
104
|
+
"execute-api:/*/GET/*/health/live",
|
|
105
|
+
],
|
|
106
|
+
}));
|
|
107
|
+
// Statement 2: Webhook endpoints with IP restrictions
|
|
108
|
+
policyStatements.push(new iam.PolicyStatement({
|
|
109
|
+
effect: iam.Effect.ALLOW,
|
|
110
|
+
principals: [new iam.AnyPrincipal()],
|
|
111
|
+
actions: ["execute-api:Invoke"],
|
|
112
|
+
resources: [
|
|
113
|
+
// Webhook endpoints
|
|
114
|
+
"execute-api:/*/POST/event",
|
|
115
|
+
"execute-api:/*/POST/lifecycle",
|
|
116
|
+
"execute-api:/*/POST/canvas",
|
|
117
|
+
// Stage-prefixed webhook endpoints
|
|
118
|
+
"execute-api:/*/POST/*/event",
|
|
119
|
+
"execute-api:/*/POST/*/lifecycle",
|
|
120
|
+
"execute-api:/*/POST/*/canvas",
|
|
121
|
+
],
|
|
122
|
+
conditions: {
|
|
123
|
+
IpAddress: {
|
|
124
|
+
"aws:SourceIp": allowedIps,
|
|
125
|
+
},
|
|
126
|
+
},
|
|
127
|
+
}));
|
|
128
|
+
console.log("Resource Policy IP filtering: ENABLED");
|
|
129
|
+
console.log(`Allowed IPs: ${allowedIps.join(", ")}`);
|
|
130
|
+
console.log("Health endpoints exempt from IP filtering (always accessible)");
|
|
131
|
+
console.log(`Created ${policyStatements.length} resource policy statements`);
|
|
132
|
+
console.log(" - Statement 1: Health endpoints (no IP restriction)");
|
|
133
|
+
console.log(" - Statement 2: Webhook endpoints (IP restricted)");
|
|
134
|
+
}
|
|
135
|
+
const policyDoc = new iam.PolicyDocument({
|
|
136
|
+
statements: policyStatements,
|
|
137
|
+
});
|
|
138
|
+
// Create REST API v1 with resource policy
|
|
139
|
+
this.api = new apigateway.RestApi(scope, "BenchlingWebhookRestAPI", {
|
|
140
|
+
restApiName: "BenchlingWebhookRestAPI",
|
|
141
|
+
description: "REST API v1 for Benchling webhook integration with resource policy IP filtering",
|
|
142
|
+
policy: policyDoc,
|
|
143
|
+
deployOptions: {
|
|
144
|
+
stageName: props.stage,
|
|
145
|
+
accessLogDestination: new apigateway.LogGroupLogDestination(this.logGroup),
|
|
146
|
+
accessLogFormat: apigateway.AccessLogFormat.jsonWithStandardFields({
|
|
147
|
+
ip: true,
|
|
148
|
+
caller: false,
|
|
149
|
+
user: false,
|
|
150
|
+
requestTime: true,
|
|
151
|
+
httpMethod: true,
|
|
152
|
+
resourcePath: true,
|
|
153
|
+
status: true,
|
|
154
|
+
protocol: true,
|
|
155
|
+
responseLength: true,
|
|
156
|
+
}),
|
|
157
|
+
},
|
|
158
|
+
endpointConfiguration: {
|
|
159
|
+
types: [apigateway.EndpointType.REGIONAL],
|
|
160
|
+
},
|
|
161
|
+
});
|
|
162
|
+
// VPC Link for private integration with Network Load Balancer
|
|
163
|
+
this.vpcLink = new apigateway.VpcLink(scope, "VpcLink", {
|
|
164
|
+
targets: [props.networkLoadBalancer],
|
|
165
|
+
description: "VPC Link to Network Load Balancer for private ECS integration",
|
|
166
|
+
});
|
|
167
|
+
// HTTP Integration to NLB via VPC Link
|
|
168
|
+
// Set timeout to 29 seconds (maximum for REST API) to handle slow JWKS fetches
|
|
169
|
+
// on cold starts. The Benchling SDK caches JWKS after first fetch.
|
|
170
|
+
//
|
|
171
|
+
// Simple HTTP_PROXY integration that forwards ALL requests with complete paths
|
|
172
|
+
// API Gateway Request: GET https://api-id.execute-api.region.amazonaws.com/prod/health
|
|
173
|
+
// Forwarded to NLB: GET http://nlb:80/prod/health
|
|
174
|
+
//
|
|
175
|
+
// FastAPI implements flexible routes:
|
|
176
|
+
// - Stage-prefixed: /{stage}/health, /{stage}/event (matches API Gateway requests)
|
|
177
|
+
// - Direct paths: /health (matches NLB health checks)
|
|
178
|
+
const integration = new apigateway.Integration({
|
|
179
|
+
type: apigateway.IntegrationType.HTTP_PROXY,
|
|
180
|
+
integrationHttpMethod: "ANY",
|
|
181
|
+
uri: `http://${props.networkLoadBalancer.loadBalancerDnsName}:80/{proxy}`,
|
|
182
|
+
options: {
|
|
183
|
+
connectionType: apigateway.ConnectionType.VPC_LINK,
|
|
184
|
+
vpcLink: this.vpcLink,
|
|
185
|
+
timeout: cdk.Duration.seconds(29),
|
|
186
|
+
requestParameters: {
|
|
187
|
+
"integration.request.path.proxy": "method.request.path.proxy",
|
|
188
|
+
},
|
|
189
|
+
},
|
|
190
|
+
});
|
|
191
|
+
// Greedy proxy that captures the COMPLETE path including stage
|
|
192
|
+
// API Gateway doesn't strip the stage when using root-level {proxy+}
|
|
193
|
+
const proxyResource = this.api.root.addResource("{proxy+}");
|
|
194
|
+
proxyResource.addMethod("ANY", integration, {
|
|
195
|
+
requestParameters: {
|
|
196
|
+
"method.request.path.proxy": true,
|
|
197
|
+
},
|
|
198
|
+
});
|
|
199
|
+
// Webhook verification status
|
|
200
|
+
const verificationEnabled = props.config.security?.enableVerification !== false;
|
|
201
|
+
if (verificationEnabled) {
|
|
202
|
+
console.log("Webhook signature verification: ENABLED (FastAPI application)");
|
|
203
|
+
}
|
|
204
|
+
else {
|
|
205
|
+
console.warn("WARNING: Webhook signature verification is DISABLED. " +
|
|
206
|
+
"This should only be used for testing. Enable it in production by setting " +
|
|
207
|
+
"config.security.enableVerification = true");
|
|
208
|
+
}
|
|
209
|
+
}
|
|
210
|
+
}
|
|
211
|
+
exports.RestApiGateway = RestApiGateway;
|
|
212
|
+
//# sourceMappingURL=rest-api-gateway.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rest-api-gateway.js","sourceRoot":"","sources":["../../lib/rest-api-gateway.ts"],"names":[],"mappings":"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"}
|
|
@@ -375,6 +375,37 @@ export interface VpcConfig {
|
|
|
375
375
|
* @example "vpc-0123456789abcdef0"
|
|
376
376
|
*/
|
|
377
377
|
vpcId?: string;
|
|
378
|
+
/**
|
|
379
|
+
* Private subnet IDs for ECS tasks and NLB
|
|
380
|
+
* Required when vpcId is specified
|
|
381
|
+
* Must have ≥2 subnets in different AZs
|
|
382
|
+
*
|
|
383
|
+
* Discovered by scripts/discover-vpc.ts during setup wizard.
|
|
384
|
+
* Subnets are classified as private by analyzing route tables
|
|
385
|
+
* for NAT Gateway routes (not IGW routes).
|
|
386
|
+
*
|
|
387
|
+
* @example ["subnet-0aaa", "subnet-0bbb"]
|
|
388
|
+
*/
|
|
389
|
+
privateSubnetIds?: string[];
|
|
390
|
+
/**
|
|
391
|
+
* Public subnet IDs (optional)
|
|
392
|
+
* Only needed if creating resources that require public subnets
|
|
393
|
+
* @example ["subnet-0ccc", "subnet-0ddd"]
|
|
394
|
+
*/
|
|
395
|
+
publicSubnetIds?: string[];
|
|
396
|
+
/**
|
|
397
|
+
* Availability zones for the subnets
|
|
398
|
+
* Must match the order and count of privateSubnetIds
|
|
399
|
+
* @example ["us-east-1a", "us-east-1b"]
|
|
400
|
+
*/
|
|
401
|
+
availabilityZones?: string[];
|
|
402
|
+
/**
|
|
403
|
+
* VPC CIDR block
|
|
404
|
+
* Required when vpcId is specified for CDK synthesis
|
|
405
|
+
* Discovered by scripts/discover-vpc.ts during setup wizard
|
|
406
|
+
* @example "10.0.0.0/16"
|
|
407
|
+
*/
|
|
408
|
+
vpcCidrBlock?: string;
|
|
378
409
|
/**
|
|
379
410
|
* Whether to create a new VPC if vpcId is not specified
|
|
380
411
|
*
|
|
@@ -402,16 +433,18 @@ export interface LoggingConfig {
|
|
|
402
433
|
*/
|
|
403
434
|
export interface SecurityConfig {
|
|
404
435
|
/**
|
|
405
|
-
* Comma-separated list of allowed IP addresses/CIDR blocks
|
|
436
|
+
* Comma-separated list of allowed IP addresses/CIDR blocks for webhook endpoints
|
|
406
437
|
*
|
|
407
|
-
*
|
|
438
|
+
* v1.0.0+: Enforced via REST API Gateway resource policy (free).
|
|
439
|
+
* Empty string means no IP filtering (all IPs allowed).
|
|
440
|
+
* Health endpoints are always accessible from any IP.
|
|
408
441
|
*
|
|
409
442
|
* @example "192.168.1.0/24,10.0.0.0/8"
|
|
410
443
|
* @default ""
|
|
411
444
|
*/
|
|
412
445
|
webhookAllowList?: string;
|
|
413
446
|
/**
|
|
414
|
-
* Enable webhook signature verification
|
|
447
|
+
* Enable webhook signature verification in FastAPI application
|
|
415
448
|
*
|
|
416
449
|
* @default true
|
|
417
450
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../lib/types/config.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../lib/types/config.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../../lib/types/config.ts"],"names":[],"mappings":";AAAA;;;;;;;;GAQG;;;
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../../lib/types/config.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"phase2-stack-query.d.ts","sourceRoot":"","sources":["../../../lib/wizard/phase2-stack-query.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAIH,OAAO,EAAE,gBAAgB,EAAqB,MAAM,SAAS,CAAC;AAG9D;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAC9B,sCAAsC;IACtC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,8BAA8B;IAC9B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,2BAA2B;IAC3B,GAAG,CAAC,EAAE,OAAO,CAAC;CACjB;AAED;;;;;;;;;;;;GAYG;AACH,wBAAsB,aAAa,CAC/B,UAAU,EAAE,MAAM,EAClB,OAAO,GAAE,iBAAsB,GAChC,OAAO,CAAC,gBAAgB,CAAC,
|
|
1
|
+
{"version":3,"file":"phase2-stack-query.d.ts","sourceRoot":"","sources":["../../../lib/wizard/phase2-stack-query.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAIH,OAAO,EAAE,gBAAgB,EAAqB,MAAM,SAAS,CAAC;AAG9D;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAC9B,sCAAsC;IACtC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,8BAA8B;IAC9B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,2BAA2B;IAC3B,GAAG,CAAC,EAAE,OAAO,CAAC;CACjB;AAED;;;;;;;;;;;;GAYG;AACH,wBAAsB,aAAa,CAC/B,UAAU,EAAE,MAAM,EAClB,OAAO,GAAE,iBAAsB,GAChC,OAAO,CAAC,gBAAgB,CAAC,CA8M3B"}
|
|
@@ -30,7 +30,7 @@ const discover_vpc_1 = require("../../scripts/discover-vpc");
|
|
|
30
30
|
*/
|
|
31
31
|
async function runStackQuery(catalogDns, options = {}) {
|
|
32
32
|
const { awsProfile, awsRegion } = options;
|
|
33
|
-
console.log(`
|
|
33
|
+
console.log(`Fetching catalog configuration for: ${catalogDns}...`);
|
|
34
34
|
try {
|
|
35
35
|
// Use inferQuiltConfig with the confirmed catalog - this will skip quilt3 check
|
|
36
36
|
const inferenceResult = await (0, infer_quilt_config_1.inferQuiltConfig)({
|
|
@@ -65,6 +65,13 @@ async function runStackQuery(catalogDns, options = {}) {
|
|
|
65
65
|
const athenaResultsBucketPolicy = inferenceResult.athenaResultsBucketPolicy;
|
|
66
66
|
const readRoleArn = inferenceResult.readRoleArn;
|
|
67
67
|
const writeRoleArn = inferenceResult.writeRoleArn;
|
|
68
|
+
// Show IAM roles (these are logged by inferQuiltConfig)
|
|
69
|
+
if (readRoleArn) {
|
|
70
|
+
console.log(chalk_1.default.dim(`✓ T4BucketReadRole discovered: ${readRoleArn}`));
|
|
71
|
+
}
|
|
72
|
+
if (writeRoleArn) {
|
|
73
|
+
console.log(chalk_1.default.dim(`✓ T4BucketWriteRole: ${writeRoleArn}`));
|
|
74
|
+
}
|
|
68
75
|
// Log what we found
|
|
69
76
|
console.log(chalk_1.default.green("✓ Stack query succeeded\n"));
|
|
70
77
|
console.log(chalk_1.default.dim(`✓ Stack ARN: ${stackArn}`));
|
|
@@ -82,19 +89,13 @@ async function runStackQuery(catalogDns, options = {}) {
|
|
|
82
89
|
console.log(athenaResultsBucketPolicy
|
|
83
90
|
? chalk_1.default.dim(`✓ Athena Results Bucket Policy: ${athenaResultsBucketPolicy}`)
|
|
84
91
|
: chalk_1.default.yellow("⚠ Athena Results Bucket Policy: NOT FOUND"));
|
|
85
|
-
// Iceberg resources are optional (recent addition to Quilt stacks)
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
if (icebergWorkgroup) {
|
|
93
|
-
console.log(chalk_1.default.green(`✓ Iceberg Workgroup: ${icebergWorkgroup}`));
|
|
94
|
-
}
|
|
95
|
-
else {
|
|
96
|
-
console.log(chalk_1.default.dim(" Iceberg Workgroup: Not available (optional)"));
|
|
97
|
-
}
|
|
92
|
+
// Iceberg resources are optional (recent addition to Quilt stacks) - keep dimmed
|
|
93
|
+
console.log(icebergDatabase
|
|
94
|
+
? chalk_1.default.dim(`✓ Iceberg Database: ${icebergDatabase}`)
|
|
95
|
+
: chalk_1.default.dim(" Iceberg Database: Not available (optional)"));
|
|
96
|
+
console.log(icebergWorkgroup
|
|
97
|
+
? chalk_1.default.dim(`✓ Iceberg Workgroup: ${icebergWorkgroup}`)
|
|
98
|
+
: chalk_1.default.dim(" Iceberg Workgroup: Not available (optional)"));
|
|
98
99
|
// IAM role ARNs are logged by inferQuiltConfig, so no need to log again here
|
|
99
100
|
if (benchlingSecretArn) {
|
|
100
101
|
console.log(chalk_1.default.green(`✓ BenchlingSecret: ${benchlingSecretArn}`));
|
|
@@ -115,8 +116,30 @@ async function runStackQuery(catalogDns, options = {}) {
|
|
|
115
116
|
region,
|
|
116
117
|
});
|
|
117
118
|
if (discoveredVpc) {
|
|
118
|
-
|
|
119
|
+
// Filter for private subnets with NAT Gateway (NOT intra subnets)
|
|
120
|
+
// Private subnets: !isPublic && hasNatGateway (for ECS outbound access)
|
|
121
|
+
// Intra subnets: !isPublic && !hasNatGateway (isolated, no internet)
|
|
122
|
+
const privateSubnets = discoveredVpc.subnets.filter((s) => !s.isPublic && s.hasNatGateway);
|
|
123
|
+
const publicSubnets = discoveredVpc.subnets.filter((s) => s.isPublic);
|
|
119
124
|
const azs = new Set(privateSubnets.map((s) => s.availabilityZone));
|
|
125
|
+
// Deduplicate subnets - select one subnet per AZ for NLB compatibility
|
|
126
|
+
// AWS NLB requires exactly one subnet per availability zone
|
|
127
|
+
const privateSubnetsByAz = new Map();
|
|
128
|
+
const publicSubnetsByAz = new Map();
|
|
129
|
+
for (const subnet of privateSubnets) {
|
|
130
|
+
if (!privateSubnetsByAz.has(subnet.availabilityZone)) {
|
|
131
|
+
privateSubnetsByAz.set(subnet.availabilityZone, subnet);
|
|
132
|
+
}
|
|
133
|
+
}
|
|
134
|
+
for (const subnet of publicSubnets) {
|
|
135
|
+
if (!publicSubnetsByAz.has(subnet.availabilityZone)) {
|
|
136
|
+
publicSubnetsByAz.set(subnet.availabilityZone, subnet);
|
|
137
|
+
}
|
|
138
|
+
}
|
|
139
|
+
// Extract deduplicated subnet IDs and AZs
|
|
140
|
+
const deduplicatedPrivateSubnets = Array.from(privateSubnetsByAz.values());
|
|
141
|
+
const deduplicatedPublicSubnets = Array.from(publicSubnetsByAz.values());
|
|
142
|
+
const deduplicatedAzs = Array.from(privateSubnetsByAz.keys());
|
|
120
143
|
discoveredVpcInfo = {
|
|
121
144
|
vpcId: discoveredVpc.vpcId,
|
|
122
145
|
name: discoveredVpc.name,
|
|
@@ -125,14 +148,16 @@ async function runStackQuery(catalogDns, options = {}) {
|
|
|
125
148
|
availabilityZoneCount: azs.size,
|
|
126
149
|
isValid: discoveredVpc.isValid,
|
|
127
150
|
validationErrors: discoveredVpc.validationErrors,
|
|
151
|
+
// Use deduplicated subnets - exactly one per AZ for NLB compatibility
|
|
152
|
+
privateSubnetIds: deduplicatedPrivateSubnets.map(s => s.subnetId),
|
|
153
|
+
publicSubnetIds: deduplicatedPublicSubnets.map(s => s.subnetId),
|
|
154
|
+
availabilityZones: deduplicatedAzs,
|
|
128
155
|
};
|
|
129
156
|
if (discoveredVpc.isValid) {
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
}
|
|
134
|
-
console.log(chalk_1.default.dim(` CIDR: ${discoveredVpc.cidrBlock}`));
|
|
135
|
-
console.log(chalk_1.default.dim(` Private subnets: ${privateSubnets.length} across ${azs.size} AZs`));
|
|
157
|
+
const vpcDisplay = discoveredVpc.name
|
|
158
|
+
? `${discoveredVpc.name} (${discoveredVpc.vpcId})`
|
|
159
|
+
: discoveredVpc.vpcId;
|
|
160
|
+
console.log(chalk_1.default.dim(`✓ VPC: ${vpcDisplay} - ${privateSubnets.length} private subnets in ${azs.size} AZs`));
|
|
136
161
|
}
|
|
137
162
|
else {
|
|
138
163
|
console.log(chalk_1.default.yellow(`⚠ VPC: ${discoveredVpc.vpcId} (does not meet requirements)`));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"phase2-stack-query.js","sourceRoot":"","sources":["../../../lib/wizard/phase2-stack-query.ts"],"names":[],"mappings":";AAAA;;;;;;;GAOG;;;;;AAgCH,
|
|
1
|
+
{"version":3,"file":"phase2-stack-query.js","sourceRoot":"","sources":["../../../lib/wizard/phase2-stack-query.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"phase3-parameter-collection.d.ts","sourceRoot":"","sources":["../../../lib/wizard/phase3-parameter-collection.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAKH,OAAO,EAAE,wBAAwB,EAAE,yBAAyB,EAAE,MAAM,SAAS,CAAC;AAE9E;;;;;;;;;;;;GAYG;AACH,wBAAsB,sBAAsB,CACxC,KAAK,EAAE,wBAAwB,GAChC,OAAO,CAAC,yBAAyB,CAAC,
|
|
1
|
+
{"version":3,"file":"phase3-parameter-collection.d.ts","sourceRoot":"","sources":["../../../lib/wizard/phase3-parameter-collection.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAKH,OAAO,EAAE,wBAAwB,EAAE,yBAAyB,EAAE,MAAM,SAAS,CAAC;AAE9E;;;;;;;;;;;;GAYG;AACH,wBAAsB,sBAAsB,CACxC,KAAK,EAAE,wBAAwB,GAChC,OAAO,CAAC,yBAAyB,CAAC,CAsepC"}
|