@quiltdata/benchling-webhook 0.8.8 → 0.8.9
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 +110 -0
- package/cdk.json +1 -0
- package/dist/bin/benchling-webhook.js +19 -0
- package/dist/bin/benchling-webhook.js.map +1 -1
- package/dist/bin/cli.js +37 -2
- package/dist/bin/cli.js.map +1 -1
- package/dist/bin/commands/deploy.d.ts +2 -0
- package/dist/bin/commands/deploy.d.ts.map +1 -1
- package/dist/bin/commands/deploy.js +146 -9
- package/dist/bin/commands/deploy.js.map +1 -1
- package/dist/bin/commands/destroy.d.ts +16 -0
- package/dist/bin/commands/destroy.d.ts.map +1 -0
- package/dist/bin/commands/destroy.js +258 -0
- package/dist/bin/commands/destroy.js.map +1 -0
- 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/logs.d.ts.map +1 -1
- package/dist/bin/commands/logs.js +29 -6
- package/dist/bin/commands/logs.js.map +1 -1
- package/dist/bin/commands/setup-profile.d.ts +1 -1
- package/dist/bin/commands/setup-profile.d.ts.map +1 -1
- package/dist/bin/commands/setup-profile.js +46 -1
- package/dist/bin/commands/setup-profile.js.map +1 -1
- package/dist/bin/commands/status.d.ts +17 -0
- package/dist/bin/commands/status.d.ts.map +1 -1
- package/dist/bin/commands/status.js +186 -35
- package/dist/bin/commands/status.js.map +1 -1
- package/dist/bin/commands/sync-secrets.d.ts +1 -1
- package/dist/bin/commands/sync-secrets.js +1 -1
- package/dist/bin/xdg-launch.d.ts +1 -1
- package/dist/bin/xdg-launch.d.ts.map +1 -1
- package/dist/bin/xdg-launch.js +105 -26
- package/dist/bin/xdg-launch.js.map +1 -1
- package/dist/lib/benchling-webhook-stack.d.ts +1 -1
- package/dist/lib/benchling-webhook-stack.d.ts.map +1 -1
- package/dist/lib/benchling-webhook-stack.js +105 -16
- package/dist/lib/benchling-webhook-stack.js.map +1 -1
- package/dist/lib/configuration-saver.d.ts +1 -1
- package/dist/lib/configuration-saver.d.ts.map +1 -1
- package/dist/lib/configuration-saver.js +4 -5
- package/dist/lib/configuration-saver.js.map +1 -1
- package/dist/lib/constants.d.ts +5 -0
- package/dist/lib/constants.d.ts.map +1 -1
- package/dist/lib/constants.js +6 -1
- package/dist/lib/constants.js.map +1 -1
- package/dist/lib/fargate-service.d.ts +4 -5
- package/dist/lib/fargate-service.d.ts.map +1 -1
- package/dist/lib/fargate-service.js +14 -59
- package/dist/lib/fargate-service.js.map +1 -1
- package/dist/lib/index.d.ts +1 -1
- package/dist/lib/index.d.ts.map +1 -1
- package/dist/lib/index.js +3 -3
- package/dist/lib/index.js.map +1 -1
- package/dist/lib/network-load-balancer.d.ts +27 -0
- package/dist/lib/network-load-balancer.d.ts.map +1 -0
- package/dist/lib/network-load-balancer.js +109 -0
- package/dist/lib/network-load-balancer.js.map +1 -0
- package/dist/lib/rest-api-gateway.d.ts +22 -0
- package/dist/lib/rest-api-gateway.d.ts.map +1 -0
- package/dist/lib/rest-api-gateway.js +154 -0
- package/dist/lib/rest-api-gateway.js.map +1 -0
- package/dist/lib/types/config.d.ts +84 -8
- package/dist/lib/types/config.d.ts.map +1 -1
- package/dist/lib/types/config.js +1 -1
- package/dist/lib/types/config.js.map +1 -1
- package/dist/lib/utils/service-resolver.d.ts +1 -1
- package/dist/lib/utils/service-resolver.js +1 -1
- package/dist/lib/wizard/phase2-stack-query.d.ts.map +1 -1
- package/dist/lib/wizard/phase2-stack-query.js +80 -14
- 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 +61 -1
- package/dist/lib/wizard/phase3-parameter-collection.js.map +1 -1
- package/dist/lib/wizard/phase6-integrated-mode.d.ts.map +1 -1
- package/dist/lib/wizard/phase6-integrated-mode.js +3 -1
- package/dist/lib/wizard/phase6-integrated-mode.js.map +1 -1
- package/dist/lib/wizard/phase7-standalone-mode.d.ts.map +1 -1
- package/dist/lib/wizard/phase7-standalone-mode.js +3 -1
- package/dist/lib/wizard/phase7-standalone-mode.js.map +1 -1
- package/dist/lib/wizard/types.d.ts +34 -0
- package/dist/lib/wizard/types.d.ts.map +1 -1
- package/dist/lib/xdg-base.d.ts +17 -1
- package/dist/lib/xdg-base.d.ts.map +1 -1
- package/dist/lib/xdg-base.js +30 -1
- package/dist/lib/xdg-base.js.map +1 -1
- package/dist/lib/xdg-config.d.ts +1 -1
- package/dist/lib/xdg-config.js +1 -1
- package/dist/package.json +6 -3
- package/dist/scripts/discover-vpc.d.ts +69 -0
- package/dist/scripts/discover-vpc.d.ts.map +1 -0
- package/dist/scripts/discover-vpc.js +196 -0
- package/dist/scripts/discover-vpc.js.map +1 -0
- package/package.json +6 -3
- package/dist/lib/alb-api-gateway.d.ts +0 -23
- package/dist/lib/alb-api-gateway.d.ts.map +0 -1
- package/dist/lib/alb-api-gateway.js +0 -211
- package/dist/lib/alb-api-gateway.js.map +0 -1
|
@@ -38,11 +38,11 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
38
38
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
39
|
exports.BenchlingWebhookStack = void 0;
|
|
40
40
|
const cdk = __importStar(require("aws-cdk-lib"));
|
|
41
|
-
const s3 = __importStar(require("aws-cdk-lib/aws-s3"));
|
|
42
41
|
const ec2 = __importStar(require("aws-cdk-lib/aws-ec2"));
|
|
43
42
|
const ecr = __importStar(require("aws-cdk-lib/aws-ecr"));
|
|
44
43
|
const fargate_service_1 = require("./fargate-service");
|
|
45
|
-
const
|
|
44
|
+
const rest_api_gateway_1 = require("./rest-api-gateway");
|
|
45
|
+
const network_load_balancer_1 = require("./network-load-balancer");
|
|
46
46
|
const package_json_1 = __importDefault(require("../package.json"));
|
|
47
47
|
class BenchlingWebhookStack extends cdk.Stack {
|
|
48
48
|
constructor(scope, id, props) {
|
|
@@ -56,12 +56,12 @@ class BenchlingWebhookStack extends cdk.Stack {
|
|
|
56
56
|
" - config.benchling.secretArn: Secrets Manager secret ARN\n\n" +
|
|
57
57
|
"Run 'npm run setup' to configure your deployment.");
|
|
58
58
|
}
|
|
59
|
-
console.log(`Deploying with profile configuration (v${
|
|
59
|
+
console.log(`Deploying with profile configuration (v${package_json_1.default.version})`);
|
|
60
60
|
console.log(` Benchling Tenant: ${config.benchling.tenant}`);
|
|
61
61
|
console.log(` Region: ${config.deployment.region}`);
|
|
62
62
|
// Create CloudFormation parameters for runtime-configurable values
|
|
63
63
|
// These parameters can be updated via CloudFormation stack updates
|
|
64
|
-
// Explicit service parameters
|
|
64
|
+
// Explicit service parameters
|
|
65
65
|
// These replace runtime resolution from QuiltStackARN
|
|
66
66
|
const packagerQueueUrlParam = new cdk.CfnParameter(this, "PackagerQueueUrl", {
|
|
67
67
|
type: "String",
|
|
@@ -141,11 +141,67 @@ class BenchlingWebhookStack extends cdk.Stack {
|
|
|
141
141
|
const quiltDatabaseValue = quiltDatabaseParam.valueAsString;
|
|
142
142
|
// Bucket name will be resolved at runtime from CloudFormation outputs
|
|
143
143
|
// For CDK purposes, we use a placeholder for IAM permissions
|
|
144
|
-
|
|
145
|
-
//
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
144
|
+
// VPC Configuration
|
|
145
|
+
// Architecture mirrors ~/GitHub/deployment/t4/template/network.py (network_version=2.0)
|
|
146
|
+
// - Option 1: Use existing VPC (if vpcId specified in config)
|
|
147
|
+
// - Option 2: Create new VPC with private subnets and NAT Gateway (production HA setup)
|
|
148
|
+
// Validate VPC configuration if using existing VPC
|
|
149
|
+
if (config.deployment.vpc?.vpcId) {
|
|
150
|
+
// Using explicit VPC config - validate we have subnet IDs
|
|
151
|
+
const privateSubnetIds = config.deployment.vpc.privateSubnetIds || [];
|
|
152
|
+
const azs = config.deployment.vpc.availabilityZones || [];
|
|
153
|
+
if (privateSubnetIds.length < 2) {
|
|
154
|
+
throw new Error(`VPC (${config.deployment.vpc.vpcId}) configuration is invalid.\n` +
|
|
155
|
+
`Found ${privateSubnetIds.length} private subnet(s), need ≥2.\n\n` +
|
|
156
|
+
"This usually means:\n" +
|
|
157
|
+
" 1. VPC discovery failed during setup wizard\n" +
|
|
158
|
+
" 2. Configuration was manually edited and is incomplete\n" +
|
|
159
|
+
" 3. You're using an old config format (pre-v1.0)\n\n" +
|
|
160
|
+
"Solution: Re-run setup wizard to re-discover VPC resources:\n" +
|
|
161
|
+
" npm run setup\n\n" +
|
|
162
|
+
"Or create a new VPC by removing vpc.vpcId from config.");
|
|
163
|
+
}
|
|
164
|
+
if (azs.length < 2) {
|
|
165
|
+
throw new Error(`VPC (${config.deployment.vpc.vpcId}) subnets must span ≥2 availability zones.\n` +
|
|
166
|
+
`Found ${azs.length} AZ(s).\n\n` +
|
|
167
|
+
"Solution: Re-run setup wizard or create a new VPC.");
|
|
168
|
+
}
|
|
169
|
+
console.log(`Using existing VPC: ${config.deployment.vpc.vpcId}`);
|
|
170
|
+
console.log(` Private subnets: ${privateSubnetIds.join(", ")}`);
|
|
171
|
+
console.log(` Availability zones: ${azs.join(", ")}`);
|
|
172
|
+
}
|
|
173
|
+
else {
|
|
174
|
+
console.log("Creating new VPC with private subnets and NAT Gateway");
|
|
175
|
+
}
|
|
176
|
+
const vpc = config.deployment.vpc?.vpcId
|
|
177
|
+
? ec2.Vpc.fromVpcAttributes(this, "ExistingVPC", {
|
|
178
|
+
vpcId: config.deployment.vpc.vpcId,
|
|
179
|
+
availabilityZones: config.deployment.vpc.availabilityZones || [],
|
|
180
|
+
privateSubnetIds: config.deployment.vpc.privateSubnetIds || [],
|
|
181
|
+
publicSubnetIds: config.deployment.vpc.publicSubnetIds || [],
|
|
182
|
+
vpcCidrBlock: config.deployment.vpc.vpcCidrBlock,
|
|
183
|
+
})
|
|
184
|
+
: new ec2.Vpc(this, "BenchlingWebhookVPC", {
|
|
185
|
+
maxAzs: 2,
|
|
186
|
+
natGateways: 2, // Mirror production: 1 NAT Gateway per AZ for high availability
|
|
187
|
+
subnetConfiguration: [
|
|
188
|
+
{
|
|
189
|
+
name: "Public",
|
|
190
|
+
subnetType: ec2.SubnetType.PUBLIC,
|
|
191
|
+
cidrMask: 24,
|
|
192
|
+
},
|
|
193
|
+
{
|
|
194
|
+
name: "Private",
|
|
195
|
+
subnetType: ec2.SubnetType.PRIVATE_WITH_EGRESS, // Private + NAT Gateway
|
|
196
|
+
cidrMask: 24,
|
|
197
|
+
},
|
|
198
|
+
],
|
|
199
|
+
});
|
|
200
|
+
// Double-check after VPC construction (should never fail)
|
|
201
|
+
if (vpc.privateSubnets.length === 0) {
|
|
202
|
+
throw new Error("Internal error: VPC has no private subnets. " +
|
|
203
|
+
"This should never happen - please report as a bug.");
|
|
204
|
+
}
|
|
149
205
|
// HARDCODED: Always use the quiltdata AWS account for ECR images
|
|
150
206
|
const account = "712023778557";
|
|
151
207
|
const region = "us-east-1";
|
|
@@ -153,6 +209,11 @@ class BenchlingWebhookStack extends cdk.Stack {
|
|
|
153
209
|
const ecrArn = `arn:aws:ecr:${region}:${account}:repository/${repoName}`;
|
|
154
210
|
const ecrRepo = ecr.Repository.fromRepositoryArn(this, "ExistingEcrRepository", ecrArn);
|
|
155
211
|
const ecrImageUri = `${account}.dkr.ecr.${region}.amazonaws.com/${repoName}:${imageTagValue}`;
|
|
212
|
+
// Create Network Load Balancer for ECS service
|
|
213
|
+
// NLB provides reliable health checks for ECS tasks
|
|
214
|
+
this.nlb = new network_load_balancer_1.NetworkLoadBalancer(this, "NetworkLoadBalancer", {
|
|
215
|
+
vpc,
|
|
216
|
+
});
|
|
156
217
|
// Create the Fargate service
|
|
157
218
|
// Use imageTag for stackVersion if it looks like a timestamped dev version
|
|
158
219
|
// (e.g., "0.7.0-20251104T000139Z"), otherwise use package.json version
|
|
@@ -161,13 +222,13 @@ class BenchlingWebhookStack extends cdk.Stack {
|
|
|
161
222
|
// Build Fargate Service props using new config structure
|
|
162
223
|
this.fargateService = new fargate_service_1.FargateService(this, "FargateService", {
|
|
163
224
|
vpc,
|
|
164
|
-
bucket: this.bucket,
|
|
165
225
|
config: config,
|
|
166
226
|
ecrRepository: ecrRepo,
|
|
227
|
+
targetGroup: this.nlb.targetGroup, // NLB target group for ECS tasks
|
|
167
228
|
imageTag: imageTagValue,
|
|
168
229
|
stackVersion: stackVersion,
|
|
169
230
|
// Runtime-configurable parameters
|
|
170
|
-
// New explicit service parameters
|
|
231
|
+
// New explicit service parameters
|
|
171
232
|
packagerQueueUrl: packagerQueueUrlValue,
|
|
172
233
|
athenaUserDatabase: athenaUserDatabaseValue,
|
|
173
234
|
quiltWebHost: quiltWebHostValue,
|
|
@@ -184,13 +245,24 @@ class BenchlingWebhookStack extends cdk.Stack {
|
|
|
184
245
|
quiltDatabase: quiltDatabaseValue,
|
|
185
246
|
logLevel: logLevelValue,
|
|
186
247
|
});
|
|
187
|
-
//
|
|
188
|
-
|
|
189
|
-
|
|
248
|
+
// Get stage from environment or default to prod
|
|
249
|
+
const stage = process.env.STAGE || "prod";
|
|
250
|
+
// Create REST API v1 that routes through VPC Link to the NLB
|
|
251
|
+
// v1.0.0: REST API with resource policy replaces HTTP API v2 + WAF
|
|
252
|
+
this.api = new rest_api_gateway_1.RestApiGateway(this, "RestApiGateway", {
|
|
253
|
+
vpc: vpc,
|
|
254
|
+
networkLoadBalancer: this.nlb.loadBalancer,
|
|
255
|
+
nlbListener: this.nlb.listener,
|
|
256
|
+
serviceSecurityGroup: this.fargateService.securityGroup,
|
|
190
257
|
config: config,
|
|
258
|
+
stage: stage,
|
|
191
259
|
});
|
|
192
|
-
// Store webhook endpoint for easy access
|
|
260
|
+
// Store webhook endpoint for easy access (REST API v1 with stage)
|
|
261
|
+
// REST API URL already includes the stage in the path (e.g., https://xxx.execute-api.region.amazonaws.com/stage/)
|
|
193
262
|
this.webhookEndpoint = this.api.api.url;
|
|
263
|
+
if (!this.api.api.url) {
|
|
264
|
+
throw new Error("REST API URL was not generated. This should not happen.");
|
|
265
|
+
}
|
|
194
266
|
// Export webhook endpoint as a stack output
|
|
195
267
|
new cdk.CfnOutput(this, "WebhookEndpoint", {
|
|
196
268
|
value: this.webhookEndpoint,
|
|
@@ -212,9 +284,26 @@ class BenchlingWebhookStack extends cdk.Stack {
|
|
|
212
284
|
description: "CloudWatch log group for ECS container logs",
|
|
213
285
|
});
|
|
214
286
|
new cdk.CfnOutput(this, "ApiGatewayLogGroup", {
|
|
215
|
-
value:
|
|
287
|
+
value: "/aws/apigateway/benchling-webhook-rest",
|
|
216
288
|
description: "CloudWatch log group for API Gateway access logs",
|
|
217
289
|
});
|
|
290
|
+
new cdk.CfnOutput(this, "ApiType", {
|
|
291
|
+
value: "REST API v1",
|
|
292
|
+
description: "API Gateway type",
|
|
293
|
+
});
|
|
294
|
+
new cdk.CfnOutput(this, "ApiStage", {
|
|
295
|
+
value: stage,
|
|
296
|
+
description: "API Gateway deployment stage",
|
|
297
|
+
});
|
|
298
|
+
// Export NLB information
|
|
299
|
+
new cdk.CfnOutput(this, "NetworkLoadBalancerDns", {
|
|
300
|
+
value: this.nlb.loadBalancer.loadBalancerDnsName,
|
|
301
|
+
description: "Network Load Balancer DNS name (internal)",
|
|
302
|
+
});
|
|
303
|
+
new cdk.CfnOutput(this, "TargetGroupArn", {
|
|
304
|
+
value: this.nlb.targetGroup.targetGroupArn,
|
|
305
|
+
description: "NLB Target Group ARN for ECS tasks",
|
|
306
|
+
});
|
|
218
307
|
// Export configuration metadata
|
|
219
308
|
new cdk.CfnOutput(this, "ConfigVersion", {
|
|
220
309
|
value: config._metadata.version,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"benchling-webhook-stack.js","sourceRoot":"","sources":["../../lib/benchling-webhook-stack.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,iDAAmC;AACnC,
|
|
1
|
+
{"version":3,"file":"benchling-webhook-stack.js","sourceRoot":"","sources":["../../lib/benchling-webhook-stack.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"configuration-saver.d.ts","sourceRoot":"","sources":["../../lib/configuration-saver.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"configuration-saver.d.ts","sourceRoot":"","sources":["../../lib/configuration-saver.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAI/C;;GAEG;AACH,MAAM,WAAW,cAAc;IAC3B,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;CACvB;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IACxB,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;GAEG;AACH,qBAAa,kBAAkB;IAC3B;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,gBAAgB,CAA0B;IAEzD;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,mBAAmB;IAOlC;;;;;;OAMG;WACiB,IAAI,CACpB,MAAM,EAAE,OAAO,CAAC,aAAa,CAAC,EAC9B,OAAO,GAAE,WAAgB,GAC1B,OAAO,CAAC,aAAa,CAAC;IAwCzB;;;;;OAKG;WACW,WAAW,CAAC,OAAO,GAAE,OAAO,CAAC,cAAc,CAAM,GAAG,cAAc;IAShF;;;;OAIG;IACH,OAAO,CAAC,MAAM,CAAC,UAAU;CAG5B"}
|
|
@@ -6,6 +6,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
6
6
|
exports.ConfigurationSaver = void 0;
|
|
7
7
|
const xdg_config_1 = require("./xdg-config");
|
|
8
8
|
const lodash_merge_1 = __importDefault(require("lodash.merge"));
|
|
9
|
+
const package_json_1 = __importDefault(require("../package.json"));
|
|
9
10
|
/**
|
|
10
11
|
* Configuration saver for persisting configuration to XDG files
|
|
11
12
|
*/
|
|
@@ -47,7 +48,7 @@ class ConfigurationSaver {
|
|
|
47
48
|
const configWithMetadata = {
|
|
48
49
|
...finalConfig,
|
|
49
50
|
_metadata: {
|
|
50
|
-
version: metadata.version ||
|
|
51
|
+
version: metadata.version || package_json_1.default.version,
|
|
51
52
|
createdAt: finalConfig._metadata?.createdAt || metadata.savedAt,
|
|
52
53
|
updatedAt: metadata.savedAt,
|
|
53
54
|
source: source,
|
|
@@ -72,14 +73,12 @@ class ConfigurationSaver {
|
|
|
72
73
|
};
|
|
73
74
|
}
|
|
74
75
|
/**
|
|
75
|
-
* Get the current version
|
|
76
|
+
* Get the current version from package.json
|
|
76
77
|
*
|
|
77
78
|
* @returns Version string
|
|
78
79
|
*/
|
|
79
80
|
static getVersion() {
|
|
80
|
-
|
|
81
|
-
// In production, this would read from package.json
|
|
82
|
-
return "0.7.0";
|
|
81
|
+
return package_json_1.default.version;
|
|
83
82
|
}
|
|
84
83
|
}
|
|
85
84
|
exports.ConfigurationSaver = ConfigurationSaver;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"configuration-saver.js","sourceRoot":"","sources":["../../lib/configuration-saver.ts"],"names":[],"mappings":";;;;;;AAAA,6CAAyC;AAEzC,gEAAiC;
|
|
1
|
+
{"version":3,"file":"configuration-saver.js","sourceRoot":"","sources":["../../lib/configuration-saver.ts"],"names":[],"mappings":";;;;;;AAAA,6CAAyC;AAEzC,gEAAiC;AACjC,mEAA0C;AAsB1C;;GAEG;AACH,MAAa,kBAAkB;IAM3B;;OAEG;IACK,MAAM,CAAC,mBAAmB;QAC9B,IAAI,CAAC,kBAAkB,CAAC,gBAAgB,EAAE,CAAC;YACvC,kBAAkB,CAAC,gBAAgB,GAAG,IAAI,sBAAS,EAAE,CAAC;QAC1D,CAAC;QACD,OAAO,kBAAkB,CAAC,gBAAgB,CAAC;IAC/C,CAAC;IAED;;;;;;OAMG;IACI,MAAM,CAAC,KAAK,CAAC,IAAI,CACpB,MAA8B,EAC9B,UAAuB,EAAE;QAEzB,MAAM,EACF,SAAS,GAAG,kBAAkB,CAAC,mBAAmB,EAAE,EACpD,MAAM,GAAG,QAAQ,EACjB,KAAK,EAAE,WAAW,GAAG,KAAK,EAC1B,OAAO,GAAG,SAAS,GACtB,GAAG,OAAO,CAAC;QAEZ,0CAA0C;QAC1C,IAAI,WAAW,GAAG,EAAE,GAAG,MAAM,EAAE,CAAC;QAChC,IAAI,WAAW,IAAI,SAAS,CAAC,aAAa,CAAC,OAAO,CAAC,EAAE,CAAC;YAClD,IAAI,CAAC;gBACD,MAAM,cAAc,GAAG,SAAS,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;gBACtD,WAAW,GAAG,IAAA,sBAAK,EAAC,EAAE,EAAE,cAAc,EAAE,MAAM,CAAC,CAAC;YACpD,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACb,iDAAiD;gBACjD,OAAO,CAAC,IAAI,CAAC,6DAA8D,KAAe,CAAC,OAAO,EAAE,CAAC,CAAC;gBACtG,OAAO,CAAC,IAAI,CAAC,8DAA8D,CAAC,CAAC;gBAC7E,WAAW,GAAG,EAAE,GAAG,MAAM,EAAE,CAAC;YAChC,CAAC;QACL,CAAC;QAED,eAAe;QACf,MAAM,QAAQ,GAAG,kBAAkB,CAAC,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;QAC5D,MAAM,kBAAkB,GAAkB;YACtC,GAAG,WAAW;YACd,SAAS,EAAE;gBACP,OAAO,EAAE,QAAQ,CAAC,OAAO,IAAI,sBAAW,CAAC,OAAO;gBAChD,SAAS,EAAE,WAAW,CAAC,SAAS,EAAE,SAAS,IAAI,QAAQ,CAAC,OAAO;gBAC/D,SAAS,EAAE,QAAQ,CAAC,OAAO;gBAC3B,MAAM,EAAE,MAAqC;aAChD;SACa,CAAC;QAEnB,kBAAkB;QAClB,SAAS,CAAC,YAAY,CAAC,OAAO,EAAE,kBAAkB,CAAC,CAAC;QAEpD,OAAO,kBAAkB,CAAC;IAC9B,CAAC;IAED;;;;;OAKG;IACI,MAAM,CAAC,WAAW,CAAC,UAAmC,EAAE;QAC3D,OAAO;YACH,OAAO,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;YACjC,MAAM,EAAE,OAAO,CAAC,MAAM,IAAI,SAAS;YACnC,OAAO,EAAE,kBAAkB,CAAC,UAAU,EAAE;YACxC,GAAG,CAAC,OAAO,CAAC,UAAU,IAAI,EAAE,UAAU,EAAE,OAAO,CAAC,UAAU,EAAE,CAAC;SAChE,CAAC;IACN,CAAC;IAED;;;;OAIG;IACK,MAAM,CAAC,UAAU;QACrB,OAAO,sBAAW,CAAC,OAAO,CAAC;IAC/B,CAAC;;AAxFL,gDAyFC;AAxFG;;GAEG;AACY,mCAAgB,GAAqB,IAAI,CAAC"}
|
package/dist/lib/constants.d.ts
CHANGED
|
@@ -25,4 +25,9 @@ export declare const MIME_TYPES: {
|
|
|
25
25
|
readonly YML: "application/yaml";
|
|
26
26
|
readonly DEFAULT: "application/octet-stream";
|
|
27
27
|
};
|
|
28
|
+
/**
|
|
29
|
+
* API Gateway integration timeout in seconds.
|
|
30
|
+
* Must be longer than backend processing time (S3 writes + SQS sends + Fargate health checks).
|
|
31
|
+
*/
|
|
32
|
+
export declare const API_GATEWAY_INTEGRATION_TIMEOUT_SECONDS = 30;
|
|
28
33
|
//# sourceMappingURL=constants.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../lib/constants.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,aAAa;;;;CAIhB,CAAC;AAEX,eAAO,MAAM,KAAK;;;;;CAKR,CAAC;AAEX,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;CAeb,CAAC"}
|
|
1
|
+
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../lib/constants.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,aAAa;;;;CAIhB,CAAC;AAEX,eAAO,MAAM,KAAK;;;;;CAKR,CAAC;AAEX,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;CAeb,CAAC;AAEX;;;GAGG;AACH,eAAO,MAAM,uCAAuC,KAAK,CAAC"}
|
package/dist/lib/constants.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.MIME_TYPES = exports.FILES = exports.EXPORT_STATUS = void 0;
|
|
3
|
+
exports.API_GATEWAY_INTEGRATION_TIMEOUT_SECONDS = exports.MIME_TYPES = exports.FILES = exports.EXPORT_STATUS = void 0;
|
|
4
4
|
exports.EXPORT_STATUS = {
|
|
5
5
|
RUNNING: "RUNNING",
|
|
6
6
|
SUCCEEDED: "SUCCEEDED",
|
|
@@ -28,4 +28,9 @@ exports.MIME_TYPES = {
|
|
|
28
28
|
YML: "application/yaml",
|
|
29
29
|
DEFAULT: "application/octet-stream",
|
|
30
30
|
};
|
|
31
|
+
/**
|
|
32
|
+
* API Gateway integration timeout in seconds.
|
|
33
|
+
* Must be longer than backend processing time (S3 writes + SQS sends + Fargate health checks).
|
|
34
|
+
*/
|
|
35
|
+
exports.API_GATEWAY_INTEGRATION_TIMEOUT_SECONDS = 30;
|
|
31
36
|
//# sourceMappingURL=constants.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../lib/constants.ts"],"names":[],"mappings":";;;AAAa,QAAA,aAAa,GAAG;IACzB,OAAO,EAAE,SAAS;IAClB,SAAS,EAAE,WAAW;IACtB,MAAM,EAAE,QAAQ;CACV,CAAC;AAEE,QAAA,KAAK,GAAG;IACjB,UAAU,EAAE,YAAY;IACxB,UAAU,EAAE,YAAY;IACxB,SAAS,EAAE,WAAW;IACtB,QAAQ,EAAE,UAAU;CACd,CAAC;AAEE,QAAA,UAAU,GAAG;IACtB,IAAI,EAAE,WAAW;IACjB,GAAG,EAAE,UAAU;IACf,EAAE,EAAE,wBAAwB;IAC5B,IAAI,EAAE,kBAAkB;IACxB,GAAG,EAAE,WAAW;IAChB,IAAI,EAAE,YAAY;IAClB,GAAG,EAAE,WAAW;IAChB,GAAG,EAAE,YAAY;IACjB,GAAG,EAAE,iBAAiB;IACtB,EAAE,EAAE,eAAe;IACnB,GAAG,EAAE,iBAAiB;IACtB,IAAI,EAAE,kBAAkB;IACxB,GAAG,EAAE,kBAAkB;IACvB,OAAO,EAAE,0BAA0B;CAC7B,CAAC"}
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../lib/constants.ts"],"names":[],"mappings":";;;AAAa,QAAA,aAAa,GAAG;IACzB,OAAO,EAAE,SAAS;IAClB,SAAS,EAAE,WAAW;IACtB,MAAM,EAAE,QAAQ;CACV,CAAC;AAEE,QAAA,KAAK,GAAG;IACjB,UAAU,EAAE,YAAY;IACxB,UAAU,EAAE,YAAY;IACxB,SAAS,EAAE,WAAW;IACtB,QAAQ,EAAE,UAAU;CACd,CAAC;AAEE,QAAA,UAAU,GAAG;IACtB,IAAI,EAAE,WAAW;IACjB,GAAG,EAAE,UAAU;IACf,EAAE,EAAE,wBAAwB;IAC5B,IAAI,EAAE,kBAAkB;IACxB,GAAG,EAAE,WAAW;IAChB,IAAI,EAAE,YAAY;IAClB,GAAG,EAAE,WAAW;IAChB,GAAG,EAAE,YAAY;IACjB,GAAG,EAAE,iBAAiB;IACtB,EAAE,EAAE,eAAe;IACnB,GAAG,EAAE,iBAAiB;IACtB,IAAI,EAAE,kBAAkB;IACxB,GAAG,EAAE,kBAAkB;IACvB,OAAO,EAAE,0BAA0B;CAC7B,CAAC;AAEX;;;GAGG;AACU,QAAA,uCAAuC,GAAG,EAAE,CAAC"}
|
|
@@ -3,24 +3,23 @@ import * as ecr from "aws-cdk-lib/aws-ecr";
|
|
|
3
3
|
import * as ecs from "aws-cdk-lib/aws-ecs";
|
|
4
4
|
import * as elbv2 from "aws-cdk-lib/aws-elasticloadbalancingv2";
|
|
5
5
|
import * as logs from "aws-cdk-lib/aws-logs";
|
|
6
|
-
import * as s3 from "aws-cdk-lib/aws-s3";
|
|
7
6
|
import { Construct } from "constructs";
|
|
8
7
|
import { ProfileConfig } from "./types/config";
|
|
9
8
|
/**
|
|
10
|
-
* Properties for FargateService construct
|
|
9
|
+
* Properties for FargateService construct
|
|
11
10
|
*
|
|
12
11
|
* Uses ProfileConfig for structured configuration access.
|
|
13
12
|
* Runtime-configurable parameters can be overridden via CloudFormation parameters.
|
|
14
13
|
*
|
|
15
|
-
* **Breaking Change (
|
|
14
|
+
* **Breaking Change (v0.9.0)**: Removed stackArn in favor of explicit service environment variables.
|
|
16
15
|
* The explicit service parameters (packagerQueueUrl, athenaUserDatabase, quiltWebHost, icebergDatabase)
|
|
17
16
|
* are resolved at deployment time and passed directly to the container, eliminating runtime CloudFormation calls.
|
|
18
17
|
*/
|
|
19
18
|
export interface FargateServiceProps {
|
|
20
19
|
readonly vpc: ec2.IVpc;
|
|
21
|
-
readonly bucket: s3.IBucket;
|
|
22
20
|
readonly config: ProfileConfig;
|
|
23
21
|
readonly ecrRepository: ecr.IRepository;
|
|
22
|
+
readonly targetGroup: elbv2.INetworkTargetGroup;
|
|
24
23
|
readonly imageTag?: string;
|
|
25
24
|
readonly stackVersion?: string;
|
|
26
25
|
readonly packagerQueueUrl: string;
|
|
@@ -38,9 +37,9 @@ export interface FargateServiceProps {
|
|
|
38
37
|
}
|
|
39
38
|
export declare class FargateService extends Construct {
|
|
40
39
|
readonly service: ecs.FargateService;
|
|
41
|
-
readonly loadBalancer: elbv2.ApplicationLoadBalancer;
|
|
42
40
|
readonly cluster: ecs.Cluster;
|
|
43
41
|
readonly logGroup: logs.ILogGroup;
|
|
42
|
+
readonly securityGroup: ec2.ISecurityGroup;
|
|
44
43
|
/**
|
|
45
44
|
* Extract secret name from Secrets Manager ARN
|
|
46
45
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fargate-service.d.ts","sourceRoot":"","sources":["../../lib/fargate-service.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,GAAG,MAAM,qBAAqB,CAAC;AAC3C,OAAO,KAAK,GAAG,MAAM,qBAAqB,CAAC;AAC3C,OAAO,KAAK,GAAG,MAAM,qBAAqB,CAAC;AAC3C,OAAO,KAAK,KAAK,MAAM,wCAAwC,CAAC;AAEhE,OAAO,KAAK,IAAI,MAAM,sBAAsB,CAAC;AAC7C,OAAO,
|
|
1
|
+
{"version":3,"file":"fargate-service.d.ts","sourceRoot":"","sources":["../../lib/fargate-service.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,GAAG,MAAM,qBAAqB,CAAC;AAC3C,OAAO,KAAK,GAAG,MAAM,qBAAqB,CAAC;AAC3C,OAAO,KAAK,GAAG,MAAM,qBAAqB,CAAC;AAC3C,OAAO,KAAK,KAAK,MAAM,wCAAwC,CAAC;AAEhE,OAAO,KAAK,IAAI,MAAM,sBAAsB,CAAC;AAC7C,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AACvC,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAE/C;;;;;;;;;GASG;AACH,MAAM,WAAW,mBAAmB;IAChC,QAAQ,CAAC,GAAG,EAAE,GAAG,CAAC,IAAI,CAAC;IACvB,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAC;IAC/B,QAAQ,CAAC,aAAa,EAAE,GAAG,CAAC,WAAW,CAAC;IACxC,QAAQ,CAAC,WAAW,EAAE,KAAK,CAAC,mBAAmB,CAAC;IAChD,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC;IAI/B,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;IAClC,QAAQ,CAAC,kBAAkB,EAAE,MAAM,CAAC;IACpC,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IAGjC,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IACnC,QAAQ,CAAC,mBAAmB,CAAC,EAAE,MAAM,CAAC;IACtC,QAAQ,CAAC,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAGtC,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC;IAG/B,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IACjC,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;CAC9B;AAED,qBAAa,cAAe,SAAQ,SAAS;IACzC,SAAgB,OAAO,EAAE,GAAG,CAAC,cAAc,CAAC;IAC5C,SAAgB,OAAO,EAAE,GAAG,CAAC,OAAO,CAAC;IACrC,SAAgB,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC;IACzC,SAAgB,aAAa,EAAE,GAAG,CAAC,cAAc,CAAC;IAElD;;;;;;;;;OASG;IACH,OAAO,CAAC,iBAAiB;gBAoBb,KAAK,EAAE,SAAS,EAAE,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,mBAAmB;CA4UvE"}
|
|
@@ -37,10 +37,8 @@ exports.FargateService = void 0;
|
|
|
37
37
|
const cdk = __importStar(require("aws-cdk-lib"));
|
|
38
38
|
const ec2 = __importStar(require("aws-cdk-lib/aws-ec2"));
|
|
39
39
|
const ecs = __importStar(require("aws-cdk-lib/aws-ecs"));
|
|
40
|
-
const elbv2 = __importStar(require("aws-cdk-lib/aws-elasticloadbalancingv2"));
|
|
41
40
|
const iam = __importStar(require("aws-cdk-lib/aws-iam"));
|
|
42
41
|
const logs = __importStar(require("aws-cdk-lib/aws-logs"));
|
|
43
|
-
const s3 = __importStar(require("aws-cdk-lib/aws-s3"));
|
|
44
42
|
const constructs_1 = require("constructs");
|
|
45
43
|
class FargateService extends constructs_1.Construct {
|
|
46
44
|
/**
|
|
@@ -248,6 +246,7 @@ class FargateService extends constructs_1.Construct {
|
|
|
248
246
|
// AWS Configuration
|
|
249
247
|
AWS_REGION: region,
|
|
250
248
|
AWS_DEFAULT_REGION: region,
|
|
249
|
+
PORT: "8080",
|
|
251
250
|
// Quilt Services (v0.8.0+ service-specific - NO MORE STACK ARN!)
|
|
252
251
|
QUILT_WEB_HOST: props.quiltWebHost,
|
|
253
252
|
ATHENA_USER_DATABASE: props.athenaUserDatabase,
|
|
@@ -264,7 +263,7 @@ class FargateService extends constructs_1.Construct {
|
|
|
264
263
|
// Security Configuration (verification can be disabled for dev/test)
|
|
265
264
|
ENABLE_WEBHOOK_VERIFICATION: String(config.security?.enableVerification !== false),
|
|
266
265
|
// Application Configuration
|
|
267
|
-
|
|
266
|
+
APP_ENV: "production",
|
|
268
267
|
LOG_LEVEL: props.logLevel || config.logging?.level || "INFO",
|
|
269
268
|
};
|
|
270
269
|
// Add container with configured environment
|
|
@@ -276,7 +275,7 @@ class FargateService extends constructs_1.Construct {
|
|
|
276
275
|
}),
|
|
277
276
|
environment: environmentVars,
|
|
278
277
|
healthCheck: {
|
|
279
|
-
command: ["CMD-SHELL", "curl -f http://localhost:
|
|
278
|
+
command: ["CMD-SHELL", "curl -f http://localhost:8080/health || exit 1"],
|
|
280
279
|
interval: cdk.Duration.seconds(30),
|
|
281
280
|
timeout: cdk.Duration.seconds(10),
|
|
282
281
|
retries: 3,
|
|
@@ -285,66 +284,26 @@ class FargateService extends constructs_1.Construct {
|
|
|
285
284
|
});
|
|
286
285
|
// Map container port
|
|
287
286
|
container.addPortMappings({
|
|
288
|
-
containerPort:
|
|
287
|
+
containerPort: 8080,
|
|
289
288
|
protocol: ecs.Protocol.TCP,
|
|
290
289
|
});
|
|
291
|
-
// Create S3 bucket for ALB access logs
|
|
292
|
-
const albLogsBucket = new s3.Bucket(this, "AlbLogsBucket", {
|
|
293
|
-
bucketName: `benchling-webhook-alb-logs-${account}`,
|
|
294
|
-
removalPolicy: cdk.RemovalPolicy.DESTROY,
|
|
295
|
-
autoDeleteObjects: true,
|
|
296
|
-
lifecycleRules: [
|
|
297
|
-
{
|
|
298
|
-
expiration: cdk.Duration.days(7),
|
|
299
|
-
},
|
|
300
|
-
],
|
|
301
|
-
});
|
|
302
|
-
// Create Application Load Balancer
|
|
303
|
-
this.loadBalancer = new elbv2.ApplicationLoadBalancer(this, "ALB", {
|
|
304
|
-
vpc: props.vpc,
|
|
305
|
-
internetFacing: true,
|
|
306
|
-
loadBalancerName: "benchling-webhook-alb",
|
|
307
|
-
});
|
|
308
|
-
// Enable ALB access logs
|
|
309
|
-
this.loadBalancer.logAccessLogs(albLogsBucket, "alb-access-logs");
|
|
310
|
-
// Create ALB Target Group
|
|
311
|
-
const targetGroup = new elbv2.ApplicationTargetGroup(this, "TargetGroup", {
|
|
312
|
-
vpc: props.vpc,
|
|
313
|
-
port: 5000,
|
|
314
|
-
protocol: elbv2.ApplicationProtocol.HTTP,
|
|
315
|
-
targetType: elbv2.TargetType.IP,
|
|
316
|
-
healthCheck: {
|
|
317
|
-
path: "/health/ready",
|
|
318
|
-
interval: cdk.Duration.seconds(30),
|
|
319
|
-
timeout: cdk.Duration.seconds(10),
|
|
320
|
-
healthyThresholdCount: 2,
|
|
321
|
-
unhealthyThresholdCount: 3,
|
|
322
|
-
healthyHttpCodes: "200",
|
|
323
|
-
},
|
|
324
|
-
deregistrationDelay: cdk.Duration.seconds(30),
|
|
325
|
-
});
|
|
326
|
-
// Add HTTP listener
|
|
327
|
-
this.loadBalancer.addListener("HttpListener", {
|
|
328
|
-
port: 80,
|
|
329
|
-
protocol: elbv2.ApplicationProtocol.HTTP,
|
|
330
|
-
defaultAction: elbv2.ListenerAction.forward([targetGroup]),
|
|
331
|
-
});
|
|
332
290
|
// Create Security Group for Fargate tasks
|
|
333
|
-
|
|
291
|
+
this.securityGroup = new ec2.SecurityGroup(this, "FargateSecurityGroup", {
|
|
334
292
|
vpc: props.vpc,
|
|
335
293
|
description: "Security group for Benchling webhook Fargate tasks",
|
|
336
294
|
allowAllOutbound: true,
|
|
337
295
|
});
|
|
338
|
-
// Allow
|
|
339
|
-
|
|
340
|
-
// Create Fargate Service
|
|
296
|
+
// Allow traffic from NLB to reach the service on 8080
|
|
297
|
+
this.securityGroup.addIngressRule(ec2.Peer.ipv4(props.vpc.vpcCidrBlock), ec2.Port.tcp(8080), "Allow VPC traffic to service");
|
|
298
|
+
// Create Fargate Service with NLB target group integration
|
|
299
|
+
// Replaced Cloud Map with NLB for reliable health checks
|
|
341
300
|
this.service = new ecs.FargateService(this, "Service", {
|
|
342
301
|
cluster: this.cluster,
|
|
343
302
|
taskDefinition: taskDefinition,
|
|
344
303
|
desiredCount: 2,
|
|
345
304
|
serviceName: "benchling-webhook-service",
|
|
346
|
-
assignPublicIp:
|
|
347
|
-
securityGroups: [
|
|
305
|
+
assignPublicIp: false,
|
|
306
|
+
securityGroups: [this.securityGroup],
|
|
348
307
|
healthCheckGracePeriod: cdk.Duration.seconds(60),
|
|
349
308
|
minHealthyPercent: 50,
|
|
350
309
|
maxHealthyPercent: 200,
|
|
@@ -352,8 +311,9 @@ class FargateService extends constructs_1.Construct {
|
|
|
352
311
|
rollback: true,
|
|
353
312
|
},
|
|
354
313
|
});
|
|
355
|
-
//
|
|
356
|
-
|
|
314
|
+
// Register ECS service with NLB target group
|
|
315
|
+
// The NLB will perform HTTP health checks on /health endpoint
|
|
316
|
+
this.service.attachToNetworkTargetGroup(props.targetGroup);
|
|
357
317
|
// Configure auto-scaling
|
|
358
318
|
const scaling = this.service.autoScaleTaskCount({
|
|
359
319
|
minCapacity: 2,
|
|
@@ -372,11 +332,6 @@ class FargateService extends constructs_1.Construct {
|
|
|
372
332
|
scaleOutCooldown: cdk.Duration.seconds(60),
|
|
373
333
|
});
|
|
374
334
|
// Outputs
|
|
375
|
-
new cdk.CfnOutput(this, "LoadBalancerDNS", {
|
|
376
|
-
value: this.loadBalancer.loadBalancerDnsName,
|
|
377
|
-
description: "Load Balancer DNS Name",
|
|
378
|
-
exportName: "BenchlingWebhookALBDNS",
|
|
379
|
-
});
|
|
380
335
|
new cdk.CfnOutput(this, "ServiceName", {
|
|
381
336
|
value: this.service.serviceName,
|
|
382
337
|
description: "ECS Service Name",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fargate-service.js","sourceRoot":"","sources":["../../lib/fargate-service.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,iDAAmC;AACnC,yDAA2C;AAE3C,yDAA2C;
|
|
1
|
+
{"version":3,"file":"fargate-service.js","sourceRoot":"","sources":["../../lib/fargate-service.ts"],"names":[],"mappings":"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"}
|
package/dist/lib/index.d.ts
CHANGED
|
@@ -26,6 +26,6 @@
|
|
|
26
26
|
*/
|
|
27
27
|
export { BenchlingWebhookStack, type BenchlingWebhookStackProps } from "./benchling-webhook-stack";
|
|
28
28
|
export { FargateService } from "./fargate-service";
|
|
29
|
-
export {
|
|
29
|
+
export { RestApiGateway } from "./rest-api-gateway";
|
|
30
30
|
export { EcrRepository } from "./ecr-repository";
|
|
31
31
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/lib/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../lib/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAEH,OAAO,EAAE,qBAAqB,EAAE,KAAK,0BAA0B,EAAE,MAAM,2BAA2B,CAAC;AACnG,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../lib/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAEH,OAAO,EAAE,qBAAqB,EAAE,KAAK,0BAA0B,EAAE,MAAM,2BAA2B,CAAC;AACnG,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC"}
|
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
|
package/dist/lib/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../lib/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;;;AAEH,qEAAmG;AAA1F,gIAAA,qBAAqB,OAAA;AAC9B,qDAAmD;AAA1C,iHAAA,cAAc,OAAA;AACvB,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../lib/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;;;AAEH,qEAAmG;AAA1F,gIAAA,qBAAqB,OAAA;AAC9B,qDAAmD;AAA1C,iHAAA,cAAc,OAAA;AACvB,uDAAoD;AAA3C,kHAAA,cAAc,OAAA;AACvB,mDAAiD;AAAxC,+GAAA,aAAa,OAAA"}
|