@datadog/datadog-ci 2.42.0 → 2.44.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (78) hide show
  1. package/README.md +2 -2
  2. package/dist/commands/deployment/correlate.d.ts +2 -0
  3. package/dist/commands/deployment/correlate.js +42 -20
  4. package/dist/commands/deployment/correlate.js.map +1 -1
  5. package/dist/commands/lambda/flare.js.map +1 -1
  6. package/dist/commands/lambda/functions/commons.d.ts +1 -0
  7. package/dist/commands/lambda/functions/commons.js +1 -0
  8. package/dist/commands/lambda/functions/commons.js.map +1 -1
  9. package/dist/commands/lambda/functions/instrument.js.map +1 -1
  10. package/dist/commands/lambda/functions/uninstrument.js.map +1 -1
  11. package/dist/commands/lambda/loggroup.d.ts +2 -2
  12. package/dist/commands/lambda/loggroup.js.map +1 -1
  13. package/dist/commands/lambda/prompt.js.map +1 -1
  14. package/dist/commands/lambda/tags.js.map +1 -1
  15. package/dist/commands/measure/measure.d.ts +1 -0
  16. package/dist/commands/measure/measure.js +17 -4
  17. package/dist/commands/measure/measure.js.map +1 -1
  18. package/dist/commands/sarif/validation.js +12 -0
  19. package/dist/commands/sarif/validation.js.map +1 -1
  20. package/dist/commands/sbom/constants.d.ts +3 -0
  21. package/dist/commands/sbom/constants.js +4 -1
  22. package/dist/commands/sbom/constants.js.map +1 -1
  23. package/dist/commands/sbom/payload.js +94 -37
  24. package/dist/commands/sbom/payload.js.map +1 -1
  25. package/dist/commands/sbom/renderer.d.ts +2 -1
  26. package/dist/commands/sbom/renderer.js +17 -4
  27. package/dist/commands/sbom/renderer.js.map +1 -1
  28. package/dist/commands/sbom/types.d.ts +18 -0
  29. package/dist/commands/sbom/upload.d.ts +1 -1
  30. package/dist/commands/sbom/upload.js +41 -37
  31. package/dist/commands/sbom/upload.js.map +1 -1
  32. package/dist/commands/stepfunctions/awsCommands.js +6 -1
  33. package/dist/commands/stepfunctions/awsCommands.js.map +1 -1
  34. package/dist/commands/stepfunctions/helpers.d.ts +12 -5
  35. package/dist/commands/stepfunctions/helpers.js +140 -66
  36. package/dist/commands/stepfunctions/helpers.js.map +1 -1
  37. package/dist/commands/synthetics/api.d.ts +1 -0
  38. package/dist/commands/synthetics/api.js +6 -5
  39. package/dist/commands/synthetics/api.js.map +1 -1
  40. package/dist/commands/synthetics/batch.d.ts +3 -1
  41. package/dist/commands/synthetics/batch.js +85 -26
  42. package/dist/commands/synthetics/batch.js.map +1 -1
  43. package/dist/commands/synthetics/compatibility.d.ts +1 -1
  44. package/dist/commands/synthetics/compatibility.js +7 -2
  45. package/dist/commands/synthetics/compatibility.js.map +1 -1
  46. package/dist/commands/synthetics/interfaces.d.ts +22 -11
  47. package/dist/commands/synthetics/interfaces.js.map +1 -1
  48. package/dist/commands/synthetics/reporters/default.d.ts +1 -0
  49. package/dist/commands/synthetics/reporters/default.js +42 -20
  50. package/dist/commands/synthetics/reporters/default.js.map +1 -1
  51. package/dist/commands/synthetics/reporters/junit.d.ts +2 -2
  52. package/dist/commands/synthetics/reporters/junit.js +31 -18
  53. package/dist/commands/synthetics/reporters/junit.js.map +1 -1
  54. package/dist/commands/synthetics/run-tests-command.d.ts +1 -1
  55. package/dist/commands/synthetics/run-tests-command.js +41 -26
  56. package/dist/commands/synthetics/run-tests-command.js.map +1 -1
  57. package/dist/commands/synthetics/run-tests-lib.js +1 -1
  58. package/dist/commands/synthetics/run-tests-lib.js.map +1 -1
  59. package/dist/commands/synthetics/utils/internal.d.ts +21 -8
  60. package/dist/commands/synthetics/utils/internal.js +35 -16
  61. package/dist/commands/synthetics/utils/internal.js.map +1 -1
  62. package/dist/commands/synthetics/utils/public.d.ts +4 -1
  63. package/dist/commands/synthetics/utils/public.js +8 -4
  64. package/dist/commands/synthetics/utils/public.js.map +1 -1
  65. package/dist/commands/tag/tag.d.ts +2 -0
  66. package/dist/commands/tag/tag.js +17 -3
  67. package/dist/commands/tag/tag.js.map +1 -1
  68. package/dist/helpers/ci.d.ts +2 -0
  69. package/dist/helpers/ci.js +10 -5
  70. package/dist/helpers/ci.js.map +1 -1
  71. package/dist/helpers/interfaces.d.ts +2 -2
  72. package/dist/helpers/tags.d.ts +23 -1
  73. package/dist/helpers/tags.js +101 -2
  74. package/dist/helpers/tags.js.map +1 -1
  75. package/dist/helpers/utils.d.ts +11 -1
  76. package/dist/helpers/utils.js +5 -11
  77. package/dist/helpers/utils.js.map +1 -1
  78. package/package.json +3 -8
@@ -9,7 +9,7 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
9
9
  });
10
10
  };
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.injectContextForStepFunctions = exports.shouldUpdateStepForStepFunctionContextInjection = exports.shouldUpdateStepForTracesMerging = exports.addTraceContextToStepFunctionParameters = exports.addTraceContextToLambdaParameters = exports.injectContextIntoTasks = exports.buildLogAccessPolicyName = exports.parseArn = exports.getStepFunctionLogGroupArn = exports.isValidArn = exports.buildSubscriptionFilterName = exports.buildLogGroupName = exports.buildArn = exports.displayChanges = void 0;
12
+ exports.injectContextForStepFunctions = exports.injectContextForLambdaFunctions = exports.injectContextIntoTasks = exports.buildLogAccessPolicyName = exports.parseArn = exports.getStepFunctionLogGroupArn = exports.isValidArn = exports.buildSubscriptionFilterName = exports.buildLogGroupName = exports.buildArn = exports.displayChanges = void 0;
13
13
  const deep_object_diff_1 = require("deep-object-diff");
14
14
  const awsCommands_1 = require("./awsCommands");
15
15
  const constants_1 = require("./constants");
@@ -69,8 +69,9 @@ const injectContextIntoTasks = (describeStateMachineCommandOutput, stepFunctions
69
69
  for (const stepName in definitionObj.States) {
70
70
  if (definitionObj.States.hasOwnProperty(stepName)) {
71
71
  const step = definitionObj.States[stepName];
72
- definitionHasBeenUpdated = injectContextForLambdaFunctions(step, context, stepName);
73
- definitionHasBeenUpdated = (0, exports.injectContextForStepFunctions)(step);
72
+ const lambdaUpdated = (0, exports.injectContextForLambdaFunctions)(step, context, stepName);
73
+ const stepUpdated = (0, exports.injectContextForStepFunctions)(step, context, stepName);
74
+ definitionHasBeenUpdated = definitionHasBeenUpdated || lambdaUpdated || stepUpdated;
74
75
  }
75
76
  }
76
77
  if (definitionHasBeenUpdated) {
@@ -78,85 +79,158 @@ const injectContextIntoTasks = (describeStateMachineCommandOutput, stepFunctions
78
79
  }
79
80
  });
80
81
  exports.injectContextIntoTasks = injectContextIntoTasks;
81
- const addTraceContextToLambdaParameters = ({ Parameters }) => {
82
- if (Parameters) {
83
- Parameters[`Payload.$`] = 'States.JsonMerge($$, $, false)';
82
+ // Truth table
83
+ // Case | Input | Expected
84
+ // -----|----------------------------------------------------------|---------
85
+ // 1 | No "Payload" or "Payload.$" | true
86
+ // 2.1 | "Payload" is object, already injected | false
87
+ // 2.2 | "Payload" object has Execution, State or StateMachine | false
88
+ // 2.3 | "Payload" object has no Execution, State or StateMachine | true
89
+ // 3 | "Payload" is not object | false
90
+ // 4.1 | "Payload.$": "$" (default payload) | true
91
+ // 4.2 | "Payload.$": "States.JsonMerge($$, $, false)" or | false
92
+ // | "Payload.$": "$$['Execution', 'State', 'StateMachine']" |
93
+ // 4.3 | Custom "Payload.$" | false
94
+ const injectContextForLambdaFunctions = (step, context, stepName) => {
95
+ var _a;
96
+ if ((_a = step.Resource) === null || _a === void 0 ? void 0 : _a.startsWith('arn:aws:lambda')) {
97
+ context.stdout.write(`[Warn] Step ${stepName} may be using the basic legacy integration, which does not support merging lambda trace(s) with Step Functions trace.
98
+ To merge lambda trace(s) with Step Functions trace, please consider using the latest integration.
99
+ More details can be found on https://docs.aws.amazon.com/step-functions/latest/dg/connect-lambda.html \n`);
100
+ return false;
84
101
  }
85
- };
86
- exports.addTraceContextToLambdaParameters = addTraceContextToLambdaParameters;
87
- const addTraceContextToStepFunctionParameters = ({ Parameters }) => {
88
- if (Parameters) {
89
- if (!Parameters.Input) {
90
- Parameters.Input = {};
91
- }
92
- Parameters.Input['CONTEXT.$'] = 'States.JsonMerge($$, $, false)';
102
+ // not default lambda api
103
+ if (step.Resource !== 'arn:aws:states:::lambda:invoke') {
104
+ return false;
93
105
  }
94
- };
95
- exports.addTraceContextToStepFunctionParameters = addTraceContextToStepFunctionParameters;
96
- const shouldUpdateStepForTracesMerging = (step) => {
97
- // is default lambda api
98
- if (step.Resource === 'arn:aws:states:::lambda:invoke') {
99
- if (!step.Parameters) {
106
+ if (!step.Parameters) {
107
+ context.stdout
108
+ .write(`[Warn] Step ${stepName} does not have a Parameters field. Step Functions Context Object injection \
109
+ skipped. Your Step Functions trace will not be merged with downstream Lambda traces. To manually merge these traces, \
110
+ check out https://docs.datadoghq.com/serverless/step_functions/troubleshooting/\n`);
111
+ return false;
112
+ }
113
+ // Case 1: payload field not set
114
+ if (!step.Parameters.hasOwnProperty('Payload.$') && !step.Parameters.hasOwnProperty('Payload')) {
115
+ step.Parameters[`Payload.$`] = `$$['Execution', 'State', 'StateMachine']`;
116
+ return true;
117
+ }
118
+ if (step.Parameters.hasOwnProperty('Payload')) {
119
+ if (typeof step.Parameters['Payload'] !== 'object') {
120
+ // Case 3: payload is not a JSON object
121
+ context.stdout
122
+ .write(`[Warn] Step ${stepName}'s Payload field is not a JSON object. Step Functions Context Object \
123
+ injection skipped. Your Step Functions trace will not be merged with downstream Lambda traces. To manually \
124
+ merge these traces, check out https://docs.datadoghq.com/serverless/step_functions/troubleshooting/\n`);
100
125
  return false;
101
126
  }
102
- // payload field not set
103
- if (!step.Parameters.hasOwnProperty('Payload.$')) {
104
- return true;
105
- }
106
- // default payload
107
- if (step.Parameters['Payload.$'] === '$') {
108
- return true;
127
+ else {
128
+ // Case 2: payload is not a JSON object
129
+ const payload = step.Parameters.Payload;
130
+ if (payload['Execution.$'] === '$$.Execution' &&
131
+ payload['State.$'] === '$$.State' &&
132
+ payload['StateMachine.$'] === '$$.StateMachine') {
133
+ // Case 2.1: already injected into "Payload"
134
+ context.stdout.write(`Step ${stepName}: Context injection is already set up. Skipping context injection.\n`);
135
+ return false;
136
+ }
137
+ else if (payload.hasOwnProperty('Execution.$') ||
138
+ payload.hasOwnProperty('Execution') ||
139
+ payload.hasOwnProperty('State.$') ||
140
+ payload.hasOwnProperty('State') ||
141
+ payload.hasOwnProperty('StateMachine.$') ||
142
+ payload.hasOwnProperty('StateMachine')) {
143
+ // Case 2.2: "Payload" object has Execution, State or StateMachine
144
+ context.stdout
145
+ .write(`[Warn] Step ${stepName} may be using custom Execution, State or StateMachine field. Step Functions Context Object \
146
+ injection skipped. Your Step Functions trace will not be merged with downstream Lambda traces. To manually \
147
+ merge these traces, check out https://docs.datadoghq.com/serverless/step_functions/troubleshooting/\n`);
148
+ return false;
149
+ }
150
+ else {
151
+ // Case 2.3: "Payload" object has no Execution, State or StateMachine
152
+ payload['Execution.$'] = '$$.Execution';
153
+ payload['State.$'] = '$$.State';
154
+ payload['StateMachine.$'] = '$$.StateMachine';
155
+ return true;
156
+ }
109
157
  }
110
158
  }
159
+ // Case 4.1: default payload
160
+ if (step.Parameters['Payload.$'] === '$') {
161
+ step.Parameters[`Payload.$`] = 'States.JsonMerge($$, $, false)';
162
+ return true;
163
+ }
164
+ // Case 4.2: context injection is already set up using "Payload.$"
165
+ if (step.Parameters['Payload.$'] === 'States.JsonMerge($$, $, false)' ||
166
+ step.Parameters['Payload.$'] === `$$['Execution', 'State', 'StateMachine']`) {
167
+ context.stdout.write(` Step ${stepName}: Context injection is already set up. Skipping context injection.\n`);
168
+ return false;
169
+ }
170
+ // Case 4.3: custom "Payload.$"
171
+ context.stdout
172
+ .write(`[Warn] Step ${stepName} has a custom Payload field. Step Functions Context Object injection skipped. \
173
+ Your Step Functions trace will not be merged with downstream Lambda traces. To manually merge these traces, \
174
+ check out https://docs.datadoghq.com/serverless/step_functions/troubleshooting/\n`);
111
175
  return false;
112
176
  };
113
- exports.shouldUpdateStepForTracesMerging = shouldUpdateStepForTracesMerging;
177
+ exports.injectContextForLambdaFunctions = injectContextForLambdaFunctions;
114
178
  // Truth table
115
- // Input | Expected
116
- // -------------------------|---------
117
- // Empty object | true
118
- // undefined | true
119
- // not object | false
120
- // object without CONTEXT.$ | true
121
- // object with CONTEXT.$ | false
122
- const shouldUpdateStepForStepFunctionContextInjection = (step) => {
179
+ // Case | Input | Expected
180
+ // -----|----------------------------------------------------------|---------
181
+ // 1 | No "CONTEXT" or "CONTEXT.$" | true
182
+ // 2 | Has "CONTEXT" | false
183
+ // 3.1 | "CONTEXT.$": "States.JsonMerge($$, $, false)" or | false
184
+ // | "CONTEXT.$": "$$['Execution', 'State', 'StateMachine']" |
185
+ // 3.2 | Custom "CONTEXT.$" | false
186
+ const injectContextForStepFunctions = (step, context, stepName) => {
123
187
  var _a;
124
- // is default lambda api
125
- if ((_a = step.Resource) === null || _a === void 0 ? void 0 : _a.startsWith('arn:aws:states:::states:startExecution')) {
126
- if (!step.Parameters) {
127
- return false;
128
- }
129
- if (!step.Parameters.Input) {
130
- return true;
131
- }
132
- if (typeof step.Parameters.Input !== 'object') {
133
- return false;
134
- }
135
- if (!step.Parameters.Input['CONTEXT.$']) {
136
- return true;
137
- }
188
+ // not default lambda api
189
+ if (!((_a = step.Resource) === null || _a === void 0 ? void 0 : _a.startsWith('arn:aws:states:::states:startExecution'))) {
190
+ return false;
138
191
  }
139
- return false;
140
- };
141
- exports.shouldUpdateStepForStepFunctionContextInjection = shouldUpdateStepForStepFunctionContextInjection;
142
- const injectContextForLambdaFunctions = (step, context, stepName) => {
143
- var _a;
144
- if ((0, exports.shouldUpdateStepForTracesMerging)(step)) {
145
- (0, exports.addTraceContextToLambdaParameters)(step);
192
+ if (!step.Parameters) {
193
+ context.stdout
194
+ .write(`[Warn] Step ${stepName} does not have a Parameters field. Step Functions Context Object injection \
195
+ skipped. Your Step Functions trace will not be merged with downstream Step Function traces. To manually merge these \
196
+ traces, check out https://docs.datadoghq.com/serverless/step_functions/troubleshooting/\n`);
197
+ return false;
198
+ }
199
+ if (!step.Parameters.Input) {
200
+ step.Parameters.Input = { 'CONTEXT.$': `$$['Execution', 'State', 'StateMachine']` };
146
201
  return true;
147
202
  }
148
- else if ((_a = step.Resource) === null || _a === void 0 ? void 0 : _a.startsWith('arn:aws:lambda')) {
149
- context.stdout.write(`[Warn] Step ${stepName} may be using the basic legacy integration, which does not support merging lambda trace(s) with Step Functions trace.
150
- To merge lambda trace(s) with Step Functions trace, please consider using the latest integration.
151
- More details can be found on https://docs.aws.amazon.com/step-functions/latest/dg/connect-lambda.html \n`);
203
+ if (typeof step.Parameters.Input !== 'object') {
204
+ context.stdout
205
+ .write(`[Warn] Step ${stepName}'s Parameters.Input field is not a JSON object. Step Functions Context Object \
206
+ injection skipped. Your Step Functions trace will not be merged with downstream Step Function traces. To manually \
207
+ merge these traces, check out https://docs.datadoghq.com/serverless/step_functions/troubleshooting/\n`);
208
+ return false;
152
209
  }
153
- return false;
154
- };
155
- const injectContextForStepFunctions = (step) => {
156
- if ((0, exports.shouldUpdateStepForStepFunctionContextInjection)(step)) {
157
- (0, exports.addTraceContextToStepFunctionParameters)(step);
210
+ // Case 1: 'CONTEXT.$' and 'CONTEXT' fields are not set
211
+ if (!step.Parameters.Input['CONTEXT.$'] && !step.Parameters.Input['CONTEXT']) {
212
+ step.Parameters.Input['CONTEXT.$'] = `$$['Execution', 'State', 'StateMachine']`;
158
213
  return true;
159
214
  }
215
+ // Case 2: Has 'CONTEXT' field.
216
+ // This case should be rare so we don't support context injection for this case for now
217
+ if (step.Parameters.Input.hasOwnProperty('CONTEXT')) {
218
+ context.stdout.write(`[Warn] Step ${stepName}'s has custom CONTEXT field. Step Functions Context Object \
219
+ injection skipped. Your Step Functions trace will not be merged with downstream Step Function traces. To manually \
220
+ merge these traces, check out https://docs.datadoghq.com/serverless/step_functions/troubleshooting/\n`);
221
+ return false;
222
+ }
223
+ // Case 3.1 context injection is already set up
224
+ if (step.Parameters.Input['CONTEXT.$'] === 'States.JsonMerge($$, $, false)' ||
225
+ step.Parameters.Input['CONTEXT.$'] === `$$['Execution', 'State', 'StateMachine']`) {
226
+ context.stdout.write(` Step ${stepName}: Context injection is already set up. Skipping context injection.\n`);
227
+ return false;
228
+ }
229
+ // Case 3.2 custom CONTEXT.$ field
230
+ context.stdout
231
+ .write(`[Warn] Step ${stepName}'s Parameters.Input field has a custom CONTEXT.$ field. Step Functions Context \
232
+ Object injection skipped. Your Step Functions trace will not be merged with downstream Step Function traces. To \
233
+ manually merge these traces, check out https://docs.datadoghq.com/serverless/step_functions/troubleshooting/\n`);
160
234
  return false;
161
235
  };
162
236
  exports.injectContextForStepFunctions = injectContextForStepFunctions;
@@ -1 +1 @@
1
- {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../../src/commands/stepfunctions/helpers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../../src/commands/stepfunctions/helpers.ts"],"names":[],"mappings":"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"}
@@ -19,6 +19,7 @@ export type RetryPolicy = {
19
19
  retryOn429?: boolean | undefined;
20
20
  };
21
21
  export declare const determineRetryDelay: (retries: number, error: Error, retryPolicy?: RetryPolicy) => number | undefined;
22
+ export declare const getErrorHttpStatus: (error: Error) => number | undefined;
22
23
  export declare const isForbiddenError: (error: Error) => boolean;
23
24
  export declare const isNotFoundError: (error: Error) => boolean;
24
25
  export declare const isTooManyRequestsError: (error: Error) => boolean;
@@ -9,7 +9,7 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
9
9
  });
10
10
  };
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.getApiHelper = exports.apiConstructor = exports.is5xxError = exports.isNodeError = exports.isTooManyRequestsError = exports.isNotFoundError = exports.isForbiddenError = exports.determineRetryDelay = exports.pollMobileApplicationUploadResponse = exports.completeMultipartMobileApplicationUpload = exports.formatBackendErrors = exports.EndpointError = void 0;
12
+ exports.getApiHelper = exports.apiConstructor = exports.is5xxError = exports.isNodeError = exports.isTooManyRequestsError = exports.isNotFoundError = exports.isForbiddenError = exports.getErrorHttpStatus = exports.determineRetryDelay = exports.pollMobileApplicationUploadResponse = exports.completeMultipartMobileApplicationUpload = exports.formatBackendErrors = exports.EndpointError = void 0;
13
13
  const querystring_1 = require("querystring");
14
14
  const axios_1 = require("axios");
15
15
  const utils_1 = require("../../helpers/utils");
@@ -202,16 +202,17 @@ const determineRetryDelay = (retries, error, retryPolicy = { retryOn404: false,
202
202
  exports.determineRetryDelay = determineRetryDelay;
203
203
  const isEndpointError = (error) => error instanceof EndpointError;
204
204
  const getErrorHttpStatus = (error) => { var _a; return isEndpointError(error) ? error.status : (0, axios_1.isAxiosError)(error) ? (_a = error.response) === null || _a === void 0 ? void 0 : _a.status : undefined; };
205
- const isForbiddenError = (error) => getErrorHttpStatus(error) === 403;
205
+ exports.getErrorHttpStatus = getErrorHttpStatus;
206
+ const isForbiddenError = (error) => (0, exports.getErrorHttpStatus)(error) === 403;
206
207
  exports.isForbiddenError = isForbiddenError;
207
- const isNotFoundError = (error) => getErrorHttpStatus(error) === 404;
208
+ const isNotFoundError = (error) => (0, exports.getErrorHttpStatus)(error) === 404;
208
209
  exports.isNotFoundError = isNotFoundError;
209
- const isTooManyRequestsError = (error) => getErrorHttpStatus(error) === 429;
210
+ const isTooManyRequestsError = (error) => (0, exports.getErrorHttpStatus)(error) === 429;
210
211
  exports.isTooManyRequestsError = isTooManyRequestsError;
211
212
  const isNodeError = (error) => !!error && 'code' in error;
212
213
  exports.isNodeError = isNodeError;
213
214
  const is5xxError = (error) => {
214
- const statusCode = getErrorHttpStatus(error);
215
+ const statusCode = (0, exports.getErrorHttpStatus)(error);
215
216
  return statusCode && statusCode >= 500 && statusCode <= 599 ? true : false;
216
217
  };
217
218
  exports.is5xxError = is5xxError;
@@ -1 +1 @@
1
- {"version":3,"file":"api.js","sourceRoot":"","sources":["../../../src/commands/synthetics/api.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"api.js","sourceRoot":"","sources":["../../../src/commands/synthetics/api.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,5 @@
1
1
  import { APIHelper } from './api';
2
- import { MainReporter, Result, ResultDisplayInfo } from './interfaces';
2
+ import { Batch, MainReporter, Result, ResultDisplayInfo, ResultInBatch } from './interfaces';
3
3
  export declare const waitForBatchToFinish: (api: APIHelper, batchId: string, batchTimeout: number, resultDisplayInfo: ResultDisplayInfo, reporter: MainReporter) => Promise<Result[]>;
4
+ export declare const getResultsToReport: (shouldContinuePolling: boolean, batch: Batch, newlyReceivedResults: ResultInBatch[], emittedResultIds: Set<string>, oldIncompleteResultIds: Set<string>, incompleteResultIds: Set<string>, reporter: MainReporter) => ResultInBatch[];
5
+ export declare const reportReceivedResults: (batch: Batch, emittedResultIds: Set<string>, reporter: MainReporter) => ResultInBatch[];
@@ -12,7 +12,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
12
12
  return (mod && mod.__esModule) ? mod : { "default": mod };
13
13
  };
14
14
  Object.defineProperty(exports, "__esModule", { value: true });
15
- exports.waitForBatchToFinish = void 0;
15
+ exports.reportReceivedResults = exports.getResultsToReport = exports.waitForBatchToFinish = void 0;
16
16
  const deep_extend_1 = __importDefault(require("deep-extend"));
17
17
  const api_1 = require("./api");
18
18
  const errors_1 = require("./errors");
@@ -22,6 +22,7 @@ const POLLING_INTERVAL = 5000; // In ms
22
22
  const waitForBatchToFinish = (api, batchId, batchTimeout, resultDisplayInfo, reporter) => __awaiter(void 0, void 0, void 0, function* () {
23
23
  const safeDeadline = Date.now() + batchTimeout + 3 * POLLING_INTERVAL;
24
24
  const emittedResultIds = new Set();
25
+ const backupPollResultMap = new Map();
25
26
  let oldIncompleteResultIds = new Set();
26
27
  while (true) {
27
28
  const batch = yield getBatch(api, batchId);
@@ -29,10 +30,10 @@ const waitForBatchToFinish = (api, batchId, batchTimeout, resultDisplayInfo, rep
29
30
  // The backend is expected to handle the time out of the batch by eventually changing its status to `failed`.
30
31
  // But `safeDeadlineReached` is a safety in case it fails to do that on time.
31
32
  const shouldContinuePolling = batch.status === 'in_progress' && !safeDeadlineReached;
32
- const newlyReceivedResults = reportReceivedResults(batch, emittedResultIds, reporter);
33
+ const newlyReceivedResults = (0, exports.reportReceivedResults)(batch, emittedResultIds, reporter);
33
34
  const resultIdsToFetch = getResultIdsToFetch(shouldContinuePolling, batch, newlyReceivedResults, oldIncompleteResultIds);
34
- const { pollResultMap, incompleteResultIds } = yield getPollResultMap(api, resultIdsToFetch);
35
- const resultsToReport = getResultsToReport(shouldContinuePolling, batch, newlyReceivedResults, emittedResultIds, oldIncompleteResultIds, incompleteResultIds, reporter);
35
+ const { pollResultMap, incompleteResultIds } = yield getPollResultMap(api, resultIdsToFetch, backupPollResultMap);
36
+ const resultsToReport = (0, exports.getResultsToReport)(shouldContinuePolling, batch, newlyReceivedResults, emittedResultIds, oldIncompleteResultIds, incompleteResultIds, reporter);
36
37
  reportResults(batchId, resultsToReport, pollResultMap, resultDisplayInfo, safeDeadlineReached, reporter);
37
38
  oldIncompleteResultIds = incompleteResultIds;
38
39
  if (safeDeadlineReached) {
@@ -56,19 +57,17 @@ const getResultIdsToFetch = (shouldContinuePolling, batch, newlyReceivedResults,
56
57
  const getResultsToReport = (shouldContinuePolling, batch, newlyReceivedResults, emittedResultIds, oldIncompleteResultIds, incompleteResultIds, reporter) => {
57
58
  const newlyCompleteResults = excludeSkipped(batch.results).filter((r) => oldIncompleteResultIds.has(r.result_id) && !incompleteResultIds.has(r.result_id));
58
59
  const resultsToReport = newlyReceivedResults
59
- .filter((r) => (0, internal_1.isResultInBatchSkippedBySelectiveRerun)(r) || !incompleteResultIds.has(r.result_id))
60
+ .filter((r) => (0, internal_1.isResultInBatchSkippedBySelectiveRerun)(r) || !isResidualResult(r, emittedResultIds, incompleteResultIds))
60
61
  .concat(newlyCompleteResults);
61
62
  if (shouldContinuePolling) {
62
63
  return resultsToReport;
63
64
  }
64
- // Residual results are either:
65
- // - Still in progress (from the batch POV): they were never emitted.
66
- // - Or still incomplete (from the poll results POV): report them with their incomplete data and a warning.
67
- const residualResults = excludeSkipped(batch.results).filter((r) => !emittedResultIds.has(r.result_id) || incompleteResultIds.has(r.result_id));
65
+ // Results that we failed to report for some reason are finally reported as "residues".
66
+ const residualResults = excludeSkipped(batch.results).filter((r) => isResidualResult(r, emittedResultIds, incompleteResultIds));
68
67
  const errors = [];
69
68
  for (const result of residualResults) {
70
69
  if (!result.timed_out) {
71
- errors.push(`The full information for result ${result.result_id} was incomplete at the end of the batch.`);
70
+ errors.push(`The information for result ${result.result_id} of test ${result.test_public_id} was incomplete at the end of the batch.`);
72
71
  }
73
72
  }
74
73
  if (errors.length > 0) {
@@ -76,13 +75,14 @@ const getResultsToReport = (shouldContinuePolling, batch, newlyReceivedResults,
76
75
  }
77
76
  return resultsToReport.concat(residualResults);
78
77
  };
78
+ exports.getResultsToReport = getResultsToReport;
79
79
  const reportReceivedResults = (batch, emittedResultIds, reporter) => {
80
80
  const receivedResults = [];
81
81
  for (const [index, result] of batch.results.entries()) {
82
- // Skipped results aren't reported in detail in the terminal output, but they are still reported by `resultReceived()`.
82
+ // Skipped results are only reported by `resultReceived()`, then they are excluded everywhere with `excludeSkipped()`.
83
83
  const resultId = result.status === 'skipped' ? `skipped-${index}` : result.result_id;
84
84
  // The result is reported if it has a final status, or if it's a non-final result.
85
- if ((result.status !== 'in_progress' || (0, internal_1.hasRetries)(result)) && !emittedResultIds.has(resultId)) {
85
+ if ((result.status !== 'in_progress' || (0, internal_1.isNonFinalResult)(result)) && !emittedResultIds.has(resultId)) {
86
86
  emittedResultIds.add(resultId);
87
87
  reporter.resultReceived(result);
88
88
  receivedResults.push(result);
@@ -90,6 +90,7 @@ const reportReceivedResults = (batch, emittedResultIds, reporter) => {
90
90
  }
91
91
  return receivedResults;
92
92
  };
93
+ exports.reportReceivedResults = reportReceivedResults;
93
94
  const reportResults = (batchId, results, pollResultMap, resultDisplayInfo, safeDeadlineReached, reporter) => {
94
95
  const baseUrl = (0, public_1.getAppBaseURL)(resultDisplayInfo.options);
95
96
  for (const result of results) {
@@ -122,10 +123,11 @@ const reportWaitingTests = (batchId, batch, resultDisplayInfo, reporter) => {
122
123
  reporter.testsWait(remainingTests, baseUrl, batchId, skippedCount);
123
124
  };
124
125
  const getResultFromBatch = (resultInBatch, pollResultMap, resultDisplayInfo, safeDeadlineReached = false) => {
125
- var _a, _b;
126
- const { getLocation, options, tests } = resultDisplayInfo;
127
- const hasTimedOut = (_a = resultInBatch.timed_out) !== null && _a !== void 0 ? _a : safeDeadlineReached;
126
+ var _a, _b, _c;
127
+ const { tests } = resultDisplayInfo;
128
128
  const test = getTestByPublicId(resultInBatch.test_public_id, tests);
129
+ const hasTimedOut = (_a = resultInBatch.timed_out) !== null && _a !== void 0 ? _a : safeDeadlineReached;
130
+ const timedOutRetry = (0, internal_1.isTimedOutRetry)(resultInBatch.retries, resultInBatch.max_retries, resultInBatch.timed_out);
129
131
  if ((0, internal_1.isResultInBatchSkippedBySelectiveRerun)(resultInBatch)) {
130
132
  return {
131
133
  executionRule: resultInBatch.execution_rule,
@@ -136,27 +138,42 @@ const getResultFromBatch = (resultInBatch, pollResultMap, resultDisplayInfo, saf
136
138
  timedOut: hasTimedOut,
137
139
  };
138
140
  }
139
- const pollResult = pollResultMap[resultInBatch.result_id];
141
+ const pollResult = pollResultMap.get(resultInBatch.result_id);
142
+ const isUnhealthy = (_c = (_b = pollResult === null || pollResult === void 0 ? void 0 : pollResult.result) === null || _b === void 0 ? void 0 : _b.unhealthy) !== null && _c !== void 0 ? _c : false;
143
+ if (!(pollResult === null || pollResult === void 0 ? void 0 : pollResult.result)) {
144
+ return createResult(resultInBatch, pollResult, test, hasTimedOut, isUnhealthy, resultDisplayInfo);
145
+ }
140
146
  if (safeDeadlineReached) {
141
147
  pollResult.result.failure = new errors_1.BatchTimeoutRunawayError().toJson();
142
148
  pollResult.result.passed = false;
143
149
  }
150
+ else if (timedOutRetry) {
151
+ pollResult.result.failure = { code: 'TIMEOUT', message: 'The batch timed out before receiving the retry.' };
152
+ pollResult.result.passed = false;
153
+ }
144
154
  else if (hasTimedOut) {
145
155
  pollResult.result.failure = { code: 'TIMEOUT', message: 'The batch timed out before receiving the result.' };
146
156
  pollResult.result.passed = false;
147
157
  }
148
- const isUnhealthy = (_b = pollResult.result.unhealthy) !== null && _b !== void 0 ? _b : false;
158
+ return createResult(resultInBatch, pollResult, test, hasTimedOut, isUnhealthy, resultDisplayInfo);
159
+ };
160
+ const createResult = (resultInBatch, pollResult, test, hasTimedOut, isUnhealthy, { getLocation, options }) => {
161
+ var _a;
149
162
  return {
163
+ duration: resultInBatch.duration,
150
164
  executionRule: resultInBatch.execution_rule,
165
+ initialResultId: resultInBatch.initial_result_id,
166
+ isNonFinal: (0, internal_1.isNonFinalResult)(resultInBatch),
151
167
  location: getLocation(resultInBatch.location, test),
152
168
  passed: (0, internal_1.hasResultPassed)(resultInBatch, isUnhealthy, hasTimedOut, options),
153
- result: pollResult.result,
169
+ result: pollResult === null || pollResult === void 0 ? void 0 : pollResult.result,
154
170
  resultId: (0, internal_1.getResultIdOrLinkedResultId)(resultInBatch),
155
171
  retries: resultInBatch.retries || 0,
172
+ maxRetries: resultInBatch.max_retries || 0,
156
173
  selectiveRerun: resultInBatch.selective_rerun,
157
- test: (0, deep_extend_1.default)({}, test, pollResult.check),
174
+ test: (0, deep_extend_1.default)({}, test, pollResult === null || pollResult === void 0 ? void 0 : pollResult.check),
158
175
  timedOut: hasTimedOut,
159
- timestamp: pollResult.timestamp,
176
+ timestamp: (_a = pollResult === null || pollResult === void 0 ? void 0 : pollResult.timestamp) !== null && _a !== void 0 ? _a : Date.now(),
160
177
  };
161
178
  };
162
179
  const getBatch = (api, batchId) => __awaiter(void 0, void 0, void 0, function* () {
@@ -169,25 +186,67 @@ const getBatch = (api, batchId) => __awaiter(void 0, void 0, void 0, function* (
169
186
  throw new api_1.EndpointError(`Failed to get batch: ${(0, api_1.formatBackendErrors)(e)}\n`, (_a = e.response) === null || _a === void 0 ? void 0 : _a.status);
170
187
  }
171
188
  });
172
- const getPollResultMap = (api, resultIds) => __awaiter(void 0, void 0, void 0, function* () {
189
+ /**
190
+ * Returns fresh poll results, or reads the backup map in case of 404.
191
+ */
192
+ const getPollResultMap = (api, resultIds, backupPollResultMap) => __awaiter(void 0, void 0, void 0, function* () {
173
193
  var _b;
194
+ const pollResultMap = new Map();
195
+ const incompleteResultIds = new Set();
174
196
  try {
175
197
  const pollResults = yield api.pollResults(resultIds);
176
- const pollResultMap = {};
177
- const incompleteResultIds = new Set();
178
198
  pollResults.forEach((r) => {
179
- // When they are initialized in the backend, results only contain an `eventType: created` property.
180
- if ('eventType' in r.result && r.result.eventType === 'created') {
199
+ // Server results are initialized to `{"eventType": "created"}` in the backend, and they may take
200
+ // some time to be updated. In that case, we keep the `PollResult` information (e.g. `timestamp`)
201
+ // but remove the server result to avoid reporting an unexpected object shape.
202
+ if (r.result && 'eventType' in r.result && r.result.eventType === 'created') {
181
203
  incompleteResultIds.add(r.resultID);
204
+ delete r.result;
182
205
  }
183
- pollResultMap[r.resultID] = r;
206
+ pollResultMap.set(r.resultID, r);
207
+ backupPollResultMap.set(r.resultID, r);
184
208
  });
185
209
  return { pollResultMap, incompleteResultIds };
186
210
  }
187
211
  catch (e) {
212
+ if ((0, api_1.getErrorHttpStatus)(e) === 404) {
213
+ // If some results have latency and retries were not enough, the whole request fails with "Test results not found".
214
+ // In that case, we mark results IDs that were never polled before as incomplete so they are fetched in the next polling cycles.
215
+ resultIds.forEach((resultId) => {
216
+ const backupPollResult = backupPollResultMap.get(resultId);
217
+ if (backupPollResult) {
218
+ pollResultMap.set(resultId, backupPollResult);
219
+ }
220
+ else {
221
+ incompleteResultIds.add(resultId);
222
+ }
223
+ });
224
+ return { pollResultMap, incompleteResultIds };
225
+ }
188
226
  throw new api_1.EndpointError(`Failed to poll results: ${(0, api_1.formatBackendErrors)(e)}\n`, (_b = e.response) === null || _b === void 0 ? void 0 : _b.status);
189
227
  }
190
228
  });
229
+ /**
230
+ * A residual result is either:
231
+ * - Still incomplete (from the poll results POV): report it with incomplete data and a warning.
232
+ * - Still in progress (from the batch POV): it was never emitted.
233
+ * - A timed out retry.
234
+ */
235
+ const isResidualResult = (result, emittedResultIds, incompleteResultIds) => {
236
+ if (incompleteResultIds.has(result.result_id)) {
237
+ // The poll results endpoint returned an incomplete result: report it with incomplete data and a warning.
238
+ return true;
239
+ }
240
+ if (!emittedResultIds.has(result.result_id)) {
241
+ // Was never emitted, which means the batch never set a final status for it.
242
+ return true;
243
+ }
244
+ if (emittedResultIds.has(result.result_id) && (0, internal_1.isTimedOutRetry)(result.retries, result.max_retries, result.timed_out)) {
245
+ // The result ID was already emitted but it used to be non-final result, and it's now a timed out retry.
246
+ return true;
247
+ }
248
+ return false;
249
+ };
191
250
  const getTestByPublicId = (id, tests) => tests.find((t) => t.public_id === id);
192
251
  const getResultIds = (results) => excludeSkipped(results).map((r) => r.result_id);
193
252
  const excludeSkipped = (results) => results.filter((r) => !(0, internal_1.isResultInBatchSkippedBySelectiveRerun)(r));