@quiltdata/benchling-webhook 0.11.0 → 0.11.2

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.
Files changed (44) hide show
  1. package/dist/bin/commands/deploy.d.ts.map +1 -1
  2. package/dist/bin/commands/deploy.js +34 -2
  3. package/dist/bin/commands/deploy.js.map +1 -1
  4. package/dist/bin/commands/logs.d.ts.map +1 -1
  5. package/dist/bin/commands/logs.js +49 -4
  6. package/dist/bin/commands/logs.js.map +1 -1
  7. package/dist/bin/commands/setup-wizard.d.ts +9 -11
  8. package/dist/bin/commands/setup-wizard.d.ts.map +1 -1
  9. package/dist/bin/commands/setup-wizard.js +425 -119
  10. package/dist/bin/commands/setup-wizard.js.map +1 -1
  11. package/dist/bin/commands/status.d.ts +1 -0
  12. package/dist/bin/commands/status.d.ts.map +1 -1
  13. package/dist/bin/commands/status.js +60 -56
  14. package/dist/bin/commands/status.js.map +1 -1
  15. package/dist/bin/commands/sync-secrets.d.ts.map +1 -1
  16. package/dist/bin/commands/sync-secrets.js +48 -0
  17. package/dist/bin/commands/sync-secrets.js.map +1 -1
  18. package/dist/lib/benchling-webhook-stack.d.ts.map +1 -1
  19. package/dist/lib/benchling-webhook-stack.js +22 -1
  20. package/dist/lib/benchling-webhook-stack.js.map +1 -1
  21. package/dist/lib/utils/ecs-service-discovery.d.ts +13 -0
  22. package/dist/lib/utils/ecs-service-discovery.d.ts.map +1 -1
  23. package/dist/lib/utils/ecs-service-discovery.js +98 -0
  24. package/dist/lib/utils/ecs-service-discovery.js.map +1 -1
  25. package/dist/lib/wizard/benchling-secret.d.ts +17 -0
  26. package/dist/lib/wizard/benchling-secret.d.ts.map +1 -0
  27. package/dist/lib/wizard/benchling-secret.js +68 -0
  28. package/dist/lib/wizard/benchling-secret.js.map +1 -0
  29. package/dist/lib/wizard/phase5-unified-flow.d.ts +13 -0
  30. package/dist/lib/wizard/phase5-unified-flow.d.ts.map +1 -0
  31. package/dist/lib/wizard/phase5-unified-flow.js +185 -0
  32. package/dist/lib/wizard/phase5-unified-flow.js.map +1 -0
  33. package/dist/lib/wizard/profile-config-builder.d.ts +32 -0
  34. package/dist/lib/wizard/profile-config-builder.d.ts.map +1 -0
  35. package/dist/lib/wizard/profile-config-builder.js +162 -0
  36. package/dist/lib/wizard/profile-config-builder.js.map +1 -0
  37. package/dist/lib/wizard/stack-waiter.d.ts +22 -0
  38. package/dist/lib/wizard/stack-waiter.d.ts.map +1 -0
  39. package/dist/lib/wizard/stack-waiter.js +77 -0
  40. package/dist/lib/wizard/stack-waiter.js.map +1 -0
  41. package/dist/lib/wizard/types.d.ts +40 -0
  42. package/dist/lib/wizard/types.d.ts.map +1 -1
  43. package/dist/package.json +2 -2
  44. package/package.json +2 -2
@@ -1,25 +1,56 @@
1
1
  #!/usr/bin/env node
2
2
  "use strict";
3
3
  /**
4
- * Interactive Configuration Wizard (v0.8.0)
4
+ * Interactive Configuration Wizard (v0.10.0)
5
5
  *
6
- * Phase-based modular setup wizard that orchestrates:
6
+ * Unified setup wizard that orchestrates:
7
7
  * 1. Catalog discovery and confirmation
8
8
  * 2. Stack query for infrastructure details
9
- * 3. Parameter collection from user
10
- * 4. Configuration validation
11
- * 5. Deployment mode decision (integrated vs standalone)
12
- * 6. Mode-specific setup (integrated or standalone)
9
+ * 3. Context display and flow decision
10
+ * 4. Parameter collection (only when needed)
11
+ * 5. Execution (update secrets, enable/disable integration, deploy)
13
12
  *
14
13
  * Architecture:
15
- * - Each phase is a separate, testable module
16
- * - Explicit data flow between phases via TypeScript types
17
- * - Cannot skip phases or execute out of order
18
- * - Integrated mode has explicit return (no deployment)
14
+ * - Context first, then targeted questions
15
+ * - Parameter collection is deferred until required
16
+ * - Integrated and standalone paths share execution helpers
19
17
  *
20
18
  * @module commands/setup-wizard
21
- * @version 0.8.0
19
+ * @version 0.10.0
22
20
  */
21
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
22
+ if (k2 === undefined) k2 = k;
23
+ var desc = Object.getOwnPropertyDescriptor(m, k);
24
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
25
+ desc = { enumerable: true, get: function() { return m[k]; } };
26
+ }
27
+ Object.defineProperty(o, k2, desc);
28
+ }) : (function(o, m, k, k2) {
29
+ if (k2 === undefined) k2 = k;
30
+ o[k2] = m[k];
31
+ }));
32
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
33
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
34
+ }) : function(o, v) {
35
+ o["default"] = v;
36
+ });
37
+ var __importStar = (this && this.__importStar) || (function () {
38
+ var ownKeys = function(o) {
39
+ ownKeys = Object.getOwnPropertyNames || function (o) {
40
+ var ar = [];
41
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
42
+ return ar;
43
+ };
44
+ return ownKeys(o);
45
+ };
46
+ return function (mod) {
47
+ if (mod && mod.__esModule) return mod;
48
+ var result = {};
49
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
50
+ __setModuleDefault(result, mod);
51
+ return result;
52
+ };
53
+ })();
23
54
  var __importDefault = (this && this.__importDefault) || function (mod) {
24
55
  return (mod && mod.__esModule) ? mod : { "default": mod };
25
56
  };
@@ -36,9 +67,13 @@ const phase1_catalog_discovery_1 = require("../../lib/wizard/phase1-catalog-disc
36
67
  const phase2_stack_query_1 = require("../../lib/wizard/phase2-stack-query");
37
68
  const phase3_parameter_collection_1 = require("../../lib/wizard/phase3-parameter-collection");
38
69
  const phase4_validation_1 = require("../../lib/wizard/phase4-validation");
39
- const phase5_mode_decision_1 = require("../../lib/wizard/phase5-mode-decision");
40
- const phase6_integrated_mode_1 = require("../../lib/wizard/phase6-integrated-mode");
41
- const phase7_standalone_mode_1 = require("../../lib/wizard/phase7-standalone-mode");
70
+ const phase5_unified_flow_1 = require("../../lib/wizard/phase5-unified-flow");
71
+ const profile_config_builder_1 = require("../../lib/wizard/profile-config-builder");
72
+ const stack_waiter_1 = require("../../lib/wizard/stack-waiter");
73
+ const sync_secrets_1 = require("./sync-secrets");
74
+ const deploy_1 = require("./deploy");
75
+ const config_1 = require("../../lib/types/config");
76
+ const stack_parameter_update_1 = require("../../lib/utils/stack-parameter-update");
42
77
  /**
43
78
  * Step titles for the wizard phases
44
79
  * This is the single source of truth for step numbering and titles
@@ -46,11 +81,10 @@ const phase7_standalone_mode_1 = require("../../lib/wizard/phase7-standalone-mod
46
81
  const STEP_TITLES = {
47
82
  catalogDiscovery: "Quilt Catalog Discovery",
48
83
  stackQuery: "Quilt Stack Configuration",
49
- parameterCollection: "Configuration Parameters",
84
+ flowDecision: "Context & Flow Selection",
85
+ parameterCollection: "Benchling Parameters",
50
86
  validation: "Validation",
51
- modeDecision: "Deployment Mode",
52
- integratedMode: "Integrated Setup",
53
- standaloneMode: "Standalone Setup",
87
+ execution: "Execution",
54
88
  };
55
89
  /**
56
90
  * Gets the package version from package.json
@@ -72,9 +106,9 @@ function printWelcomeBanner() {
72
106
  const version = getVersion();
73
107
  const prefix = " Benchling Webhook Setup (v";
74
108
  const suffix = ")";
75
- const totalWidth = 63; // Width between the ║ symbols
109
+ const totalWidth = 59; // Width between the ║ symbols (border is 61 chars total - 2 for ║║)
76
110
  const contentLength = prefix.length + version.length + suffix.length;
77
- const padding = " ".repeat(totalWidth - contentLength);
111
+ const padding = " ".repeat(Math.max(0, totalWidth - contentLength));
78
112
  console.log("\n╔═══════════════════════════════════════════════════════════╗");
79
113
  console.log(`║${prefix}${version}${suffix}${padding}║`);
80
114
  console.log("╚═══════════════════════════════════════════════════════════╝");
@@ -183,120 +217,392 @@ async function runSetupWizard(options = {}) {
183
217
  throw new Error("Stack query failed");
184
218
  }
185
219
  // =========================================================================
186
- // PHASE 3: PARAMETER COLLECTION
220
+ // PHASE 3: CONTEXT + FLOW DECISION
187
221
  // =========================================================================
188
- // Collect user inputs, using existing config and stack query results as defaults
189
- printStepHeader(3, STEP_TITLES.parameterCollection);
190
- const parameters = await (0, phase3_parameter_collection_1.runParameterCollection)({
222
+ printStepHeader(3, STEP_TITLES.flowDecision);
223
+ const flowDecision = await (0, phase5_unified_flow_1.runUnifiedFlowDecision)({
191
224
  stackQuery,
192
225
  existingConfig,
193
- yes,
226
+ configStorage: xdg,
194
227
  profile,
195
- benchlingTenant: options.benchlingTenant,
196
- benchlingClientId: options.benchlingClientId,
197
- benchlingClientSecret: options.benchlingClientSecret,
198
- benchlingAppDefinitionId: options.benchlingAppDefinitionId,
199
- userBucket: options.userBucket,
200
- pkgPrefix: options.pkgPrefix,
201
- pkgKey: options.pkgKey,
202
- logLevel: options.logLevel,
203
- webhookAllowList: options.webhookAllowList,
228
+ yes,
229
+ awsProfile,
204
230
  });
205
- // =========================================================================
206
- // PHASE 4: VALIDATION
207
- // =========================================================================
208
- // Validate all collected parameters BEFORE making mode decision
209
- if (!skipValidation) {
210
- printStepHeader(4, STEP_TITLES.validation);
211
- const validation = await (0, phase4_validation_1.runValidation)({
231
+ if (flowDecision.action === "exit") {
232
+ console.log(chalk_1.default.green("✓ Exit without changes"));
233
+ if (existingConfig) {
234
+ return {
235
+ success: true,
236
+ profile,
237
+ config: existingConfig,
238
+ deploymentHandled: true,
239
+ };
240
+ }
241
+ process.exit(0);
242
+ }
243
+ const actionsRequiringParameters = new Set([
244
+ "update-integration-secret",
245
+ "enable-integration",
246
+ "deploy-standalone",
247
+ "update-standalone-redeploy",
248
+ ]);
249
+ let parameters = undefined;
250
+ const collectParameters = async () => {
251
+ printStepHeader(4, STEP_TITLES.parameterCollection);
252
+ parameters = await (0, phase3_parameter_collection_1.runParameterCollection)({
212
253
  stackQuery,
213
- parameters,
214
- awsProfile,
254
+ existingConfig,
255
+ yes,
256
+ profile,
257
+ benchlingTenant: options.benchlingTenant,
258
+ benchlingClientId: options.benchlingClientId,
259
+ benchlingClientSecret: options.benchlingClientSecret,
260
+ benchlingAppDefinitionId: options.benchlingAppDefinitionId,
261
+ userBucket: options.userBucket,
262
+ pkgPrefix: options.pkgPrefix,
263
+ pkgKey: options.pkgKey,
264
+ logLevel: options.logLevel,
265
+ webhookAllowList: options.webhookAllowList,
215
266
  });
216
- if (!validation.success) {
217
- if (yes) {
218
- throw new Error(`Validation failed: ${validation.errors.join(", ")}`);
267
+ if (!skipValidation) {
268
+ printStepHeader(5, STEP_TITLES.validation);
269
+ const validation = await (0, phase4_validation_1.runValidation)({
270
+ stackQuery,
271
+ parameters,
272
+ awsProfile,
273
+ });
274
+ if (!validation.success) {
275
+ if (yes) {
276
+ throw new Error(`Validation failed: ${validation.errors.join(", ")}`);
277
+ }
278
+ const { proceed } = await inquirer_1.default.prompt([
279
+ {
280
+ type: "confirm",
281
+ name: "proceed",
282
+ message: "Save configuration anyway?",
283
+ default: false,
284
+ },
285
+ ]);
286
+ if (!proceed) {
287
+ throw new Error("Setup aborted by user");
288
+ }
219
289
  }
220
- const { proceed } = await inquirer_1.default.prompt([
290
+ }
291
+ };
292
+ if (actionsRequiringParameters.has(flowDecision.action)) {
293
+ await collectParameters();
294
+ }
295
+ const saveConfig = (config) => {
296
+ console.log(`Saving configuration to profile: ${profile}...\n`);
297
+ xdg.writeProfile(profile, config);
298
+ console.log(chalk_1.default.green(`✓ Configuration saved to: ~/.config/benchling-webhook/${profile}/config.json\n`));
299
+ };
300
+ const requireConfig = async (integratedStack) => {
301
+ try {
302
+ return (0, profile_config_builder_1.buildProfileConfigFromExisting)({
303
+ stackQuery,
304
+ existingConfig,
305
+ secretDetails: flowDecision.secretDetails,
306
+ catalogDns: catalogResult.catalogDns,
307
+ integratedStack,
308
+ benchlingSecretArn: flowDecision.benchlingSecretArn,
309
+ });
310
+ }
311
+ catch (_error) {
312
+ if (!parameters) {
313
+ await collectParameters();
314
+ }
315
+ return (0, profile_config_builder_1.buildProfileConfigFromParameters)({
316
+ stackQuery,
317
+ parameters: parameters,
318
+ catalogDns: catalogResult.catalogDns,
319
+ integratedStack,
320
+ benchlingSecretArn: flowDecision.benchlingSecretArn,
321
+ });
322
+ }
323
+ };
324
+ printStepHeader(6, STEP_TITLES.execution);
325
+ switch (flowDecision.action) {
326
+ case "update-integration-secret": {
327
+ const benchlingSecretArn = flowDecision.benchlingSecretArn;
328
+ if (!benchlingSecretArn) {
329
+ throw new Error("BenchlingSecret ARN not found for integrated update.");
330
+ }
331
+ const config = (0, profile_config_builder_1.buildProfileConfigFromParameters)({
332
+ stackQuery,
333
+ parameters: parameters,
334
+ catalogDns: catalogResult.catalogDns,
335
+ integratedStack: true,
336
+ benchlingSecretArn,
337
+ });
338
+ saveConfig(config);
339
+ // Clear deployment tracking for integrated mode (no separate deployments)
340
+ const deploymentsC = xdg.getDeployments(profile);
341
+ Object.keys(deploymentsC.active).forEach(stage => {
342
+ xdg.clearDeployment(profile, stage);
343
+ });
344
+ await (0, sync_secrets_1.syncSecretsToAWS)({
345
+ profile,
346
+ awsProfile,
347
+ region: config.deployment.region,
348
+ force: true,
349
+ configStorage: xdg,
350
+ });
351
+ // Show status with webhook URL
352
+ const { statusCommand } = await Promise.resolve().then(() => __importStar(require("./status")));
353
+ await statusCommand({
354
+ profile,
355
+ awsProfile,
356
+ configStorage: xdg,
357
+ // Use default timer - will auto-refresh during updates and exit when stable
358
+ });
359
+ break;
360
+ }
361
+ case "review-only": {
362
+ const integratedStack = flowDecision.flow !== "standalone-existing";
363
+ const config = await requireConfig(integratedStack);
364
+ saveConfig(config);
365
+ // Clear deployment tracking for integrated mode (no separate deployments)
366
+ if (integratedStack) {
367
+ const deployments = xdg.getDeployments(profile);
368
+ Object.keys(deployments.active).forEach(stage => {
369
+ xdg.clearDeployment(profile, stage);
370
+ });
371
+ const { statusCommand } = await Promise.resolve().then(() => __importStar(require("./status")));
372
+ await statusCommand({
373
+ profile,
374
+ awsProfile,
375
+ configStorage: xdg,
376
+ // Use default timer - will auto-refresh during updates and exit when stable
377
+ });
378
+ }
379
+ break;
380
+ }
381
+ case "disable-integration": {
382
+ // User already confirmed in Phase 5 - proceed with disabling
383
+ console.log(chalk_1.default.dim("Disabling integrated webhook..."));
384
+ const updateResult = await (0, stack_parameter_update_1.updateStackParameter)({
385
+ stackArn: stackQuery.stackArn,
386
+ region: stackQuery.region,
387
+ parameterKey: config_1.CFN_PARAMS.BENCHLING_WEBHOOK,
388
+ parameterValue: "Disabled",
389
+ awsProfile,
390
+ });
391
+ if (updateResult.success) {
392
+ console.log(chalk_1.default.green("✓ Stack update initiated"));
393
+ await (0, stack_waiter_1.pollStackStatus)({
394
+ stackArn: stackQuery.stackArn,
395
+ region: stackQuery.region,
396
+ awsProfile,
397
+ });
398
+ }
399
+ else {
400
+ throw new Error(updateResult.error || "Failed to disable BenchlingIntegration");
401
+ }
402
+ const config = await requireConfig(true);
403
+ saveConfig(config);
404
+ // Clear deployment tracking for integrated mode (no separate deployments)
405
+ const deploymentsToCleanup = xdg.getDeployments(profile);
406
+ Object.keys(deploymentsToCleanup.active).forEach(stage => {
407
+ xdg.clearDeployment(profile, stage);
408
+ });
409
+ break;
410
+ }
411
+ case "switch-standalone": {
412
+ const confirmSwitch = yes || (await inquirer_1.default.prompt([
221
413
  {
222
414
  type: "confirm",
223
- name: "proceed",
224
- message: "Save configuration anyway?",
415
+ name: "confirmSwitch",
416
+ message: "Create separate infrastructure? (~8-10 min)",
225
417
  default: false,
226
418
  },
227
- ]);
228
- if (!proceed) {
229
- throw new Error("Setup aborted by user");
419
+ ])).confirmSwitch;
420
+ if (!confirmSwitch) {
421
+ console.log(chalk_1.default.green(" Exit without changes"));
422
+ return {
423
+ success: true,
424
+ profile,
425
+ config: existingConfig || (await requireConfig(true)),
426
+ deploymentHandled: true,
427
+ };
230
428
  }
429
+ const updateResult = await (0, stack_parameter_update_1.updateStackParameter)({
430
+ stackArn: stackQuery.stackArn,
431
+ region: stackQuery.region,
432
+ parameterKey: config_1.CFN_PARAMS.BENCHLING_WEBHOOK,
433
+ parameterValue: "Disabled",
434
+ awsProfile,
435
+ });
436
+ if (updateResult.success) {
437
+ console.log(chalk_1.default.green("✓ Stack update initiated"));
438
+ await (0, stack_waiter_1.pollStackStatus)({
439
+ stackArn: stackQuery.stackArn,
440
+ region: stackQuery.region,
441
+ awsProfile,
442
+ });
443
+ }
444
+ else {
445
+ throw new Error(updateResult.error || "Failed to disable BenchlingIntegration");
446
+ }
447
+ const config = await requireConfig(false);
448
+ saveConfig(config);
449
+ await (0, sync_secrets_1.syncSecretsToAWS)({
450
+ profile,
451
+ awsProfile,
452
+ region: config.deployment.region,
453
+ force: true,
454
+ configStorage: xdg,
455
+ });
456
+ if (!setupOnly) {
457
+ await (0, deploy_1.deployCommand)({
458
+ profile,
459
+ stage: profile === "prod" ? "prod" : "dev",
460
+ yes: true,
461
+ });
462
+ }
463
+ break;
231
464
  }
465
+ case "enable-integration": {
466
+ const confirmEnable = yes || (await inquirer_1.default.prompt([
467
+ {
468
+ type: "confirm",
469
+ name: "confirmEnable",
470
+ message: "Enable integration?",
471
+ default: true,
472
+ },
473
+ ])).confirmEnable;
474
+ if (!confirmEnable) {
475
+ console.log(chalk_1.default.green("✓ Exit without changes"));
476
+ return {
477
+ success: true,
478
+ profile,
479
+ config: existingConfig || (await requireConfig(true)),
480
+ deploymentHandled: true,
481
+ };
482
+ }
483
+ const updateResult = await (0, stack_parameter_update_1.updateStackParameter)({
484
+ stackArn: stackQuery.stackArn,
485
+ region: stackQuery.region,
486
+ parameterKey: config_1.CFN_PARAMS.BENCHLING_WEBHOOK,
487
+ parameterValue: "Enabled",
488
+ awsProfile,
489
+ });
490
+ if (updateResult.success) {
491
+ console.log(chalk_1.default.green("✓ Stack update initiated"));
492
+ await (0, stack_waiter_1.pollStackStatus)({
493
+ stackArn: stackQuery.stackArn,
494
+ region: stackQuery.region,
495
+ awsProfile,
496
+ });
497
+ }
498
+ else {
499
+ throw new Error(updateResult.error || "Failed to enable BenchlingIntegration");
500
+ }
501
+ const benchlingSecretArn = await (0, stack_waiter_1.waitForBenchlingSecretArn)({
502
+ stackArn: stackQuery.stackArn,
503
+ region: stackQuery.region,
504
+ awsProfile,
505
+ });
506
+ const config = (0, profile_config_builder_1.buildProfileConfigFromParameters)({
507
+ stackQuery,
508
+ parameters: parameters,
509
+ catalogDns: catalogResult.catalogDns,
510
+ integratedStack: true,
511
+ benchlingSecretArn,
512
+ });
513
+ saveConfig(config);
514
+ // Clear deployment tracking for integrated mode (no separate deployments)
515
+ const deploymentsB = xdg.getDeployments(profile);
516
+ Object.keys(deploymentsB.active).forEach(stage => {
517
+ xdg.clearDeployment(profile, stage);
518
+ });
519
+ await (0, sync_secrets_1.syncSecretsToAWS)({
520
+ profile,
521
+ awsProfile,
522
+ region: config.deployment.region,
523
+ force: true,
524
+ configStorage: xdg,
525
+ });
526
+ // Show status with webhook URL
527
+ const { statusCommand } = await Promise.resolve().then(() => __importStar(require("./status")));
528
+ await statusCommand({
529
+ profile,
530
+ awsProfile,
531
+ configStorage: xdg,
532
+ // Use default timer - will auto-refresh during updates and exit when stable
533
+ });
534
+ break;
535
+ }
536
+ case "deploy-standalone": {
537
+ const config = (0, profile_config_builder_1.buildProfileConfigFromParameters)({
538
+ stackQuery,
539
+ parameters: parameters,
540
+ catalogDns: catalogResult.catalogDns,
541
+ integratedStack: false,
542
+ });
543
+ saveConfig(config);
544
+ await (0, sync_secrets_1.syncSecretsToAWS)({
545
+ profile,
546
+ awsProfile,
547
+ region: config.deployment.region,
548
+ force: true,
549
+ configStorage: xdg,
550
+ });
551
+ if (!setupOnly) {
552
+ await (0, deploy_1.deployCommand)({
553
+ profile,
554
+ stage: profile === "prod" ? "prod" : "dev",
555
+ yes: true,
556
+ });
557
+ }
558
+ break;
559
+ }
560
+ case "update-standalone-redeploy": {
561
+ const config = (0, profile_config_builder_1.buildProfileConfigFromParameters)({
562
+ stackQuery,
563
+ parameters: parameters,
564
+ catalogDns: catalogResult.catalogDns,
565
+ integratedStack: false,
566
+ });
567
+ saveConfig(config);
568
+ if (!setupOnly) {
569
+ await (0, deploy_1.deployCommand)({
570
+ profile,
571
+ stage: profile === "prod" ? "prod" : "dev",
572
+ yes: true,
573
+ });
574
+ }
575
+ await (0, sync_secrets_1.syncSecretsToAWS)({
576
+ profile,
577
+ awsProfile,
578
+ region: config.deployment.region,
579
+ force: true,
580
+ configStorage: xdg,
581
+ });
582
+ break;
583
+ }
584
+ case "update-standalone-secret": {
585
+ const config = await requireConfig(false);
586
+ saveConfig(config);
587
+ await (0, sync_secrets_1.syncSecretsToAWS)({
588
+ profile,
589
+ awsProfile,
590
+ region: config.deployment.region,
591
+ force: true,
592
+ configStorage: xdg,
593
+ });
594
+ break;
595
+ }
596
+ default:
597
+ break;
232
598
  }
233
- // =========================================================================
234
- // PHASE 5: MODE DECISION
235
- // =========================================================================
236
- // Decide between integrated mode (use existing BenchlingSecret) or
237
- // standalone mode (create new dedicated secret)
238
- printStepHeader(5, STEP_TITLES.modeDecision);
239
- const modeDecision = await (0, phase5_mode_decision_1.runModeDecision)({
240
- stackQuery,
241
- yes,
242
- });
243
- // =========================================================================
244
- // PHASE 6 OR 7: MODE-SPECIFIC EXECUTION
245
- // =========================================================================
246
- if (modeDecision.mode === "integrated") {
247
- // =====================================================================
248
- // PHASE 6: INTEGRATED MODE
249
- // =====================================================================
250
- // Update existing BenchlingSecret in Quilt stack
251
- // NO deployment - Quilt stack handles webhook
252
- // MUST return here to prevent fall-through
253
- printStepHeader(6, STEP_TITLES.integratedMode);
254
- await (0, phase6_integrated_mode_1.runIntegratedMode)({
255
- profile,
256
- catalogDns: catalogResult.catalogDns,
257
- stackQuery,
258
- parameters,
259
- benchlingSecretArn: modeDecision.benchlingSecretArn,
260
- configStorage: xdg,
261
- awsProfile,
262
- yes,
263
- });
264
- // CRITICAL: Explicit return for integrated mode
265
- // Cannot fall through to deployment
266
- const finalConfig = xdg.readProfile(profile);
267
- return {
268
- success: true,
269
- profile,
270
- config: finalConfig,
271
- deploymentHandled: true, // Integrated mode completes in phase 6, no deployment needed
272
- };
273
- }
274
- else {
275
- // =====================================================================
276
- // PHASE 7: STANDALONE MODE
277
- // =====================================================================
278
- // Create new dedicated secret
279
- // Optionally deploy as separate stack
280
- printStepHeader(6, STEP_TITLES.standaloneMode);
281
- const standaloneResult = await (0, phase7_standalone_mode_1.runStandaloneMode)({
282
- profile,
283
- catalogDns: catalogResult.catalogDns,
284
- stackQuery,
285
- parameters,
286
- configStorage: xdg,
287
- yes,
288
- setupOnly,
289
- awsProfile,
290
- });
291
- // CRITICAL: Explicit return for standalone mode
292
- const finalConfig = xdg.readProfile(profile);
293
- return {
294
- success: true,
295
- profile,
296
- config: finalConfig,
297
- deploymentHandled: standaloneResult.deploymentHandled,
298
- };
299
- }
599
+ const finalConfig = xdg.readProfile(profile);
600
+ return {
601
+ success: true,
602
+ profile,
603
+ config: finalConfig,
604
+ deploymentHandled: true,
605
+ };
300
606
  }
301
607
  /**
302
608
  * Setup wizard command handler
@@ -1 +1 @@
1
- {"version":3,"file":"setup-wizard.js","sourceRoot":"","sources":["../../../bin/commands/setup-wizard.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"setup-wizard.js","sourceRoot":"","sources":["../../../bin/commands/setup-wizard.ts"],"names":[],"mappings":"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"}
@@ -30,6 +30,7 @@ export interface StatusResult {
30
30
  stackArn?: string;
31
31
  region?: string;
32
32
  error?: string;
33
+ athenaWorkgroup?: string;
33
34
  stackOutputs?: {
34
35
  webhookEndpoint?: string;
35
36
  benchlingUrl?: string;