@quiltdata/benchling-webhook 0.5.4 → 0.6.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +273 -10
- package/dist/bin/benchling-webhook.d.ts +1 -1
- package/dist/bin/benchling-webhook.d.ts.map +1 -1
- package/dist/bin/benchling-webhook.js +8 -22
- package/dist/bin/benchling-webhook.js.map +1 -1
- package/dist/bin/cdk-dev.js +59 -3
- package/dist/bin/cli.js +16 -6
- package/dist/bin/cli.js.map +1 -1
- package/dist/bin/commands/deploy.d.ts +6 -2
- package/dist/bin/commands/deploy.d.ts.map +1 -1
- package/dist/bin/commands/deploy.js +149 -90
- package/dist/bin/commands/deploy.js.map +1 -1
- package/dist/bin/config-profiles.d.ts +59 -0
- package/dist/bin/config-profiles.d.ts.map +1 -0
- package/dist/bin/config-profiles.js +272 -0
- package/dist/bin/config-profiles.js.map +1 -0
- package/dist/bin/create-secret.d.ts +25 -0
- package/dist/bin/create-secret.d.ts.map +1 -0
- package/dist/bin/create-secret.js +239 -0
- package/dist/bin/create-secret.js.map +1 -0
- package/dist/lib/benchling-auth-validator.d.ts +65 -0
- package/dist/lib/benchling-auth-validator.d.ts.map +1 -0
- package/dist/lib/benchling-auth-validator.js +213 -0
- package/dist/lib/benchling-auth-validator.js.map +1 -0
- package/dist/lib/benchling-webhook-stack.d.ts +13 -10
- package/dist/lib/benchling-webhook-stack.d.ts.map +1 -1
- package/dist/lib/benchling-webhook-stack.js +25 -69
- package/dist/lib/benchling-webhook-stack.js.map +1 -1
- package/dist/lib/config-logger.d.ts +191 -0
- package/dist/lib/config-logger.d.ts.map +1 -0
- package/dist/lib/config-logger.js +372 -0
- package/dist/lib/config-logger.js.map +1 -0
- package/dist/lib/configuration-saver.d.ts +75 -0
- package/dist/lib/configuration-saver.d.ts.map +1 -0
- package/dist/lib/configuration-saver.js +145 -0
- package/dist/lib/configuration-saver.js.map +1 -0
- package/dist/lib/configuration-validator.d.ts +63 -0
- package/dist/lib/configuration-validator.d.ts.map +1 -0
- package/dist/lib/configuration-validator.js +136 -0
- package/dist/lib/configuration-validator.js.map +1 -0
- package/dist/lib/configuration-wizard.d.ts +52 -0
- package/dist/lib/configuration-wizard.d.ts.map +1 -0
- package/dist/lib/configuration-wizard.js +193 -0
- package/dist/lib/configuration-wizard.js.map +1 -0
- package/dist/lib/fargate-service.d.ts +18 -9
- package/dist/lib/fargate-service.d.ts.map +1 -1
- package/dist/lib/fargate-service.js +177 -61
- package/dist/lib/fargate-service.js.map +1 -1
- package/dist/lib/quilt-config-resolver.d.ts +53 -0
- package/dist/lib/quilt-config-resolver.d.ts.map +1 -0
- package/dist/lib/quilt-config-resolver.js +100 -0
- package/dist/lib/quilt-config-resolver.js.map +1 -0
- package/dist/lib/s3-bucket-validator.d.ts +76 -0
- package/dist/lib/s3-bucket-validator.d.ts.map +1 -0
- package/dist/lib/s3-bucket-validator.js +237 -0
- package/dist/lib/s3-bucket-validator.js.map +1 -0
- package/dist/lib/types/config.d.ts +398 -0
- package/dist/lib/types/config.d.ts.map +1 -0
- package/dist/lib/types/config.js +11 -0
- package/dist/lib/types/config.js.map +1 -0
- package/dist/lib/utils/config-loader.d.ts +48 -0
- package/dist/lib/utils/config-loader.d.ts.map +1 -0
- package/dist/lib/utils/config-loader.js +109 -0
- package/dist/lib/utils/config-loader.js.map +1 -0
- package/dist/lib/utils/config-resolver.d.ts +138 -0
- package/dist/lib/utils/config-resolver.d.ts.map +1 -0
- package/dist/lib/utils/config-resolver.js +272 -0
- package/dist/lib/utils/config-resolver.js.map +1 -0
- package/dist/lib/utils/config.d.ts +50 -0
- package/dist/lib/utils/config.d.ts.map +1 -1
- package/dist/lib/utils/config.js +86 -0
- package/dist/lib/utils/config.js.map +1 -1
- package/dist/lib/utils/secrets.d.ts +174 -0
- package/dist/lib/utils/secrets.d.ts.map +1 -0
- package/dist/lib/utils/secrets.js +351 -0
- package/dist/lib/utils/secrets.js.map +1 -0
- package/dist/lib/xdg-cli-wrapper.d.ts +113 -0
- package/dist/lib/xdg-cli-wrapper.d.ts.map +1 -0
- package/dist/lib/xdg-cli-wrapper.js +288 -0
- package/dist/lib/xdg-cli-wrapper.js.map +1 -0
- package/dist/lib/xdg-config.d.ts +187 -0
- package/dist/lib/xdg-config.d.ts.map +1 -0
- package/dist/lib/xdg-config.js +562 -0
- package/dist/lib/xdg-config.js.map +1 -0
- package/dist/package.json +33 -25
- package/dist/scripts/config-health-check.d.ts +78 -0
- package/dist/scripts/config-health-check.d.ts.map +1 -0
- package/dist/scripts/config-health-check.js +559 -0
- package/dist/scripts/config-health-check.js.map +1 -0
- package/dist/scripts/infer-quilt-config.d.ts +50 -0
- package/dist/scripts/infer-quilt-config.d.ts.map +1 -0
- package/dist/scripts/infer-quilt-config.js +353 -0
- package/dist/scripts/infer-quilt-config.js.map +1 -0
- package/dist/scripts/install-wizard.d.ts +34 -0
- package/dist/scripts/install-wizard.d.ts.map +1 -0
- package/dist/scripts/install-wizard.js +719 -0
- package/dist/scripts/install-wizard.js.map +1 -0
- package/dist/scripts/sync-secrets.d.ts +63 -0
- package/dist/scripts/sync-secrets.d.ts.map +1 -0
- package/dist/scripts/sync-secrets.js +424 -0
- package/dist/scripts/sync-secrets.js.map +1 -0
- package/env.template +60 -47
- package/package.json +33 -25
|
@@ -74,22 +74,98 @@ class FargateService extends constructs_1.Construct {
|
|
|
74
74
|
],
|
|
75
75
|
});
|
|
76
76
|
// Note: ECR pull permissions will be automatically granted by fromEcrRepository()
|
|
77
|
+
// Determine which mode we're using
|
|
78
|
+
const useSecretsOnlyMode = !!(props.quiltStackArn && props.benchlingSecret);
|
|
77
79
|
// Create IAM Task Role (for the container to access AWS services)
|
|
78
80
|
const taskRole = new iam.Role(this, "TaskRole", {
|
|
79
81
|
assumedBy: new iam.ServicePrincipal("ecs-tasks.amazonaws.com"),
|
|
80
82
|
});
|
|
81
|
-
//
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
83
|
+
// In secrets-only mode, grant permissions for CloudFormation and Secrets Manager
|
|
84
|
+
if (useSecretsOnlyMode) {
|
|
85
|
+
// Grant CloudFormation read access (to query stack outputs)
|
|
86
|
+
taskRole.addToPolicy(new iam.PolicyStatement({
|
|
87
|
+
actions: [
|
|
88
|
+
"cloudformation:DescribeStacks",
|
|
89
|
+
"cloudformation:DescribeStackResources",
|
|
90
|
+
],
|
|
91
|
+
resources: [props.quiltStackArn],
|
|
92
|
+
}));
|
|
93
|
+
// Grant Secrets Manager read access (to fetch Benchling credentials)
|
|
94
|
+
// Allow both name and ARN formats
|
|
95
|
+
taskRole.addToPolicy(new iam.PolicyStatement({
|
|
96
|
+
actions: [
|
|
97
|
+
"secretsmanager:GetSecretValue",
|
|
98
|
+
"secretsmanager:DescribeSecret",
|
|
99
|
+
],
|
|
100
|
+
resources: [
|
|
101
|
+
// Support both secret name and ARN
|
|
102
|
+
`arn:aws:secretsmanager:${props.region}:${props.account}:secret:${props.benchlingSecret}*`,
|
|
103
|
+
],
|
|
104
|
+
}));
|
|
105
|
+
// Grant wildcard S3 access (bucket name will be resolved at runtime)
|
|
106
|
+
taskRole.addToPolicy(new iam.PolicyStatement({
|
|
107
|
+
actions: [
|
|
108
|
+
"s3:GetObject",
|
|
109
|
+
"s3:PutObject",
|
|
110
|
+
"s3:ListBucket",
|
|
111
|
+
],
|
|
112
|
+
resources: [
|
|
113
|
+
"arn:aws:s3:::*",
|
|
114
|
+
],
|
|
115
|
+
}));
|
|
116
|
+
// Grant wildcard SQS access (queue ARN will be resolved at runtime)
|
|
117
|
+
taskRole.addToPolicy(new iam.PolicyStatement({
|
|
118
|
+
actions: [
|
|
119
|
+
"sqs:SendMessage",
|
|
120
|
+
"sqs:GetQueueUrl",
|
|
121
|
+
"sqs:GetQueueAttributes",
|
|
122
|
+
],
|
|
123
|
+
resources: [
|
|
124
|
+
`arn:aws:sqs:${props.region}:${props.account}:*`,
|
|
125
|
+
],
|
|
126
|
+
}));
|
|
127
|
+
// Grant wildcard Glue access (database name will be resolved at runtime)
|
|
128
|
+
taskRole.addToPolicy(new iam.PolicyStatement({
|
|
129
|
+
actions: [
|
|
130
|
+
"glue:GetDatabase",
|
|
131
|
+
"glue:GetTable",
|
|
132
|
+
"glue:GetPartitions",
|
|
133
|
+
],
|
|
134
|
+
resources: [
|
|
135
|
+
`arn:aws:glue:${props.region}:${props.account}:catalog`,
|
|
136
|
+
`arn:aws:glue:${props.region}:${props.account}:database/*`,
|
|
137
|
+
`arn:aws:glue:${props.region}:${props.account}:table/*`,
|
|
138
|
+
],
|
|
139
|
+
}));
|
|
140
|
+
}
|
|
141
|
+
else {
|
|
142
|
+
// Legacy mode: Grant specific resource access
|
|
143
|
+
// Grant S3 bucket access to task role
|
|
144
|
+
props.bucket.grantReadWrite(taskRole);
|
|
145
|
+
// Grant SQS access to task role using the actual ARN
|
|
146
|
+
taskRole.addToPolicy(new iam.PolicyStatement({
|
|
147
|
+
actions: [
|
|
148
|
+
"sqs:SendMessage",
|
|
149
|
+
"sqs:GetQueueUrl",
|
|
150
|
+
"sqs:GetQueueAttributes",
|
|
151
|
+
],
|
|
152
|
+
resources: [props.queueArn],
|
|
153
|
+
}));
|
|
154
|
+
// Grant Glue Data Catalog access (required for Athena queries)
|
|
155
|
+
taskRole.addToPolicy(new iam.PolicyStatement({
|
|
156
|
+
actions: [
|
|
157
|
+
"glue:GetDatabase",
|
|
158
|
+
"glue:GetTable",
|
|
159
|
+
"glue:GetPartitions",
|
|
160
|
+
],
|
|
161
|
+
resources: [
|
|
162
|
+
`arn:aws:glue:${props.region}:${props.account}:catalog`,
|
|
163
|
+
`arn:aws:glue:${props.region}:${props.account}:database/${props.quiltDatabase}`,
|
|
164
|
+
`arn:aws:glue:${props.region}:${props.account}:table/${props.quiltDatabase}/*`,
|
|
165
|
+
],
|
|
166
|
+
}));
|
|
167
|
+
}
|
|
168
|
+
// Grant Athena access to task role for package querying (both modes)
|
|
93
169
|
taskRole.addToPolicy(new iam.PolicyStatement({
|
|
94
170
|
actions: [
|
|
95
171
|
"athena:StartQueryExecution",
|
|
@@ -102,21 +178,7 @@ class FargateService extends constructs_1.Construct {
|
|
|
102
178
|
`arn:aws:athena:${props.region}:${props.account}:workgroup/primary`,
|
|
103
179
|
],
|
|
104
180
|
}));
|
|
105
|
-
// Grant
|
|
106
|
-
taskRole.addToPolicy(new iam.PolicyStatement({
|
|
107
|
-
actions: [
|
|
108
|
-
"glue:GetDatabase",
|
|
109
|
-
"glue:GetTable",
|
|
110
|
-
"glue:GetPartitions",
|
|
111
|
-
],
|
|
112
|
-
resources: [
|
|
113
|
-
`arn:aws:glue:${props.region}:${props.account}:catalog`,
|
|
114
|
-
`arn:aws:glue:${props.region}:${props.account}:database/${props.quiltDatabase}`,
|
|
115
|
-
`arn:aws:glue:${props.region}:${props.account}:table/${props.quiltDatabase}/*`,
|
|
116
|
-
],
|
|
117
|
-
}));
|
|
118
|
-
// Grant S3 access for Athena query results
|
|
119
|
-
// Athena needs to write query results to an S3 bucket
|
|
181
|
+
// Grant S3 access for Athena query results (both modes)
|
|
120
182
|
const athenaResultsBucketArn = `arn:aws:s3:::aws-athena-query-results-${props.account}-${props.region}`;
|
|
121
183
|
taskRole.addToPolicy(new iam.PolicyStatement({
|
|
122
184
|
actions: [
|
|
@@ -130,18 +192,46 @@ class FargateService extends constructs_1.Construct {
|
|
|
130
192
|
`${athenaResultsBucketArn}/*`,
|
|
131
193
|
],
|
|
132
194
|
}));
|
|
133
|
-
//
|
|
134
|
-
//
|
|
135
|
-
const
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
195
|
+
// Determine which parameter mode to use for legacy Benchling secrets
|
|
196
|
+
// Check if the benchlingSecrets prop is provided and non-empty
|
|
197
|
+
const useNewParam = !useSecretsOnlyMode && props.benchlingSecrets !== undefined &&
|
|
198
|
+
props.benchlingSecrets !== null &&
|
|
199
|
+
props.benchlingSecrets.trim() !== "";
|
|
200
|
+
// In legacy mode, create Secrets Manager secret for Benchling credentials
|
|
201
|
+
let benchlingSecret = undefined;
|
|
202
|
+
if (!useSecretsOnlyMode) {
|
|
203
|
+
// Legacy mode: Create or reference Secrets Manager secret
|
|
204
|
+
let secretValue;
|
|
205
|
+
if (useNewParam) {
|
|
206
|
+
// New approach: Use consolidated secrets JSON
|
|
207
|
+
secretValue = props.benchlingSecrets;
|
|
208
|
+
}
|
|
209
|
+
else {
|
|
210
|
+
// Old approach: Build JSON from individual parameters
|
|
211
|
+
const secretData = {
|
|
212
|
+
client_id: props.benchlingClientId,
|
|
213
|
+
client_secret: props.benchlingClientSecret,
|
|
214
|
+
tenant: props.benchlingTenant,
|
|
215
|
+
};
|
|
216
|
+
// Include app_definition_id if provided
|
|
217
|
+
if (props.benchlingAppDefinitionId) {
|
|
218
|
+
secretData.app_definition_id = props.benchlingAppDefinitionId;
|
|
219
|
+
}
|
|
220
|
+
secretValue = JSON.stringify(secretData);
|
|
221
|
+
}
|
|
222
|
+
// Create Secrets Manager secret for Benchling credentials
|
|
223
|
+
// Note: We still use unsafePlainText() because CloudFormation parameters are strings.
|
|
224
|
+
// The actual secret values are protected by noEcho in the parameters.
|
|
225
|
+
benchlingSecret = new secretsmanager.Secret(this, "BenchlingCredentials", {
|
|
226
|
+
secretName: "benchling-webhook/credentials",
|
|
227
|
+
description: "Benchling API credentials for webhook processor",
|
|
228
|
+
secretStringValue: cdk.SecretValue.unsafePlainText(secretValue),
|
|
229
|
+
});
|
|
230
|
+
// Grant read access to secrets
|
|
231
|
+
benchlingSecret.grantRead(taskRole);
|
|
232
|
+
}
|
|
233
|
+
// In secrets-only mode, no CDK-created secret is needed
|
|
234
|
+
// The container will read the secret directly using the benchlingSecret parameter
|
|
145
235
|
// Create Fargate Task Definition
|
|
146
236
|
const taskDefinition = new ecs.FargateTaskDefinition(this, "TaskDefinition", {
|
|
147
237
|
memoryLimitMiB: 2048,
|
|
@@ -150,34 +240,60 @@ class FargateService extends constructs_1.Construct {
|
|
|
150
240
|
taskRole: taskRole,
|
|
151
241
|
family: "benchling-webhook-task",
|
|
152
242
|
});
|
|
153
|
-
//
|
|
243
|
+
// Build environment variables based on mode
|
|
244
|
+
const environmentVars = {
|
|
245
|
+
AWS_REGION: props.region,
|
|
246
|
+
AWS_DEFAULT_REGION: props.region,
|
|
247
|
+
FLASK_ENV: "production",
|
|
248
|
+
LOG_LEVEL: props.logLevel || "INFO",
|
|
249
|
+
ENABLE_WEBHOOK_VERIFICATION: props.enableWebhookVerification || "true",
|
|
250
|
+
BENCHLING_WEBHOOK_VERSION: props.stackVersion || props.imageTag || "latest",
|
|
251
|
+
};
|
|
252
|
+
if (useSecretsOnlyMode) {
|
|
253
|
+
// Secrets-only mode: Only pass 2 environment variables
|
|
254
|
+
// Container will query CloudFormation and Secrets Manager for everything else
|
|
255
|
+
environmentVars.QuiltStackARN = props.quiltStackArn;
|
|
256
|
+
environmentVars.BenchlingSecret = props.benchlingSecret;
|
|
257
|
+
}
|
|
258
|
+
else {
|
|
259
|
+
// Legacy mode: Pass all configuration as environment variables
|
|
260
|
+
environmentVars.QUILT_USER_BUCKET = props.bucket.bucketName;
|
|
261
|
+
environmentVars.QUEUE_ARN = props.queueArn;
|
|
262
|
+
environmentVars.PKG_PREFIX = props.prefix;
|
|
263
|
+
environmentVars.PKG_KEY = props.pkgKey;
|
|
264
|
+
environmentVars.QUILT_CATALOG = props.quiltCatalog;
|
|
265
|
+
environmentVars.QUILT_DATABASE = props.quiltDatabase;
|
|
266
|
+
environmentVars.WEBHOOK_ALLOW_LIST = props.webhookAllowList;
|
|
267
|
+
// Add Benchling configuration based on parameter mode
|
|
268
|
+
if (useNewParam) {
|
|
269
|
+
// New mode: Single consolidated secrets parameter
|
|
270
|
+
environmentVars.BENCHLING_SECRETS = props.benchlingSecrets;
|
|
271
|
+
}
|
|
272
|
+
else {
|
|
273
|
+
// Old mode: Individual tenant parameter
|
|
274
|
+
environmentVars.BENCHLING_TENANT = props.benchlingTenant;
|
|
275
|
+
}
|
|
276
|
+
}
|
|
277
|
+
// Build secrets configuration (only for legacy mode with individual secrets)
|
|
278
|
+
let secretsConfig = undefined;
|
|
279
|
+
if (!useSecretsOnlyMode && !useNewParam && benchlingSecret) {
|
|
280
|
+
// Old mode: Individual secrets from Secrets Manager
|
|
281
|
+
secretsConfig = {
|
|
282
|
+
BENCHLING_CLIENT_ID: ecs.Secret.fromSecretsManager(benchlingSecret, "client_id"),
|
|
283
|
+
BENCHLING_CLIENT_SECRET: ecs.Secret.fromSecretsManager(benchlingSecret, "client_secret"),
|
|
284
|
+
BENCHLING_APP_DEFINITION_ID: ecs.Secret.fromSecretsManager(benchlingSecret, "app_definition_id"),
|
|
285
|
+
};
|
|
286
|
+
}
|
|
287
|
+
// In secrets-only mode, no ECS secrets are needed (container reads from Secrets Manager directly)
|
|
288
|
+
// Add container with configured environment
|
|
154
289
|
const container = taskDefinition.addContainer("BenchlingWebhookContainer", {
|
|
155
290
|
image: ecs.ContainerImage.fromEcrRepository(props.ecrRepository, props.imageTag || "latest"),
|
|
156
291
|
logging: ecs.LogDriver.awsLogs({
|
|
157
292
|
streamPrefix: "benchling-webhook",
|
|
158
293
|
logGroup: this.logGroup,
|
|
159
294
|
}),
|
|
160
|
-
environment:
|
|
161
|
-
|
|
162
|
-
QUEUE_ARN: props.queueArn,
|
|
163
|
-
PKG_PREFIX: props.prefix,
|
|
164
|
-
PKG_KEY: props.pkgKey,
|
|
165
|
-
BENCHLING_TENANT: props.benchlingTenant,
|
|
166
|
-
QUILT_CATALOG: props.quiltCatalog,
|
|
167
|
-
QUILT_DATABASE: props.quiltDatabase,
|
|
168
|
-
WEBHOOK_ALLOW_LIST: props.webhookAllowList,
|
|
169
|
-
AWS_REGION: props.region,
|
|
170
|
-
AWS_DEFAULT_REGION: props.region,
|
|
171
|
-
FLASK_ENV: "production",
|
|
172
|
-
LOG_LEVEL: props.logLevel || "INFO",
|
|
173
|
-
ENABLE_WEBHOOK_VERIFICATION: props.enableWebhookVerification || "true",
|
|
174
|
-
BENCHLING_WEBHOOK_VERSION: props.stackVersion || props.imageTag || "latest",
|
|
175
|
-
},
|
|
176
|
-
secrets: {
|
|
177
|
-
BENCHLING_CLIENT_ID: ecs.Secret.fromSecretsManager(benchlingSecret, "client_id"),
|
|
178
|
-
BENCHLING_CLIENT_SECRET: ecs.Secret.fromSecretsManager(benchlingSecret, "client_secret"),
|
|
179
|
-
BENCHLING_APP_DEFINITION_ID: ecs.Secret.fromSecretsManager(benchlingSecret, "app_definition_id"),
|
|
180
|
-
},
|
|
295
|
+
environment: environmentVars,
|
|
296
|
+
secrets: secretsConfig,
|
|
181
297
|
healthCheck: {
|
|
182
298
|
command: ["CMD-SHELL", "curl -f http://localhost:5000/health || exit 1"],
|
|
183
299
|
interval: cdk.Duration.seconds(30),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fargate-service.js","sourceRoot":"","sources":["../../lib/fargate-service.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"fargate-service.js","sourceRoot":"","sources":["../../lib/fargate-service.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Quilt Configuration Resolver
|
|
3
|
+
*
|
|
4
|
+
* Automatically infers Quilt configuration from the quilt3 CLI.
|
|
5
|
+
* Extracts catalog URL, S3 bucket, and region information.
|
|
6
|
+
*
|
|
7
|
+
* @module quilt-config-resolver
|
|
8
|
+
*/
|
|
9
|
+
/**
|
|
10
|
+
* Quilt configuration structure
|
|
11
|
+
*/
|
|
12
|
+
export interface QuiltConfig {
|
|
13
|
+
catalogUrl?: string;
|
|
14
|
+
userBucket?: string;
|
|
15
|
+
defaultRegion?: string;
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* Quilt Configuration Resolver
|
|
19
|
+
*
|
|
20
|
+
* Resolves Quilt configuration from the quilt3 CLI or user overrides.
|
|
21
|
+
*/
|
|
22
|
+
export declare class QuiltConfigResolver {
|
|
23
|
+
/**
|
|
24
|
+
* Resolves Quilt configuration with optional manual overrides
|
|
25
|
+
*
|
|
26
|
+
* @param manualConfig - Optional manual configuration overrides
|
|
27
|
+
* @returns Resolved Quilt configuration
|
|
28
|
+
*/
|
|
29
|
+
static resolve(manualConfig?: Partial<QuiltConfig>): Promise<QuiltConfig>;
|
|
30
|
+
/**
|
|
31
|
+
* Resolves configuration from quilt3 CLI
|
|
32
|
+
*
|
|
33
|
+
* @returns Resolved Quilt configuration
|
|
34
|
+
* @throws {Error} If quilt3 is not installed or configured
|
|
35
|
+
*/
|
|
36
|
+
resolveFromQuilt3(): Promise<QuiltConfig>;
|
|
37
|
+
/**
|
|
38
|
+
* Resolves configuration using a custom command
|
|
39
|
+
*
|
|
40
|
+
* @param command - Command to execute
|
|
41
|
+
* @returns Resolved Quilt configuration
|
|
42
|
+
* @throws {Error} If command fails
|
|
43
|
+
*/
|
|
44
|
+
resolveWithCommand(command: string): Promise<QuiltConfig>;
|
|
45
|
+
/**
|
|
46
|
+
* Parses quilt3 config output
|
|
47
|
+
*
|
|
48
|
+
* @param output - Raw output from quilt3 config command
|
|
49
|
+
* @returns Parsed Quilt configuration
|
|
50
|
+
*/
|
|
51
|
+
parseQuilt3Config(output: string): QuiltConfig;
|
|
52
|
+
}
|
|
53
|
+
//# sourceMappingURL=quilt-config-resolver.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"quilt-config-resolver.d.ts","sourceRoot":"","sources":["../../lib/quilt-config-resolver.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAIH;;GAEG;AACH,MAAM,WAAW,WAAW;IACxB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,aAAa,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED;;;;GAIG;AACH,qBAAa,mBAAmB;IAC5B;;;;;OAKG;WACiB,OAAO,CAAC,YAAY,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,GAAG,OAAO,CAAC,WAAW,CAAC;IAoBtF;;;;;OAKG;IACU,iBAAiB,IAAI,OAAO,CAAC,WAAW,CAAC;IAItD;;;;;;OAMG;IACU,kBAAkB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC;IAatE;;;;;OAKG;IACI,iBAAiB,CAAC,MAAM,EAAE,MAAM,GAAG,WAAW;CAuBxD"}
|
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Quilt Configuration Resolver
|
|
4
|
+
*
|
|
5
|
+
* Automatically infers Quilt configuration from the quilt3 CLI.
|
|
6
|
+
* Extracts catalog URL, S3 bucket, and region information.
|
|
7
|
+
*
|
|
8
|
+
* @module quilt-config-resolver
|
|
9
|
+
*/
|
|
10
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
11
|
+
exports.QuiltConfigResolver = void 0;
|
|
12
|
+
const child_process_1 = require("child_process");
|
|
13
|
+
/**
|
|
14
|
+
* Quilt Configuration Resolver
|
|
15
|
+
*
|
|
16
|
+
* Resolves Quilt configuration from the quilt3 CLI or user overrides.
|
|
17
|
+
*/
|
|
18
|
+
class QuiltConfigResolver {
|
|
19
|
+
/**
|
|
20
|
+
* Resolves Quilt configuration with optional manual overrides
|
|
21
|
+
*
|
|
22
|
+
* @param manualConfig - Optional manual configuration overrides
|
|
23
|
+
* @returns Resolved Quilt configuration
|
|
24
|
+
*/
|
|
25
|
+
static async resolve(manualConfig) {
|
|
26
|
+
const resolver = new QuiltConfigResolver();
|
|
27
|
+
// If manual config is provided, return it
|
|
28
|
+
if (manualConfig) {
|
|
29
|
+
return {
|
|
30
|
+
catalogUrl: manualConfig.catalogUrl,
|
|
31
|
+
userBucket: manualConfig.userBucket,
|
|
32
|
+
defaultRegion: manualConfig.defaultRegion,
|
|
33
|
+
};
|
|
34
|
+
}
|
|
35
|
+
// Try to infer from quilt3 CLI
|
|
36
|
+
try {
|
|
37
|
+
return await resolver.resolveFromQuilt3();
|
|
38
|
+
}
|
|
39
|
+
catch (error) {
|
|
40
|
+
throw new Error(`Quilt configuration not found: ${error.message}`);
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
/**
|
|
44
|
+
* Resolves configuration from quilt3 CLI
|
|
45
|
+
*
|
|
46
|
+
* @returns Resolved Quilt configuration
|
|
47
|
+
* @throws {Error} If quilt3 is not installed or configured
|
|
48
|
+
*/
|
|
49
|
+
async resolveFromQuilt3() {
|
|
50
|
+
return this.resolveWithCommand("quilt3 config");
|
|
51
|
+
}
|
|
52
|
+
/**
|
|
53
|
+
* Resolves configuration using a custom command
|
|
54
|
+
*
|
|
55
|
+
* @param command - Command to execute
|
|
56
|
+
* @returns Resolved Quilt configuration
|
|
57
|
+
* @throws {Error} If command fails
|
|
58
|
+
*/
|
|
59
|
+
async resolveWithCommand(command) {
|
|
60
|
+
try {
|
|
61
|
+
const output = (0, child_process_1.execSync)(command, {
|
|
62
|
+
encoding: "utf-8",
|
|
63
|
+
stdio: ["pipe", "pipe", "pipe"],
|
|
64
|
+
}).trim();
|
|
65
|
+
return this.parseQuilt3Config(output);
|
|
66
|
+
}
|
|
67
|
+
catch (error) {
|
|
68
|
+
throw new Error(`Failed to execute command: ${command}. ${error.message}`);
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
/**
|
|
72
|
+
* Parses quilt3 config output
|
|
73
|
+
*
|
|
74
|
+
* @param output - Raw output from quilt3 config command
|
|
75
|
+
* @returns Parsed Quilt configuration
|
|
76
|
+
*/
|
|
77
|
+
parseQuilt3Config(output) {
|
|
78
|
+
if (!output) {
|
|
79
|
+
throw new Error("Empty quilt3 config output");
|
|
80
|
+
}
|
|
81
|
+
// quilt3 config returns the full URL (e.g., https://nightly.quilttest.com)
|
|
82
|
+
// We want just the domain
|
|
83
|
+
let catalogUrl = output.trim();
|
|
84
|
+
// Remove protocol if present
|
|
85
|
+
if (catalogUrl.startsWith("http://") || catalogUrl.startsWith("https://")) {
|
|
86
|
+
try {
|
|
87
|
+
const url = new URL(catalogUrl);
|
|
88
|
+
catalogUrl = url.hostname;
|
|
89
|
+
}
|
|
90
|
+
catch {
|
|
91
|
+
// If URL parsing fails, use as-is
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
return {
|
|
95
|
+
catalogUrl,
|
|
96
|
+
};
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
exports.QuiltConfigResolver = QuiltConfigResolver;
|
|
100
|
+
//# sourceMappingURL=quilt-config-resolver.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"quilt-config-resolver.js","sourceRoot":"","sources":["../../lib/quilt-config-resolver.ts"],"names":[],"mappings":";AAAA;;;;;;;GAOG;;;AAEH,iDAAyC;AAWzC;;;;GAIG;AACH,MAAa,mBAAmB;IAC5B;;;;;OAKG;IACI,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,YAAmC;QAC3D,MAAM,QAAQ,GAAG,IAAI,mBAAmB,EAAE,CAAC;QAE3C,0CAA0C;QAC1C,IAAI,YAAY,EAAE,CAAC;YACf,OAAO;gBACH,UAAU,EAAE,YAAY,CAAC,UAAU;gBACnC,UAAU,EAAE,YAAY,CAAC,UAAU;gBACnC,aAAa,EAAE,YAAY,CAAC,aAAa;aAC5C,CAAC;QACN,CAAC;QAED,+BAA+B;QAC/B,IAAI,CAAC;YACD,OAAO,MAAM,QAAQ,CAAC,iBAAiB,EAAE,CAAC;QAC9C,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,MAAM,IAAI,KAAK,CAAC,kCAAmC,KAAe,CAAC,OAAO,EAAE,CAAC,CAAC;QAClF,CAAC;IACL,CAAC;IAED;;;;;OAKG;IACI,KAAK,CAAC,iBAAiB;QAC1B,OAAO,IAAI,CAAC,kBAAkB,CAAC,eAAe,CAAC,CAAC;IACpD,CAAC;IAED;;;;;;OAMG;IACI,KAAK,CAAC,kBAAkB,CAAC,OAAe;QAC3C,IAAI,CAAC;YACD,MAAM,MAAM,GAAG,IAAA,wBAAQ,EAAC,OAAO,EAAE;gBAC7B,QAAQ,EAAE,OAAO;gBACjB,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC;aAClC,CAAC,CAAC,IAAI,EAAE,CAAC;YAEV,OAAO,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC;QAC1C,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,MAAM,IAAI,KAAK,CAAC,8BAA8B,OAAO,KAAM,KAAe,CAAC,OAAO,EAAE,CAAC,CAAC;QAC1F,CAAC;IACL,CAAC;IAED;;;;;OAKG;IACI,iBAAiB,CAAC,MAAc;QACnC,IAAI,CAAC,MAAM,EAAE,CAAC;YACV,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;QAClD,CAAC;QAED,2EAA2E;QAC3E,0BAA0B;QAC1B,IAAI,UAAU,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC;QAE/B,6BAA6B;QAC7B,IAAI,UAAU,CAAC,UAAU,CAAC,SAAS,CAAC,IAAI,UAAU,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;YACxE,IAAI,CAAC;gBACD,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,UAAU,CAAC,CAAC;gBAChC,UAAU,GAAG,GAAG,CAAC,QAAQ,CAAC;YAC9B,CAAC;YAAC,MAAM,CAAC;gBACL,kCAAkC;YACtC,CAAC;QACL,CAAC;QAED,OAAO;YACH,UAAU;SACb,CAAC;IACN,CAAC;CACJ;AAtFD,kDAsFC"}
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
import { S3Client } from "@aws-sdk/client-s3";
|
|
2
|
+
/**
|
|
3
|
+
* S3 bucket configuration
|
|
4
|
+
*/
|
|
5
|
+
export interface S3BucketConfig {
|
|
6
|
+
bucketName: string;
|
|
7
|
+
region: string;
|
|
8
|
+
}
|
|
9
|
+
/**
|
|
10
|
+
* S3 bucket validation result
|
|
11
|
+
*/
|
|
12
|
+
export interface S3ValidationResult {
|
|
13
|
+
hasAccess: boolean;
|
|
14
|
+
isConfigured: boolean;
|
|
15
|
+
hasWritePermission?: boolean;
|
|
16
|
+
hasReadPermission?: boolean;
|
|
17
|
+
errors: string[];
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* S3 bucket access validator
|
|
21
|
+
*
|
|
22
|
+
* Validates S3 bucket access and permissions required for the webhook integration.
|
|
23
|
+
*/
|
|
24
|
+
export declare class S3BucketValidator {
|
|
25
|
+
/**
|
|
26
|
+
* Valid AWS region patterns
|
|
27
|
+
*/
|
|
28
|
+
private static readonly VALID_REGIONS;
|
|
29
|
+
/**
|
|
30
|
+
* Validate S3 bucket access and permissions
|
|
31
|
+
*
|
|
32
|
+
* @param config - S3 bucket configuration
|
|
33
|
+
* @returns Validation result with access status and errors
|
|
34
|
+
*/
|
|
35
|
+
static validate(config: S3BucketConfig): Promise<S3ValidationResult>;
|
|
36
|
+
/**
|
|
37
|
+
* Validate S3 bucket name format
|
|
38
|
+
*
|
|
39
|
+
* @param bucketName - Bucket name to validate
|
|
40
|
+
* @returns True if bucket name is valid
|
|
41
|
+
*/
|
|
42
|
+
static validateBucketName(bucketName: string): boolean;
|
|
43
|
+
/**
|
|
44
|
+
* Validate AWS region format
|
|
45
|
+
*
|
|
46
|
+
* @param region - AWS region to validate
|
|
47
|
+
* @returns True if region format is valid
|
|
48
|
+
*/
|
|
49
|
+
static validateRegion(region: string): boolean;
|
|
50
|
+
/**
|
|
51
|
+
* Check if S3 bucket exists
|
|
52
|
+
*
|
|
53
|
+
* @param bucketName - Name of the bucket
|
|
54
|
+
* @param region - AWS region
|
|
55
|
+
* @param s3Client - Optional S3 client instance
|
|
56
|
+
* @returns True if bucket exists
|
|
57
|
+
*/
|
|
58
|
+
static checkBucketExists(bucketName: string, region: string, s3Client?: S3Client): Promise<boolean>;
|
|
59
|
+
/**
|
|
60
|
+
* Test write permissions on S3 bucket
|
|
61
|
+
*
|
|
62
|
+
* @param bucketName - Name of the bucket
|
|
63
|
+
* @param s3Client - S3 client instance
|
|
64
|
+
* @returns True if write permission is granted
|
|
65
|
+
*/
|
|
66
|
+
private static testWritePermission;
|
|
67
|
+
/**
|
|
68
|
+
* Test read permissions on S3 bucket
|
|
69
|
+
*
|
|
70
|
+
* @param bucketName - Name of the bucket
|
|
71
|
+
* @param s3Client - S3 client instance
|
|
72
|
+
* @returns True if read permission is granted
|
|
73
|
+
*/
|
|
74
|
+
private static testReadPermission;
|
|
75
|
+
}
|
|
76
|
+
//# sourceMappingURL=s3-bucket-validator.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"s3-bucket-validator.d.ts","sourceRoot":"","sources":["../../lib/s3-bucket-validator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAA8E,MAAM,oBAAoB,CAAC;AAE1H;;GAEG;AACH,MAAM,WAAW,cAAc;IAC3B,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IAC/B,SAAS,EAAE,OAAO,CAAC;IACnB,YAAY,EAAE,OAAO,CAAC;IACtB,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,MAAM,EAAE,MAAM,EAAE,CAAC;CACpB;AAED;;;;GAIG;AACH,qBAAa,iBAAiB;IAC1B;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,aAAa,CAAoH;IAEzJ;;;;;OAKG;WACiB,QAAQ,CAAC,MAAM,EAAE,cAAc,GAAG,OAAO,CAAC,kBAAkB,CAAC;IA6FjF;;;;;OAKG;WACW,kBAAkB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO;IAmB7D;;;;;OAKG;WACW,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO;IAQrD;;;;;;;OAOG;WACiB,iBAAiB,CACjC,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,MAAM,EACd,QAAQ,CAAC,EAAE,QAAQ,GACpB,OAAO,CAAC,OAAO,CAAC;IAiBnB;;;;;;OAMG;mBACkB,mBAAmB;IAgCxC;;;;;;OAMG;mBACkB,kBAAkB;CAgD1C"}
|