@quiltdata/benchling-webhook 0.6.3-20251104T182406Z → 0.7.1-20251106T100426Z

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 (159) hide show
  1. package/README.md +166 -5
  2. package/dist/bin/benchling-webhook.d.ts +2 -16
  3. package/dist/bin/benchling-webhook.d.ts.map +1 -1
  4. package/dist/bin/benchling-webhook.js +96 -158
  5. package/dist/bin/benchling-webhook.js.map +1 -1
  6. package/dist/bin/cli.js +96 -8
  7. package/dist/bin/cli.js.map +1 -1
  8. package/dist/bin/{config-profiles.d.ts → commands/config-profiles.d.ts} +10 -9
  9. package/dist/bin/commands/config-profiles.d.ts.map +1 -0
  10. package/dist/bin/{config-profiles.js → commands/config-profiles.js} +109 -102
  11. package/dist/bin/commands/config-profiles.js.map +1 -0
  12. package/dist/bin/commands/create-secret.d.ts.map +1 -0
  13. package/dist/bin/commands/create-secret.js.map +1 -0
  14. package/dist/bin/commands/deploy.d.ts +12 -1
  15. package/dist/bin/commands/deploy.d.ts.map +1 -1
  16. package/dist/bin/commands/deploy.js +116 -106
  17. package/dist/bin/commands/deploy.js.map +1 -1
  18. package/dist/bin/{get-env.d.ts → commands/get-env.d.ts} +1 -1
  19. package/dist/bin/commands/get-env.d.ts.map +1 -0
  20. package/dist/bin/{get-env.js → commands/get-env.js} +2 -2
  21. package/dist/bin/commands/get-env.js.map +1 -0
  22. package/dist/bin/commands/health-check.d.ts +47 -0
  23. package/dist/bin/commands/health-check.d.ts.map +1 -0
  24. package/dist/bin/commands/health-check.js +357 -0
  25. package/dist/bin/commands/health-check.js.map +1 -0
  26. package/dist/{scripts → bin/commands}/infer-quilt-config.d.ts +6 -15
  27. package/dist/bin/commands/infer-quilt-config.d.ts.map +1 -0
  28. package/dist/{scripts → bin/commands}/infer-quilt-config.js +37 -63
  29. package/dist/bin/commands/infer-quilt-config.js.map +1 -0
  30. package/dist/bin/commands/init.d.ts.map +1 -1
  31. package/dist/bin/commands/init.js +2 -32
  32. package/dist/bin/commands/init.js.map +1 -1
  33. package/dist/bin/commands/publish.d.ts.map +1 -0
  34. package/dist/bin/{publish.js → commands/publish.js} +2 -2
  35. package/dist/bin/commands/publish.js.map +1 -0
  36. package/dist/bin/commands/setup-profile.d.ts +29 -0
  37. package/dist/bin/commands/setup-profile.d.ts.map +1 -0
  38. package/dist/bin/commands/setup-profile.js +218 -0
  39. package/dist/bin/commands/setup-profile.js.map +1 -0
  40. package/dist/bin/commands/setup-wizard.d.ts +24 -11
  41. package/dist/bin/commands/setup-wizard.d.ts.map +1 -1
  42. package/dist/bin/commands/setup-wizard.js +607 -51
  43. package/dist/bin/commands/setup-wizard.js.map +1 -1
  44. package/dist/{scripts → bin/commands}/sync-secrets.d.ts +6 -1
  45. package/dist/bin/commands/sync-secrets.d.ts.map +1 -0
  46. package/dist/{scripts → bin/commands}/sync-secrets.js +159 -55
  47. package/dist/bin/commands/sync-secrets.js.map +1 -0
  48. package/dist/bin/commands/validate.d.ts.map +1 -1
  49. package/dist/bin/commands/validate.js +2 -12
  50. package/dist/bin/commands/validate.js.map +1 -1
  51. package/dist/lib/alb-api-gateway.d.ts +7 -1
  52. package/dist/lib/alb-api-gateway.d.ts.map +1 -1
  53. package/dist/lib/alb-api-gateway.js +9 -6
  54. package/dist/lib/alb-api-gateway.js.map +1 -1
  55. package/dist/lib/benchling-webhook-stack.d.ts +13 -12
  56. package/dist/lib/benchling-webhook-stack.d.ts.map +1 -1
  57. package/dist/lib/benchling-webhook-stack.js +44 -31
  58. package/dist/lib/benchling-webhook-stack.js.map +1 -1
  59. package/dist/lib/configuration-saver.d.ts +4 -24
  60. package/dist/lib/configuration-saver.d.ts.map +1 -1
  61. package/dist/lib/configuration-saver.js +14 -71
  62. package/dist/lib/configuration-saver.js.map +1 -1
  63. package/dist/lib/fargate-service.d.ts +11 -21
  64. package/dist/lib/fargate-service.d.ts.map +1 -1
  65. package/dist/lib/fargate-service.js +79 -176
  66. package/dist/lib/fargate-service.js.map +1 -1
  67. package/dist/lib/types/config.d.ts +538 -232
  68. package/dist/lib/types/config.d.ts.map +1 -1
  69. package/dist/lib/types/config.js +133 -3
  70. package/dist/lib/types/config.js.map +1 -1
  71. package/dist/lib/utils/config-loader.d.ts.map +1 -1
  72. package/dist/lib/utils/config-loader.js +3 -2
  73. package/dist/lib/utils/config-loader.js.map +1 -1
  74. package/dist/lib/utils/config-resolver.d.ts +2 -2
  75. package/dist/lib/utils/config-resolver.d.ts.map +1 -1
  76. package/dist/lib/utils/config-resolver.js +14 -7
  77. package/dist/lib/utils/config-resolver.js.map +1 -1
  78. package/dist/lib/utils/config.d.ts +1 -1
  79. package/dist/lib/utils/config.d.ts.map +1 -1
  80. package/dist/lib/utils/config.js +7 -3
  81. package/dist/lib/utils/config.js.map +1 -1
  82. package/dist/lib/utils/sqs.d.ts +13 -0
  83. package/dist/lib/utils/sqs.d.ts.map +1 -0
  84. package/dist/lib/utils/sqs.js +22 -0
  85. package/dist/lib/utils/sqs.js.map +1 -0
  86. package/dist/lib/utils/stack-inference.d.ts.map +1 -1
  87. package/dist/lib/utils/stack-inference.js +8 -6
  88. package/dist/lib/utils/stack-inference.js.map +1 -1
  89. package/dist/lib/xdg-config.d.ts +224 -106
  90. package/dist/lib/xdg-config.d.ts.map +1 -1
  91. package/dist/lib/xdg-config.js +454 -387
  92. package/dist/lib/xdg-config.js.map +1 -1
  93. package/dist/package.json +19 -14
  94. package/dist/scripts/check-logs.d.ts +12 -0
  95. package/dist/scripts/check-logs.d.ts.map +1 -0
  96. package/dist/{bin → scripts}/check-logs.js +65 -15
  97. package/dist/scripts/check-logs.js.map +1 -0
  98. package/dist/scripts/check-webhook-verification.d.ts +3 -0
  99. package/dist/scripts/check-webhook-verification.d.ts.map +1 -0
  100. package/dist/{bin/test-invalid-signature.js → scripts/check-webhook-verification.js} +1 -1
  101. package/dist/scripts/check-webhook-verification.js.map +1 -0
  102. package/dist/scripts/get-dev-version.d.ts +16 -0
  103. package/dist/scripts/get-dev-version.d.ts.map +1 -0
  104. package/dist/scripts/get-dev-version.js +57 -0
  105. package/dist/scripts/get-dev-version.js.map +1 -0
  106. package/dist/scripts/send-event.d.ts.map +1 -0
  107. package/dist/scripts/send-event.js.map +1 -0
  108. package/dist/{bin → scripts}/version.d.ts +3 -1
  109. package/dist/scripts/version.d.ts.map +1 -0
  110. package/dist/{bin → scripts}/version.js +95 -9
  111. package/dist/scripts/version.js.map +1 -0
  112. package/package.json +19 -14
  113. package/dist/bin/check-logs.d.ts +0 -7
  114. package/dist/bin/check-logs.d.ts.map +0 -1
  115. package/dist/bin/check-logs.js.map +0 -1
  116. package/dist/bin/config-profiles.d.ts.map +0 -1
  117. package/dist/bin/config-profiles.js.map +0 -1
  118. package/dist/bin/create-secret.d.ts.map +0 -1
  119. package/dist/bin/create-secret.js.map +0 -1
  120. package/dist/bin/dev-deploy.d.ts +0 -20
  121. package/dist/bin/dev-deploy.d.ts.map +0 -1
  122. package/dist/bin/dev-deploy.js +0 -289
  123. package/dist/bin/dev-deploy.js.map +0 -1
  124. package/dist/bin/get-env.d.ts.map +0 -1
  125. package/dist/bin/get-env.js.map +0 -1
  126. package/dist/bin/publish.d.ts.map +0 -1
  127. package/dist/bin/publish.js.map +0 -1
  128. package/dist/bin/release.d.ts +0 -11
  129. package/dist/bin/release.d.ts.map +0 -1
  130. package/dist/bin/release.js +0 -141
  131. package/dist/bin/release.js.map +0 -1
  132. package/dist/bin/send-event.d.ts.map +0 -1
  133. package/dist/bin/send-event.js.map +0 -1
  134. package/dist/bin/test-invalid-signature.d.ts +0 -3
  135. package/dist/bin/test-invalid-signature.d.ts.map +0 -1
  136. package/dist/bin/test-invalid-signature.js.map +0 -1
  137. package/dist/bin/version.d.ts.map +0 -1
  138. package/dist/bin/version.js.map +0 -1
  139. package/dist/lib/xdg-cli-wrapper.d.ts +0 -113
  140. package/dist/lib/xdg-cli-wrapper.d.ts.map +0 -1
  141. package/dist/lib/xdg-cli-wrapper.js +0 -289
  142. package/dist/lib/xdg-cli-wrapper.js.map +0 -1
  143. package/dist/scripts/config-health-check.d.ts +0 -84
  144. package/dist/scripts/config-health-check.d.ts.map +0 -1
  145. package/dist/scripts/config-health-check.js +0 -659
  146. package/dist/scripts/config-health-check.js.map +0 -1
  147. package/dist/scripts/infer-quilt-config.d.ts.map +0 -1
  148. package/dist/scripts/infer-quilt-config.js.map +0 -1
  149. package/dist/scripts/install-wizard.d.ts +0 -34
  150. package/dist/scripts/install-wizard.d.ts.map +0 -1
  151. package/dist/scripts/install-wizard.js +0 -719
  152. package/dist/scripts/install-wizard.js.map +0 -1
  153. package/dist/scripts/sync-secrets.d.ts.map +0 -1
  154. package/dist/scripts/sync-secrets.js.map +0 -1
  155. /package/dist/bin/{create-secret.d.ts → commands/create-secret.d.ts} +0 -0
  156. /package/dist/bin/{create-secret.js → commands/create-secret.js} +0 -0
  157. /package/dist/bin/{publish.d.ts → commands/publish.d.ts} +0 -0
  158. /package/dist/{bin → scripts}/send-event.d.ts +0 -0
  159. /package/dist/{bin → scripts}/send-event.js +0 -0
@@ -0,0 +1,357 @@
1
+ #!/usr/bin/env node
2
+ "use strict";
3
+ /**
4
+ * Configuration Health Check Command
5
+ *
6
+ * Post-setup validation that checks:
7
+ * - Configuration file integrity
8
+ * - Secrets synchronization status
9
+ * - Deployment configuration
10
+ *
11
+ * @module commands/health-check
12
+ */
13
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
14
+ if (k2 === undefined) k2 = k;
15
+ var desc = Object.getOwnPropertyDescriptor(m, k);
16
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
17
+ desc = { enumerable: true, get: function() { return m[k]; } };
18
+ }
19
+ Object.defineProperty(o, k2, desc);
20
+ }) : (function(o, m, k, k2) {
21
+ if (k2 === undefined) k2 = k;
22
+ o[k2] = m[k];
23
+ }));
24
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
25
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
26
+ }) : function(o, v) {
27
+ o["default"] = v;
28
+ });
29
+ var __importStar = (this && this.__importStar) || (function () {
30
+ var ownKeys = function(o) {
31
+ ownKeys = Object.getOwnPropertyNames || function (o) {
32
+ var ar = [];
33
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
34
+ return ar;
35
+ };
36
+ return ownKeys(o);
37
+ };
38
+ return function (mod) {
39
+ if (mod && mod.__esModule) return mod;
40
+ var result = {};
41
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
42
+ __setModuleDefault(result, mod);
43
+ return result;
44
+ };
45
+ })();
46
+ var __importDefault = (this && this.__importDefault) || function (mod) {
47
+ return (mod && mod.__esModule) ? mod : { "default": mod };
48
+ };
49
+ Object.defineProperty(exports, "__esModule", { value: true });
50
+ exports.runHealthChecks = runHealthChecks;
51
+ exports.healthCheckCommand = healthCheckCommand;
52
+ const xdg_config_1 = require("../../lib/xdg-config");
53
+ const fs_1 = require("fs");
54
+ const client_secrets_manager_1 = require("@aws-sdk/client-secrets-manager");
55
+ const chalk_1 = __importDefault(require("chalk"));
56
+ const path_1 = require("path");
57
+ /**
58
+ * Checks XDG configuration file integrity
59
+ */
60
+ async function checkXDGIntegrity(xdgConfig, profile) {
61
+ try {
62
+ // Check if profile exists
63
+ if (!xdgConfig.profileExists(profile)) {
64
+ return {
65
+ check: "xdg-integrity",
66
+ status: "fail",
67
+ message: "Profile does not exist",
68
+ details: { profile, recommendation: "Run setup wizard to create configuration" },
69
+ };
70
+ }
71
+ // Try to read and validate profile config
72
+ try {
73
+ const config = xdgConfig.readProfile(profile);
74
+ // Validate required fields
75
+ if (!config.quilt || !config.benchling || !config.packages || !config.deployment) {
76
+ return {
77
+ check: "xdg-integrity",
78
+ status: "fail",
79
+ message: "Configuration is missing required sections",
80
+ details: { profile },
81
+ };
82
+ }
83
+ return {
84
+ check: "xdg-integrity",
85
+ status: "pass",
86
+ message: "XDG configuration integrity verified",
87
+ details: { profile },
88
+ };
89
+ }
90
+ catch (error) {
91
+ return {
92
+ check: "xdg-integrity",
93
+ status: "fail",
94
+ message: `Configuration validation failed: ${error.message}`,
95
+ details: { profile, error: error.message },
96
+ };
97
+ }
98
+ }
99
+ catch (error) {
100
+ return {
101
+ check: "xdg-integrity",
102
+ status: "fail",
103
+ message: `Integrity check failed: ${error.message}`,
104
+ details: { error: error.message },
105
+ };
106
+ }
107
+ }
108
+ /**
109
+ * Checks if local config and remote secrets are in sync
110
+ */
111
+ async function checkSecretsSync(xdgConfig, profile) {
112
+ try {
113
+ // Check if profile exists
114
+ if (!xdgConfig.profileExists(profile)) {
115
+ return {
116
+ check: "secrets-sync",
117
+ status: "warn",
118
+ message: "No configuration found",
119
+ details: { profile, recommendation: "Run setup wizard first" },
120
+ };
121
+ }
122
+ // Load profile config
123
+ const config = xdgConfig.readProfile(profile);
124
+ if (!config.benchling.secretArn) {
125
+ return {
126
+ check: "secrets-sync",
127
+ status: "warn",
128
+ message: "No secrets configured",
129
+ details: { profile, recommendation: "Run 'benchling-webhook sync-secrets' to sync secrets" },
130
+ };
131
+ }
132
+ // Get local config modification time
133
+ const configPath = (0, path_1.join)(xdgConfig["baseDir"], profile, "config.json");
134
+ const configStats = (0, fs_1.statSync)(configPath);
135
+ const localModifiedAt = configStats.mtime;
136
+ // Get remote secret modification time
137
+ const region = config.deployment.region;
138
+ const clientConfig = { region };
139
+ // If AWS profile is configured, use it
140
+ if (process.env.AWS_PROFILE) {
141
+ const { fromIni } = await Promise.resolve().then(() => __importStar(require("@aws-sdk/credential-providers")));
142
+ clientConfig.credentials = fromIni({ profile: process.env.AWS_PROFILE });
143
+ }
144
+ const client = new client_secrets_manager_1.SecretsManagerClient(clientConfig);
145
+ const command = new client_secrets_manager_1.DescribeSecretCommand({ SecretId: config.benchling.secretArn });
146
+ const secretMetadata = await client.send(command);
147
+ if (!secretMetadata.LastChangedDate) {
148
+ return {
149
+ check: "secrets-sync",
150
+ status: "warn",
151
+ message: "Cannot determine secret modification time",
152
+ details: { secretArn: config.benchling.secretArn },
153
+ };
154
+ }
155
+ const remoteModifiedAt = secretMetadata.LastChangedDate;
156
+ // Compare times (allow 1 second tolerance for filesystem precision)
157
+ const timeDiffMs = Math.abs(localModifiedAt.getTime() - remoteModifiedAt.getTime());
158
+ const timeDiffSeconds = Math.floor(timeDiffMs / 1000);
159
+ if (localModifiedAt > remoteModifiedAt && timeDiffMs > 1000) {
160
+ // Local is newer - secrets need to be synced
161
+ const ageMinutes = Math.floor(timeDiffMs / (1000 * 60));
162
+ const ageHours = Math.floor(ageMinutes / 60);
163
+ const ageDays = Math.floor(ageHours / 24);
164
+ let ageDescription;
165
+ if (ageDays > 0) {
166
+ ageDescription = `${ageDays} day${ageDays > 1 ? "s" : ""}`;
167
+ }
168
+ else if (ageHours > 0) {
169
+ ageDescription = `${ageHours} hour${ageHours > 1 ? "s" : ""}`;
170
+ }
171
+ else {
172
+ ageDescription = `${ageMinutes} minute${ageMinutes > 1 ? "s" : ""}`;
173
+ }
174
+ return {
175
+ check: "secrets-sync",
176
+ status: "warn",
177
+ message: `Local config is ${ageDescription} newer than remote secrets`,
178
+ details: {
179
+ localModifiedAt: localModifiedAt.toISOString(),
180
+ remoteModifiedAt: remoteModifiedAt.toISOString(),
181
+ timeDiffSeconds,
182
+ recommendation: "Run 'benchling-webhook sync-secrets --force' to sync changes",
183
+ },
184
+ };
185
+ }
186
+ return {
187
+ check: "secrets-sync",
188
+ status: "pass",
189
+ message: "Local config and remote secrets are in sync",
190
+ details: {
191
+ localModifiedAt: localModifiedAt.toISOString(),
192
+ remoteModifiedAt: remoteModifiedAt.toISOString(),
193
+ timeDiffSeconds,
194
+ },
195
+ };
196
+ }
197
+ catch (error) {
198
+ return {
199
+ check: "secrets-sync",
200
+ status: "fail",
201
+ message: `Sync check failed: ${error.message}`,
202
+ details: { error: error.message },
203
+ };
204
+ }
205
+ }
206
+ /**
207
+ * Checks deployment configuration
208
+ */
209
+ async function checkDeploymentConfig(xdgConfig, profile) {
210
+ try {
211
+ // Check for active deployment
212
+ const deployment = xdgConfig.getActiveDeployment(profile, "prod");
213
+ if (!deployment) {
214
+ return {
215
+ check: "deployment-config",
216
+ status: "warn",
217
+ message: "No deployment found",
218
+ details: {
219
+ profile,
220
+ recommendation: "Run 'benchling-webhook deploy' to deploy the stack",
221
+ },
222
+ };
223
+ }
224
+ // Check for webhook endpoint
225
+ if (!deployment.endpoint) {
226
+ return {
227
+ check: "deployment-config",
228
+ status: "warn",
229
+ message: "Webhook endpoint not configured",
230
+ details: { profile },
231
+ };
232
+ }
233
+ // Check deployment age
234
+ const deployedDate = new Date(deployment.timestamp);
235
+ const ageInDays = (Date.now() - deployedDate.getTime()) / (1000 * 60 * 60 * 24);
236
+ if (ageInDays > 30) {
237
+ return {
238
+ check: "deployment-config",
239
+ status: "warn",
240
+ message: `Deployment is ${Math.floor(ageInDays)} days old`,
241
+ details: {
242
+ deployedAt: deployment.timestamp,
243
+ ageInDays: Math.floor(ageInDays),
244
+ recommendation: "Consider updating deployment",
245
+ },
246
+ };
247
+ }
248
+ return {
249
+ check: "deployment-config",
250
+ status: "pass",
251
+ message: "Deployment configuration valid",
252
+ details: {
253
+ endpoint: deployment.endpoint,
254
+ deployedAt: deployment.timestamp,
255
+ stackName: deployment.stackName,
256
+ region: deployment.region,
257
+ },
258
+ };
259
+ }
260
+ catch (error) {
261
+ return {
262
+ check: "deployment-config",
263
+ status: "fail",
264
+ message: `Deployment check failed: ${error.message}`,
265
+ details: { error: error.message },
266
+ };
267
+ }
268
+ }
269
+ /**
270
+ * Runs all health checks
271
+ */
272
+ async function runHealthChecks(profile = "default") {
273
+ const xdgConfig = new xdg_config_1.XDGConfig();
274
+ const checks = [];
275
+ // Run all checks in parallel
276
+ const results = await Promise.all([
277
+ checkXDGIntegrity(xdgConfig, profile),
278
+ checkSecretsSync(xdgConfig, profile),
279
+ checkDeploymentConfig(xdgConfig, profile),
280
+ ]);
281
+ checks.push(...results);
282
+ // Determine overall status
283
+ const failCount = checks.filter((c) => c.status === "fail").length;
284
+ const warnCount = checks.filter((c) => c.status === "warn").length;
285
+ let overall;
286
+ if (failCount > 0) {
287
+ overall = "unhealthy";
288
+ }
289
+ else if (warnCount > 0) {
290
+ overall = "degraded";
291
+ }
292
+ else {
293
+ overall = "healthy";
294
+ }
295
+ return {
296
+ overall,
297
+ checks,
298
+ timestamp: new Date().toISOString(),
299
+ profile,
300
+ };
301
+ }
302
+ /**
303
+ * Formats health status for console output
304
+ */
305
+ function formatHealthStatus(status) {
306
+ const lines = [];
307
+ lines.push("╔═══════════════════════════════════════════════════════════╗");
308
+ lines.push("║ Configuration Health Check ║");
309
+ lines.push("╚═══════════════════════════════════════════════════════════╝");
310
+ lines.push("");
311
+ lines.push(`Profile: ${status.profile}`);
312
+ lines.push(`Timestamp: ${status.timestamp}`);
313
+ const overallColor = status.overall === "healthy" ? chalk_1.default.green : status.overall === "degraded" ? chalk_1.default.yellow : chalk_1.default.red;
314
+ lines.push(`Overall Status: ${overallColor(status.overall.toUpperCase())}`);
315
+ lines.push("");
316
+ lines.push("Checks:");
317
+ for (const check of status.checks) {
318
+ const icon = check.status === "pass" ? chalk_1.default.green("✓") : check.status === "warn" ? chalk_1.default.yellow("⚠") : chalk_1.default.red("❌");
319
+ lines.push(` ${icon} ${check.check}: ${check.message}`);
320
+ if (check.details) {
321
+ Object.entries(check.details).forEach(([key, value]) => {
322
+ if (key !== "error" && key !== "recommendation") {
323
+ lines.push(` ${chalk_1.default.dim(`${key}: ${value}`)}`);
324
+ }
325
+ });
326
+ if (check.details.recommendation) {
327
+ lines.push(` ${chalk_1.default.cyan(`→ ${check.details.recommendation}`)}`);
328
+ }
329
+ }
330
+ lines.push("");
331
+ }
332
+ return lines.join("\n");
333
+ }
334
+ /**
335
+ * Health check command handler
336
+ */
337
+ async function healthCheckCommand(options = {}) {
338
+ const { profile = "default", json = false } = options;
339
+ const status = await runHealthChecks(profile);
340
+ if (json) {
341
+ console.log(JSON.stringify(status, null, 2));
342
+ }
343
+ else {
344
+ console.log(formatHealthStatus(status));
345
+ }
346
+ // Exit with appropriate code
347
+ if (status.overall === "unhealthy") {
348
+ process.exit(1);
349
+ }
350
+ else if (status.overall === "degraded") {
351
+ process.exit(2);
352
+ }
353
+ else {
354
+ process.exit(0);
355
+ }
356
+ }
357
+ //# sourceMappingURL=health-check.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"health-check.js","sourceRoot":"","sources":["../../../bin/commands/health-check.ts"],"names":[],"mappings":"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"}
@@ -9,18 +9,16 @@
9
9
  *
10
10
  * @module scripts/infer-quilt-config
11
11
  */
12
- import { DerivedConfig } from "../lib/types/config";
13
12
  /**
14
13
  * Result of Quilt configuration inference
15
14
  */
16
15
  interface InferenceResult {
17
- catalogUrl?: string;
18
- quiltUserBucket?: string;
19
- quiltDatabase?: string;
20
- quiltStackArn?: string;
21
- quiltRegion?: string;
22
- queueArn?: string;
23
- registryUrl?: string;
16
+ catalog?: string;
17
+ database?: string;
18
+ stackArn?: string;
19
+ region?: string;
20
+ account?: string;
21
+ queueUrl?: string;
24
22
  source: string;
25
23
  }
26
24
  /**
@@ -39,12 +37,5 @@ export declare function inferQuiltConfig(options: {
39
37
  profile?: string;
40
38
  interactive?: boolean;
41
39
  }): Promise<InferenceResult>;
42
- /**
43
- * Converts inference result to DerivedConfig
44
- *
45
- * @param result - Inference result
46
- * @returns DerivedConfig object
47
- */
48
- export declare function inferenceResultToDerivedConfig(result: InferenceResult): DerivedConfig;
49
40
  export {};
50
41
  //# sourceMappingURL=infer-quilt-config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"infer-quilt-config.d.ts","sourceRoot":"","sources":["../../../bin/commands/infer-quilt-config.ts"],"names":[],"mappings":";AACA;;;;;;;;;GASG;AA4BH;;GAEG;AACH,UAAU,eAAe;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;CAClB;AAmJD;;;;;;;;;;GAUG;AACH,wBAAsB,gBAAgB,CAAC,OAAO,EAAE;IAC5C,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,OAAO,CAAC;CACzB,GAAG,OAAO,CAAC,eAAe,CAAC,CA8F3B"}
@@ -45,10 +45,10 @@ var __importStar = (this && this.__importStar) || (function () {
45
45
  })();
46
46
  Object.defineProperty(exports, "__esModule", { value: true });
47
47
  exports.inferQuiltConfig = inferQuiltConfig;
48
- exports.inferenceResultToDerivedConfig = inferenceResultToDerivedConfig;
49
48
  const child_process_1 = require("child_process");
50
49
  const readline = __importStar(require("readline"));
51
50
  const client_cloudformation_1 = require("@aws-sdk/client-cloudformation");
51
+ const sqs_1 = require("../../lib/utils/sqs");
52
52
  /**
53
53
  * Executes quilt3 config command to get current catalog URL
54
54
  *
@@ -113,6 +113,12 @@ async function findQuiltStacks(region = "us-east-1", profile) {
113
113
  stackArn: stackDetail.StackId || "",
114
114
  region: region,
115
115
  };
116
+ // Extract AWS Account ID from Stack ARN
117
+ // ARN format: arn:aws:cloudformation:REGION:ACCOUNT_ID:stack/STACK_NAME/STACK_ID
118
+ const arnMatch = stackInfo.stackArn.match(/^arn:aws:cloudformation:[^:]+:(\d{12}):/);
119
+ if (arnMatch) {
120
+ stackInfo.account = arnMatch[1];
121
+ }
116
122
  // Extract outputs
117
123
  for (const output of outputs) {
118
124
  const key = output.OutputKey || "";
@@ -120,14 +126,13 @@ async function findQuiltStacks(region = "us-east-1", profile) {
120
126
  if (key === "QuiltWebHost") {
121
127
  stackInfo.catalogUrl = value;
122
128
  }
123
- else if (key.includes("ucket")) {
124
- stackInfo.bucket = value;
125
- }
126
129
  else if (key === "UserAthenaDatabaseName" || key.includes("Database")) {
127
130
  stackInfo.database = value;
128
131
  }
129
132
  else if (key.includes("Queue")) {
130
- stackInfo.queueArn = value;
133
+ if ((0, sqs_1.isQueueUrl)(value)) {
134
+ stackInfo.queueUrl = value;
135
+ }
131
136
  }
132
137
  }
133
138
  stackInfos.push(stackInfo);
@@ -192,7 +197,7 @@ async function inferQuiltConfig(options) {
192
197
  console.log("Checking quilt3 CLI configuration...");
193
198
  const quilt3Config = getQuilt3Catalog();
194
199
  if (quilt3Config?.catalogUrl) {
195
- result.catalogUrl = quilt3Config.catalogUrl;
200
+ result.catalog = quilt3Config.catalogUrl;
196
201
  result.source = "quilt3-cli";
197
202
  }
198
203
  else {
@@ -208,10 +213,10 @@ async function inferQuiltConfig(options) {
208
213
  console.log(`Found ${stacks.length} Quilt stack(s):\n`);
209
214
  let selectedStack;
210
215
  // If we have a catalog URL from quilt3, try to find matching stack
211
- if (result.catalogUrl && stacks.length > 1) {
216
+ if (result.catalog && stacks.length > 1) {
212
217
  // Normalize URLs for comparison (remove protocol and trailing slashes)
213
218
  const normalizeUrl = (url) => url.replace(/^https?:\/\//, "").replace(/\/$/, "");
214
- const targetUrl = normalizeUrl(result.catalogUrl);
219
+ const targetUrl = normalizeUrl(result.catalog);
215
220
  const matchingStack = stacks.find((s) => s.catalogUrl && normalizeUrl(s.catalogUrl) === targetUrl);
216
221
  if (matchingStack) {
217
222
  selectedStack = matchingStack;
@@ -219,7 +224,7 @@ async function inferQuiltConfig(options) {
219
224
  }
220
225
  else {
221
226
  // No match found, prompt user
222
- console.log(`No stack found matching catalog URL: ${result.catalogUrl}`);
227
+ console.log(`No stack found matching catalog URL: ${result.catalog}`);
223
228
  if (interactive) {
224
229
  const options = stacks.map((s) => `${s.stackName} (${s.region})`);
225
230
  const selectedIndex = await promptCatalogSelection(options);
@@ -248,19 +253,22 @@ async function inferQuiltConfig(options) {
248
253
  }
249
254
  // Populate result from selected stack
250
255
  if (selectedStack.stackArn) {
251
- result.quiltStackArn = selectedStack.stackArn;
256
+ result.stackArn = selectedStack.stackArn;
252
257
  }
253
- if (selectedStack.bucket) {
254
- result.quiltUserBucket = selectedStack.bucket;
258
+ if (selectedStack.account) {
259
+ result.account = selectedStack.account;
255
260
  }
256
- if (selectedStack.queueArn) {
257
- result.queueArn = selectedStack.queueArn;
261
+ if (selectedStack.database) {
262
+ result.database = selectedStack.database;
258
263
  }
259
- if (selectedStack.catalogUrl && !result.catalogUrl) {
260
- result.catalogUrl = selectedStack.catalogUrl;
264
+ if (selectedStack.queueUrl) {
265
+ result.queueUrl = selectedStack.queueUrl;
266
+ }
267
+ if (selectedStack.catalogUrl && !result.catalog) {
268
+ result.catalog = selectedStack.catalogUrl;
261
269
  }
262
270
  if (selectedStack.region) {
263
- result.quiltRegion = selectedStack.region;
271
+ result.region = selectedStack.region;
264
272
  }
265
273
  if (result.source === "quilt3-cli") {
266
274
  result.source = "quilt3-cli+cloudformation";
@@ -270,39 +278,6 @@ async function inferQuiltConfig(options) {
270
278
  }
271
279
  return result;
272
280
  }
273
- /**
274
- * Converts inference result to DerivedConfig
275
- *
276
- * @param result - Inference result
277
- * @returns DerivedConfig object
278
- */
279
- function inferenceResultToDerivedConfig(result) {
280
- const config = {
281
- _metadata: {
282
- inferredAt: new Date().toISOString(),
283
- inferredFrom: result.source,
284
- source: "infer-quilt-config",
285
- version: "0.6.0",
286
- },
287
- };
288
- if (result.catalogUrl) {
289
- config.catalogUrl = result.catalogUrl;
290
- config.quiltCatalog = result.catalogUrl;
291
- }
292
- if (result.quiltUserBucket) {
293
- config.quiltUserBucket = result.quiltUserBucket;
294
- }
295
- if (result.quiltStackArn) {
296
- config.quiltStackArn = result.quiltStackArn;
297
- }
298
- if (result.quiltRegion) {
299
- config.quiltRegion = result.quiltRegion;
300
- }
301
- if (result.queueArn) {
302
- config.queueArn = result.queueArn;
303
- }
304
- return config;
305
- }
306
281
  /**
307
282
  * Main execution for CLI usage
308
283
  */
@@ -329,19 +304,18 @@ async function main() {
329
304
  const result = await inferQuiltConfig(options);
330
305
  console.log("\n=== Inference Results ===");
331
306
  console.log(`Source: ${result.source}`);
332
- if (result.catalogUrl)
333
- console.log(`Catalog URL: ${result.catalogUrl}`);
334
- if (result.quiltUserBucket)
335
- console.log(`User Bucket: ${result.quiltUserBucket}`);
336
- if (result.quiltStackArn)
337
- console.log(`Stack ARN: ${result.quiltStackArn}`);
338
- if (result.quiltRegion)
339
- console.log(`Region: ${result.quiltRegion}`);
340
- if (result.queueArn)
341
- console.log(`Queue ARN: ${result.queueArn}`);
342
- const derivedConfig = inferenceResultToDerivedConfig(result);
343
- console.log("\n=== Derived Configuration ===");
344
- console.log(JSON.stringify(derivedConfig, null, 4));
307
+ if (result.catalog)
308
+ console.log(`Catalog URL: ${result.catalog}`);
309
+ if (result.database)
310
+ console.log(`Database: ${result.database}`);
311
+ if (result.stackArn)
312
+ console.log(`Stack ARN: ${result.stackArn}`);
313
+ if (result.region)
314
+ console.log(`Region: ${result.region}`);
315
+ if (result.account)
316
+ console.log(`AWS Account ID: ${result.account}`);
317
+ if (result.queueUrl)
318
+ console.log(`Queue URL: ${result.queueUrl}`);
345
319
  }
346
320
  // Run main if executed directly
347
321
  if (require.main === module) {
@@ -0,0 +1 @@
1
+ {"version":3,"file":"infer-quilt-config.js","sourceRoot":"","sources":["../../../bin/commands/infer-quilt-config.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../../bin/commands/init.ts"],"names":[],"mappings":"AAQA,UAAU,WAAW;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,KAAK,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,wBAAsB,WAAW,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAiLrE"}
1
+ {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../../bin/commands/init.ts"],"names":[],"mappings":"AAMA,UAAU,WAAW;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,KAAK,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,wBAAsB,WAAW,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAgJrE"}
@@ -7,10 +7,8 @@ exports.initCommand = initCommand;
7
7
  const fs_1 = require("fs");
8
8
  const path_1 = require("path");
9
9
  const chalk_1 = __importDefault(require("chalk"));
10
- const ora_1 = __importDefault(require("ora"));
11
10
  const boxen_1 = __importDefault(require("boxen"));
12
11
  const enquirer_1 = require("enquirer");
13
- const benchling_webhook_1 = require("../benchling-webhook");
14
12
  async function initCommand(options) {
15
13
  console.log((0, boxen_1.default)(chalk_1.default.bold("Benchling Webhook Setup"), {
16
14
  padding: 1,
@@ -102,36 +100,8 @@ async function initCommand(options) {
102
100
  envLines.push(`BENCHLING_CLIENT_SECRET=${answers.clientSecret}`);
103
101
  envLines.push(`BENCHLING_APP_DEFINITION_ID=${answers.appId}`);
104
102
  envLines.push("");
105
- // Attempt inference if requested
106
- let inferredVars = {};
107
- if (options.infer !== false) {
108
- console.log();
109
- const spinner = (0, ora_1.default)("Inferring additional configuration from catalog...").start();
110
- const inferenceResult = await (0, benchling_webhook_1.inferConfiguration)(answers.catalog);
111
- if (inferenceResult.success) {
112
- inferredVars = inferenceResult.inferredVars;
113
- spinner.succeed("Successfully inferred additional configuration");
114
- if (inferredVars.CDK_DEFAULT_ACCOUNT) {
115
- envLines.push("# AWS Configuration (inferred)");
116
- envLines.push(`CDK_DEFAULT_ACCOUNT=${inferredVars.CDK_DEFAULT_ACCOUNT}`);
117
- envLines.push(`CDK_DEFAULT_REGION=${inferredVars.CDK_DEFAULT_REGION}`);
118
- envLines.push("");
119
- }
120
- if (inferredVars.QUEUE_ARN) {
121
- envLines.push("# SQS Configuration (inferred)");
122
- envLines.push(`QUEUE_ARN=${inferredVars.QUEUE_ARN}`);
123
- envLines.push("");
124
- }
125
- if (inferredVars.QUILT_DATABASE) {
126
- envLines.push("# Quilt Database (inferred)");
127
- envLines.push(`QUILT_DATABASE=${inferredVars.QUILT_DATABASE}`);
128
- envLines.push("");
129
- }
130
- }
131
- else {
132
- spinner.warn(`Could not infer additional configuration: ${inferenceResult.error}`);
133
- }
134
- }
103
+ // Note: Inference is deprecated in secrets-only mode (v0.6.0+)
104
+ // Configuration is now stored in AWS Secrets Manager and CloudFormation parameters
135
105
  // Add optional configuration section
136
106
  if (!options.minimal) {
137
107
  envLines.push("# Optional Configuration");