@quiltdata/benchling-webhook 0.5.4-20251102T020826Z → 0.5.4-20251103T180342Z
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 +26 -17
- 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 -23
- package/dist/bin/benchling-webhook.js.map +1 -1
- package/dist/bin/cdk-dev.js +51 -0
- package/dist/bin/cli.js +8 -22
- package/dist/bin/cli.js.map +1 -1
- package/dist/bin/commands/deploy.d.ts +4 -2
- package/dist/bin/commands/deploy.d.ts.map +1 -1
- package/dist/bin/commands/deploy.js +88 -300
- 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 +3 -0
- package/dist/bin/create-secret.d.ts.map +1 -1
- package/dist/bin/create-secret.js +51 -48
- package/dist/bin/create-secret.js.map +1 -1
- 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 +5 -23
- package/dist/lib/benchling-webhook-stack.d.ts.map +1 -1
- package/dist/lib/benchling-webhook-stack.js +25 -145
- 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/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.js.map +1 -1
- package/dist/lib/utils/config-resolver.d.ts +26 -26
- package/dist/lib/utils/config-resolver.d.ts.map +1 -1
- package/dist/lib/utils/config-resolver.js +29 -29
- package/dist/lib/utils/config-resolver.js.map +1 -1
- package/dist/lib/utils/config.d.ts +2 -0
- package/dist/lib/utils/config.d.ts.map +1 -1
- package/dist/lib/utils/config.js.map +1 -1
- 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 +38 -26
- 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 +38 -26
|
@@ -9,8 +9,8 @@ const chalk_1 = __importDefault(require("chalk"));
|
|
|
9
9
|
const ora_1 = __importDefault(require("ora"));
|
|
10
10
|
const boxen_1 = __importDefault(require("boxen"));
|
|
11
11
|
const enquirer_1 = require("enquirer");
|
|
12
|
+
const client_secrets_manager_1 = require("@aws-sdk/client-secrets-manager");
|
|
12
13
|
const config_1 = require("../../lib/utils/config");
|
|
13
|
-
const secrets_1 = require("../../lib/utils/secrets");
|
|
14
14
|
const config_resolver_1 = require("../../lib/utils/config-resolver");
|
|
15
15
|
const benchling_webhook_1 = require("../benchling-webhook");
|
|
16
16
|
async function deployCommand(options) {
|
|
@@ -20,317 +20,70 @@ async function deployCommand(options) {
|
|
|
20
20
|
borderStyle: "round",
|
|
21
21
|
}));
|
|
22
22
|
console.log();
|
|
23
|
-
//
|
|
23
|
+
// Get required parameters
|
|
24
24
|
const quiltStackArn = options.quiltStackArn || process.env.QUILT_STACK_ARN;
|
|
25
|
-
|
|
26
|
-
const
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
let config = (0, config_1.loadConfigSync)(options);
|
|
35
|
-
// 2. Attempt inference if catalog is available
|
|
36
|
-
if (config.quiltCatalog) {
|
|
37
|
-
spinner.text = "Inferring configuration from catalog...";
|
|
38
|
-
const inferenceResult = await (0, benchling_webhook_1.inferConfiguration)(config.quiltCatalog);
|
|
39
|
-
if (inferenceResult.success) {
|
|
40
|
-
config = (0, config_1.mergeInferredConfig)(config, inferenceResult.inferredVars);
|
|
41
|
-
spinner.succeed("Configuration loaded and inferred");
|
|
42
|
-
}
|
|
43
|
-
else {
|
|
44
|
-
spinner.warn(`Configuration loaded (inference failed: ${inferenceResult.error})`);
|
|
45
|
-
}
|
|
46
|
-
}
|
|
47
|
-
else {
|
|
48
|
-
spinner.succeed("Configuration loaded");
|
|
49
|
-
}
|
|
50
|
-
// 2a. Validate benchling-secrets if provided (Episode 7)
|
|
51
|
-
if (config.benchlingSecrets) {
|
|
52
|
-
spinner.text = "Validating Benchling secrets...";
|
|
53
|
-
try {
|
|
54
|
-
const secretsConfig = (0, secrets_1.parseAndValidateSecrets)(config.benchlingSecrets);
|
|
55
|
-
// Episode 10: Display secret source and format
|
|
56
|
-
if (secretsConfig.format === "arn") {
|
|
57
|
-
spinner.info(`Using Benchling secrets from ARN: ${(0, config_1.maskArn)(secretsConfig.arn)}`);
|
|
58
|
-
}
|
|
59
|
-
else {
|
|
60
|
-
spinner.info("Using Benchling secrets from JSON configuration");
|
|
61
|
-
}
|
|
62
|
-
// Episode 8: Check for deprecated parameter usage
|
|
63
|
-
const hasOldParams = !!(config.benchlingTenant ||
|
|
64
|
-
config.benchlingClientId ||
|
|
65
|
-
config.benchlingClientSecret);
|
|
66
|
-
if (hasOldParams) {
|
|
67
|
-
spinner.warn("Both --benchling-secrets and individual secret parameters provided");
|
|
68
|
-
console.log(chalk_1.default.yellow("\n ⚠ DEPRECATION WARNING:"));
|
|
69
|
-
console.log(chalk_1.default.yellow(" Individual secret parameters (--tenant, --client-id, --client-secret) are deprecated."));
|
|
70
|
-
console.log(chalk_1.default.yellow(" The --benchling-secrets parameter will take precedence.\n"));
|
|
71
|
-
console.log(chalk_1.default.dim(" Migration guide: https://github.com/quiltdata/benchling-webhook#secrets-configuration\n"));
|
|
72
|
-
// Clear old parameters to avoid confusion
|
|
73
|
-
config.benchlingTenant = undefined;
|
|
74
|
-
config.benchlingClientId = undefined;
|
|
75
|
-
config.benchlingClientSecret = undefined;
|
|
76
|
-
config.benchlingAppDefinitionId = undefined;
|
|
77
|
-
}
|
|
78
|
-
spinner.start("Validating configuration...");
|
|
79
|
-
}
|
|
80
|
-
catch (error) {
|
|
81
|
-
spinner.fail("Secret validation failed");
|
|
82
|
-
console.log();
|
|
83
|
-
if (error instanceof secrets_1.SecretsValidationError) {
|
|
84
|
-
console.error(chalk_1.default.red.bold("❌ Benchling Secrets Error\n"));
|
|
85
|
-
console.error(error.formatForCLI());
|
|
86
|
-
console.log(chalk_1.default.yellow("Secrets format:"));
|
|
87
|
-
console.log(" ARN: arn:aws:secretsmanager:region:account:secret:name");
|
|
88
|
-
console.log(" JSON: {\"client_id\":\"...\",\"client_secret\":\"...\",\"tenant\":\"...\"}");
|
|
89
|
-
console.log(" File: @secrets.json\n");
|
|
90
|
-
}
|
|
91
|
-
else {
|
|
92
|
-
console.error(chalk_1.default.red(error.message));
|
|
93
|
-
}
|
|
94
|
-
process.exit(1);
|
|
95
|
-
}
|
|
96
|
-
}
|
|
97
|
-
else {
|
|
98
|
-
spinner.start("Validating configuration...");
|
|
99
|
-
}
|
|
100
|
-
// 3. Validate configuration
|
|
101
|
-
const validation = (0, config_1.validateConfig)(config);
|
|
102
|
-
if (!validation.valid) {
|
|
103
|
-
spinner.fail("Configuration validation failed");
|
|
25
|
+
// Use default secret name if not provided
|
|
26
|
+
const benchlingSecret = options.benchlingSecret || process.env.BENCHLING_SECRET || "@quiltdata/benchling-webhook";
|
|
27
|
+
// Validate required parameter
|
|
28
|
+
if (!quiltStackArn) {
|
|
29
|
+
console.error(chalk_1.default.red.bold("❌ Missing Required Parameter\n"));
|
|
30
|
+
console.error(chalk_1.default.red(" --quilt-stack-arn is required"));
|
|
31
|
+
console.log();
|
|
32
|
+
console.log(chalk_1.default.yellow("Usage:"));
|
|
33
|
+
console.log(chalk_1.default.cyan(" npx @quiltdata/benchling-webhook deploy --quilt-stack-arn <arn>"));
|
|
104
34
|
console.log();
|
|
105
|
-
console.
|
|
106
|
-
console.
|
|
107
|
-
console.log(chalk_1.default.
|
|
108
|
-
console.log(" 1. Run interactive setup: " + chalk_1.default.cyan("npx @quiltdata/benchling-webhook init"));
|
|
109
|
-
console.log(" 2. Create/edit .env file with required values");
|
|
110
|
-
console.log(" 3. Pass values as CLI options");
|
|
35
|
+
console.log(chalk_1.default.yellow("Example:"));
|
|
36
|
+
console.log(chalk_1.default.cyan(" npx @quiltdata/benchling-webhook deploy \\"));
|
|
37
|
+
console.log(chalk_1.default.cyan(" --quilt-stack-arn \"arn:aws:cloudformation:us-east-1:123456789012:stack/QuiltStack/abc123\""));
|
|
111
38
|
console.log();
|
|
112
|
-
console.log("For help: " + chalk_1.default.cyan("npx @quiltdata/benchling-webhook --help"));
|
|
113
39
|
process.exit(1);
|
|
114
40
|
}
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
41
|
+
// Deploy
|
|
42
|
+
return await deploy(quiltStackArn, benchlingSecret, options);
|
|
43
|
+
}
|
|
44
|
+
/**
|
|
45
|
+
* Check if a secret exists in AWS Secrets Manager
|
|
46
|
+
*/
|
|
47
|
+
async function checkSecretExists(secretName, region) {
|
|
48
|
+
try {
|
|
49
|
+
const client = new client_secrets_manager_1.SecretsManagerClient({ region });
|
|
50
|
+
await client.send(new client_secrets_manager_1.DescribeSecretCommand({ SecretId: secretName }));
|
|
51
|
+
return true;
|
|
121
52
|
}
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
const bootstrapStatus = await (0, benchling_webhook_1.checkCdkBootstrap)(config.cdkAccount, config.cdkRegion);
|
|
126
|
-
if (!bootstrapStatus.bootstrapped) {
|
|
127
|
-
spinner.fail("CDK is not bootstrapped");
|
|
128
|
-
console.log();
|
|
129
|
-
console.error(chalk_1.default.red.bold("❌ CDK Bootstrap Error\n"));
|
|
130
|
-
console.error(bootstrapStatus.message);
|
|
131
|
-
console.log();
|
|
132
|
-
console.log("To bootstrap CDK, run:");
|
|
133
|
-
console.log(chalk_1.default.cyan(` ${bootstrapStatus.command}`));
|
|
134
|
-
console.log();
|
|
135
|
-
console.log(chalk_1.default.dim("What is CDK bootstrap?"));
|
|
136
|
-
console.log(chalk_1.default.dim(" It creates necessary AWS resources (S3 bucket, IAM roles) that CDK"));
|
|
137
|
-
console.log(chalk_1.default.dim(" needs to deploy CloudFormation stacks. This is a one-time setup per"));
|
|
138
|
-
console.log(chalk_1.default.dim(" AWS account/region combination."));
|
|
139
|
-
console.log();
|
|
140
|
-
process.exit(1);
|
|
141
|
-
}
|
|
142
|
-
if (bootstrapStatus.warning) {
|
|
143
|
-
spinner.warn(`CDK bootstrap: ${bootstrapStatus.warning}`);
|
|
144
|
-
}
|
|
145
|
-
else {
|
|
146
|
-
spinner.succeed(`CDK is bootstrapped (${bootstrapStatus.status})`);
|
|
53
|
+
catch (error) {
|
|
54
|
+
if (error && typeof error === "object" && "name" in error && error.name === "ResourceNotFoundException") {
|
|
55
|
+
return false;
|
|
147
56
|
}
|
|
57
|
+
// For other errors (e.g., permission issues), throw them
|
|
58
|
+
throw error;
|
|
148
59
|
}
|
|
149
|
-
|
|
60
|
+
}
|
|
61
|
+
/**
|
|
62
|
+
* Run npm run config to create the secret
|
|
63
|
+
*/
|
|
64
|
+
function runConfigCommand(secretName, region, envFile = ".env") {
|
|
150
65
|
console.log();
|
|
151
|
-
console.log(chalk_1.default.
|
|
152
|
-
console.log(chalk_1.default.gray("─".repeat(80)));
|
|
153
|
-
console.log(` ${chalk_1.default.bold("Stack:")} BenchlingWebhookStack`);
|
|
154
|
-
console.log(` ${chalk_1.default.bold("Account:")} ${config.cdkAccount}`);
|
|
155
|
-
console.log(` ${chalk_1.default.bold("Region:")} ${config.cdkRegion}`);
|
|
66
|
+
console.log(chalk_1.default.yellow("📝 Secret not found. Running configuration setup..."));
|
|
156
67
|
console.log();
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
if (config.benchlingSecrets) {
|
|
163
|
-
try {
|
|
164
|
-
const secretsConfig = (0, secrets_1.parseAndValidateSecrets)(config.benchlingSecrets);
|
|
165
|
-
if (secretsConfig.format === "arn") {
|
|
166
|
-
console.log(` ${chalk_1.default.bold("Benchling Secrets:")} ARN (${(0, config_1.maskArn)(secretsConfig.arn)})`);
|
|
167
|
-
}
|
|
168
|
-
else {
|
|
169
|
-
// Display from parsed JSON
|
|
170
|
-
console.log(` ${chalk_1.default.bold("Benchling Tenant:")} ${secretsConfig.data.tenant}`);
|
|
171
|
-
console.log(` ${chalk_1.default.bold("Benchling Client ID:")} ${secretsConfig.data.client_id}`);
|
|
172
|
-
console.log(` ${chalk_1.default.bold("Benchling Client Secret:")} ***${secretsConfig.data.client_secret.slice(-4)}`);
|
|
173
|
-
if (secretsConfig.data.app_definition_id) {
|
|
174
|
-
console.log(` ${chalk_1.default.bold("Benchling App ID:")} ${secretsConfig.data.app_definition_id}`);
|
|
175
|
-
}
|
|
176
|
-
}
|
|
177
|
-
}
|
|
178
|
-
catch {
|
|
179
|
-
// Validation already passed, so this shouldn't happen, but fall back to old display
|
|
180
|
-
console.log(` ${chalk_1.default.bold("Benchling Secrets:")} (configured)`);
|
|
181
|
-
}
|
|
182
|
-
}
|
|
183
|
-
else {
|
|
184
|
-
// Fallback to individual parameters (deprecated path)
|
|
185
|
-
console.log(` ${chalk_1.default.bold("Benchling Tenant:")} ${config.benchlingTenant}`);
|
|
186
|
-
console.log(` ${chalk_1.default.bold("Benchling Client ID:")} ${config.benchlingClientId}`);
|
|
187
|
-
console.log(` ${chalk_1.default.bold("Benchling Client Secret:")} ${config.benchlingClientSecret ? "***" + config.benchlingClientSecret.slice(-4) : "(not set)"}`);
|
|
188
|
-
if (config.benchlingAppDefinitionId) {
|
|
189
|
-
console.log(` ${chalk_1.default.bold("Benchling App ID:")} ${config.benchlingAppDefinitionId}`);
|
|
190
|
-
}
|
|
191
|
-
}
|
|
192
|
-
console.log(` ${chalk_1.default.bold("Queue ARN:")} ${config.queueArn}`);
|
|
193
|
-
console.log(` ${chalk_1.default.bold("Package Prefix:")} ${config.pkgPrefix || "benchling"}`);
|
|
194
|
-
console.log(` ${chalk_1.default.bold("Package Key:")} ${config.pkgKey || "experiment_id"}`);
|
|
195
|
-
console.log(` ${chalk_1.default.bold("Log Level:")} ${config.logLevel || "INFO"}`);
|
|
196
|
-
if (config.webhookAllowList) {
|
|
197
|
-
console.log(` ${chalk_1.default.bold("Webhook Allow List:")} ${config.webhookAllowList}`);
|
|
198
|
-
}
|
|
199
|
-
console.log(` ${chalk_1.default.bold("Webhook Verification:")} ${config.enableWebhookVerification ?? "true"}`);
|
|
200
|
-
console.log(` ${chalk_1.default.bold("Create ECR Repository:")} ${config.createEcrRepository || "false"}`);
|
|
201
|
-
console.log(` ${chalk_1.default.bold("ECR Repository Name:")} ${config.ecrRepositoryName || "quiltdata/benchling"}`);
|
|
202
|
-
console.log(` ${chalk_1.default.bold("Docker Image Tag:")} ${config.imageTag || "latest"}`);
|
|
203
|
-
console.log(chalk_1.default.gray("─".repeat(80)));
|
|
204
|
-
console.log();
|
|
205
|
-
// 6. Confirm (unless --yes)
|
|
206
|
-
if (!options.yes) {
|
|
207
|
-
const response = await (0, enquirer_1.prompt)({
|
|
208
|
-
type: "confirm",
|
|
209
|
-
name: "proceed",
|
|
210
|
-
message: "Proceed with deployment?",
|
|
211
|
-
initial: true,
|
|
212
|
-
});
|
|
213
|
-
if (!response.proceed) {
|
|
214
|
-
console.log(chalk_1.default.yellow("Deployment cancelled"));
|
|
215
|
-
process.exit(0);
|
|
216
|
-
}
|
|
68
|
+
const result = (0, child_process_1.spawnSync)("npm", ["run", "config", "--", "--secret-name", secretName, "--region", region, "--env-file", envFile], {
|
|
69
|
+
stdio: "inherit",
|
|
70
|
+
shell: true,
|
|
71
|
+
});
|
|
72
|
+
if (result.status !== 0) {
|
|
217
73
|
console.log();
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
spinner.start("Synthesizing CDK stack...");
|
|
221
|
-
try {
|
|
222
|
-
const result = (0, benchling_webhook_1.createStack)(config);
|
|
223
|
-
spinner.succeed("Stack synthesized");
|
|
224
|
-
// 8. Deploy using CDK CLI
|
|
225
|
-
spinner.start("Deploying to AWS (this may take a few minutes)...");
|
|
226
|
-
spinner.stop(); // Stop spinner for CDK output
|
|
227
|
-
console.log(); // New line for CDK output
|
|
228
|
-
// Execute CDK deploy directly - the app.synth() will be called by CDK
|
|
229
|
-
// We need to synthesize to cdk.out and then deploy
|
|
230
|
-
result.app.synth();
|
|
231
|
-
// Build CloudFormation parameters to pass explicitly
|
|
232
|
-
const parameters = [
|
|
233
|
-
`ImageTag=${config.imageTag || "latest"}`,
|
|
234
|
-
`BucketName=${config.quiltUserBucket}`,
|
|
235
|
-
`PackagePrefix=${config.pkgPrefix || "benchling"}`,
|
|
236
|
-
`PackageKey=${config.pkgKey || "experiment_id"}`,
|
|
237
|
-
`QueueArn=${config.queueArn}`,
|
|
238
|
-
`QuiltDatabase=${config.quiltDatabase}`,
|
|
239
|
-
`LogLevel=${config.logLevel || "INFO"}`,
|
|
240
|
-
`EnableWebhookVerification=${config.enableWebhookVerification ?? "true"}`,
|
|
241
|
-
`QuiltCatalog=${config.quiltCatalog || "open.quiltdata.com"}`,
|
|
242
|
-
`WebhookAllowList=${config.webhookAllowList || ""}`,
|
|
243
|
-
];
|
|
244
|
-
// Add Benchling secrets parameter based on configuration
|
|
245
|
-
if (config.benchlingSecrets) {
|
|
246
|
-
// New parameter: consolidated secrets
|
|
247
|
-
parameters.push(`BenchlingSecrets=${config.benchlingSecrets}`);
|
|
248
|
-
}
|
|
249
|
-
else {
|
|
250
|
-
// Old parameters: individual values (deprecated but supported)
|
|
251
|
-
parameters.push(`BenchlingTenant=${config.benchlingTenant || ""}`);
|
|
252
|
-
parameters.push(`BenchlingClientId=${config.benchlingClientId || ""}`);
|
|
253
|
-
parameters.push(`BenchlingClientSecret=${config.benchlingClientSecret || ""}`);
|
|
254
|
-
}
|
|
255
|
-
const parametersArg = parameters.map(p => `--parameters ${p}`).join(" ");
|
|
256
|
-
const cdkCommand = `npx cdk deploy --require-approval ${options.requireApproval || "never"} ${parametersArg}`;
|
|
257
|
-
(0, child_process_1.execSync)(cdkCommand, {
|
|
258
|
-
stdio: "inherit",
|
|
259
|
-
env: {
|
|
260
|
-
...process.env,
|
|
261
|
-
CDK_DEFAULT_ACCOUNT: config.cdkAccount,
|
|
262
|
-
CDK_DEFAULT_REGION: config.cdkRegion,
|
|
263
|
-
},
|
|
264
|
-
});
|
|
265
|
-
spinner.succeed("Stack deployed successfully");
|
|
266
|
-
// 9. Get stack outputs
|
|
267
|
-
spinner.start("Retrieving stack outputs...");
|
|
268
|
-
let webhookUrl = "";
|
|
269
|
-
try {
|
|
270
|
-
// eslint-disable-next-line @typescript-eslint/no-require-imports
|
|
271
|
-
const { CloudFormationClient, DescribeStacksCommand } = require("@aws-sdk/client-cloudformation");
|
|
272
|
-
const cloudformation = new CloudFormationClient({
|
|
273
|
-
region: config.cdkRegion,
|
|
274
|
-
});
|
|
275
|
-
const command = new DescribeStacksCommand({
|
|
276
|
-
StackName: "BenchlingWebhookStack",
|
|
277
|
-
});
|
|
278
|
-
const response = await cloudformation.send(command);
|
|
279
|
-
if (response.Stacks && response.Stacks.length > 0) {
|
|
280
|
-
const stack = response.Stacks[0];
|
|
281
|
-
const output = stack.Outputs?.find((o) => o.OutputKey === "WebhookEndpoint");
|
|
282
|
-
webhookUrl = output?.OutputValue || "";
|
|
283
|
-
}
|
|
284
|
-
spinner.succeed("Stack outputs retrieved");
|
|
285
|
-
}
|
|
286
|
-
catch {
|
|
287
|
-
spinner.warn("Could not retrieve stack outputs");
|
|
288
|
-
}
|
|
289
|
-
// 10. Test the webhook endpoint
|
|
290
|
-
if (webhookUrl) {
|
|
291
|
-
console.log();
|
|
292
|
-
spinner.start("Testing webhook endpoint...");
|
|
293
|
-
try {
|
|
294
|
-
const testCmd = `curl -s -w "\\n%{http_code}" "${webhookUrl}/health"`;
|
|
295
|
-
const testResult = (0, child_process_1.execSync)(testCmd, { encoding: "utf-8", timeout: 10000 });
|
|
296
|
-
const lines = testResult.trim().split("\n");
|
|
297
|
-
const statusCode = lines[lines.length - 1];
|
|
298
|
-
if (statusCode === "200") {
|
|
299
|
-
spinner.succeed("Webhook health check passed");
|
|
300
|
-
}
|
|
301
|
-
else {
|
|
302
|
-
spinner.warn(`Webhook returned HTTP ${statusCode}`);
|
|
303
|
-
}
|
|
304
|
-
}
|
|
305
|
-
catch {
|
|
306
|
-
spinner.warn("Could not test webhook endpoint");
|
|
307
|
-
}
|
|
308
|
-
}
|
|
309
|
-
// 11. Success message
|
|
74
|
+
console.log(chalk_1.default.red("❌ Failed to create secret. Please run:"));
|
|
75
|
+
console.log(chalk_1.default.cyan(` npm run config -- --secret-name ${secretName} --region ${region}`));
|
|
310
76
|
console.log();
|
|
311
|
-
|
|
312
|
-
`Stack: ${chalk_1.default.cyan(result.stackName)}\n` +
|
|
313
|
-
`Region: ${chalk_1.default.cyan(config.cdkRegion)}\n` +
|
|
314
|
-
(webhookUrl ? `Webhook URL: ${chalk_1.default.cyan(webhookUrl)}\n\n` : "\n") +
|
|
315
|
-
`${chalk_1.default.bold("Next steps:")}\n` +
|
|
316
|
-
" 1. Set the webhook URL in your Benchling app settings:\n" +
|
|
317
|
-
` ${chalk_1.default.cyan(webhookUrl || "<WEBHOOK_URL>")}\n\n` +
|
|
318
|
-
" 2. Test the integration by creating a Quilt package in Benchling\n\n" +
|
|
319
|
-
`${chalk_1.default.dim("For more info: https://github.com/quiltdata/benchling-webhook#readme")}`, { padding: 1, borderColor: "green", borderStyle: "round" }));
|
|
320
|
-
}
|
|
321
|
-
catch (error) {
|
|
322
|
-
spinner.fail("Deployment failed");
|
|
323
|
-
console.error();
|
|
324
|
-
console.error(chalk_1.default.red(error.message));
|
|
325
|
-
process.exit(1);
|
|
77
|
+
return false;
|
|
326
78
|
}
|
|
79
|
+
console.log();
|
|
80
|
+
return true;
|
|
327
81
|
}
|
|
328
82
|
/**
|
|
329
|
-
* Deploy
|
|
330
|
-
* Only requires QuiltStackARN and BenchlingSecret
|
|
83
|
+
* Deploy the Benchling webhook stack
|
|
331
84
|
*/
|
|
332
|
-
async function
|
|
333
|
-
const spinner = (0, ora_1.default)("Validating
|
|
85
|
+
async function deploy(quiltStackArn, benchlingSecret, options) {
|
|
86
|
+
const spinner = (0, ora_1.default)("Validating parameters...").start();
|
|
334
87
|
// Parse stack ARN to extract region/account
|
|
335
88
|
let parsed;
|
|
336
89
|
try {
|
|
@@ -357,6 +110,43 @@ async function deploySecretsOnlyMode(quiltStackArn, benchlingSecret, options) {
|
|
|
357
110
|
// Use region from stack ARN, but allow override from CLI
|
|
358
111
|
const deployRegion = options.region || parsed.region;
|
|
359
112
|
const deployAccount = parsed.account;
|
|
113
|
+
// Check if secret exists, create if needed
|
|
114
|
+
spinner.start("Checking if Benchling secret exists...");
|
|
115
|
+
try {
|
|
116
|
+
const secretExists = await checkSecretExists(benchlingSecret, deployRegion);
|
|
117
|
+
if (!secretExists) {
|
|
118
|
+
spinner.info(`Secret '${benchlingSecret}' not found`);
|
|
119
|
+
// Ask user if they want to create it
|
|
120
|
+
const response = await (0, enquirer_1.prompt)({
|
|
121
|
+
type: "confirm",
|
|
122
|
+
name: "createSecret",
|
|
123
|
+
message: `Would you like to create the secret '${benchlingSecret}' now using your .env file?`,
|
|
124
|
+
initial: true,
|
|
125
|
+
});
|
|
126
|
+
if (response.createSecret) {
|
|
127
|
+
const created = runConfigCommand(benchlingSecret, deployRegion, options.envFile || ".env");
|
|
128
|
+
if (!created) {
|
|
129
|
+
process.exit(1);
|
|
130
|
+
}
|
|
131
|
+
spinner.succeed(`Secret '${benchlingSecret}' created successfully`);
|
|
132
|
+
}
|
|
133
|
+
else {
|
|
134
|
+
spinner.fail("Secret is required for deployment");
|
|
135
|
+
console.log();
|
|
136
|
+
console.log(chalk_1.default.yellow("To create the secret manually, run:"));
|
|
137
|
+
console.log(chalk_1.default.cyan(` npm run config -- --secret-name ${benchlingSecret} --region ${deployRegion}`));
|
|
138
|
+
console.log();
|
|
139
|
+
process.exit(1);
|
|
140
|
+
}
|
|
141
|
+
}
|
|
142
|
+
else {
|
|
143
|
+
spinner.succeed(`Secret '${benchlingSecret}' exists`);
|
|
144
|
+
}
|
|
145
|
+
}
|
|
146
|
+
catch (error) {
|
|
147
|
+
spinner.warn("Could not verify secret existence (will attempt deployment anyway)");
|
|
148
|
+
console.log(chalk_1.default.dim(` ${error.message}`));
|
|
149
|
+
}
|
|
360
150
|
// Check CDK bootstrap
|
|
361
151
|
if (options.bootstrapCheck !== false) {
|
|
362
152
|
spinner.start("Checking CDK bootstrap status...");
|
|
@@ -388,7 +178,6 @@ async function deploySecretsOnlyMode(quiltStackArn, benchlingSecret, options) {
|
|
|
388
178
|
console.log();
|
|
389
179
|
console.log(chalk_1.default.bold("Deployment Plan"));
|
|
390
180
|
console.log(chalk_1.default.gray("─".repeat(80)));
|
|
391
|
-
console.log(` ${chalk_1.default.bold("Mode:")} ${chalk_1.default.green("Secrets-Only (v0.6.0+)")}`);
|
|
392
181
|
console.log(` ${chalk_1.default.bold("Stack:")} BenchlingWebhookStack`);
|
|
393
182
|
console.log(` ${chalk_1.default.bold("Account:")} ${deployAccount}`);
|
|
394
183
|
console.log(` ${chalk_1.default.bold("Region:")} ${deployRegion}`);
|
|
@@ -415,12 +204,12 @@ async function deploySecretsOnlyMode(quiltStackArn, benchlingSecret, options) {
|
|
|
415
204
|
}
|
|
416
205
|
console.log();
|
|
417
206
|
}
|
|
418
|
-
// Deploy using CDK CLI
|
|
207
|
+
// Deploy using CDK CLI
|
|
419
208
|
spinner.start("Deploying to AWS (this may take a few minutes)...");
|
|
420
209
|
spinner.stop();
|
|
421
210
|
console.log();
|
|
422
211
|
try {
|
|
423
|
-
// Build CloudFormation parameters
|
|
212
|
+
// Build CloudFormation parameters
|
|
424
213
|
const parameters = [
|
|
425
214
|
`QuiltStackARN=${quiltStackArn}`,
|
|
426
215
|
`BenchlingSecret=${benchlingSecret}`,
|
|
@@ -486,7 +275,6 @@ async function deploySecretsOnlyMode(quiltStackArn, benchlingSecret, options) {
|
|
|
486
275
|
console.log((0, boxen_1.default)(`${chalk_1.default.green.bold("✓ Deployment completed successfully!")}\n\n` +
|
|
487
276
|
`Stack: ${chalk_1.default.cyan("BenchlingWebhookStack")}\n` +
|
|
488
277
|
`Region: ${chalk_1.default.cyan(deployRegion)}\n` +
|
|
489
|
-
`Mode: ${chalk_1.default.cyan("Secrets-Only (v0.6.0+)")}\n` +
|
|
490
278
|
(webhookUrl ? `Webhook URL: ${chalk_1.default.cyan(webhookUrl)}\n\n` : "\n") +
|
|
491
279
|
`${chalk_1.default.bold("Next steps:")}\n` +
|
|
492
280
|
" 1. Set the webhook URL in your Benchling app settings:\n" +
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deploy.js","sourceRoot":"","sources":["../../../bin/commands/deploy.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"deploy.js","sourceRoot":"","sources":["../../../bin/commands/deploy.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
/**
|
|
3
|
+
* Configuration Profile Management CLI
|
|
4
|
+
*
|
|
5
|
+
* Provides commands for creating, listing, and managing configuration profiles.
|
|
6
|
+
* Supports AWS profile integration and profile validation.
|
|
7
|
+
*
|
|
8
|
+
* Usage:
|
|
9
|
+
* npx ts-node bin/config-profiles.ts list
|
|
10
|
+
* npx ts-node bin/config-profiles.ts create <profile-name>
|
|
11
|
+
* npx ts-node bin/config-profiles.ts show <profile-name>
|
|
12
|
+
* npx ts-node bin/config-profiles.ts validate <profile-name>
|
|
13
|
+
*
|
|
14
|
+
* @module bin/config-profiles
|
|
15
|
+
*/
|
|
16
|
+
import { ProfileName } from "../lib/types/config";
|
|
17
|
+
/**
|
|
18
|
+
* Profile Manager
|
|
19
|
+
*
|
|
20
|
+
* Manages configuration profiles with validation and AWS integration.
|
|
21
|
+
*/
|
|
22
|
+
declare class ProfileManager {
|
|
23
|
+
private xdgConfig;
|
|
24
|
+
constructor();
|
|
25
|
+
/**
|
|
26
|
+
* Lists all available profiles
|
|
27
|
+
*/
|
|
28
|
+
listProfiles(): void;
|
|
29
|
+
/**
|
|
30
|
+
* Creates a new profile
|
|
31
|
+
*
|
|
32
|
+
* @param profileName - Name of the profile to create
|
|
33
|
+
* @param options - Creation options
|
|
34
|
+
*/
|
|
35
|
+
createProfile(profileName: ProfileName, options?: {
|
|
36
|
+
awsProfile?: string;
|
|
37
|
+
description?: string;
|
|
38
|
+
}): void;
|
|
39
|
+
/**
|
|
40
|
+
* Shows detailed information about a profile
|
|
41
|
+
*
|
|
42
|
+
* @param profileName - Name of the profile to show
|
|
43
|
+
*/
|
|
44
|
+
showProfile(profileName: ProfileName): void;
|
|
45
|
+
/**
|
|
46
|
+
* Validates a profile configuration
|
|
47
|
+
*
|
|
48
|
+
* @param profileName - Name of the profile to validate
|
|
49
|
+
*/
|
|
50
|
+
validateProfile(profileName: ProfileName): void;
|
|
51
|
+
/**
|
|
52
|
+
* Prints configuration object in a readable format
|
|
53
|
+
*
|
|
54
|
+
* @param config - Configuration object to print
|
|
55
|
+
*/
|
|
56
|
+
private printConfig;
|
|
57
|
+
}
|
|
58
|
+
export { ProfileManager };
|
|
59
|
+
//# sourceMappingURL=config-profiles.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config-profiles.d.ts","sourceRoot":"","sources":["../../bin/config-profiles.ts"],"names":[],"mappings":";AACA;;;;;;;;;;;;;GAaG;AAGH,OAAO,EAAE,WAAW,EAA+C,MAAM,qBAAqB,CAAC;AAG/F;;;;GAIG;AACH,cAAM,cAAc;IAChB,OAAO,CAAC,SAAS,CAAY;;IAM7B;;OAEG;IACI,YAAY,IAAI,IAAI;IAmC3B;;;;;OAKG;IACI,aAAa,CAChB,WAAW,EAAE,WAAW,EACxB,OAAO,GAAE;QAAE,UAAU,CAAC,EAAE,MAAM,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,CAAA;KAAO,GAC5D,IAAI;IAkCP;;;;OAIG;IACI,WAAW,CAAC,WAAW,EAAE,WAAW,GAAG,IAAI;IAwClD;;;;OAIG;IACI,eAAe,CAAC,WAAW,EAAE,WAAW,GAAG,IAAI;IAoEtD;;;;OAIG;IACH,OAAO,CAAC,WAAW;CAmBtB;AA6DD,OAAO,EAAE,cAAc,EAAE,CAAC"}
|