@datadog/datadog-ci 3.3.1 → 3.4.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.
- package/dist/cli.js +1 -1
- package/dist/cli.js.map +1 -1
- package/dist/commands/lambda/__tests__/functions/instrument.part1.test.js +2 -0
- package/dist/commands/lambda/__tests__/functions/instrument.part1.test.js.map +1 -1
- package/dist/commands/lambda/__tests__/functions/instrument.part2.test.js +4 -0
- package/dist/commands/lambda/__tests__/functions/instrument.part2.test.js.map +1 -1
- package/dist/commands/lambda/__tests__/functions/uninstrument.test.js +3 -0
- package/dist/commands/lambda/__tests__/functions/uninstrument.test.js.map +1 -1
- package/dist/commands/lambda/__tests__/instrument.test.js +7 -0
- package/dist/commands/lambda/__tests__/instrument.test.js.map +1 -1
- package/dist/commands/lambda/__tests__/uninstrument.test.js +3 -0
- package/dist/commands/lambda/__tests__/uninstrument.test.js.map +1 -1
- package/dist/commands/lambda/constants.d.ts +3 -0
- package/dist/commands/lambda/constants.js +5 -2
- package/dist/commands/lambda/constants.js.map +1 -1
- package/dist/commands/lambda/functions/instrument.js +10 -0
- package/dist/commands/lambda/functions/instrument.js.map +1 -1
- package/dist/commands/lambda/functions/uninstrument.js +3 -0
- package/dist/commands/lambda/functions/uninstrument.js.map +1 -1
- package/dist/commands/lambda/instrument.d.ts +1 -0
- package/dist/commands/lambda/instrument.js +5 -2
- package/dist/commands/lambda/instrument.js.map +1 -1
- package/dist/commands/lambda/interfaces.d.ts +3 -0
- package/dist/commands/react-native/__tests__/codepush.test.js +35 -0
- package/dist/commands/react-native/__tests__/codepush.test.js.map +1 -1
- package/dist/commands/react-native/__tests__/utils.test.js +42 -0
- package/dist/commands/react-native/__tests__/utils.test.js.map +1 -1
- package/dist/commands/react-native/codepush.js +7 -2
- package/dist/commands/react-native/codepush.js.map +1 -1
- package/dist/commands/react-native/utils.d.ts +1 -0
- package/dist/commands/react-native/utils.js +5 -1
- package/dist/commands/react-native/utils.js.map +1 -1
- package/dist/commands/sbom/__tests__/payload.test.js +31 -0
- package/dist/commands/sbom/__tests__/payload.test.js.map +1 -1
- package/dist/commands/sbom/__tests__/validation.test.js +4 -0
- package/dist/commands/sbom/__tests__/validation.test.js.map +1 -1
- package/dist/commands/sbom/constants.d.ts +1 -0
- package/dist/commands/sbom/constants.js +2 -1
- package/dist/commands/sbom/constants.js.map +1 -1
- package/dist/commands/sbom/payload.js +66 -0
- package/dist/commands/sbom/payload.js.map +1 -1
- package/dist/commands/sbom/types.d.ts +13 -0
- package/dist/commands/span/__tests__/span.test.d.ts +1 -0
- package/dist/commands/span/__tests__/span.test.js +108 -0
- package/dist/commands/span/__tests__/span.test.js.map +1 -0
- package/dist/commands/span/cli.d.ts +1 -0
- package/dist/commands/span/cli.js +5 -0
- package/dist/commands/span/cli.js.map +1 -0
- package/dist/commands/span/span.d.ts +10 -0
- package/dist/commands/span/span.js +112 -0
- package/dist/commands/span/span.js.map +1 -0
- package/dist/commands/synthetics/__tests__/build-and-test.test.js +63 -105
- package/dist/commands/synthetics/__tests__/build-and-test.test.js.map +1 -1
- package/dist/commands/synthetics/build-and-test.d.ts +20 -3
- package/dist/commands/synthetics/build-and-test.js +180 -66
- package/dist/commands/synthetics/build-and-test.js.map +1 -1
- package/dist/commands/synthetics/run-tests-command.js +5 -2
- package/dist/commands/synthetics/run-tests-command.js.map +1 -1
- package/dist/commands/synthetics/utils/internal.d.ts +0 -2
- package/dist/commands/synthetics/utils/internal.js +1 -15
- package/dist/commands/synthetics/utils/internal.js.map +1 -1
- package/dist/commands/trace/__tests__/trace.test.js +3 -100
- package/dist/commands/trace/__tests__/trace.test.js.map +1 -1
- package/dist/commands/trace/helper.d.ts +16 -0
- package/dist/commands/trace/helper.js +123 -0
- package/dist/commands/trace/helper.js.map +1 -0
- package/dist/commands/trace/test-utils.d.ts +1 -0
- package/dist/commands/trace/test-utils.js +119 -0
- package/dist/commands/trace/test-utils.js.map +1 -0
- package/dist/commands/trace/trace.d.ts +2 -12
- package/dist/commands/trace/trace.js +14 -93
- package/dist/commands/trace/trace.js.map +1 -1
- package/dist/helpers/__tests__/flare.test.js +2 -1
- package/dist/helpers/__tests__/flare.test.js.map +1 -1
- package/dist/helpers/flare.js +2 -1
- package/dist/helpers/flare.js.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { Command } from 'clipanion';
|
|
2
|
+
export declare abstract class CustomSpanCommand extends Command {
|
|
3
|
+
private measures;
|
|
4
|
+
private dryRun;
|
|
5
|
+
private tags;
|
|
6
|
+
private fips;
|
|
7
|
+
private fipsIgnoreError;
|
|
8
|
+
private config;
|
|
9
|
+
protected generateSpanId(): string;
|
|
10
|
+
protected tryEnableFips(): void;
|
|
11
|
+
protected executeReportCustomSpan(id: string, startTime: Date, endTime: Date, extraTags: Record<string, any>): Promise<number>;
|
|
12
|
+
private getApiHelper;
|
|
13
|
+
private getBaseIntakeUrl;
|
|
14
|
+
private reportCustomSpan;
|
|
15
|
+
private handleError;
|
|
16
|
+
}
|
|
@@ -0,0 +1,123 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
12
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
13
|
+
};
|
|
14
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
+
exports.CustomSpanCommand = void 0;
|
|
16
|
+
const crypto_1 = __importDefault(require("crypto"));
|
|
17
|
+
const chalk_1 = __importDefault(require("chalk"));
|
|
18
|
+
const clipanion_1 = require("clipanion");
|
|
19
|
+
const constants_1 = require("../../constants");
|
|
20
|
+
const ci_1 = require("../../helpers/ci");
|
|
21
|
+
const env_1 = require("../../helpers/env");
|
|
22
|
+
const fips_1 = require("../../helpers/fips");
|
|
23
|
+
const format_git_span_data_1 = require("../../helpers/git/format-git-span-data");
|
|
24
|
+
const retry_1 = require("../../helpers/retry");
|
|
25
|
+
const tags_1 = require("../../helpers/tags");
|
|
26
|
+
const user_provided_git_1 = require("../../helpers/user-provided-git");
|
|
27
|
+
const api_1 = require("./api");
|
|
28
|
+
const interfaces_1 = require("./interfaces");
|
|
29
|
+
class CustomSpanCommand extends clipanion_1.Command {
|
|
30
|
+
constructor() {
|
|
31
|
+
var _a, _b;
|
|
32
|
+
super(...arguments);
|
|
33
|
+
this.measures = clipanion_1.Option.Array('--measures');
|
|
34
|
+
this.dryRun = clipanion_1.Option.Boolean('--dry-run');
|
|
35
|
+
this.tags = clipanion_1.Option.Array('--tags');
|
|
36
|
+
this.fips = clipanion_1.Option.Boolean('--fips', false);
|
|
37
|
+
this.fipsIgnoreError = clipanion_1.Option.Boolean('--fips-ignore-error', false);
|
|
38
|
+
this.config = {
|
|
39
|
+
apiKey: process.env.DATADOG_API_KEY || process.env.DD_API_KEY,
|
|
40
|
+
envVarTags: process.env.DD_TAGS,
|
|
41
|
+
fips: (_a = (0, env_1.toBoolean)(process.env[constants_1.FIPS_ENV_VAR])) !== null && _a !== void 0 ? _a : false,
|
|
42
|
+
fipsIgnoreError: (_b = (0, env_1.toBoolean)(process.env[constants_1.FIPS_IGNORE_ERROR_ENV_VAR])) !== null && _b !== void 0 ? _b : false,
|
|
43
|
+
};
|
|
44
|
+
}
|
|
45
|
+
generateSpanId() {
|
|
46
|
+
return crypto_1.default.randomBytes(5).toString('hex');
|
|
47
|
+
}
|
|
48
|
+
tryEnableFips() {
|
|
49
|
+
(0, fips_1.enableFips)(this.fips || this.config.fips, this.fipsIgnoreError || this.config.fipsIgnoreError);
|
|
50
|
+
}
|
|
51
|
+
executeReportCustomSpan(id, startTime, endTime, extraTags) {
|
|
52
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
53
|
+
const provider = (0, ci_1.getCIProvider)();
|
|
54
|
+
if (!interfaces_1.SUPPORTED_PROVIDERS.includes(provider)) {
|
|
55
|
+
this.context.stdout.write(`Unsupported CI provider "${provider}". Supported providers are: ${interfaces_1.SUPPORTED_PROVIDERS.join(', ')}\n`);
|
|
56
|
+
return 1;
|
|
57
|
+
}
|
|
58
|
+
const ciSpanTags = (0, ci_1.getCISpanTags)();
|
|
59
|
+
const envVarTags = this.config.envVarTags ? (0, tags_1.parseTags)(this.config.envVarTags.split(',')) : {};
|
|
60
|
+
const cliTags = this.tags ? (0, tags_1.parseTags)(this.tags) : {};
|
|
61
|
+
const cliMeasures = this.measures ? (0, tags_1.parseTags)(this.measures) : {};
|
|
62
|
+
const measures = Object.entries(cliMeasures).reduce((acc, [key, value]) => {
|
|
63
|
+
const parsedValue = parseFloat(value);
|
|
64
|
+
if (!isNaN(parsedValue)) {
|
|
65
|
+
return Object.assign(Object.assign({}, acc), { [key]: parsedValue });
|
|
66
|
+
}
|
|
67
|
+
return acc;
|
|
68
|
+
}, {});
|
|
69
|
+
const gitSpanTags = yield (0, format_git_span_data_1.getGitMetadata)();
|
|
70
|
+
const userGitSpanTags = (0, user_provided_git_1.getUserGitSpanTags)();
|
|
71
|
+
yield this.reportCustomSpan({
|
|
72
|
+
start_time: startTime.toISOString(),
|
|
73
|
+
end_time: endTime.toISOString(),
|
|
74
|
+
ci_provider: provider,
|
|
75
|
+
span_id: id,
|
|
76
|
+
tags: Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({}, gitSpanTags), ciSpanTags), userGitSpanTags), cliTags), envVarTags),
|
|
77
|
+
measures,
|
|
78
|
+
command: extraTags.command,
|
|
79
|
+
name: extraTags.name,
|
|
80
|
+
error_message: extraTags.error_message,
|
|
81
|
+
exit_code: extraTags.exit_code,
|
|
82
|
+
});
|
|
83
|
+
return 0;
|
|
84
|
+
});
|
|
85
|
+
}
|
|
86
|
+
getApiHelper() {
|
|
87
|
+
if (!this.config.apiKey) {
|
|
88
|
+
this.context.stdout.write(`Neither ${chalk_1.default.red.bold('DATADOG_API_KEY')} nor ${chalk_1.default.red.bold('DD_API_KEY')} is in your environment.\n`);
|
|
89
|
+
throw new Error('API key is missing');
|
|
90
|
+
}
|
|
91
|
+
return (0, api_1.apiConstructor)(this.getBaseIntakeUrl(), this.config.apiKey);
|
|
92
|
+
}
|
|
93
|
+
getBaseIntakeUrl() {
|
|
94
|
+
const site = process.env.DATADOG_SITE || process.env.DD_SITE || 'datadoghq.com';
|
|
95
|
+
return `https://api.${site}`;
|
|
96
|
+
}
|
|
97
|
+
reportCustomSpan(payload) {
|
|
98
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
99
|
+
if (this.dryRun) {
|
|
100
|
+
this.context.stdout.write(`${chalk_1.default.green.bold('[DRY-RUN]')} Reporting custom span: ${JSON.stringify(payload)}\n`);
|
|
101
|
+
return;
|
|
102
|
+
}
|
|
103
|
+
const api = this.getApiHelper();
|
|
104
|
+
try {
|
|
105
|
+
yield (0, retry_1.retryRequest)(() => api.reportCustomSpan(payload), {
|
|
106
|
+
onRetry: (e, attempt) => {
|
|
107
|
+
this.context.stderr.write(chalk_1.default.yellow(`[attempt ${attempt}] Could not report custom span. Retrying...: ${e.message}\n`));
|
|
108
|
+
},
|
|
109
|
+
retries: 5,
|
|
110
|
+
});
|
|
111
|
+
}
|
|
112
|
+
catch (error) {
|
|
113
|
+
this.handleError(error);
|
|
114
|
+
}
|
|
115
|
+
});
|
|
116
|
+
}
|
|
117
|
+
handleError(error) {
|
|
118
|
+
this.context.stderr.write(`${chalk_1.default.red.bold('[ERROR]')} Failed to report custom span: ` +
|
|
119
|
+
`${error.response ? JSON.stringify(error.response.data, undefined, 2) : ''}\n`);
|
|
120
|
+
}
|
|
121
|
+
}
|
|
122
|
+
exports.CustomSpanCommand = CustomSpanCommand;
|
|
123
|
+
//# sourceMappingURL=helper.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"helper.js","sourceRoot":"","sources":["../../../src/commands/trace/helper.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const makeCIProviderTests: (runCLI: any, runCLIArgs: string[]) => void;
|
|
@@ -0,0 +1,119 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// Only the function is exported, not the test such that there is no test duplication
|
|
3
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
4
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
5
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
6
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
7
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
8
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
9
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
10
|
+
});
|
|
11
|
+
};
|
|
12
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
13
|
+
exports.makeCIProviderTests = void 0;
|
|
14
|
+
/* eslint-disable jest/no-export */
|
|
15
|
+
const makeCIProviderTests = (runCLI, runCLIArgs) => {
|
|
16
|
+
describe('execute', () => {
|
|
17
|
+
test('should fail if no CI is detected', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
18
|
+
process.env = {};
|
|
19
|
+
const { context, code } = yield runCLI(runCLIArgs);
|
|
20
|
+
expect(code).toBe(1);
|
|
21
|
+
expect(context.stdout.toString()).toContain('Unsupported CI provider "unknown"');
|
|
22
|
+
}));
|
|
23
|
+
test('should detect the circleci environment', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
24
|
+
const { context, code } = yield runCLI(runCLIArgs, {
|
|
25
|
+
CIRCLECI: 'true',
|
|
26
|
+
CIRCLE_WORKFLOW_ID: 'test',
|
|
27
|
+
CIRCLE_BUILD_NUM: '10',
|
|
28
|
+
NON_CIRCLE_ENV: 'bar',
|
|
29
|
+
});
|
|
30
|
+
expect(code).toBe(0);
|
|
31
|
+
const dryRunOutput = context.stdout.toString();
|
|
32
|
+
expect(dryRunOutput).toContain('\\"CIRCLE_WORKFLOW_ID\\":\\"test\\"');
|
|
33
|
+
expect(dryRunOutput).toContain('\\"CIRCLE_BUILD_NUM\\":\\"10\\"');
|
|
34
|
+
}));
|
|
35
|
+
test('should detect the jenkins environment', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
36
|
+
const { context, code } = yield runCLI(runCLIArgs, {
|
|
37
|
+
DD_CUSTOM_TRACE_ID: 'abc',
|
|
38
|
+
DD_CUSTOM_PARENT_ID: 'xyz',
|
|
39
|
+
JENKINS_HOME: '/root',
|
|
40
|
+
JENKINS_URL: 'http://jenkins',
|
|
41
|
+
NON_JENKINS_ENV: 'bar',
|
|
42
|
+
WORKSPACE: 'def',
|
|
43
|
+
});
|
|
44
|
+
expect(code).toBe(0);
|
|
45
|
+
const dryRunOutput = context.stdout.toString();
|
|
46
|
+
expect(dryRunOutput).toContain('\\"DD_CUSTOM_TRACE_ID\\":\\"abc\\"');
|
|
47
|
+
expect(dryRunOutput).toContain('\\"DD_CUSTOM_PARENT_ID\\":\\"xyz\\"');
|
|
48
|
+
}));
|
|
49
|
+
test('should detect the github environment', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
50
|
+
const { context, code } = yield runCLI(runCLIArgs, {
|
|
51
|
+
GITHUB_ACTIONS: 'true',
|
|
52
|
+
GITHUB_SERVER_URL: 'http://github',
|
|
53
|
+
GITHUB_REPOSITORY: 'test/test',
|
|
54
|
+
GITHUB_RUN_ID: '10',
|
|
55
|
+
GITHUB_RUN_ATTEMPT: '1',
|
|
56
|
+
GITHUB_JOB: 'jobname',
|
|
57
|
+
DD_GITHUB_JOB_NAME: 'custom_jobname',
|
|
58
|
+
});
|
|
59
|
+
expect(code).toBe(0);
|
|
60
|
+
const dryRunOutput = context.stdout.toString();
|
|
61
|
+
expect(dryRunOutput).toContain('\\"GITHUB_SERVER_URL\\":\\"http://github\\"');
|
|
62
|
+
expect(dryRunOutput).toContain('\\"GITHUB_REPOSITORY\\":\\"test/test\\"');
|
|
63
|
+
expect(dryRunOutput).toContain('\\"GITHUB_RUN_ID\\":\\"10\\"');
|
|
64
|
+
expect(dryRunOutput).toContain('\\"GITHUB_RUN_ATTEMPT\\":\\"1\\"');
|
|
65
|
+
expect(dryRunOutput).toContain('\\"DD_GITHUB_JOB_NAME\\":\\"custom_jobname\\"');
|
|
66
|
+
expect(dryRunOutput).toContain('"ci.job.name":"jobname"');
|
|
67
|
+
}));
|
|
68
|
+
test('should detect the gitlab environment', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
69
|
+
const { context, code } = yield runCLI(runCLIArgs, {
|
|
70
|
+
GITLAB_CI: 'true',
|
|
71
|
+
CI_PROJECT_URL: 'http://gitlab',
|
|
72
|
+
CI_PIPELINE_ID: '10',
|
|
73
|
+
CI_JOB_ID: '50',
|
|
74
|
+
});
|
|
75
|
+
expect(code).toBe(0);
|
|
76
|
+
const dryRunOutput = context.stdout.toString();
|
|
77
|
+
expect(dryRunOutput).toContain('\\"CI_PROJECT_URL\\":\\"http://gitlab\\"');
|
|
78
|
+
expect(dryRunOutput).toContain('\\"CI_PIPELINE_ID\\":\\"10\\"');
|
|
79
|
+
expect(dryRunOutput).toContain('\\"CI_JOB_ID\\":\\"50\\"');
|
|
80
|
+
}));
|
|
81
|
+
test('should detect the azure environment', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
82
|
+
const { context, code } = yield runCLI(runCLIArgs, {
|
|
83
|
+
TF_BUILD: 'true',
|
|
84
|
+
SYSTEM_TEAMPROJECTID: 'test',
|
|
85
|
+
BUILD_BUILDID: '10',
|
|
86
|
+
SYSTEM_JOBID: '3acfg',
|
|
87
|
+
});
|
|
88
|
+
expect(code).toBe(0);
|
|
89
|
+
const dryRunOutput = context.stdout.toString();
|
|
90
|
+
expect(dryRunOutput).toContain('\\"SYSTEM_TEAMPROJECTID\\":\\"test\\"');
|
|
91
|
+
expect(dryRunOutput).toContain('\\"BUILD_BUILDID\\":\\"10\\"');
|
|
92
|
+
expect(dryRunOutput).toContain('\\"SYSTEM_JOBID\\":\\"3acfg\\"');
|
|
93
|
+
}));
|
|
94
|
+
test('should detect the aws codepipeline environment', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
95
|
+
const { context, code } = yield runCLI(runCLIArgs, {
|
|
96
|
+
CODEBUILD_INITIATOR: 'codepipeline-abc',
|
|
97
|
+
DD_PIPELINE_EXECUTION_ID: 'def-234',
|
|
98
|
+
CODEBUILD_BUILD_ARN: 'arn:aws:codebuild:us-west-2:123456789012:build/MyProjectName:6a8f0d8a',
|
|
99
|
+
});
|
|
100
|
+
expect(code).toBe(0);
|
|
101
|
+
const dryRunOutput = context.stdout.toString();
|
|
102
|
+
expect(dryRunOutput).toContain('\\"DD_PIPELINE_EXECUTION_ID\\":\\"def-234\\"');
|
|
103
|
+
expect(dryRunOutput).toContain('\\"CODEBUILD_BUILD_ARN\\":\\"arn:aws:codebuild:us-west-2:123456789012:build/MyProjectName:6a8f0d8a\\"');
|
|
104
|
+
}));
|
|
105
|
+
test('should detect the buildkite environment', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
106
|
+
const { context, code } = yield runCLI(runCLIArgs, {
|
|
107
|
+
BUILDKITE: 'true',
|
|
108
|
+
BUILDKITE_BUILD_ID: 'abc',
|
|
109
|
+
BUILDKITE_JOB_ID: 'def',
|
|
110
|
+
});
|
|
111
|
+
expect(code).toBe(0);
|
|
112
|
+
const dryRunOutput = context.stdout.toString();
|
|
113
|
+
expect(dryRunOutput).toContain('\\"BUILDKITE_BUILD_ID\\":\\"abc\\"');
|
|
114
|
+
expect(dryRunOutput).toContain('\\"BUILDKITE_JOB_ID\\":\\"def\\"');
|
|
115
|
+
}));
|
|
116
|
+
});
|
|
117
|
+
};
|
|
118
|
+
exports.makeCIProviderTests = makeCIProviderTests;
|
|
119
|
+
//# sourceMappingURL=test-utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"test-utils.js","sourceRoot":"","sources":["../../../src/commands/trace/test-utils.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,20 +1,10 @@
|
|
|
1
|
-
import {
|
|
2
|
-
export declare class TraceCommand extends
|
|
1
|
+
import { CustomSpanCommand } from './helper';
|
|
2
|
+
export declare class TraceCommand extends CustomSpanCommand {
|
|
3
3
|
static paths: string[][];
|
|
4
4
|
static usage: import("clipanion").Usage;
|
|
5
5
|
private command;
|
|
6
|
-
private measures;
|
|
7
6
|
private name;
|
|
8
7
|
private noFail;
|
|
9
|
-
private dryRun;
|
|
10
|
-
private tags;
|
|
11
|
-
private fips;
|
|
12
|
-
private fipsIgnoreError;
|
|
13
|
-
private config;
|
|
14
8
|
execute(): Promise<number>;
|
|
15
|
-
private getApiHelper;
|
|
16
|
-
private getBaseIntakeUrl;
|
|
17
|
-
private reportCustomSpan;
|
|
18
9
|
private signalToNumber;
|
|
19
|
-
private handleError;
|
|
20
10
|
}
|
|
@@ -14,52 +14,29 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
14
14
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
15
|
exports.TraceCommand = void 0;
|
|
16
16
|
const child_process_1 = require("child_process");
|
|
17
|
-
const crypto_1 = __importDefault(require("crypto"));
|
|
18
17
|
const os_1 = __importDefault(require("os"));
|
|
19
|
-
const chalk_1 = __importDefault(require("chalk"));
|
|
20
18
|
const clipanion_1 = require("clipanion");
|
|
21
|
-
const
|
|
22
|
-
const ci_1 = require("../../helpers/ci");
|
|
23
|
-
const env_1 = require("../../helpers/env");
|
|
24
|
-
const fips_1 = require("../../helpers/fips");
|
|
25
|
-
const format_git_span_data_1 = require("../../helpers/git/format-git-span-data");
|
|
26
|
-
const retry_1 = require("../../helpers/retry");
|
|
27
|
-
const tags_1 = require("../../helpers/tags");
|
|
28
|
-
const user_provided_git_1 = require("../../helpers/user-provided-git");
|
|
29
|
-
const api_1 = require("./api");
|
|
30
|
-
const interfaces_1 = require("./interfaces");
|
|
19
|
+
const helper_1 = require("./helper");
|
|
31
20
|
// We use 127 as exit code for invalid commands since that is what *sh terminals return
|
|
32
21
|
const BAD_COMMAND_EXIT_CODE = 127;
|
|
33
|
-
class TraceCommand extends
|
|
22
|
+
class TraceCommand extends helper_1.CustomSpanCommand {
|
|
34
23
|
constructor() {
|
|
35
|
-
var _a, _b;
|
|
36
24
|
super(...arguments);
|
|
37
25
|
this.command = clipanion_1.Option.Rest({ required: 1 });
|
|
38
|
-
this.measures = clipanion_1.Option.Array('--measures');
|
|
39
26
|
this.name = clipanion_1.Option.String('--name');
|
|
40
27
|
this.noFail = clipanion_1.Option.Boolean('--no-fail');
|
|
41
|
-
this.dryRun = clipanion_1.Option.Boolean('--dry-run');
|
|
42
|
-
this.tags = clipanion_1.Option.Array('--tags');
|
|
43
|
-
this.fips = clipanion_1.Option.Boolean('--fips', false);
|
|
44
|
-
this.fipsIgnoreError = clipanion_1.Option.Boolean('--fips-ignore-error', false);
|
|
45
|
-
this.config = {
|
|
46
|
-
apiKey: process.env.DATADOG_API_KEY || process.env.DD_API_KEY,
|
|
47
|
-
envVarTags: process.env.DD_TAGS,
|
|
48
|
-
fips: (_a = (0, env_1.toBoolean)(process.env[constants_1.FIPS_ENV_VAR])) !== null && _a !== void 0 ? _a : false,
|
|
49
|
-
fipsIgnoreError: (_b = (0, env_1.toBoolean)(process.env[constants_1.FIPS_IGNORE_ERROR_ENV_VAR])) !== null && _b !== void 0 ? _b : false,
|
|
50
|
-
};
|
|
51
28
|
}
|
|
52
29
|
execute() {
|
|
53
30
|
var _a, _b;
|
|
54
31
|
return __awaiter(this, void 0, void 0, function* () {
|
|
55
|
-
|
|
32
|
+
this.tryEnableFips();
|
|
56
33
|
if (!this.command || !this.command.length) {
|
|
57
34
|
this.context.stderr.write('Missing command to run\n');
|
|
58
35
|
return 1;
|
|
59
36
|
}
|
|
37
|
+
const id = this.generateSpanId();
|
|
60
38
|
const [command, ...args] = this.command;
|
|
61
|
-
const
|
|
62
|
-
const startTime = new Date().toISOString();
|
|
39
|
+
const startTime = new Date();
|
|
63
40
|
const childProcess = (0, child_process_1.spawn)(command, args, {
|
|
64
41
|
env: Object.assign(Object.assign({}, process.env), { DD_CUSTOM_PARENT_ID: id }),
|
|
65
42
|
stdio: ['inherit', 'inherit', 'pipe'],
|
|
@@ -80,75 +57,23 @@ class TraceCommand extends clipanion_1.Command {
|
|
|
80
57
|
});
|
|
81
58
|
});
|
|
82
59
|
const stderr = yield stderrCatcher;
|
|
83
|
-
const endTime = new Date()
|
|
60
|
+
const endTime = new Date();
|
|
84
61
|
const exitCode = (_a = status !== null && status !== void 0 ? status : this.signalToNumber(signal)) !== null && _a !== void 0 ? _a : BAD_COMMAND_EXIT_CODE;
|
|
85
|
-
const provider = (0, ci_1.getCIProvider)();
|
|
86
|
-
if (!interfaces_1.SUPPORTED_PROVIDERS.includes(provider)) {
|
|
87
|
-
if (this.noFail) {
|
|
88
|
-
this.context.stdout.write(`Unsupported CI provider "${provider}". Not failing since the --no-fail option was used.\n`);
|
|
89
|
-
return exitCode;
|
|
90
|
-
}
|
|
91
|
-
this.context.stdout.write(`Unsupported CI provider "${provider}". Supported providers are: ${interfaces_1.SUPPORTED_PROVIDERS.join(', ')}\n`);
|
|
92
|
-
return 1;
|
|
93
|
-
}
|
|
94
|
-
const ciSpanTags = (0, ci_1.getCISpanTags)();
|
|
95
62
|
const commandStr = this.command.join(' ');
|
|
96
|
-
const
|
|
97
|
-
const cliTags = this.tags ? (0, tags_1.parseTags)(this.tags) : {};
|
|
98
|
-
const cliMeasures = this.measures ? (0, tags_1.parseTags)(this.measures) : {};
|
|
99
|
-
const measures = Object.entries(cliMeasures).reduce((acc, [key, value]) => {
|
|
100
|
-
const parsedValue = parseFloat(value);
|
|
101
|
-
if (!isNaN(parsedValue)) {
|
|
102
|
-
return Object.assign(Object.assign({}, acc), { [key]: parsedValue });
|
|
103
|
-
}
|
|
104
|
-
return acc;
|
|
105
|
-
}, {});
|
|
106
|
-
const gitSpanTags = yield (0, format_git_span_data_1.getGitMetadata)();
|
|
107
|
-
const userGitSpanTags = (0, user_provided_git_1.getUserGitSpanTags)();
|
|
108
|
-
yield this.reportCustomSpan({
|
|
109
|
-
ci_provider: provider,
|
|
110
|
-
span_id: id,
|
|
63
|
+
const res = yield this.executeReportCustomSpan(id, startTime, endTime, {
|
|
111
64
|
command: commandStr,
|
|
112
65
|
name: (_b = this.name) !== null && _b !== void 0 ? _b : commandStr,
|
|
113
|
-
start_time: startTime,
|
|
114
|
-
end_time: endTime,
|
|
115
66
|
error_message: stderr,
|
|
116
67
|
exit_code: exitCode,
|
|
117
|
-
tags: Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({}, gitSpanTags), ciSpanTags), userGitSpanTags), cliTags), envVarTags),
|
|
118
|
-
measures,
|
|
119
68
|
});
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
throw new Error('API key is missing');
|
|
127
|
-
}
|
|
128
|
-
return (0, api_1.apiConstructor)(this.getBaseIntakeUrl(), this.config.apiKey);
|
|
129
|
-
}
|
|
130
|
-
getBaseIntakeUrl() {
|
|
131
|
-
const site = process.env.DATADOG_SITE || process.env.DD_SITE || 'datadoghq.com';
|
|
132
|
-
return `https://api.${site}`;
|
|
133
|
-
}
|
|
134
|
-
reportCustomSpan(payload) {
|
|
135
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
136
|
-
if (this.dryRun) {
|
|
137
|
-
this.context.stdout.write(`${chalk_1.default.green.bold('[DRY-RUN]')} Reporting custom span: ${JSON.stringify(payload)}\n`);
|
|
138
|
-
return;
|
|
139
|
-
}
|
|
140
|
-
const api = this.getApiHelper();
|
|
141
|
-
try {
|
|
142
|
-
yield (0, retry_1.retryRequest)(() => api.reportCustomSpan(payload), {
|
|
143
|
-
onRetry: (e, attempt) => {
|
|
144
|
-
this.context.stderr.write(chalk_1.default.yellow(`[attempt ${attempt}] Could not report custom span. Retrying...: ${e.message}\n`));
|
|
145
|
-
},
|
|
146
|
-
retries: 5,
|
|
147
|
-
});
|
|
148
|
-
}
|
|
149
|
-
catch (error) {
|
|
150
|
-
this.handleError(error);
|
|
69
|
+
if (res !== 0) {
|
|
70
|
+
if (this.noFail) {
|
|
71
|
+
console.log('note: Not failing since --no-fail provided');
|
|
72
|
+
return exitCode;
|
|
73
|
+
}
|
|
74
|
+
return res;
|
|
151
75
|
}
|
|
76
|
+
return exitCode;
|
|
152
77
|
});
|
|
153
78
|
}
|
|
154
79
|
signalToNumber(signal) {
|
|
@@ -157,10 +82,6 @@ class TraceCommand extends clipanion_1.Command {
|
|
|
157
82
|
}
|
|
158
83
|
return os_1.default.constants.signals[signal] + 128;
|
|
159
84
|
}
|
|
160
|
-
handleError(error) {
|
|
161
|
-
this.context.stderr.write(`${chalk_1.default.red.bold('[ERROR]')} Failed to report custom span: ` +
|
|
162
|
-
`${error.response ? JSON.stringify(error.response.data, undefined, 2) : ''}\n`);
|
|
163
|
-
}
|
|
164
85
|
}
|
|
165
86
|
exports.TraceCommand = TraceCommand;
|
|
166
87
|
TraceCommand.paths = [['trace']];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"trace.js","sourceRoot":"","sources":["../../../src/commands/trace/trace.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,iDAAmC;AACnC,
|
|
1
|
+
{"version":3,"file":"trace.js","sourceRoot":"","sources":["../../../src/commands/trace/trace.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,iDAAmC;AACnC,4CAAmB;AAEnB,yCAAyC;AAEzC,qCAA0C;AAE1C,uFAAuF;AACvF,MAAM,qBAAqB,GAAG,GAAG,CAAA;AAEjC,MAAa,YAAa,SAAQ,0BAAiB;IAAnD;;QA0BU,YAAO,GAAG,kBAAM,CAAC,IAAI,CAAC,EAAC,QAAQ,EAAE,CAAC,EAAC,CAAC,CAAA;QACpC,SAAI,GAAG,kBAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAA;QAC9B,WAAM,GAAG,kBAAM,CAAC,OAAO,CAAC,WAAW,CAAC,CAAA;IAmE9C,CAAC;IAjEc,OAAO;;;YAClB,IAAI,CAAC,aAAa,EAAE,CAAA;YAEpB,IAAI,CAAC,IAAI,CAAC,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE;gBACzC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,0BAA0B,CAAC,CAAA;gBAErD,OAAO,CAAC,CAAA;aACT;YAED,MAAM,EAAE,GAAG,IAAI,CAAC,cAAc,EAAE,CAAA;YAChC,MAAM,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC,OAAO,CAAA;YACvC,MAAM,SAAS,GAAG,IAAI,IAAI,EAAE,CAAA;YAC5B,MAAM,YAAY,GAAG,IAAA,qBAAK,EAAC,OAAO,EAAE,IAAI,EAAE;gBACxC,GAAG,kCAAM,OAAO,CAAC,GAAG,KAAE,mBAAmB,EAAE,EAAE,GAAC;gBAC9C,KAAK,EAAE,CAAC,SAAS,EAAE,SAAS,EAAE,MAAM,CAAC;aACtC,CAAC,CAAA;YACF,MAAM,MAAM,GAAa,EAAE,CAAA;YAC3B,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAA;YAC7C,MAAM,aAAa,GAAoB,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;gBACrE,YAAY,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;gBAC1E,YAAY,CAAC,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAA;gBACrD,YAAY,CAAC,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAA;YACtF,CAAC,CAAC,CAAA;YACF,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,MAAM,IAAI,OAAO,CAA2B,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;gBACvF,YAAY,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,KAAY,EAAE,EAAE;oBACxC,MAAM,CAAC,KAAK,CAAC,CAAA;gBACf,CAAC,CAAC,CAAA;gBAEF,YAAY,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,UAAkB,EAAE,UAA0B,EAAE,EAAE;oBAC1E,OAAO,CAAC,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC,CAAA;gBACnC,CAAC,CAAC,CAAA;YACJ,CAAC,CAAC,CAAA;YAEF,MAAM,MAAM,GAAW,MAAM,aAAa,CAAA;YAC1C,MAAM,OAAO,GAAG,IAAI,IAAI,EAAE,CAAA;YAC1B,MAAM,QAAQ,GAAW,MAAA,MAAM,aAAN,MAAM,cAAN,MAAM,GAAI,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,mCAAI,qBAAqB,CAAA;YACvF,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;YAEzC,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,uBAAuB,CAAC,EAAE,EAAE,SAAS,EAAE,OAAO,EAAE;gBACrE,OAAO,EAAE,UAAU;gBACnB,IAAI,EAAE,MAAA,IAAI,CAAC,IAAI,mCAAI,UAAU;gBAC7B,aAAa,EAAE,MAAM;gBACrB,SAAS,EAAE,QAAQ;aACpB,CAAC,CAAA;YAEF,IAAI,GAAG,KAAK,CAAC,EAAE;gBACb,IAAI,IAAI,CAAC,MAAM,EAAE;oBACf,OAAO,CAAC,GAAG,CAAC,4CAA4C,CAAC,CAAA;oBAEzD,OAAO,QAAQ,CAAA;iBAChB;gBAED,OAAO,GAAG,CAAA;aACX;YAED,OAAO,QAAQ,CAAA;;KAChB;IAEO,cAAc,CAAC,MAA6B;QAClD,IAAI,CAAC,MAAM,EAAE;YACX,OAAO,SAAS,CAAA;SACjB;QAED,OAAO,YAAE,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,GAAG,CAAA;IAC3C,CAAC;;AA9FH,oCA+FC;AA9Fe,kBAAK,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,AAAd,CAAc;AAEnB,kBAAK,GAAG,mBAAO,CAAC,KAAK,CAAC;IAClC,QAAQ,EAAE,eAAe;IACzB,WAAW,EAAE,8DAA8D;IAC3E,OAAO,EAAE;;;KAGR;IACD,QAAQ,EAAE;QACR;YACE,6DAA6D;YAC7D,2DAA2D;SAC5D;QACD;YACE,sFAAsF;YACtF,uIAAuI;SACxI;QACD;YACE,qDAAqD;YACrD,6DAA6D;SAC9D;KACF;CACF,CAAC,AArBiB,CAqBjB"}
|
|
@@ -128,7 +128,8 @@ describe('flare', () => {
|
|
|
128
128
|
response: { status: 403, data: { error: 'Another error' } },
|
|
129
129
|
});
|
|
130
130
|
const fn = (0, flare_1.sendToDatadog)(MOCK_ZIP_PATH, MOCK_CASE_ID, MOCK_EMAIL, MOCK_API_KEY, MOCK_ROOT_FOLDER_PATH);
|
|
131
|
-
yield expect(fn).rejects.toThrow(`Failed to send flare file to Datadog Support: Some error. Another error\nIs your Datadog API key correct
|
|
131
|
+
yield expect(fn).rejects.toThrow(`Failed to send flare file to Datadog Support: Some error. Another error\nIs your Datadog API key correct? Please follow this doc to set your API key:
|
|
132
|
+
https://docs.datadoghq.com/serverless/libraries_integrations/cli/#environment-variables\n`);
|
|
132
133
|
}));
|
|
133
134
|
});
|
|
134
135
|
describe('getProjectFiles', () => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"flare.test.js","sourceRoot":"","sources":["../../../src/helpers/__tests__/flare.test.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"flare.test.js","sourceRoot":"","sources":["../../../src/helpers/__tests__/flare.test.ts"],"names":[],"mappings":"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"}
|
package/dist/helpers/flare.js
CHANGED
|
@@ -88,7 +88,8 @@ const sendToDatadog = (zipPath, caseId, email, apiKey, rootFolderPath) => __awai
|
|
|
88
88
|
break;
|
|
89
89
|
case 400:
|
|
90
90
|
case 403:
|
|
91
|
-
message +=
|
|
91
|
+
message += `Is your Datadog API key correct? Please follow this doc to set your API key:
|
|
92
|
+
https://docs.datadoghq.com/serverless/libraries_integrations/cli/#environment-variables\n`;
|
|
92
93
|
break;
|
|
93
94
|
}
|
|
94
95
|
throw Error(message);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"flare.js","sourceRoot":"","sources":["../../src/helpers/flare.ts"],"names":[],"mappings":";AAAA;;GAEG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEH,4CAAmB;AACnB,gDAAuB;AAEvB,kDAAyB;AACzB,0DAAgC;AAEhC,4CAQqB;AAErB,6BAAiC;AACjC,4DAA6C;AAC7C,6CAA+C;AAC/C,uCAAiC;AAEjC;;;;;;;;GAQG;AACI,MAAM,aAAa,GAAG,CAC3B,OAAe,EACf,MAAc,EACd,KAAa,EACb,MAAc,EACd,cAAsB,EACtB,EAAE;;IACF,MAAM,WAAW,GAAG,IAAA,sBAAc,GAAE,CAAA;IACpC,MAAM,IAAI,GAAG,IAAI,mBAAQ,EAAE,CAAA;IAC3B,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,CAAA;IAC9B,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE,YAAE,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,CAAA;IACvD,IAAI,CAAC,MAAM,CAAC,oBAAoB,EAAE,iBAAO,CAAC,CAAA;IAC1C,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,KAAK,CAAC,CAAA;IAC3B,MAAM,YAAY,GAAG;QACnB,OAAO,kCACF,IAAI,CAAC,UAAU,EAAE,KACpB,YAAY,EAAE,MAAM,GACrB;KACF,CAAA;IAED,IAAI;QACF,MAAM,eAAK,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,EAAE,YAAY,CAAC,CAAA;KAClD;IAAC,OAAO,GAAG,EAAE;QACZ,yDAAyD;QACzD,IAAA,iBAAY,EAAC,cAAc,CAAC,CAAA;QAE5B,IAAI,eAAK,CAAC,YAAY,CAAC,GAAG,CAAC,EAAE;YAC3B,MAAM,WAAW,GAAW,MAAC,MAAA,GAAG,CAAC,QAAQ,0CAAE,IAAI,CAAC,KAAgB,mCAAI,EAAE,CAAA;YACtE,MAAM,YAAY,GAAG,MAAA,GAAG,CAAC,OAAO,mCAAI,EAAE,CAAA;YAEtC,IAAI,OAAO,GAAG,iDAAiD,YAAY,KAAK,WAAW,IAAI,CAAA;YAC/F,MAAM,IAAI,GAAG,MAAA,GAAG,CAAC,QAAQ,0CAAE,MAAM,CAAA;YACjC,wEAAwE;YACxE,+FAA+F;YAC/F,mFAAmF;YACnF,QAAQ,IAAI,EAAE;gBACZ,KAAK,GAAG;oBACN,OAAO,IAAI,uCAAuC,CAAA;oBAClD,MAAK;gBACP,KAAK,GAAG,CAAC;gBACT,KAAK,GAAG;oBACN,OAAO,IAAI,
|
|
1
|
+
{"version":3,"file":"flare.js","sourceRoot":"","sources":["../../src/helpers/flare.ts"],"names":[],"mappings":"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"}
|