@datadog/datadog-ci 3.2.0 → 3.3.1
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/README.md +3 -0
- package/dist/__tests__/cli.test.js +1 -0
- package/dist/__tests__/cli.test.js.map +1 -1
- package/dist/commands/dora/__tests__/deployment.test.js +2 -0
- package/dist/commands/dora/__tests__/deployment.test.js.map +1 -1
- package/dist/commands/dora/api.js +3 -0
- package/dist/commands/dora/api.js.map +1 -1
- package/dist/commands/dora/deployment.d.ts +1 -0
- package/dist/commands/dora/deployment.js +8 -1
- package/dist/commands/dora/deployment.js.map +1 -1
- package/dist/commands/dora/interfaces.d.ts +1 -0
- package/dist/commands/elf-symbols/__tests__/elf.test.js +12 -9
- package/dist/commands/elf-symbols/__tests__/elf.test.js.map +1 -1
- package/dist/commands/elf-symbols/__tests__/upload.test.js +9 -5
- package/dist/commands/elf-symbols/__tests__/upload.test.js.map +1 -1
- package/dist/commands/elf-symbols/elf.d.ts +2 -11
- package/dist/commands/elf-symbols/elf.js +52 -68
- package/dist/commands/elf-symbols/elf.js.map +1 -1
- package/dist/commands/elf-symbols/upload.js +3 -3
- package/dist/commands/elf-symbols/upload.js.map +1 -1
- package/dist/commands/pe-symbols/__tests__/pe.test.d.ts +1 -0
- package/dist/commands/pe-symbols/__tests__/pe.test.js +81 -0
- package/dist/commands/pe-symbols/__tests__/pe.test.js.map +1 -0
- package/dist/commands/pe-symbols/cli.d.ts +1 -0
- package/dist/commands/pe-symbols/cli.js +5 -0
- package/dist/commands/pe-symbols/cli.js.map +1 -0
- package/dist/commands/pe-symbols/helpers.d.ts +4 -0
- package/dist/commands/pe-symbols/helpers.js +30 -0
- package/dist/commands/pe-symbols/helpers.js.map +1 -0
- package/dist/commands/pe-symbols/interfaces.d.ts +17 -0
- package/dist/commands/pe-symbols/interfaces.js +7 -0
- package/dist/commands/pe-symbols/interfaces.js.map +1 -0
- package/dist/commands/pe-symbols/pe-constants.d.ts +51 -0
- package/dist/commands/pe-symbols/pe-constants.js +160 -0
- package/dist/commands/pe-symbols/pe-constants.js.map +1 -0
- package/dist/commands/pe-symbols/pe.d.ts +35 -0
- package/dist/commands/pe-symbols/pe.js +248 -0
- package/dist/commands/pe-symbols/pe.js.map +1 -0
- package/dist/commands/pe-symbols/renderer.d.ts +19 -0
- package/dist/commands/pe-symbols/renderer.js +87 -0
- package/dist/commands/pe-symbols/renderer.js.map +1 -0
- package/dist/commands/pe-symbols/upload.d.ts +32 -0
- package/dist/commands/pe-symbols/upload.js +412 -0
- package/dist/commands/pe-symbols/upload.js.map +1 -0
- package/dist/commands/sbom/__tests__/payload.test.js +88 -26
- package/dist/commands/sbom/__tests__/payload.test.js.map +1 -1
- package/dist/commands/sbom/payload.js +44 -0
- package/dist/commands/sbom/payload.js.map +1 -1
- package/dist/commands/sbom/types.d.ts +4 -0
- package/dist/commands/synthetics/__tests__/api.test.js +2 -2
- package/dist/commands/synthetics/__tests__/api.test.js.map +1 -1
- package/dist/commands/synthetics/__tests__/batch.test.js +38 -37
- package/dist/commands/synthetics/__tests__/batch.test.js.map +1 -1
- package/dist/commands/synthetics/__tests__/build-and-test.test.d.ts +1 -0
- package/dist/commands/synthetics/__tests__/build-and-test.test.js +133 -0
- package/dist/commands/synthetics/__tests__/build-and-test.test.js.map +1 -0
- package/dist/commands/synthetics/__tests__/cli.test.js +83 -47
- package/dist/commands/synthetics/__tests__/cli.test.js.map +1 -1
- package/dist/commands/synthetics/__tests__/deploy-tests-lib.test.js +2 -2
- package/dist/commands/synthetics/__tests__/deploy-tests-lib.test.js.map +1 -1
- package/dist/commands/synthetics/__tests__/import-tests-lib.test.js +4 -4
- package/dist/commands/synthetics/__tests__/import-tests-lib.test.js.map +1 -1
- package/dist/commands/synthetics/__tests__/test.test.js +6 -7
- package/dist/commands/synthetics/__tests__/test.test.js.map +1 -1
- package/dist/commands/synthetics/__tests__/tunnel/websocket.test.js +1 -1
- package/dist/commands/synthetics/__tests__/tunnel/websocket.test.js.map +1 -1
- package/dist/commands/synthetics/__tests__/utils/public.test.js +8 -7
- package/dist/commands/synthetics/__tests__/utils/public.test.js.map +1 -1
- package/dist/commands/synthetics/api.js +2 -2
- package/dist/commands/synthetics/api.js.map +1 -1
- package/dist/commands/synthetics/base-command.d.ts +29 -0
- package/dist/commands/synthetics/base-command.js +125 -0
- package/dist/commands/synthetics/base-command.js.map +1 -0
- package/dist/commands/synthetics/batch.d.ts +1 -0
- package/dist/commands/synthetics/batch.js +3 -3
- package/dist/commands/synthetics/batch.js.map +1 -1
- package/dist/commands/synthetics/build-and-test.d.ts +8 -0
- package/dist/commands/synthetics/build-and-test.js +102 -0
- package/dist/commands/synthetics/build-and-test.js.map +1 -0
- package/dist/commands/synthetics/deploy-tests-command.d.ts +8 -16
- package/dist/commands/synthetics/deploy-tests-command.js +19 -91
- package/dist/commands/synthetics/deploy-tests-command.js.map +1 -1
- package/dist/commands/synthetics/import-tests-command.d.ts +6 -14
- package/dist/commands/synthetics/import-tests-command.js +15 -83
- package/dist/commands/synthetics/import-tests-command.js.map +1 -1
- package/dist/commands/synthetics/index.d.ts +1 -1
- package/dist/commands/synthetics/index.js +6 -6
- package/dist/commands/synthetics/index.js.map +1 -1
- package/dist/commands/synthetics/interfaces.d.ts +5 -2
- package/dist/commands/synthetics/run-tests-command.d.ts +12 -17
- package/dist/commands/synthetics/run-tests-command.js +133 -190
- package/dist/commands/synthetics/run-tests-command.js.map +1 -1
- package/dist/commands/synthetics/run-tests-lib.d.ts +1 -0
- package/dist/commands/synthetics/run-tests-lib.js +8 -4
- package/dist/commands/synthetics/run-tests-lib.js.map +1 -1
- package/dist/commands/synthetics/test.d.ts +2 -0
- package/dist/commands/synthetics/test.js +9 -8
- package/dist/commands/synthetics/test.js.map +1 -1
- package/dist/commands/synthetics/upload-application-command.d.ts +6 -13
- package/dist/commands/synthetics/upload-application-command.js +22 -87
- package/dist/commands/synthetics/upload-application-command.js.map +1 -1
- package/dist/commands/synthetics/utils/internal.d.ts +2 -0
- package/dist/commands/synthetics/utils/internal.js +15 -1
- package/dist/commands/synthetics/utils/internal.js.map +1 -1
- package/dist/helpers/ci.d.ts +2 -0
- package/dist/helpers/filereader.d.ts +21 -0
- package/dist/helpers/filereader.js +59 -0
- package/dist/helpers/filereader.js.map +1 -0
- package/dist/helpers/interfaces.d.ts +2 -2
- package/dist/helpers/tags.d.ts +2 -0
- package/dist/helpers/tags.js +4 -1
- package/dist/helpers/tags.js.map +1 -1
- package/dist/helpers/utils.d.ts +1 -0
- package/dist/helpers/utils.js +14 -1
- package/dist/helpers/utils.js.map +1 -1
- package/package.json +3 -2
|
@@ -12,72 +12,32 @@ 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.DeployTestsCommand =
|
|
15
|
+
exports.DeployTestsCommand = void 0;
|
|
16
16
|
const clipanion_1 = require("clipanion");
|
|
17
|
-
const deep_extend_1 = __importDefault(require("deep-extend"));
|
|
18
17
|
const terminal_link_1 = __importDefault(require("terminal-link"));
|
|
19
|
-
const
|
|
20
|
-
const env_1 = require("../../helpers/env");
|
|
21
|
-
const fips_1 = require("../../helpers/fips");
|
|
22
|
-
const logger_1 = require("../../helpers/logger");
|
|
23
|
-
const utils_1 = require("../../helpers/utils");
|
|
18
|
+
const base_command_1 = require("./base-command");
|
|
24
19
|
const deploy_tests_lib_1 = require("./deploy-tests-lib");
|
|
25
|
-
const errors_1 = require("./errors");
|
|
26
|
-
const default_1 = require("./reporters/default");
|
|
27
|
-
const public_1 = require("./utils/public");
|
|
28
|
-
exports.DEFAULT_DEPLOY_TESTS_COMMAND_CONFIG = {
|
|
29
|
-
apiKey: '',
|
|
30
|
-
appKey: '',
|
|
31
|
-
configPath: 'datadog-ci.json',
|
|
32
|
-
datadogSite: 'datadoghq.com',
|
|
33
|
-
files: [],
|
|
34
|
-
proxy: { protocol: 'http' },
|
|
35
|
-
publicIds: [],
|
|
36
|
-
subdomain: 'app',
|
|
37
|
-
};
|
|
38
20
|
const configurationLink = 'https://docs.datadoghq.com/continuous_testing/cicd_integrations/configuration';
|
|
39
|
-
const $1 = (text) => (0, terminal_link_1.default)(text, `${configurationLink}#global-configuration-file-options`);
|
|
40
21
|
const $2 = (text) => (0, terminal_link_1.default)(text, `${configurationLink}#test-files`);
|
|
41
|
-
class DeployTestsCommand extends
|
|
22
|
+
class DeployTestsCommand extends base_command_1.BaseCommand {
|
|
42
23
|
constructor() {
|
|
43
|
-
var _a, _b;
|
|
44
24
|
super(...arguments);
|
|
45
|
-
this.
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
this.
|
|
25
|
+
this.subdomain = clipanion_1.Option.String('--subdomain', {
|
|
26
|
+
description: 'The name of the custom subdomain set to access your Datadog application. If the URL used to access Datadog is `myorg.datadoghq.com`, the `subdomain` value needs to be set to `myorg`.',
|
|
27
|
+
});
|
|
28
|
+
this.config = DeployTestsCommand.getDefaultConfig();
|
|
49
29
|
this.files = clipanion_1.Option.Array('-f,--files', {
|
|
50
30
|
description: `Glob pattern to detect Synthetic test ${$2('configuration files')}}.`,
|
|
51
31
|
});
|
|
52
32
|
this.publicIds = clipanion_1.Option.Array('-p,--public-id', { description: 'Specify a test to run.' });
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
});
|
|
56
|
-
this.config = JSON.parse(JSON.stringify(exports.DEFAULT_DEPLOY_TESTS_COMMAND_CONFIG)); // Deep copy to avoid mutation
|
|
57
|
-
this.logger = new logger_1.Logger((s) => {
|
|
58
|
-
this.context.stdout.write(s);
|
|
59
|
-
}, logger_1.LogLevel.INFO);
|
|
60
|
-
this.fips = clipanion_1.Option.Boolean('--fips', false);
|
|
61
|
-
this.fipsIgnoreError = clipanion_1.Option.Boolean('--fips-ignore-error', false);
|
|
62
|
-
this.fipsConfig = {
|
|
63
|
-
fips: (_a = (0, env_1.toBoolean)(process.env[constants_1.FIPS_ENV_VAR])) !== null && _a !== void 0 ? _a : false,
|
|
64
|
-
fipsIgnoreError: (_b = (0, env_1.toBoolean)(process.env[constants_1.FIPS_IGNORE_ERROR_ENV_VAR])) !== null && _b !== void 0 ? _b : false,
|
|
65
|
-
};
|
|
33
|
+
}
|
|
34
|
+
static getDefaultConfig() {
|
|
35
|
+
return Object.assign(Object.assign({}, super.getDefaultConfig()), { files: [], publicIds: [], subdomain: 'app' });
|
|
66
36
|
}
|
|
67
37
|
execute() {
|
|
68
38
|
return __awaiter(this, void 0, void 0, function* () {
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
this.reporter = (0, public_1.getReporter)(reporters);
|
|
72
|
-
try {
|
|
73
|
-
yield this.resolveConfig();
|
|
74
|
-
}
|
|
75
|
-
catch (error) {
|
|
76
|
-
if (error instanceof errors_1.CiError) {
|
|
77
|
-
(0, public_1.reportCiError)(error, this.reporter);
|
|
78
|
-
}
|
|
79
|
-
return 1;
|
|
80
|
-
}
|
|
39
|
+
// populate the config
|
|
40
|
+
yield this.setup();
|
|
81
41
|
try {
|
|
82
42
|
yield (0, deploy_tests_lib_1.deployTests)(this.reporter, this.config);
|
|
83
43
|
}
|
|
@@ -85,47 +45,15 @@ class DeployTestsCommand extends clipanion_1.Command {
|
|
|
85
45
|
this.logger.error(`Error: ${error.message}`);
|
|
86
46
|
return 1;
|
|
87
47
|
}
|
|
48
|
+
return 0;
|
|
88
49
|
});
|
|
89
50
|
}
|
|
90
|
-
|
|
91
|
-
var _a, _b
|
|
92
|
-
return
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
// Override Config Path with ENV variables
|
|
97
|
-
const overrideConfigPath = (_b = (_a = this.configPath) !== null && _a !== void 0 ? _a : process.env.DATADOG_SYNTHETICS_CONFIG_PATH) !== null && _b !== void 0 ? _b : 'datadog-ci.json';
|
|
98
|
-
this.config = yield (0, utils_1.resolveConfigFromFile)(this.config, {
|
|
99
|
-
configPath: overrideConfigPath,
|
|
100
|
-
defaultConfigPaths: [this.config.configPath],
|
|
101
|
-
});
|
|
102
|
-
}
|
|
103
|
-
catch (error) {
|
|
104
|
-
if (this.configPath) {
|
|
105
|
-
throw error;
|
|
106
|
-
}
|
|
107
|
-
}
|
|
108
|
-
// Override with ENV variables
|
|
109
|
-
this.config = (0, deep_extend_1.default)(this.config, (0, utils_1.removeUndefinedValues)({
|
|
110
|
-
apiKey: process.env.DATADOG_API_KEY,
|
|
111
|
-
appKey: process.env.DATADOG_APP_KEY,
|
|
112
|
-
configPath: process.env.DATADOG_SYNTHETICS_CONFIG_PATH,
|
|
113
|
-
datadogSite: process.env.DATADOG_SITE,
|
|
114
|
-
files: (_c = process.env.DATADOG_SYNTHETICS_FILES) === null || _c === void 0 ? void 0 : _c.split(';'),
|
|
115
|
-
publicIds: (_d = process.env.DATADOG_SYNTHETICS_PUBLIC_IDS) === null || _d === void 0 ? void 0 : _d.split(';'),
|
|
116
|
-
subdomain: process.env.DATADOG_SUBDOMAIN,
|
|
117
|
-
}));
|
|
118
|
-
// Override with CLI parameters
|
|
119
|
-
this.config = (0, deep_extend_1.default)(this.config, (0, utils_1.removeUndefinedValues)({
|
|
120
|
-
apiKey: this.apiKey,
|
|
121
|
-
appKey: this.appKey,
|
|
122
|
-
configPath: this.configPath,
|
|
123
|
-
datadogSite: this.datadogSite,
|
|
124
|
-
files: this.files,
|
|
125
|
-
publicIds: this.publicIds,
|
|
126
|
-
subdomain: this.subdomain,
|
|
127
|
-
}));
|
|
128
|
-
});
|
|
51
|
+
resolveConfigFromEnv() {
|
|
52
|
+
var _a, _b;
|
|
53
|
+
return Object.assign(Object.assign({}, super.resolveConfigFromEnv()), { files: (_a = process.env.DATADOG_SYNTHETICS_FILES) === null || _a === void 0 ? void 0 : _a.split(';'), publicIds: (_b = process.env.DATADOG_SYNTHETICS_PUBLIC_IDS) === null || _b === void 0 ? void 0 : _b.split(';'), subdomain: process.env.DATADOG_SUBDOMAIN });
|
|
54
|
+
}
|
|
55
|
+
resolveConfigFromCli() {
|
|
56
|
+
return Object.assign(Object.assign({}, super.resolveConfigFromCli()), { files: this.files, publicIds: this.publicIds, subdomain: this.subdomain });
|
|
129
57
|
}
|
|
130
58
|
}
|
|
131
59
|
exports.DeployTestsCommand = DeployTestsCommand;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deploy-tests-command.js","sourceRoot":"","sources":["../../../src/commands/synthetics/deploy-tests-command.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,yCAAyC;AACzC,
|
|
1
|
+
{"version":3,"file":"deploy-tests-command.js","sourceRoot":"","sources":["../../../src/commands/synthetics/deploy-tests-command.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,yCAAyC;AACzC,kEAAwC;AAExC,iDAA4D;AAC5D,yDAA8C;AAG9C,MAAM,iBAAiB,GAAG,+EAA+E,CAAA;AAEzG,MAAM,EAAE,GAAG,CAAC,IAAY,EAAE,EAAE,CAAC,IAAA,uBAAY,EAAC,IAAI,EAAE,GAAG,iBAAiB,aAAa,CAAC,CAAA;AAElF,MAAa,kBAAmB,SAAQ,0BAAW;IAAnD;;QAqBY,cAAS,GAAG,kBAAM,CAAC,MAAM,CAAC,aAAa,EAAE;YACjD,WAAW,EACT,wLAAwL;SAC3L,CAAC,CAAA;QAEQ,WAAM,GAA6B,kBAAkB,CAAC,gBAAgB,EAAE,CAAA;QAE1E,UAAK,GAAG,kBAAM,CAAC,KAAK,CAAC,YAAY,EAAE;YACzC,WAAW,EAAE,yCAAyC,EAAE,CAAC,qBAAqB,CAAC,IAAI;SACpF,CAAC,CAAA;QACM,cAAS,GAAG,kBAAM,CAAC,KAAK,CAAC,gBAAgB,EAAE,EAAC,WAAW,EAAE,wBAAwB,EAAC,CAAC,CAAA;IA2C7F,CAAC;IAzCQ,MAAM,CAAC,gBAAgB;QAC5B,uCACK,KAAK,CAAC,gBAAgB,EAAE,KAC3B,KAAK,EAAE,EAAE,EACT,SAAS,EAAE,EAAE,EACb,SAAS,EAAE,KAAK,IACjB;IACH,CAAC;IAEY,OAAO;;YAClB,sBAAsB;YACtB,MAAM,IAAI,CAAC,KAAK,EAAE,CAAA;YAElB,IAAI;gBACF,MAAM,IAAA,8BAAW,EAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,CAAA;aAC9C;YAAC,OAAO,KAAK,EAAE;gBACd,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,KAAK,CAAC,OAAO,EAAE,CAAC,CAAA;gBAE5C,OAAO,CAAC,CAAA;aACT;YAED,OAAO,CAAC,CAAA;QACV,CAAC;KAAA;IAES,oBAAoB;;QAC5B,uCACK,KAAK,CAAC,oBAAoB,EAAE,KAC/B,KAAK,EAAE,MAAA,OAAO,CAAC,GAAG,CAAC,wBAAwB,0CAAE,KAAK,CAAC,GAAG,CAAC,EACvD,SAAS,EAAE,MAAA,OAAO,CAAC,GAAG,CAAC,6BAA6B,0CAAE,KAAK,CAAC,GAAG,CAAC,EAChE,SAAS,EAAE,OAAO,CAAC,GAAG,CAAC,iBAAiB,IACzC;IACH,CAAC;IAES,oBAAoB;QAC5B,uCACK,KAAK,CAAC,oBAAoB,EAAE,KAC/B,KAAK,EAAE,IAAI,CAAC,KAAK,EACjB,SAAS,EAAE,IAAI,CAAC,SAAS,EACzB,SAAS,EAAE,IAAI,CAAC,SAAS,IAC1B;IACH,CAAC;;AAzEH,gDA0EC;AAzEe,wBAAK,GAAG,CAAC,CAAC,YAAY,EAAE,cAAc,CAAC,CAAC,AAAnC,CAAmC;AAExC,wBAAK,GAAG,mBAAO,CAAC,KAAK,CAAC;IAClC,QAAQ,EAAE,YAAY;IACtB,WAAW,EAAE,oEAAoE;IACjF,OAAO,EAAE;;KAER;IACD,QAAQ,EAAE;QACR;YACE,yDAAyD;YACzD,oFAAoF;SACrF;QACD;YACE,mCAAmC;YACnC,gHAAgH;SACjH;KACF;CACF,CAAC,AAhBiB,CAgBjB"}
|
|
@@ -1,22 +1,14 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { BaseCommand, RecursivePartial } from './base-command';
|
|
2
2
|
import { ImportTestsCommandConfig } from './interfaces';
|
|
3
|
-
export declare
|
|
4
|
-
export declare class ImportTestsCommand extends Command {
|
|
3
|
+
export declare class ImportTestsCommand extends BaseCommand {
|
|
5
4
|
static paths: string[][];
|
|
6
5
|
static usage: import("clipanion").Usage;
|
|
7
|
-
|
|
8
|
-
private appKey;
|
|
9
|
-
private configPath;
|
|
10
|
-
private datadogSite;
|
|
6
|
+
protected config: ImportTestsCommandConfig;
|
|
11
7
|
private files;
|
|
12
8
|
private publicIds;
|
|
13
9
|
private testSearchQuery;
|
|
14
|
-
|
|
15
|
-
private config;
|
|
16
|
-
private logger;
|
|
17
|
-
private fips;
|
|
18
|
-
private fipsIgnoreError;
|
|
19
|
-
private fipsConfig;
|
|
10
|
+
static getDefaultConfig(): ImportTestsCommandConfig;
|
|
20
11
|
execute(): Promise<1 | undefined>;
|
|
21
|
-
|
|
12
|
+
protected resolveConfigFromEnv(): RecursivePartial<ImportTestsCommandConfig>;
|
|
13
|
+
protected resolveConfigFromCli(): RecursivePartial<ImportTestsCommandConfig>;
|
|
22
14
|
}
|
|
@@ -12,39 +12,17 @@ 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.ImportTestsCommand =
|
|
15
|
+
exports.ImportTestsCommand = void 0;
|
|
16
16
|
const clipanion_1 = require("clipanion");
|
|
17
|
-
const deep_extend_1 = __importDefault(require("deep-extend"));
|
|
18
17
|
const terminal_link_1 = __importDefault(require("terminal-link"));
|
|
19
|
-
const
|
|
20
|
-
const env_1 = require("../../helpers/env");
|
|
21
|
-
const fips_1 = require("../../helpers/fips");
|
|
22
|
-
const logger_1 = require("../../helpers/logger");
|
|
23
|
-
const utils_1 = require("../../helpers/utils");
|
|
18
|
+
const base_command_1 = require("./base-command");
|
|
24
19
|
const import_tests_lib_1 = require("./import-tests-lib");
|
|
25
|
-
const default_1 = require("./reporters/default");
|
|
26
|
-
const public_1 = require("./utils/public");
|
|
27
|
-
exports.DEFAULT_IMPORT_TESTS_COMMAND_CONFIG = {
|
|
28
|
-
apiKey: '',
|
|
29
|
-
appKey: '',
|
|
30
|
-
configPath: 'datadog-ci.json',
|
|
31
|
-
datadogSite: 'datadoghq.com',
|
|
32
|
-
files: [],
|
|
33
|
-
proxy: { protocol: 'http' },
|
|
34
|
-
publicIds: [],
|
|
35
|
-
testSearchQuery: '',
|
|
36
|
-
};
|
|
37
20
|
const configurationLink = 'https://docs.datadoghq.com/continuous_testing/cicd_integrations/configuration';
|
|
38
|
-
const $1 = (text) => (0, terminal_link_1.default)(text, `${configurationLink}#global-configuration-file-options`);
|
|
39
21
|
const $2 = (text) => (0, terminal_link_1.default)(text, `${configurationLink}#test-files`);
|
|
40
|
-
class ImportTestsCommand extends
|
|
22
|
+
class ImportTestsCommand extends base_command_1.BaseCommand {
|
|
41
23
|
constructor() {
|
|
42
|
-
var _a, _b;
|
|
43
24
|
super(...arguments);
|
|
44
|
-
this.
|
|
45
|
-
this.appKey = clipanion_1.Option.String('--appKey', { description: 'The application key used to query the Datadog API.' });
|
|
46
|
-
this.configPath = clipanion_1.Option.String('--config', { description: `Pass a path to a ${$1('global configuration file')}.` });
|
|
47
|
-
this.datadogSite = clipanion_1.Option.String('--datadogSite', { description: 'The Datadog instance to which request is sent.' });
|
|
25
|
+
this.config = ImportTestsCommand.getDefaultConfig();
|
|
48
26
|
this.files = clipanion_1.Option.Array('-f,--files', {
|
|
49
27
|
description: `Glob pattern to detect Synthetic test files ${$2('configuration files')}} and write to this file.`,
|
|
50
28
|
});
|
|
@@ -52,29 +30,14 @@ class ImportTestsCommand extends clipanion_1.Command {
|
|
|
52
30
|
this.testSearchQuery = clipanion_1.Option.String('-s,--search', {
|
|
53
31
|
description: 'Pass a query to select which Synthetic tests to run.',
|
|
54
32
|
});
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
}, logger_1.LogLevel.INFO);
|
|
59
|
-
this.fips = clipanion_1.Option.Boolean('--fips', false);
|
|
60
|
-
this.fipsIgnoreError = clipanion_1.Option.Boolean('--fips-ignore-error', false);
|
|
61
|
-
this.fipsConfig = {
|
|
62
|
-
fips: (_a = (0, env_1.toBoolean)(process.env[constants_1.FIPS_ENV_VAR])) !== null && _a !== void 0 ? _a : false,
|
|
63
|
-
fipsIgnoreError: (_b = (0, env_1.toBoolean)(process.env[constants_1.FIPS_IGNORE_ERROR_ENV_VAR])) !== null && _b !== void 0 ? _b : false,
|
|
64
|
-
};
|
|
33
|
+
}
|
|
34
|
+
static getDefaultConfig() {
|
|
35
|
+
return Object.assign(Object.assign({}, super.getDefaultConfig()), { files: [], publicIds: [], testSearchQuery: '' });
|
|
65
36
|
}
|
|
66
37
|
execute() {
|
|
67
38
|
return __awaiter(this, void 0, void 0, function* () {
|
|
68
|
-
|
|
69
|
-
this.
|
|
70
|
-
(0, fips_1.enableFips)(this.fips || this.fipsConfig.fips, this.fipsIgnoreError || this.fipsConfig.fipsIgnoreError);
|
|
71
|
-
try {
|
|
72
|
-
yield this.resolveConfig();
|
|
73
|
-
}
|
|
74
|
-
catch (error) {
|
|
75
|
-
this.logger.error(`Error: invalid config`);
|
|
76
|
-
return 1;
|
|
77
|
-
}
|
|
39
|
+
// populate the config
|
|
40
|
+
yield this.setup();
|
|
78
41
|
try {
|
|
79
42
|
yield (0, import_tests_lib_1.importTests)(this.reporter, this.config);
|
|
80
43
|
}
|
|
@@ -84,43 +47,12 @@ class ImportTestsCommand extends clipanion_1.Command {
|
|
|
84
47
|
}
|
|
85
48
|
});
|
|
86
49
|
}
|
|
87
|
-
|
|
88
|
-
var _a, _b
|
|
89
|
-
return
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
const overrideConfigPath = (_b = (_a = this.configPath) !== null && _a !== void 0 ? _a : process.env.DATADOG_SYNTHETICS_CONFIG_PATH) !== null && _b !== void 0 ? _b : 'datadog-ci.json';
|
|
94
|
-
this.config = yield (0, utils_1.resolveConfigFromFile)(this.config, {
|
|
95
|
-
configPath: overrideConfigPath,
|
|
96
|
-
defaultConfigPaths: [this.config.configPath],
|
|
97
|
-
});
|
|
98
|
-
}
|
|
99
|
-
catch (error) {
|
|
100
|
-
if (this.configPath) {
|
|
101
|
-
throw error;
|
|
102
|
-
}
|
|
103
|
-
}
|
|
104
|
-
this.config = (0, deep_extend_1.default)(this.config, (0, utils_1.removeUndefinedValues)({
|
|
105
|
-
apiKey: process.env.DATADOG_API_KEY,
|
|
106
|
-
appKey: process.env.DATADOG_APP_KEY,
|
|
107
|
-
configPath: process.env.DATADOG_SYNTHETICS_CONFIG_PATH,
|
|
108
|
-
datadogSite: process.env.DATADOG_SITE,
|
|
109
|
-
files: (_c = process.env.DATADOG_SYNTHETICS_FILES) === null || _c === void 0 ? void 0 : _c.split(';'),
|
|
110
|
-
publicIds: (_d = process.env.DATADOG_SYNTHETICS_PUBLIC_IDS) === null || _d === void 0 ? void 0 : _d.split(';'),
|
|
111
|
-
testSearchQuery: process.env.DATADOG_SYNTHETICS_TEST_SEARCH_QUERY,
|
|
112
|
-
}));
|
|
113
|
-
// Override with CLI parameters
|
|
114
|
-
this.config = (0, deep_extend_1.default)(this.config, (0, utils_1.removeUndefinedValues)({
|
|
115
|
-
apiKey: this.apiKey,
|
|
116
|
-
appKey: this.appKey,
|
|
117
|
-
configPath: this.configPath,
|
|
118
|
-
datadogSite: this.datadogSite,
|
|
119
|
-
files: this.files,
|
|
120
|
-
publicIds: this.publicIds,
|
|
121
|
-
testSearchQuery: this.testSearchQuery,
|
|
122
|
-
}));
|
|
123
|
-
});
|
|
50
|
+
resolveConfigFromEnv() {
|
|
51
|
+
var _a, _b;
|
|
52
|
+
return Object.assign(Object.assign({}, super.resolveConfigFromEnv()), { files: (_a = process.env.DATADOG_SYNTHETICS_FILES) === null || _a === void 0 ? void 0 : _a.split(';'), publicIds: (_b = process.env.DATADOG_SYNTHETICS_PUBLIC_IDS) === null || _b === void 0 ? void 0 : _b.split(';'), testSearchQuery: process.env.DATADOG_SYNTHETICS_TEST_SEARCH_QUERY });
|
|
53
|
+
}
|
|
54
|
+
resolveConfigFromCli() {
|
|
55
|
+
return Object.assign(Object.assign({}, super.resolveConfigFromCli()), { files: this.files, publicIds: this.publicIds, testSearchQuery: this.testSearchQuery });
|
|
124
56
|
}
|
|
125
57
|
}
|
|
126
58
|
exports.ImportTestsCommand = ImportTestsCommand;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"import-tests-command.js","sourceRoot":"","sources":["../../../src/commands/synthetics/import-tests-command.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,yCAAyC;AACzC,
|
|
1
|
+
{"version":3,"file":"import-tests-command.js","sourceRoot":"","sources":["../../../src/commands/synthetics/import-tests-command.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,yCAAyC;AACzC,kEAAwC;AAExC,iDAA4D;AAC5D,yDAA8C;AAG9C,MAAM,iBAAiB,GAAG,+EAA+E,CAAA;AAEzG,MAAM,EAAE,GAAG,CAAC,IAAY,EAAE,EAAE,CAAC,IAAA,uBAAY,EAAC,IAAI,EAAE,GAAG,iBAAiB,aAAa,CAAC,CAAA;AAElF,MAAa,kBAAmB,SAAQ,0BAAW;IAAnD;;QAkBY,WAAM,GAA6B,kBAAkB,CAAC,gBAAgB,EAAE,CAAA;QAE1E,UAAK,GAAG,kBAAM,CAAC,KAAK,CAAC,YAAY,EAAE;YACzC,WAAW,EAAE,+CAA+C,EAAE,CAAC,qBAAqB,CAAC,2BAA2B;SACjH,CAAC,CAAA;QACM,cAAS,GAAG,kBAAM,CAAC,KAAK,CAAC,gBAAgB,EAAE,EAAC,WAAW,EAAE,2BAA2B,EAAC,CAAC,CAAA;QACtF,oBAAe,GAAG,kBAAM,CAAC,MAAM,CAAC,aAAa,EAAE;YACrD,WAAW,EAAE,sDAAsD;SACpE,CAAC,CAAA;IAyCJ,CAAC;IAvCQ,MAAM,CAAC,gBAAgB;QAC5B,uCACK,KAAK,CAAC,gBAAgB,EAAE,KAC3B,KAAK,EAAE,EAAE,EACT,SAAS,EAAE,EAAE,EACb,eAAe,EAAE,EAAE,IACpB;IACH,CAAC;IAEY,OAAO;;YAClB,sBAAsB;YACtB,MAAM,IAAI,CAAC,KAAK,EAAE,CAAA;YAElB,IAAI;gBACF,MAAM,IAAA,8BAAW,EAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,CAAA;aAC9C;YAAC,OAAO,KAAK,EAAE;gBACd,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,KAAK,CAAC,OAAO,EAAE,CAAC,CAAA;gBAE5C,OAAO,CAAC,CAAA;aACT;QACH,CAAC;KAAA;IAES,oBAAoB;;QAC5B,uCACK,KAAK,CAAC,oBAAoB,EAAE,KAC/B,KAAK,EAAE,MAAA,OAAO,CAAC,GAAG,CAAC,wBAAwB,0CAAE,KAAK,CAAC,GAAG,CAAC,EACvD,SAAS,EAAE,MAAA,OAAO,CAAC,GAAG,CAAC,6BAA6B,0CAAE,KAAK,CAAC,GAAG,CAAC,EAChE,eAAe,EAAE,OAAO,CAAC,GAAG,CAAC,oCAAoC,IAClE;IACH,CAAC;IAES,oBAAoB;QAC5B,uCACK,KAAK,CAAC,oBAAoB,EAAE,KAC/B,KAAK,EAAE,IAAI,CAAC,KAAK,EACjB,SAAS,EAAE,IAAI,CAAC,SAAS,EACzB,eAAe,EAAE,IAAI,CAAC,eAAe,IACtC;IACH,CAAC;;AAlEH,gDAmEC;AAlEe,wBAAK,GAAG,CAAC,CAAC,YAAY,EAAE,cAAc,CAAC,CAAC,AAAnC,CAAmC;AAExC,wBAAK,GAAG,mBAAO,CAAC,KAAK,CAAC;IAClC,QAAQ,EAAE,YAAY;IACtB,WAAW,EAAE,6FAA6F;IAC1G,OAAO,EAAE;;KAER;IACD,QAAQ,EAAE;QACR;YACE,0CAA0C;YAC1C,oFAAoF;SACrF;QACD,CAAC,mCAAmC,EAAE,iEAAiE,CAAC;KACzG;CACF,CAAC,AAbiB,CAajB"}
|
|
@@ -3,5 +3,5 @@ export * from './interfaces';
|
|
|
3
3
|
export { DefaultReporter } from './reporters/default';
|
|
4
4
|
export { JUnitReporter } from './reporters/junit';
|
|
5
5
|
export { executeTests, execute } from './run-tests-lib';
|
|
6
|
-
export { DEFAULT_COMMAND_CONFIG } from './run-tests-command';
|
|
7
6
|
export * as utils from './utils/public';
|
|
7
|
+
export declare const DEFAULT_COMMAND_CONFIG: import("./interfaces").RunTestsCommandConfig;
|
|
@@ -26,7 +26,8 @@ var __importStar = (this && this.__importStar) || function (mod) {
|
|
|
26
26
|
return result;
|
|
27
27
|
};
|
|
28
28
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
29
|
-
exports.
|
|
29
|
+
exports.DEFAULT_COMMAND_CONFIG = exports.utils = exports.execute = exports.executeTests = exports.JUnitReporter = exports.DefaultReporter = exports.CriticalError = exports.CiError = void 0;
|
|
30
|
+
const run_tests_lib_1 = require("./run-tests-lib");
|
|
30
31
|
var errors_1 = require("./errors");
|
|
31
32
|
Object.defineProperty(exports, "CiError", { enumerable: true, get: function () { return errors_1.CiError; } });
|
|
32
33
|
Object.defineProperty(exports, "CriticalError", { enumerable: true, get: function () { return errors_1.CriticalError; } });
|
|
@@ -35,10 +36,9 @@ var default_1 = require("./reporters/default");
|
|
|
35
36
|
Object.defineProperty(exports, "DefaultReporter", { enumerable: true, get: function () { return default_1.DefaultReporter; } });
|
|
36
37
|
var junit_1 = require("./reporters/junit");
|
|
37
38
|
Object.defineProperty(exports, "JUnitReporter", { enumerable: true, get: function () { return junit_1.JUnitReporter; } });
|
|
38
|
-
var
|
|
39
|
-
Object.defineProperty(exports, "executeTests", { enumerable: true, get: function () { return
|
|
40
|
-
Object.defineProperty(exports, "execute", { enumerable: true, get: function () { return
|
|
41
|
-
var run_tests_command_1 = require("./run-tests-command");
|
|
42
|
-
Object.defineProperty(exports, "DEFAULT_COMMAND_CONFIG", { enumerable: true, get: function () { return run_tests_command_1.DEFAULT_COMMAND_CONFIG; } });
|
|
39
|
+
var run_tests_lib_2 = require("./run-tests-lib");
|
|
40
|
+
Object.defineProperty(exports, "executeTests", { enumerable: true, get: function () { return run_tests_lib_2.executeTests; } });
|
|
41
|
+
Object.defineProperty(exports, "execute", { enumerable: true, get: function () { return run_tests_lib_2.execute; } });
|
|
43
42
|
exports.utils = __importStar(require("./utils/public"));
|
|
43
|
+
exports.DEFAULT_COMMAND_CONFIG = (0, run_tests_lib_1.getDefaultConfig)();
|
|
44
44
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/commands/synthetics/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,mCAA+C;AAAvC,iGAAA,OAAO,OAAA;AAAE,uGAAA,aAAa,OAAA;AAC9B,+CAA4B;AAC5B,+CAAmD;AAA3C,0GAAA,eAAe,OAAA;AACvB,2CAA+C;AAAvC,sGAAA,aAAa,OAAA;AACrB,iDAAqD;AAA7C,6GAAA,YAAY,OAAA;AAAE,wGAAA,OAAO,OAAA;AAC7B,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/commands/synthetics/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,mDAAgD;AAEhD,mCAA+C;AAAvC,iGAAA,OAAO,OAAA;AAAE,uGAAA,aAAa,OAAA;AAC9B,+CAA4B;AAC5B,+CAAmD;AAA3C,0GAAA,eAAe,OAAA;AACvB,2CAA+C;AAAvC,sGAAA,aAAa,OAAA;AACrB,iDAAqD;AAA7C,6GAAA,YAAY,OAAA;AAAE,wGAAA,OAAO,OAAA;AAC7B,wDAAuC;AAE1B,QAAA,sBAAsB,GAAG,IAAA,gCAAgB,GAAE,CAAA"}
|
|
@@ -473,11 +473,14 @@ export interface APIHelperConfig {
|
|
|
473
473
|
datadogSite: string;
|
|
474
474
|
proxy: ProxyConfiguration;
|
|
475
475
|
}
|
|
476
|
-
export interface
|
|
476
|
+
export interface DatadogCIConfig extends APIHelperConfig {
|
|
477
|
+
configPath: string;
|
|
478
|
+
}
|
|
479
|
+
export interface SyntheticsCIConfig extends DatadogCIConfig {
|
|
477
480
|
}
|
|
478
481
|
export interface RunTestsCommandConfig extends SyntheticsCIConfig {
|
|
479
482
|
batchTimeout?: number;
|
|
480
|
-
|
|
483
|
+
buildCommand?: string;
|
|
481
484
|
defaultTestOverrides?: UserConfigOverride;
|
|
482
485
|
failOnCriticalErrors: boolean;
|
|
483
486
|
failOnMissingTests: boolean;
|
|
@@ -1,19 +1,12 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { RunTestsCommandConfig } from './interfaces';
|
|
3
|
-
export declare
|
|
4
|
-
export declare const DEFAULT_BATCH_TIMEOUT: number;
|
|
5
|
-
export declare const DEFAULT_TEST_CONFIG_FILES_GLOB = "{,!(node_modules)/**/}*.synthetics.json";
|
|
6
|
-
export declare const DEFAULT_COMMAND_CONFIG: RunTestsCommandConfig;
|
|
7
|
-
export declare class RunTestsCommand extends Command {
|
|
1
|
+
import { BaseCommand, RecursivePartial } from './base-command';
|
|
2
|
+
import { Reporter, RunTestsCommandConfig } from './interfaces';
|
|
3
|
+
export declare class RunTestsCommand extends BaseCommand {
|
|
8
4
|
static paths: string[][];
|
|
9
5
|
static usage: import("clipanion").Usage;
|
|
10
|
-
configPath: string | undefined;
|
|
11
6
|
jUnitReport: string | undefined;
|
|
12
7
|
runName: string | undefined;
|
|
13
|
-
|
|
14
|
-
private appKey;
|
|
8
|
+
protected config: RunTestsCommandConfig;
|
|
15
9
|
private batchTimeout;
|
|
16
|
-
private datadogSite;
|
|
17
10
|
private failOnCriticalErrors;
|
|
18
11
|
private failOnMissingTests;
|
|
19
12
|
private failOnTimeout;
|
|
@@ -26,11 +19,13 @@ export declare class RunTestsCommand extends Command {
|
|
|
26
19
|
private subdomain;
|
|
27
20
|
private testSearchQuery;
|
|
28
21
|
private tunnel;
|
|
29
|
-
private
|
|
30
|
-
private
|
|
31
|
-
private fips;
|
|
32
|
-
private fipsIgnoreError;
|
|
33
|
-
private fipsConfig;
|
|
22
|
+
private buildCommand;
|
|
23
|
+
private tearDowns;
|
|
34
24
|
execute(): Promise<0 | 1>;
|
|
35
|
-
|
|
25
|
+
protected resolveConfigFromEnv(): RecursivePartial<RunTestsCommandConfig>;
|
|
26
|
+
protected resolveConfigFromCli(): RecursivePartial<RunTestsCommandConfig>;
|
|
27
|
+
protected normalizeConfig(): void;
|
|
28
|
+
protected validateConfig(): void;
|
|
29
|
+
protected getReporters(): Reporter[];
|
|
30
|
+
private tearDown;
|
|
36
31
|
}
|