@quiltdata/benchling-webhook 0.9.1 → 0.9.2-20251217T055806Z

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 (43) hide show
  1. package/dist/bin/cli.js +10 -3
  2. package/dist/bin/cli.js.map +1 -1
  3. package/dist/bin/commands/deploy.d.ts.map +1 -1
  4. package/dist/bin/commands/deploy.js +16 -0
  5. package/dist/bin/commands/deploy.js.map +1 -1
  6. package/dist/bin/commands/infer-quilt-config.d.ts.map +1 -1
  7. package/dist/bin/commands/infer-quilt-config.js +6 -13
  8. package/dist/bin/commands/infer-quilt-config.js.map +1 -1
  9. package/dist/bin/commands/logs.d.ts +1 -0
  10. package/dist/bin/commands/logs.d.ts.map +1 -1
  11. package/dist/bin/commands/logs.js +259 -54
  12. package/dist/bin/commands/logs.js.map +1 -1
  13. package/dist/bin/commands/status.d.ts +5 -0
  14. package/dist/bin/commands/status.d.ts.map +1 -1
  15. package/dist/bin/commands/status.js +59 -4
  16. package/dist/bin/commands/status.js.map +1 -1
  17. package/dist/bin/xdg-launch.d.ts +1 -0
  18. package/dist/bin/xdg-launch.d.ts.map +1 -1
  19. package/dist/bin/xdg-launch.js +10 -0
  20. package/dist/bin/xdg-launch.js.map +1 -1
  21. package/dist/lib/types/config.d.ts +14 -0
  22. package/dist/lib/types/config.d.ts.map +1 -1
  23. package/dist/lib/types/config.js +15 -1
  24. package/dist/lib/types/config.js.map +1 -1
  25. package/dist/lib/utils/ecs-service-discovery.d.ts +33 -0
  26. package/dist/lib/utils/ecs-service-discovery.d.ts.map +1 -1
  27. package/dist/lib/utils/ecs-service-discovery.js +319 -0
  28. package/dist/lib/utils/ecs-service-discovery.js.map +1 -1
  29. package/dist/lib/utils/stack-inference.d.ts +6 -3
  30. package/dist/lib/utils/stack-inference.d.ts.map +1 -1
  31. package/dist/lib/utils/stack-inference.js +21 -3
  32. package/dist/lib/utils/stack-inference.js.map +1 -1
  33. package/dist/lib/wizard/phase3-parameter-collection.d.ts.map +1 -1
  34. package/dist/lib/wizard/phase3-parameter-collection.js +42 -4
  35. package/dist/lib/wizard/phase3-parameter-collection.js.map +1 -1
  36. package/dist/lib/wizard/phase6-integrated-mode.d.ts.map +1 -1
  37. package/dist/lib/wizard/phase6-integrated-mode.js +64 -3
  38. package/dist/lib/wizard/phase6-integrated-mode.js.map +1 -1
  39. package/dist/lib/wizard/phase7-standalone-mode.d.ts.map +1 -1
  40. package/dist/lib/wizard/phase7-standalone-mode.js +25 -0
  41. package/dist/lib/wizard/phase7-standalone-mode.js.map +1 -1
  42. package/dist/package.json +4 -1
  43. package/package.json +4 -1
@@ -22,7 +22,10 @@ const xdg_config_1 = require("../../lib/xdg-config");
22
22
  const ecs_service_discovery_1 = require("../../lib/utils/ecs-service-discovery");
23
23
  const time_format_1 = require("../../lib/utils/time-format");
24
24
  const cli_helpers_1 = require("../../lib/utils/cli-helpers");
25
+ const status_1 = require("./status");
25
26
  const STACK_NAME = "BenchlingWebhookStack";
27
+ const DEFAULT_LOG_LIMIT = 20; // Number of meaningful log entries to show per log group (after filtering health checks)
28
+ const FETCH_LIMIT = 100; // Fetch more logs to ensure we get meaningful entries after filtering
26
29
  /**
27
30
  * Get AWS region and deployment info from profile configuration
28
31
  */
@@ -32,6 +35,8 @@ function getDeploymentInfo(profile, configStorage) {
32
35
  if (config.deployment?.region) {
33
36
  const region = config.deployment.region;
34
37
  const integratedMode = config.integratedStack || false;
38
+ // Get catalog DNS from config
39
+ const catalogDns = config.quilt?.catalog;
35
40
  // Try to get webhook endpoint from deployment tracking
36
41
  let webhookEndpoint;
37
42
  const deployments = configStorage.getDeployments(profile);
@@ -52,6 +57,8 @@ function getDeploymentInfo(profile, configStorage) {
52
57
  integratedMode: true,
53
58
  quiltStackName: match[1],
54
59
  webhookEndpoint,
60
+ catalogDns,
61
+ stackArn: config.quilt.stackArn,
55
62
  };
56
63
  }
57
64
  }
@@ -61,6 +68,7 @@ function getDeploymentInfo(profile, configStorage) {
61
68
  stackName: STACK_NAME,
62
69
  integratedMode: false,
63
70
  webhookEndpoint,
71
+ catalogDns,
64
72
  };
65
73
  }
66
74
  }
@@ -70,6 +78,32 @@ function getDeploymentInfo(profile, configStorage) {
70
78
  }
71
79
  return null;
72
80
  }
81
+ /**
82
+ * Query webhook URL from CloudFormation stack outputs (for integrated mode)
83
+ */
84
+ async function queryWebhookEndpoint(stackArn, region, awsProfile) {
85
+ try {
86
+ const clientConfig = { region };
87
+ if (awsProfile) {
88
+ clientConfig.credentials = (0, credential_providers_1.fromIni)({ profile: awsProfile });
89
+ }
90
+ const cfClient = new client_cloudformation_1.CloudFormationClient(clientConfig);
91
+ const command = new client_cloudformation_1.DescribeStacksCommand({ StackName: stackArn });
92
+ const response = await cfClient.send(command);
93
+ const stack = response.Stacks?.[0];
94
+ if (stack?.Outputs) {
95
+ // Look for BenchlingWebhookEndpoint, WebhookEndpoint, or BenchlingUrl
96
+ const webhookOutput = stack.Outputs.find((o) => o.OutputKey === "BenchlingWebhookEndpoint" ||
97
+ o.OutputKey === "WebhookEndpoint" ||
98
+ o.OutputKey === "BenchlingUrl");
99
+ return webhookOutput?.OutputValue;
100
+ }
101
+ }
102
+ catch (error) {
103
+ console.warn(chalk_1.default.dim(`Could not query webhook URL from stack: ${error.message}`));
104
+ }
105
+ return undefined;
106
+ }
73
107
  /**
74
108
  * Double the time range, capping at 7 days
75
109
  */
@@ -87,9 +121,14 @@ function expandTimeRange(currentSince) {
87
121
  */
88
122
  async function getLogGroupsFromStack(stackName, region, integratedMode, awsProfile) {
89
123
  try {
90
- // For integrated mode, use shared ECS service discovery
124
+ // For integrated mode, discover both ECS services and API Gateway logs
91
125
  if (integratedMode) {
92
- return await (0, ecs_service_discovery_1.discoverECSServiceLogGroups)(stackName, region, awsProfile);
126
+ const [ecsLogGroups, apiGatewayLogGroups] = await Promise.all([
127
+ (0, ecs_service_discovery_1.discoverECSServiceLogGroups)(stackName, region, awsProfile),
128
+ (0, ecs_service_discovery_1.discoverAPIGatewayLogGroups)(stackName, region, awsProfile),
129
+ ]);
130
+ // Merge both log group collections
131
+ return { ...ecsLogGroups, ...apiGatewayLogGroups };
93
132
  }
94
133
  // For standalone mode, use stack outputs
95
134
  const clientConfig = { region };
@@ -124,10 +163,22 @@ async function getLogGroupsFromStack(stackName, region, integratedMode, awsProfi
124
163
  return {};
125
164
  }
126
165
  }
166
+ /**
167
+ * Check if a log message is a health check
168
+ */
169
+ function isHealthCheck(message) {
170
+ const healthCheckPatterns = [
171
+ /GET\s+\/health/i,
172
+ /GET\s+\/healthcheck/i,
173
+ /ELB-HealthChecker/i,
174
+ /"GET\s+\/\s+HTTP/i, // Root path health checks
175
+ ];
176
+ return healthCheckPatterns.some((pattern) => pattern.test(message));
177
+ }
127
178
  /**
128
179
  * Fetch logs from a single log group
129
180
  */
130
- async function fetchLogsFromGroup(logGroupName, region, since, limit, filterPattern, awsProfile) {
181
+ async function fetchLogsFromGroup(logGroupName, region, since, limit, includeHealth, filterPattern, awsProfile) {
131
182
  try {
132
183
  const clientConfig = { region };
133
184
  if (awsProfile) {
@@ -135,14 +186,26 @@ async function fetchLogsFromGroup(logGroupName, region, since, limit, filterPatt
135
186
  }
136
187
  const logsClient = new client_cloudwatch_logs_1.CloudWatchLogsClient(clientConfig);
137
188
  const startTime = Date.now() - (0, time_format_1.parseTimeRange)(since);
189
+ // Fetch more logs than needed to account for filtering
190
+ const fetchLimit = includeHealth ? limit : FETCH_LIMIT;
138
191
  const command = new client_cloudwatch_logs_1.FilterLogEventsCommand({
139
192
  logGroupName,
140
193
  startTime,
141
194
  filterPattern,
142
- limit,
195
+ limit: fetchLimit,
143
196
  });
144
197
  const response = await logsClient.send(command);
145
- return response.events || [];
198
+ let events = response.events || [];
199
+ // Sort by timestamp descending (most recent first) BEFORE filtering
200
+ // This ensures we filter from the most recent logs, not oldest
201
+ events.sort((a, b) => (b.timestamp || 0) - (a.timestamp || 0));
202
+ // Filter out health checks unless explicitly requested
203
+ if (!includeHealth) {
204
+ events = events.filter((event) => !isHealthCheck(event.message || ""));
205
+ }
206
+ // Limit to the requested number of entries
207
+ events = events.slice(0, limit);
208
+ return events;
146
209
  }
147
210
  catch (error) {
148
211
  console.warn(chalk_1.default.dim(`Could not fetch logs from ${logGroupName}: ${error.message}`));
@@ -152,18 +215,33 @@ async function fetchLogsFromGroup(logGroupName, region, since, limit, filterPatt
152
215
  /**
153
216
  * Display logs in organized sections
154
217
  */
155
- function displayLogs(logGroups, profile, region, since, limit, webhookEndpoint, expanded) {
218
+ function displayLogs(logGroups, profile, region, since, limit, webhookEndpoint, catalogDns, expanded, rolloutStatus, stackArn) {
156
219
  const timeStr = (0, time_format_1.formatLocalDateTime)(new Date());
157
220
  const timezone = (0, time_format_1.getLocalTimezone)();
158
221
  console.log(chalk_1.default.bold(`\nLogs for Profile: ${profile} @ ${timeStr} (${timezone})\n`));
159
222
  console.log(chalk_1.default.dim("─".repeat(80)));
160
- // Show webhook URL prominently at the top
161
- if (webhookEndpoint) {
162
- console.log(`${chalk_1.default.bold("Webhook URL:")} ${chalk_1.default.cyan(webhookEndpoint)}`);
163
- console.log(chalk_1.default.dim("─".repeat(80)));
223
+ // Compact header: Catalog DNS and Webhook URL on one line
224
+ const dnsText = catalogDns ? `${chalk_1.default.bold("Catalog:")} ${chalk_1.default.cyan(catalogDns)}` : "";
225
+ const webhookText = webhookEndpoint ? `${chalk_1.default.bold("Webhook:")} ${chalk_1.default.cyan(webhookEndpoint)}` : "";
226
+ if (dnsText || webhookText) {
227
+ console.log(`${dnsText} ${webhookText}`.trim());
164
228
  }
165
- console.log(`${chalk_1.default.bold("Region:")} ${chalk_1.default.cyan(region)} ${chalk_1.default.bold("Time Range:")} ${chalk_1.default.cyan(`Last ${since}`)}${expanded ? chalk_1.default.yellow(" (auto-expanded)") : ""}`);
166
- console.log(`${chalk_1.default.bold("Showing:")} ${chalk_1.default.cyan(`Last ~${limit} entries per log group`)}`);
229
+ // Second line: Stack ARN (or Region), Time Range, Limit, and Rollout Status
230
+ const rolloutText = rolloutStatus
231
+ ? rolloutStatus === "COMPLETED"
232
+ ? chalk_1.default.green("✓")
233
+ : rolloutStatus === "FAILED"
234
+ ? chalk_1.default.red("✗ FAILED")
235
+ : chalk_1.default.yellow("⟳ " + rolloutStatus)
236
+ : "";
237
+ const expandedText = expanded ? chalk_1.default.yellow(" (auto-expanded)") : "";
238
+ // Strip UUID from stack ARN for cleaner display
239
+ // arn:aws:cloudformation:us-east-2:712023778557:stack/tf-dev-bench2/4c744610... -> arn:aws:cloudformation:us-east-2:712023778557:stack/tf-dev-bench2
240
+ const cleanStackArn = stackArn ? stackArn.replace(/\/[a-f0-9-]{36}$/, "") : undefined;
241
+ const stackText = cleanStackArn ? `${chalk_1.default.bold("Stack:")} ${chalk_1.default.cyan(cleanStackArn)}` : `${chalk_1.default.bold("Region:")} ${chalk_1.default.cyan(region)}`;
242
+ console.log(`${stackText} ` +
243
+ `${chalk_1.default.bold("Range:")} ${chalk_1.default.cyan(`Last ${since}`)}${expandedText} ` +
244
+ `${chalk_1.default.bold("Tail:")} ${chalk_1.default.cyan(`~${limit}`)}${rolloutText ? ` ${chalk_1.default.bold("Status:")} ${rolloutText}` : ""}`);
167
245
  console.log(chalk_1.default.dim("─".repeat(80)));
168
246
  console.log("");
169
247
  // Display each log group in its own section
@@ -180,22 +258,76 @@ function displayLogs(logGroups, profile, region, since, limit, webhookEndpoint,
180
258
  if (!entry.timestamp || !entry.message)
181
259
  continue;
182
260
  const timeDisplay = (0, time_format_1.formatLocalTime)(entry.timestamp);
183
- // Color code by log level if detectable
184
261
  let message = entry.message.trim();
185
- let messageColor = chalk_1.default.white;
186
- if (message.includes("ERROR") || message.includes("CRITICAL")) {
187
- messageColor = chalk_1.default.red;
262
+ // Try to parse as JSON (API Gateway access logs are JSON formatted)
263
+ let isJsonLog = false;
264
+ let parsedLog = null;
265
+ try {
266
+ parsedLog = JSON.parse(message);
267
+ isJsonLog = true;
188
268
  }
189
- else if (message.includes("WARNING") || message.includes("WARN")) {
190
- messageColor = chalk_1.default.yellow;
269
+ catch {
270
+ // Not JSON, treat as plain text
191
271
  }
192
- else if (message.includes("INFO")) {
193
- messageColor = chalk_1.default.cyan;
272
+ // Format JSON logs in a more readable way
273
+ if (isJsonLog && parsedLog) {
274
+ // API Gateway access log format
275
+ const ip = parsedLog.ip;
276
+ const httpMethod = parsedLog.httpMethod;
277
+ const resourcePath = parsedLog.resourcePath;
278
+ const status = parsedLog.status;
279
+ const requestTime = parsedLog.requestTime;
280
+ const responseLength = parsedLog.responseLength;
281
+ const protocol = parsedLog.protocol;
282
+ // Color code by status
283
+ let statusColor = chalk_1.default.white;
284
+ if (status) {
285
+ if (status >= 500) {
286
+ statusColor = chalk_1.default.red.bold;
287
+ }
288
+ else if (status >= 400) {
289
+ statusColor = chalk_1.default.yellow;
290
+ }
291
+ else if (status >= 300) {
292
+ statusColor = chalk_1.default.cyan;
293
+ }
294
+ else if (status >= 200) {
295
+ statusColor = chalk_1.default.green;
296
+ }
297
+ }
298
+ // Build formatted log line
299
+ const parts = [];
300
+ if (ip)
301
+ parts.push(chalk_1.default.dim(`IP: ${ip}`));
302
+ if (httpMethod && resourcePath)
303
+ parts.push(`${chalk_1.default.bold(httpMethod)} ${resourcePath}`);
304
+ if (status)
305
+ parts.push(`${statusColor(status.toString())}`);
306
+ if (responseLength !== undefined)
307
+ parts.push(chalk_1.default.dim(`${responseLength} bytes`));
308
+ if (protocol)
309
+ parts.push(chalk_1.default.dim(protocol));
310
+ if (requestTime)
311
+ parts.push(chalk_1.default.dim(`(${requestTime})`));
312
+ console.log(` ${chalk_1.default.dim(timeDisplay)} ${parts.join(" ")}`);
194
313
  }
195
- else if (message.includes("DEBUG")) {
196
- messageColor = chalk_1.default.dim;
314
+ else {
315
+ // Plain text log - color code by log level if detectable
316
+ let messageColor = chalk_1.default.white;
317
+ if (message.includes("ERROR") || message.includes("CRITICAL")) {
318
+ messageColor = chalk_1.default.red;
319
+ }
320
+ else if (message.includes("WARNING") || message.includes("WARN")) {
321
+ messageColor = chalk_1.default.yellow;
322
+ }
323
+ else if (message.includes("INFO")) {
324
+ messageColor = chalk_1.default.cyan;
325
+ }
326
+ else if (message.includes("DEBUG")) {
327
+ messageColor = chalk_1.default.dim;
328
+ }
329
+ console.log(` ${chalk_1.default.dim(timeDisplay)} ${messageColor(message)}`);
197
330
  }
198
- console.log(` ${chalk_1.default.dim(timeDisplay)} ${messageColor(message)}`);
199
331
  }
200
332
  console.log("");
201
333
  }
@@ -204,38 +336,83 @@ function displayLogs(logGroups, profile, region, since, limit, webhookEndpoint,
204
336
  /**
205
337
  * Fetch logs from all relevant log groups
206
338
  */
207
- async function fetchAllLogs(stackName, region, since, limit, type, integratedMode, filterPattern, awsProfile) {
339
+ async function fetchAllLogs(stackName, region, since, limit, type, integratedMode, includeHealth, filterPattern, awsProfile) {
208
340
  // Get log groups from stack
209
341
  const discoveredLogGroups = await getLogGroupsFromStack(stackName, region, integratedMode, awsProfile);
210
342
  const result = [];
211
343
  // For integrated mode, query all discovered log groups
212
344
  if (integratedMode) {
345
+ // Deduplicate log groups (multiple ECS services may share the same log group)
346
+ const uniqueLogGroups = new Map();
347
+ for (const [serviceName, logGroupName] of Object.entries(discoveredLogGroups)) {
348
+ // Keep the first service name for each unique log group
349
+ if (!uniqueLogGroups.has(logGroupName)) {
350
+ uniqueLogGroups.set(logGroupName, serviceName);
351
+ }
352
+ }
213
353
  // If type is specified and not "all", filter to only matching services
214
- const logGroupEntries = Object.entries(discoveredLogGroups);
354
+ const logGroupEntries = Array.from(uniqueLogGroups.entries()).map(([logGroupName, serviceName]) => [serviceName, logGroupName]);
215
355
  for (const [serviceName, logGroupName] of logGroupEntries) {
356
+ // Determine log type
357
+ let logType = "ecs";
358
+ if (serviceName.includes("api-gateway")) {
359
+ logType = "api-gateway";
360
+ }
216
361
  // If type filter is specified, only show matching services
217
362
  if (type !== "all") {
218
- // For integrated mode, "ecs" type shows all ECS services
219
- // Other types (api, api-exec) are not available in integrated mode
220
- if (type !== "ecs") {
363
+ // For integrated mode:
364
+ // - "ecs" type shows all ECS services
365
+ // - "api" type shows API Gateway access logs
366
+ // - "api-exec" type shows API Gateway execution logs
367
+ if (type === "ecs" && logType !== "ecs") {
368
+ continue;
369
+ }
370
+ if ((type === "api" || type === "api-exec") && logType !== "api-gateway") {
371
+ continue;
372
+ }
373
+ // For API Gateway, further filter by access vs execution
374
+ if (type === "api" && !serviceName.includes("access")) {
375
+ continue;
376
+ }
377
+ if (type === "api-exec" && !serviceName.includes("execution")) {
221
378
  continue;
222
379
  }
223
380
  }
224
- // Fetch logs from this group
225
- const entries = await fetchLogsFromGroup(logGroupName, region, since, limit, filterPattern, awsProfile);
226
- // Sort by timestamp descending (most recent first) and limit
227
- const sortedEntries = entries
228
- .sort((a, b) => (b.timestamp || 0) - (a.timestamp || 0))
229
- .slice(0, limit);
230
- // Create friendly display name from service name
231
- const displayName = serviceName
232
- .split("-")
233
- .map((word) => word.charAt(0).toUpperCase() + word.slice(1))
234
- .join(" ");
381
+ // Fetch logs from this group (already sorted and limited)
382
+ const entries = await fetchLogsFromGroup(logGroupName, region, since, limit, includeHealth, filterPattern, awsProfile);
383
+ // Create friendly display name
384
+ let displayName;
385
+ if (logType === "api-gateway") {
386
+ if (serviceName.includes("access")) {
387
+ displayName = "API Gateway Access Logs";
388
+ }
389
+ else if (serviceName.includes("execution")) {
390
+ displayName = "API Gateway Execution Logs";
391
+ }
392
+ else {
393
+ displayName = "API Gateway Logs";
394
+ }
395
+ }
396
+ else {
397
+ // ECS service - use log group name for shared log groups
398
+ // If log group name looks like a simple identifier, use it directly
399
+ if (logGroupName.includes("/") || logGroupName.startsWith("ecs-")) {
400
+ // Standard ECS log group format - extract friendly name from service
401
+ displayName = serviceName
402
+ .split("-")
403
+ .map((word) => word.charAt(0).toUpperCase() + word.slice(1))
404
+ .join(" ");
405
+ displayName = `${displayName} (ECS)`;
406
+ }
407
+ else {
408
+ // Simple shared log group name - use it directly
409
+ displayName = `${logGroupName} (ECS)`;
410
+ }
411
+ }
235
412
  result.push({
236
413
  name: logGroupName,
237
- displayName: `${displayName} (ECS)`,
238
- entries: sortedEntries,
414
+ displayName,
415
+ entries,
239
416
  });
240
417
  }
241
418
  return result;
@@ -265,16 +442,12 @@ async function fetchAllLogs(stackName, region, since, limit, type, integratedMod
265
442
  default:
266
443
  displayName = logType;
267
444
  }
268
- // Fetch logs from this group
269
- const entries = await fetchLogsFromGroup(logGroupName, region, since, limit, filterPattern, awsProfile);
270
- // Sort by timestamp descending (most recent first) and limit
271
- const sortedEntries = entries
272
- .sort((a, b) => (b.timestamp || 0) - (a.timestamp || 0))
273
- .slice(0, limit);
445
+ // Fetch logs from this group (already sorted and limited)
446
+ const entries = await fetchLogsFromGroup(logGroupName, region, since, limit, includeHealth, filterPattern, awsProfile);
274
447
  result.push({
275
448
  name: logGroupName,
276
449
  displayName,
277
- entries: sortedEntries,
450
+ entries,
278
451
  });
279
452
  }
280
453
  return result;
@@ -283,7 +456,7 @@ async function fetchAllLogs(stackName, region, since, limit, type, integratedMod
283
456
  * Logs command implementation
284
457
  */
285
458
  async function logsCommand(options = {}) {
286
- const { profile = "default", awsProfile, type = "all", since = "5m", filter, follow = false, timer, limit = 5, configStorage, } = options;
459
+ const { profile = "default", awsProfile, type = "all", since = "5m", filter, follow = false, timer, limit = DEFAULT_LOG_LIMIT, configStorage, includeHealth = false, } = options;
287
460
  // Validate log type
288
461
  if (!["ecs", "api", "api-exec", "authorizer", "all"].includes(type)) {
289
462
  const errorMsg = "Invalid log type. Must be 'ecs', 'api', 'api-exec', 'authorizer', or 'all'";
@@ -312,9 +485,33 @@ async function logsCommand(options = {}) {
312
485
  console.error(chalk_1.default.red(`\n❌ ${errorMsg}\n`));
313
486
  return { success: false, error: errorMsg };
314
487
  }
315
- const { region, integratedMode, quiltStackName, webhookEndpoint } = deploymentInfo;
316
- // For integrated mode, use Quilt stack name; for standalone use BenchlingWebhookStack
317
- const stackName = integratedMode && quiltStackName ? quiltStackName : STACK_NAME;
488
+ let { region, integratedMode, quiltStackName, webhookEndpoint, catalogDns, stackArn } = deploymentInfo;
489
+ // For integrated mode, query webhook URL from CloudFormation if not in deployments.json
490
+ if (integratedMode && !webhookEndpoint && stackArn) {
491
+ webhookEndpoint = await queryWebhookEndpoint(stackArn, region, awsProfile);
492
+ // Cache the webhook URL in deployments.json for future lookups
493
+ if (webhookEndpoint) {
494
+ try {
495
+ xdg.recordDeployment(profile, {
496
+ stage: "prod",
497
+ endpoint: webhookEndpoint,
498
+ timestamp: new Date().toISOString(),
499
+ imageTag: "integrated", // Marker for integrated stack (no image deployment)
500
+ stackName: quiltStackName || "QuiltStack",
501
+ region,
502
+ });
503
+ }
504
+ catch (error) {
505
+ // Non-fatal - just means we'll query again next time
506
+ console.warn(chalk_1.default.dim(`Could not cache webhook URL: ${error.message}`));
507
+ }
508
+ }
509
+ }
510
+ // For integrated mode, use full stack ARN if available (for API Gateway discovery),
511
+ // otherwise use extracted stack name; for standalone use BenchlingWebhookStack
512
+ const stackName = integratedMode && stackArn ? stackArn :
513
+ integratedMode && quiltStackName ? quiltStackName :
514
+ STACK_NAME;
318
515
  // Parse timer value
319
516
  const refreshInterval = (0, cli_helpers_1.parseTimerValue)(timer);
320
517
  // Setup Ctrl+C handler for graceful exit
@@ -336,7 +533,7 @@ async function logsCommand(options = {}) {
336
533
  (0, cli_helpers_1.clearScreen)();
337
534
  }
338
535
  // Fetch logs from all relevant log groups
339
- const logGroups = await fetchAllLogs(stackName, region, currentSince, limit, type, integratedMode, filter, awsProfile);
536
+ const logGroups = await fetchAllLogs(stackName, region, currentSince, limit, type, integratedMode, includeHealth, filter, awsProfile);
340
537
  // Check if any log group has entries
341
538
  const totalEntries = logGroups.reduce((sum, lg) => sum + lg.entries.length, 0);
342
539
  const hasLogs = totalEntries > 0;
@@ -381,8 +578,16 @@ async function logsCommand(options = {}) {
381
578
  await (0, cli_helpers_1.sleep)(500);
382
579
  continue;
383
580
  }
581
+ // Fetch ECS rollout status (optional, non-blocking)
582
+ let rolloutStatus;
583
+ try {
584
+ rolloutStatus = await (0, status_1.getEcsRolloutStatus)(integratedMode && quiltStackName ? quiltStackName : STACK_NAME, region, awsProfile);
585
+ }
586
+ catch {
587
+ // Silently ignore errors - rollout status is optional
588
+ }
384
589
  // Display logs
385
- displayLogs(logGroups, profile, region, currentSince, limit, webhookEndpoint, wasExpanded);
590
+ displayLogs(logGroups, profile, region, currentSince, limit, webhookEndpoint, catalogDns, wasExpanded, rolloutStatus, stackArn);
386
591
  result.logGroups = logGroups;
387
592
  // If no logs found at max range, show helpful message
388
593
  if (!hasLogs && currentSince === "7d") {
@@ -1 +1 @@
1
- {"version":3,"file":"logs.js","sourceRoot":"","sources":["../../../bin/commands/logs.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"logs.js","sourceRoot":"","sources":["../../../bin/commands/logs.ts"],"names":[],"mappings":"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"}
@@ -93,6 +93,11 @@ export interface StackIdentification {
93
93
  /** Whether deployment tracking exists */
94
94
  hasDeployment: boolean;
95
95
  }
96
+ /**
97
+ * Get the least-ready (most critical) ECS rollout status for a stack
98
+ * Returns the "worst" rollout state across all services for quick status checks
99
+ */
100
+ export declare function getEcsRolloutStatus(stackName: string, region: string, awsProfile?: string): Promise<string | undefined>;
96
101
  /**
97
102
  * Formats stack status with color coding
98
103
  */
@@ -1 +1 @@
1
- {"version":3,"file":"status.d.ts","sourceRoot":"","sources":["../../../bin/commands/status.ts"],"names":[],"mappings":";AACA;;;;;;;GAOG;AAUH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAElD,MAAM,WAAW,oBAAoB;IACjC,iCAAiC;IACjC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,yBAAyB;IACzB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,kDAAkD;IAClD,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,iCAAiC;IACjC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,qEAAqE;IACrE,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACxB,4FAA4F;IAC5F,IAAI,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,YAAY;IACzB,OAAO,EAAE,OAAO,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,2BAA2B,CAAC,EAAE,OAAO,CAAC;IACtC,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE;QACX,eAAe,CAAC,EAAE,MAAM,CAAC;QACzB,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,kBAAkB,CAAC,EAAE,MAAM,CAAC;KAC/B,CAAC;IACF,UAAU,CAAC,EAAE;QACT,IAAI,EAAE,MAAM,CAAC;QACb,YAAY,CAAC,EAAE,IAAI,CAAC;QACpB,UAAU,EAAE,OAAO,CAAC;QACpB,KAAK,CAAC,EAAE,MAAM,CAAC;KAClB,CAAC;IACF,aAAa,CAAC,EAAE,KAAK,CAAC;QAClB,QAAQ,EAAE,MAAM,CAAC;QACjB,IAAI,EAAE,MAAM,CAAC;QACb,cAAc,EAAE,MAAM,CAAC;KAC1B,CAAC,CAAC;IACH,WAAW,CAAC,EAAE,KAAK,CAAC;QAChB,WAAW,EAAE,MAAM,CAAC;QACpB,MAAM,EAAE,MAAM,CAAC;QACf,YAAY,EAAE,MAAM,CAAC;QACrB,YAAY,EAAE,MAAM,CAAC;QACrB,YAAY,EAAE,MAAM,CAAC;QACrB,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,eAAe,CAAC,EAAE,MAAM,CAAC;KAC5B,CAAC,CAAC;IACH,eAAe,CAAC,EAAE,KAAK,CAAC;QACpB,eAAe,EAAE,MAAM,CAAC;QACxB,YAAY,EAAE,MAAM,CAAC;QACrB,cAAc,EAAE,MAAM,CAAC;QACvB,aAAa,EAAE,MAAM,CAAC;QACtB,OAAO,EAAE,KAAK,CAAC;YACX,EAAE,EAAE,MAAM,CAAC;YACX,MAAM,EAAE,MAAM,CAAC;YACf,MAAM,CAAC,EAAE,MAAM,CAAC;SACnB,CAAC,CAAC;KACN,CAAC,CAAC;IACH,WAAW,CAAC,EAAE,KAAK,CAAC;QAChB,SAAS,EAAE,IAAI,CAAC;QAChB,UAAU,EAAE,MAAM,CAAC;QACnB,MAAM,EAAE,MAAM,CAAC;QACf,MAAM,CAAC,EAAE,MAAM,CAAC;KACnB,CAAC,CAAC;CACN;AAED;;;GAGG;AACH,MAAM,WAAW,mBAAmB;IAChC,uEAAuE;IACvE,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,4CAA4C;IAC5C,SAAS,EAAE,MAAM,CAAC;IAClB,iBAAiB;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,sBAAsB;IACtB,IAAI,EAAE,YAAY,GAAG,YAAY,CAAC;IAClC,yCAAyC;IACzC,aAAa,EAAE,OAAO,CAAC;CAC1B;AA8MD;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAYxD;AAstBD;;GAEG;AACH,wBAAsB,aAAa,CAAC,OAAO,GAAE,oBAAyB,GAAG,OAAO,CAAC,YAAY,CAAC,CA2H7F"}
1
+ {"version":3,"file":"status.d.ts","sourceRoot":"","sources":["../../../bin/commands/status.ts"],"names":[],"mappings":"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"}