@cdktn/commons 0.23.0-pre.4 → 0.23.0-pre.41
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/ambient.d.ts +0 -2
- package/build/checkpoint.d.ts.map +1 -0
- package/build/checkpoint.js +176 -0
- package/build/config.d.ts.map +1 -0
- package/build/config.js +267 -0
- package/build/config.test.d.ts.map +1 -0
- package/build/config.test.js +680 -0
- package/build/construct-maker-target.d.ts.map +1 -0
- package/build/construct-maker-target.js +129 -0
- package/build/construct-maker-target.test.d.ts.map +1 -0
- package/build/construct-maker-target.test.js +72 -0
- package/build/debug.d.ts.map +1 -0
- package/build/debug.js +379 -0
- package/build/environment.d.ts.map +1 -0
- package/build/environment.js +15 -0
- package/build/errors.d.ts.map +1 -0
- package/build/errors.js +75 -0
- package/build/gradle.d.ts.map +1 -0
- package/build/gradle.js +160 -0
- package/build/index.d.ts.map +1 -0
- package/{src → build}/index.js +1 -1
- package/build/logging.d.ts.map +1 -0
- package/build/logging.js +117 -0
- package/{src → build}/module-schema.d.ts +1 -0
- package/build/module-schema.d.ts.map +1 -0
- package/build/module-schema.js +3 -0
- package/build/provider-schema.d.ts.map +1 -0
- package/build/provider-schema.js +21 -0
- package/build/terraform-module.d.ts.map +1 -0
- package/build/terraform-module.js +23 -0
- package/build/terraform-module.test.d.ts.map +1 -0
- package/build/terraform-module.test.js +31 -0
- package/build/terraform.d.ts.map +1 -0
- package/build/terraform.js +12 -0
- package/build/util.d.ts.map +1 -0
- package/build/util.js +262 -0
- package/build/version.d.ts.map +1 -0
- package/build/version.js +11 -0
- package/eslint.config.mjs +1 -72
- package/package.json +14 -22
- package/src/checkpoint.d.ts.map +0 -1
- package/src/checkpoint.js +0 -176
- package/src/config.d.ts.map +0 -1
- package/src/config.js +0 -267
- package/src/config.test.d.ts.map +0 -1
- package/src/config.test.js +0 -680
- package/src/construct-maker-target.d.ts.map +0 -1
- package/src/construct-maker-target.js +0 -129
- package/src/construct-maker-target.test.d.ts.map +0 -1
- package/src/construct-maker-target.test.js +0 -72
- package/src/debug.d.ts.map +0 -1
- package/src/debug.js +0 -379
- package/src/environment.d.ts.map +0 -1
- package/src/environment.js +0 -15
- package/src/errors.d.ts.map +0 -1
- package/src/errors.js +0 -75
- package/src/gradle.d.ts.map +0 -1
- package/src/gradle.js +0 -160
- package/src/index.d.ts.map +0 -1
- package/src/logging.d.ts.map +0 -1
- package/src/logging.js +0 -117
- package/src/module-schema.d.ts.map +0 -1
- package/src/module-schema.js +0 -3
- package/src/provider-schema.d.ts.map +0 -1
- package/src/provider-schema.js +0 -21
- package/src/terraform-module.d.ts.map +0 -1
- package/src/terraform-module.js +0 -23
- package/src/terraform-module.test.d.ts.map +0 -1
- package/src/terraform-module.test.js +0 -31
- package/src/terraform.d.ts.map +0 -1
- package/src/terraform.js +0 -12
- package/src/util.d.ts.map +0 -1
- package/src/util.js +0 -262
- package/src/version.d.ts.map +0 -1
- package/src/version.js +0 -11
- /package/{src → build}/checkpoint.d.ts +0 -0
- /package/{src → build}/config.d.ts +0 -0
- /package/{src → build}/config.test.d.ts +0 -0
- /package/{src → build}/construct-maker-target.d.ts +0 -0
- /package/{src → build}/construct-maker-target.test.d.ts +0 -0
- /package/{src → build}/debug.d.ts +0 -0
- /package/{src → build}/environment.d.ts +0 -0
- /package/{src → build}/errors.d.ts +0 -0
- /package/{src → build}/gradle.d.ts +0 -0
- /package/{src → build}/index.d.ts +0 -0
- /package/{src → build}/logging.d.ts +0 -0
- /package/{src → build}/provider-schema.d.ts +0 -0
- /package/{src → build}/terraform-module.d.ts +0 -0
- /package/{src → build}/terraform-module.test.d.ts +0 -0
- /package/{src → build}/terraform.d.ts +0 -0
- /package/{src → build}/util.d.ts +0 -0
- /package/{src → build}/version.d.ts +0 -0
package/src/debug.js
DELETED
|
@@ -1,379 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
-
}) : function(o, v) {
|
|
16
|
-
o["default"] = v;
|
|
17
|
-
});
|
|
18
|
-
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
-
if (mod && mod.__esModule) return mod;
|
|
20
|
-
var result = {};
|
|
21
|
-
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
-
__setModuleDefault(result, mod);
|
|
23
|
-
return result;
|
|
24
|
-
};
|
|
25
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
|
-
exports.collectDebugInformation = exports.getPackageVersion = exports.getNodeVersion = exports.getGoVersion = exports.getPipenvVersion = exports.getPipVersion = exports.getPythonVersion = exports.getGradleVersion = exports.getMavenVersion = exports.getJavaVersion = exports.getDotnetVersion = exports.getLanguage = void 0;
|
|
27
|
-
// Copyright (c) HashiCorp, Inc
|
|
28
|
-
// SPDX-License-Identifier: MPL-2.0
|
|
29
|
-
const path = __importStar(require("path"));
|
|
30
|
-
const os = __importStar(require("os"));
|
|
31
|
-
const logging_1 = require("./logging");
|
|
32
|
-
const util_1 = require("./util");
|
|
33
|
-
const terraform_1 = require("./terraform");
|
|
34
|
-
const version_1 = require("./version");
|
|
35
|
-
const fs_extra_1 = require("fs-extra");
|
|
36
|
-
const gradle_1 = require("./gradle");
|
|
37
|
-
function getLanguage(projectPath = process.cwd()) {
|
|
38
|
-
try {
|
|
39
|
-
const cdktfJson = require(path.resolve(projectPath, "cdktf.json"));
|
|
40
|
-
return cdktfJson.language;
|
|
41
|
-
}
|
|
42
|
-
catch (_a) {
|
|
43
|
-
// We can not detect the language
|
|
44
|
-
logging_1.logger.debug(`Unable to detect language in ${projectPath}`);
|
|
45
|
-
return undefined;
|
|
46
|
-
}
|
|
47
|
-
}
|
|
48
|
-
exports.getLanguage = getLanguage;
|
|
49
|
-
async function getBinaryVersion(binary, versionCommand) {
|
|
50
|
-
const noOp = () => { }; // eslint-disable-line @typescript-eslint/no-empty-function
|
|
51
|
-
try {
|
|
52
|
-
const result = await (0, util_1.exec)(binary, [versionCommand], { env: process.env, stdio: [undefined, undefined, "ignore"] }, noOp, noOp);
|
|
53
|
-
return result.trim().replace(/\r?\n|\r/g, "");
|
|
54
|
-
}
|
|
55
|
-
catch (e) {
|
|
56
|
-
logging_1.logger.debug(`Failed to run ${binary} ${versionCommand}: ${e}`);
|
|
57
|
-
return undefined;
|
|
58
|
-
}
|
|
59
|
-
}
|
|
60
|
-
function getDotnetVersion() {
|
|
61
|
-
return getBinaryVersion("dotnet", "--version");
|
|
62
|
-
}
|
|
63
|
-
exports.getDotnetVersion = getDotnetVersion;
|
|
64
|
-
function getJavaVersion() {
|
|
65
|
-
return getBinaryVersion("java", "-version");
|
|
66
|
-
}
|
|
67
|
-
exports.getJavaVersion = getJavaVersion;
|
|
68
|
-
function getMavenVersion() {
|
|
69
|
-
return getBinaryVersion("mvn", "--version");
|
|
70
|
-
}
|
|
71
|
-
exports.getMavenVersion = getMavenVersion;
|
|
72
|
-
function getGradleVersion() {
|
|
73
|
-
return getBinaryVersion("gradle", "--version");
|
|
74
|
-
}
|
|
75
|
-
exports.getGradleVersion = getGradleVersion;
|
|
76
|
-
async function getPythonVersion() {
|
|
77
|
-
return ((await getBinaryVersion("python3", "--version")) ||
|
|
78
|
-
(await getBinaryVersion("python", "--version")));
|
|
79
|
-
}
|
|
80
|
-
exports.getPythonVersion = getPythonVersion;
|
|
81
|
-
function getPipVersion() {
|
|
82
|
-
return getBinaryVersion("pip", "--version");
|
|
83
|
-
}
|
|
84
|
-
exports.getPipVersion = getPipVersion;
|
|
85
|
-
function getPipenvVersion() {
|
|
86
|
-
return getBinaryVersion("pipenv", "--version");
|
|
87
|
-
}
|
|
88
|
-
exports.getPipenvVersion = getPipenvVersion;
|
|
89
|
-
function getGoVersion() {
|
|
90
|
-
return getBinaryVersion("go", "version");
|
|
91
|
-
}
|
|
92
|
-
exports.getGoVersion = getGoVersion;
|
|
93
|
-
function getNodeVersion() {
|
|
94
|
-
return getBinaryVersion("node", "--version");
|
|
95
|
-
}
|
|
96
|
-
exports.getNodeVersion = getNodeVersion;
|
|
97
|
-
async function getNodeModuleVersion(packageName) {
|
|
98
|
-
// Use the presence of the pnpm lock file as a signal that
|
|
99
|
-
// we should interrogate packages via pnpm instead of npm.
|
|
100
|
-
const usingPnpm = await (0, fs_extra_1.pathExists)("pnpm-lock.yaml");
|
|
101
|
-
return usingPnpm
|
|
102
|
-
? getPnpmNodeModuleVersion(packageName)
|
|
103
|
-
: getNpmNodeModuleVersion(packageName);
|
|
104
|
-
}
|
|
105
|
-
async function getPnpmNodeModuleVersion(packageName) {
|
|
106
|
-
var _a, _b, _c;
|
|
107
|
-
let output;
|
|
108
|
-
try {
|
|
109
|
-
output = await (0, util_1.exec)("pnpm", ["list", packageName, "--json"], {
|
|
110
|
-
env: { ...process.env },
|
|
111
|
-
});
|
|
112
|
-
}
|
|
113
|
-
catch (e) {
|
|
114
|
-
logging_1.logger.debug(`Unable to run 'pnpm list ${packageName} --json': ${e}`);
|
|
115
|
-
return undefined;
|
|
116
|
-
}
|
|
117
|
-
let json;
|
|
118
|
-
try {
|
|
119
|
-
json = JSON.parse(output);
|
|
120
|
-
}
|
|
121
|
-
catch (e) {
|
|
122
|
-
logging_1.logger.debug(`Unable to parse output of 'pnpm list ${packageName} --json': ${e}`);
|
|
123
|
-
return undefined;
|
|
124
|
-
}
|
|
125
|
-
if (!json ||
|
|
126
|
-
!Array.isArray(json) ||
|
|
127
|
-
json.length === 0 ||
|
|
128
|
-
!((_c = (_b = (_a = json[0]) === null || _a === void 0 ? void 0 : _a.dependencies) === null || _b === void 0 ? void 0 : _b[packageName]) === null || _c === void 0 ? void 0 : _c.version)) {
|
|
129
|
-
logging_1.logger.debug(`Unable to find '${packageName}' in 'pnpm list ${packageName} --json': ${output}`);
|
|
130
|
-
return undefined;
|
|
131
|
-
}
|
|
132
|
-
return json[0].dependencies[packageName].version;
|
|
133
|
-
}
|
|
134
|
-
async function getNpmNodeModuleVersion(packageName) {
|
|
135
|
-
let output;
|
|
136
|
-
try {
|
|
137
|
-
output = await (0, util_1.exec)("npm", ["list", packageName, "--json"], {
|
|
138
|
-
env: { ...process.env },
|
|
139
|
-
});
|
|
140
|
-
}
|
|
141
|
-
catch (e) {
|
|
142
|
-
logging_1.logger.debug(`Unable to run 'npm list ${packageName} --json': ${e}`);
|
|
143
|
-
return undefined;
|
|
144
|
-
}
|
|
145
|
-
let json;
|
|
146
|
-
try {
|
|
147
|
-
json = JSON.parse(output);
|
|
148
|
-
}
|
|
149
|
-
catch (e) {
|
|
150
|
-
logging_1.logger.debug(`Unable to parse output of 'npm list ${packageName} --json': ${e}`);
|
|
151
|
-
return undefined;
|
|
152
|
-
}
|
|
153
|
-
if (!json.dependencies ||
|
|
154
|
-
!json.dependencies[packageName] ||
|
|
155
|
-
!json.dependencies[packageName].version) {
|
|
156
|
-
logging_1.logger.debug(`Unable to find '${packageName}' in 'npm list ${packageName} --json': ${output}`);
|
|
157
|
-
return undefined;
|
|
158
|
-
}
|
|
159
|
-
return json.dependencies[packageName].version;
|
|
160
|
-
}
|
|
161
|
-
async function getPythonPackageVersion(packageName) {
|
|
162
|
-
let output;
|
|
163
|
-
try {
|
|
164
|
-
output = await (0, util_1.exec)("pipenv", ["run", "pip", "show", "-qq", packageName], {
|
|
165
|
-
env: process.env,
|
|
166
|
-
});
|
|
167
|
-
// Running with `-qq` suppresses both missing packages and actual package
|
|
168
|
-
output = await (0, util_1.exec)("pipenv", ["run", "pip", "show", packageName], {
|
|
169
|
-
env: process.env,
|
|
170
|
-
});
|
|
171
|
-
}
|
|
172
|
-
catch (e) {
|
|
173
|
-
logging_1.logger.debug(`Unable to run 'pipenv run pip show ${packageName}': ${e}`);
|
|
174
|
-
}
|
|
175
|
-
// If we couldn't get the output using pipenv, try to get it using pip directly
|
|
176
|
-
if (!output) {
|
|
177
|
-
try {
|
|
178
|
-
output = await (0, util_1.exec)("pip", ["show", "-qq", packageName], {
|
|
179
|
-
env: process.env,
|
|
180
|
-
});
|
|
181
|
-
// Running with `-qq` suppresses both missing packages and actual package
|
|
182
|
-
output = await (0, util_1.exec)("pip", ["show", packageName], {
|
|
183
|
-
env: process.env,
|
|
184
|
-
});
|
|
185
|
-
}
|
|
186
|
-
catch (e) {
|
|
187
|
-
logging_1.logger.debug(`Unable to run 'pip show ${packageName}': ${e}`);
|
|
188
|
-
}
|
|
189
|
-
}
|
|
190
|
-
if (!output) {
|
|
191
|
-
return undefined;
|
|
192
|
-
}
|
|
193
|
-
const versionInfo = output
|
|
194
|
-
.split(/\r\n|\r|\n/)
|
|
195
|
-
.find((line) => line.startsWith("Version:"));
|
|
196
|
-
if (!versionInfo) {
|
|
197
|
-
logging_1.logger.debug(`Unable to find version in output of 'pipenv run pip show ${packageName}' / 'pip show ${packageName}': ${output}`);
|
|
198
|
-
return undefined;
|
|
199
|
-
}
|
|
200
|
-
const version = versionInfo.split(":")[1].trim();
|
|
201
|
-
return version;
|
|
202
|
-
}
|
|
203
|
-
// Once https://github.com/NuGet/Home/issues/7752 gets resolved we can also try with --json
|
|
204
|
-
async function getCSharpPackageVersion(packageName) {
|
|
205
|
-
const translationMap = {
|
|
206
|
-
jsii: "Amazon.JSII.Runtime",
|
|
207
|
-
constructs: "Constructs",
|
|
208
|
-
cdktf: "HashiCorp.Cdktf",
|
|
209
|
-
cdktn: "Io.Cdktn",
|
|
210
|
-
};
|
|
211
|
-
const cSharpPackageName = translationMap[packageName] || packageName;
|
|
212
|
-
let output;
|
|
213
|
-
try {
|
|
214
|
-
output = await (0, util_1.exec)("dotnet", ["list", "package", "--include-transitive"], {
|
|
215
|
-
env: process.env,
|
|
216
|
-
});
|
|
217
|
-
}
|
|
218
|
-
catch (e) {
|
|
219
|
-
logging_1.logger.debug(`Unable to run 'dotnet list package --include-transitive': ${e}`);
|
|
220
|
-
return undefined;
|
|
221
|
-
}
|
|
222
|
-
const versionLine = output
|
|
223
|
-
.split(/\r\n|\r|\n/)
|
|
224
|
-
.find((line) => line.includes(`> ${cSharpPackageName}`));
|
|
225
|
-
if (!versionLine) {
|
|
226
|
-
logging_1.logger.debug(`Unable to find version for '${cSharpPackageName}' in output of 'dotnet list package --include-transitive': ${output}`);
|
|
227
|
-
return undefined;
|
|
228
|
-
}
|
|
229
|
-
// A line might look like this:
|
|
230
|
-
// Transitive Package Resolved
|
|
231
|
-
// > Amazon.JSII.Runtime 1.17.1
|
|
232
|
-
// Therefore we reverse split by whitespace and reverse
|
|
233
|
-
// so that the first thing we find is the version number
|
|
234
|
-
return versionLine
|
|
235
|
-
.split(" ")
|
|
236
|
-
.reverse()
|
|
237
|
-
.find((part) => part !== "");
|
|
238
|
-
}
|
|
239
|
-
async function getGoPackageVersion(packageName) {
|
|
240
|
-
var _a;
|
|
241
|
-
const translationMap = {
|
|
242
|
-
jsii: "jsii-runtime-go",
|
|
243
|
-
cdktf: "github.com/hashicorp/terraform-cdk-go",
|
|
244
|
-
cdktn: "github.com/open-constructs/cdk-terrain-go",
|
|
245
|
-
};
|
|
246
|
-
const goPackageName = translationMap[packageName] || packageName;
|
|
247
|
-
let output;
|
|
248
|
-
try {
|
|
249
|
-
output = await (0, util_1.exec)("go", ["list", "-m", "all"], {
|
|
250
|
-
env: process.env,
|
|
251
|
-
});
|
|
252
|
-
}
|
|
253
|
-
catch (e) {
|
|
254
|
-
logging_1.logger.debug(`Unable to run 'go list -m all': ${e}`);
|
|
255
|
-
return undefined;
|
|
256
|
-
}
|
|
257
|
-
let versionLine = output
|
|
258
|
-
.split(/\r\n|\r|\n/)
|
|
259
|
-
.find((line) => line.includes(goPackageName));
|
|
260
|
-
if (!versionLine) {
|
|
261
|
-
logging_1.logger.debug(`Unable to find version for '${goPackageName}' in output of 'go list -m all': ${output}`);
|
|
262
|
-
return undefined;
|
|
263
|
-
}
|
|
264
|
-
// We are dealing with a local version
|
|
265
|
-
if (versionLine.includes("=>")) {
|
|
266
|
-
logging_1.logger.debug(`Found local version for '${goPackageName}': ${versionLine}`);
|
|
267
|
-
versionLine = versionLine.split("=>")[0].trim();
|
|
268
|
-
}
|
|
269
|
-
return (_a = versionLine.split(" ").pop()) === null || _a === void 0 ? void 0 : _a.replace("v", "");
|
|
270
|
-
}
|
|
271
|
-
async function getMavenPackageVersion(packageName) {
|
|
272
|
-
const translationMap = {
|
|
273
|
-
jsii: "jsii-runtime",
|
|
274
|
-
};
|
|
275
|
-
const javaPackageName = translationMap[packageName] || packageName;
|
|
276
|
-
let output;
|
|
277
|
-
try {
|
|
278
|
-
output = await (0, util_1.exec)("mvn", ["dependency:list"], {
|
|
279
|
-
env: process.env,
|
|
280
|
-
});
|
|
281
|
-
}
|
|
282
|
-
catch (e) {
|
|
283
|
-
logging_1.logger.debug(`Unable to run 'mvn dependency:list': ${e}`);
|
|
284
|
-
return undefined;
|
|
285
|
-
}
|
|
286
|
-
const resolutionPart = output.split("The following files have been resolved")[1];
|
|
287
|
-
if (!resolutionPart) {
|
|
288
|
-
logging_1.logger.debug(`Unable to find resolution passage in output of 'mvn dependency:list': ${output}`);
|
|
289
|
-
return undefined;
|
|
290
|
-
}
|
|
291
|
-
// We need to search for the package name AND a colon to not match a line like
|
|
292
|
-
// [INFO] com.hashicorp:cdktf-provider-aws:jar:9.0.9:compile
|
|
293
|
-
// when looking for the cdktf package (see Github issue #1994)
|
|
294
|
-
const versionLine = resolutionPart
|
|
295
|
-
.split(/\r\n|\r|\n/)
|
|
296
|
-
.find((line) => line.includes(`${javaPackageName}:`));
|
|
297
|
-
if (!versionLine) {
|
|
298
|
-
logging_1.logger.debug(`Unable to find version for '${javaPackageName}' in output of 'mvn dependency:list': ${output}`);
|
|
299
|
-
return undefined;
|
|
300
|
-
}
|
|
301
|
-
// Example line: [INFO] com.hashicorp:cdktf:jar:0.0.0:compile
|
|
302
|
-
const versionStartDelimiter = `${javaPackageName}:jar:`;
|
|
303
|
-
const versionStart = versionLine.indexOf(versionStartDelimiter) + versionStartDelimiter.length;
|
|
304
|
-
const versionEndDelemiter = ":compile";
|
|
305
|
-
const versionEnd = versionLine.indexOf(versionEndDelemiter);
|
|
306
|
-
return versionLine.substring(versionStart, versionEnd);
|
|
307
|
-
}
|
|
308
|
-
async function getJavaPackageVersion(packageName) {
|
|
309
|
-
if ((0, gradle_1.isGradleProject)("./")) {
|
|
310
|
-
return (0, gradle_1.getGradlePackageVersion)(packageName);
|
|
311
|
-
}
|
|
312
|
-
return getMavenPackageVersion(packageName);
|
|
313
|
-
}
|
|
314
|
-
async function getPackageVersion(language, packageName) {
|
|
315
|
-
const noOp = async () => undefined; // eslint-disable-line @typescript-eslint/no-empty-function
|
|
316
|
-
const getLibraryVersionMap = {
|
|
317
|
-
typescript: getNodeModuleVersion,
|
|
318
|
-
python: getPythonPackageVersion,
|
|
319
|
-
go: getGoPackageVersion,
|
|
320
|
-
csharp: getCSharpPackageVersion,
|
|
321
|
-
java: getJavaPackageVersion,
|
|
322
|
-
};
|
|
323
|
-
const libVersion = await (getLibraryVersionMap[language] || noOp)(packageName);
|
|
324
|
-
return libVersion !== null && libVersion !== void 0 ? libVersion : undefined;
|
|
325
|
-
}
|
|
326
|
-
exports.getPackageVersion = getPackageVersion;
|
|
327
|
-
async function collectDebugInformation() {
|
|
328
|
-
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o;
|
|
329
|
-
const debugOutput = {};
|
|
330
|
-
const language = getLanguage();
|
|
331
|
-
debugOutput["language"] = language !== null && language !== void 0 ? language : null;
|
|
332
|
-
debugOutput["cdktn-cli"] = version_1.DISPLAY_VERSION;
|
|
333
|
-
const node = getNodeVersion();
|
|
334
|
-
debugOutput["node"] = (_a = (await node)) !== null && _a !== void 0 ? _a : null;
|
|
335
|
-
if (language) {
|
|
336
|
-
const cdktn = getPackageVersion(language, "cdktn");
|
|
337
|
-
const cdktf = getPackageVersion(language, "cdktf");
|
|
338
|
-
const constructs = getPackageVersion(language, "constructs");
|
|
339
|
-
const jsii = getPackageVersion(language, "jsii");
|
|
340
|
-
debugOutput["cdktn"] = (_b = (await cdktn)) !== null && _b !== void 0 ? _b : null;
|
|
341
|
-
debugOutput["cdktf"] = (_c = (await cdktf)) !== null && _c !== void 0 ? _c : null;
|
|
342
|
-
debugOutput["constructs"] = (_d = (await constructs)) !== null && _d !== void 0 ? _d : null;
|
|
343
|
-
debugOutput["jsii"] = (_e = (await jsii)) !== null && _e !== void 0 ? _e : null;
|
|
344
|
-
}
|
|
345
|
-
debugOutput["terraform"] = await terraform_1.terraformVersion;
|
|
346
|
-
debugOutput["arch"] = os.arch();
|
|
347
|
-
debugOutput["os"] = `${os.platform()} ${os.release()}`;
|
|
348
|
-
switch (language) {
|
|
349
|
-
case "python":
|
|
350
|
-
{
|
|
351
|
-
const python = getPythonVersion();
|
|
352
|
-
const pip = getPipVersion();
|
|
353
|
-
const pipenv = getPipenvVersion();
|
|
354
|
-
debugOutput["python"] = (_f = (await python)) !== null && _f !== void 0 ? _f : null;
|
|
355
|
-
debugOutput["pip"] = (_g = (await pip)) !== null && _g !== void 0 ? _g : null;
|
|
356
|
-
debugOutput["pipenv"] = (_h = (await pipenv)) !== null && _h !== void 0 ? _h : null;
|
|
357
|
-
}
|
|
358
|
-
break;
|
|
359
|
-
case "java":
|
|
360
|
-
{
|
|
361
|
-
const java = getJavaVersion();
|
|
362
|
-
const maven = getMavenVersion();
|
|
363
|
-
const gradle = getGradleVersion();
|
|
364
|
-
debugOutput["java"] = (_j = (await java)) !== null && _j !== void 0 ? _j : null;
|
|
365
|
-
debugOutput["maven"] = (_k = (await maven)) !== null && _k !== void 0 ? _k : null;
|
|
366
|
-
debugOutput["gradle"] = (_l = (await gradle)) !== null && _l !== void 0 ? _l : null;
|
|
367
|
-
}
|
|
368
|
-
break;
|
|
369
|
-
case "csharp":
|
|
370
|
-
debugOutput["dotnet"] = (_m = (await getDotnetVersion())) !== null && _m !== void 0 ? _m : null;
|
|
371
|
-
break;
|
|
372
|
-
case "go":
|
|
373
|
-
debugOutput["go"] = (_o = (await getGoVersion())) !== null && _o !== void 0 ? _o : null;
|
|
374
|
-
break;
|
|
375
|
-
}
|
|
376
|
-
return debugOutput;
|
|
377
|
-
}
|
|
378
|
-
exports.collectDebugInformation = collectDebugInformation;
|
|
379
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVidWcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJkZWJ1Zy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLCtCQUErQjtBQUMvQixtQ0FBbUM7QUFDbkMsMkNBQTZCO0FBQzdCLHVDQUF5QjtBQUN6Qix1Q0FBbUM7QUFDbkMsaUNBQThCO0FBQzlCLDJDQUErQztBQUMvQyx1Q0FBNEM7QUFDNUMsdUNBQXNDO0FBQ3RDLHFDQUFvRTtBQUVwRSxTQUFnQixXQUFXLENBQUMsV0FBVyxHQUFHLE9BQU8sQ0FBQyxHQUFHLEVBQUU7SUFDckQsSUFBSSxDQUFDO1FBQ0gsTUFBTSxTQUFTLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsV0FBVyxFQUFFLFlBQVksQ0FBQyxDQUFDLENBQUM7UUFDbkUsT0FBTyxTQUFTLENBQUMsUUFBUSxDQUFDO0lBQzVCLENBQUM7SUFBQyxXQUFNLENBQUM7UUFDUCxpQ0FBaUM7UUFDakMsZ0JBQU0sQ0FBQyxLQUFLLENBQUMsZ0NBQWdDLFdBQVcsRUFBRSxDQUFDLENBQUM7UUFDNUQsT0FBTyxTQUFTLENBQUM7SUFDbkIsQ0FBQztBQUNILENBQUM7QUFURCxrQ0FTQztBQUVELEtBQUssVUFBVSxnQkFBZ0IsQ0FDN0IsTUFBYyxFQUNkLGNBQXNCO0lBRXRCLE1BQU0sSUFBSSxHQUFHLEdBQUcsRUFBRSxHQUFFLENBQUMsQ0FBQyxDQUFDLDJEQUEyRDtJQUNsRixJQUFJLENBQUM7UUFDSCxNQUFNLE1BQU0sR0FBRyxNQUFNLElBQUEsV0FBSSxFQUN2QixNQUFNLEVBQ04sQ0FBQyxjQUFjLENBQUMsRUFDaEIsRUFBRSxHQUFHLEVBQUUsT0FBTyxDQUFDLEdBQUcsRUFBRSxLQUFLLEVBQUUsQ0FBQyxTQUFTLEVBQUUsU0FBUyxFQUFFLFFBQVEsQ0FBQyxFQUFFLEVBQzdELElBQUksRUFDSixJQUFJLENBQ0wsQ0FBQztRQUNGLE9BQU8sTUFBTSxDQUFDLElB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RyxlQUFlLEVBQUUsQ0FBQztnQkFDaEMsTUFBTSxNQUFNLEdBQUcsZ0JBQWdCLEVBQUUsQ0FBQztnQkFDbEMsV0FBVyxDQUFDLE1BQU0sQ0FBQyxHQUFHLE1BQUEsQ0FBQyxNQUFNLElBQUksQ0FBQyxtQ0FBSSxJQUFJLENBQUM7Z0JBQzNDLFdBQVcsQ0FBQyxPQUFPLENBQUMsR0FBRyxNQUFBLENBQUMsTUFBTSxLQUFLLENBQUMsbUNBQUksSUFBSSxDQUFDO2dCQUM3QyxXQUFXLENBQUMsUUFBUSxDQUFDLEdBQUcsTUFBQSxDQUFDLE1BQU0sTUFBTSxDQUFDLG1DQUFJLElBQUksQ0FBQztZQUNqRCxDQUFDO1lBQ0QsTUFBTTtRQUNSLEtBQUssUUFBUTtZQUNYLFdBQVcsQ0FBQyxRQUFRLENBQUMsR0FBRyxNQUFBLENBQUMsTUFBTSxnQkFBZ0IsRUFBRSxDQUFDLG1DQUFJLElBQUksQ0FBQztZQUMzRCxNQUFNO1FBQ1IsS0FBSyxJQUFJO1lBQ1AsV0FBVyxDQUFDLElBQUksQ0FBQyxHQUFHLE1BQUEsQ0FBQyxNQUFNLFlBQVksRUFBRSxDQUFDLG1DQUFJLElBQUksQ0FBQztZQUNuRCxNQUFNO0lBQ1YsQ0FBQztJQUVELE9BQU8sV0FBVyxDQUFDO0FBQ3JCLENBQUM7QUF0REQsMERBc0RDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gQ29weXJpZ2h0IChjKSBIYXNoaUNvcnAsIEluY1xuLy8gU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IE1QTC0yLjBcbmltcG9ydCAqIGFzIHBhdGggZnJvbSBcInBhdGhcIjtcbmltcG9ydCAqIGFzIG9zIGZyb20gXCJvc1wiO1xuaW1wb3J0IHsgbG9nZ2VyIH0gZnJvbSBcIi4vbG9nZ2luZ1wiO1xuaW1wb3J0IHsgZXhlYyB9IGZyb20gXCIuL3V0aWxcIjtcbmltcG9ydCB7IHRlcnJhZm9ybVZlcnNpb24gfSBmcm9tIFwiLi90ZXJyYWZvcm1cIjtcbmltcG9ydCB7IERJU1BMQVlfVkVSU0lPTiB9IGZyb20gXCIuL3ZlcnNpb25cIjtcbmltcG9ydCB7IHBhdGhFeGlzdHMgfSBmcm9tIFwiZnMtZXh0cmFcIjtcbmltcG9ydCB7IGdldEdyYWRsZVBhY2thZ2VWZXJzaW9uLCBpc0dyYWRsZVByb2plY3QgfSBmcm9tIFwiLi9ncmFkbGVcIjtcblxuZXhwb3J0IGZ1bmN0aW9uIGdldExhbmd1YWdlKHByb2plY3RQYXRoID0gcHJvY2Vzcy5jd2QoKSk6IHN0cmluZyB8IHVuZGVmaW5lZCB7XG4gIHRyeSB7XG4gICAgY29uc3QgY2RrdGZKc29uID0gcmVxdWlyZShwYXRoLnJlc29sdmUocHJvamVjdFBhdGgsIFwiY2RrdGYuanNvblwiKSk7XG4gICAgcmV0dXJuIGNka3RmSnNvbi5sYW5ndWFnZTtcbiAgfSBjYXRjaCB7XG4gICAgLy8gV2UgY2FuIG5vdCBkZXRlY3QgdGhlIGxhbmd1YWdlXG4gICAgbG9nZ2VyLmRlYnVnKGBVbmFibGUgdG8gZGV0ZWN0IGxhbmd1YWdlIGluICR7cHJvamVjdFBhdGh9YCk7XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxufVxuXG5hc3luYyBmdW5jdGlvbiBnZXRCaW5hcnlWZXJzaW9uKFxuICBiaW5hcnk6IHN0cmluZyxcbiAgdmVyc2lvbkNvbW1hbmQ6IHN0cmluZyxcbik6IFByb21pc2U8c3RyaW5nIHwgdW5kZWZpbmVkPiB7XG4gIGNvbnN0IG5vT3AgPSAoKSA9PiB7fTsgLy8gZXNsaW50LWRpc2FibGUtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZW1wdHktZnVuY3Rpb25cbiAgdHJ5IHtcbiAgICBjb25zdCByZXN1bHQgPSBhd2FpdCBleGVjKFxuICAgICAgYmluYXJ5LFxuICAgICAgW3ZlcnNpb25Db21tYW5kXSxcbiAgICAgIHsgZW52OiBwcm9jZXNzLmVudiwgc3RkaW86IFt1bmRlZmluZWQsIHVuZGVmaW5lZCwgXCJpZ25vcmVcIl0gfSxcbiAgICAgIG5vT3AsXG4gICAgICBub09wLFxuICAgICk7XG4gICAgcmV0dXJuIHJlc3VsdC50cmltKCkucmVwbGFjZSgvXFxyP1xcbnxcXHIvZywgXCJcIik7XG4gIH0gY2F0Y2ggKGUpIHtcbiAgICBsb2dnZXIuZGVidWcoYEZhaWxlZCB0byBydW4gJHtiaW5hcnl9ICR7dmVyc2lvbkNvbW1hbmR9OiAke2V9YCk7XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0RG90bmV0VmVyc2lvbigpIHtcbiAgcmV0dXJuIGdldEJpbmFyeVZlcnNpb24oXCJkb3RuZXRcIiwgXCItLXZlcnNpb25cIik7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRKYXZhVmVyc2lvbigpIHtcbiAgcmV0dXJuIGdldEJpbmFyeVZlcnNpb24oXCJqYXZhXCIsIFwiLXZlcnNpb25cIik7XG59XG5leHBvcnQgZnVuY3Rpb24gZ2V0TWF2ZW5WZXJzaW9uKCkge1xuICByZXR1cm4gZ2V0QmluYXJ5VmVyc2lvbihcIm12blwiLCBcIi0tdmVyc2lvblwiKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldEdyYWRsZVZlcnNpb24oKSB7XG4gIHJldHVybiBnZXRCaW5hcnlWZXJzaW9uKFwiZ3JhZGxlXCIsIFwiLS12ZXJzaW9uXCIpO1xufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZ2V0UHl0aG9uVmVyc2lvbigpIHtcbiAgcmV0dXJuIChcbiAgICAoYXdhaXQgZ2V0QmluYXJ5VmVyc2lvbihcInB5dGhvbjNcIiwgXCItLXZlcnNpb25cIikpIHx8XG4gICAgKGF3YWl0IGdldEJpbmFyeVZlcnNpb24oXCJweXRob25cIiwgXCItLXZlcnNpb25cIikpXG4gICk7XG59XG5leHBvcnQgZnVuY3Rpb24gZ2V0UGlwVmVyc2lvbigpIHtcbiAgcmV0dXJuIGdldEJpbmFyeVZlcnNpb24oXCJwaXBcIiwgXCItLXZlcnNpb25cIik7XG59XG5leHBvcnQgZnVuY3Rpb24gZ2V0UGlwZW52VmVyc2lvbigpIHtcbiAgcmV0dXJuIGdldEJpbmFyeVZlcnNpb24oXCJwaXBlbnZcIiwgXCItLXZlcnNpb25cIik7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRHb1ZlcnNpb24oKSB7XG4gIHJldHVybiBnZXRCaW5hcnlWZXJzaW9uKFwiZ29cIiwgXCJ2ZXJzaW9uXCIpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0Tm9kZVZlcnNpb24oKSB7XG4gIHJldHVybiBnZXRCaW5hcnlWZXJzaW9uKFwibm9kZVwiLCBcIi0tdmVyc2lvblwiKTtcbn1cblxuYXN5bmMgZnVuY3Rpb24gZ2V0Tm9kZU1vZHVsZVZlcnNpb24oXG4gIHBhY2thZ2VOYW1lOiBzdHJpbmcsXG4pOiBQcm9taXNlPHN0cmluZyB8IHVuZGVmaW5lZD4ge1xuICAvLyBVc2UgdGhlIHByZXNlbmNlIG9mIHRoZSBwbnBtIGxvY2sgZmlsZSBhcyBhIHNpZ25hbCB0aGF0XG4gIC8vIHdlIHNob3VsZCBpbnRlcnJvZ2F0ZSBwYWNrYWdlcyB2aWEgcG5wbSBpbnN0ZWFkIG9mIG5wbS5cbiAgY29uc3QgdXNpbmdQbnBtID0gYXdhaXQgcGF0aEV4aXN0cyhcInBucG0tbG9jay55YW1sXCIpO1xuXG4gIHJldHVybiB1c2luZ1BucG1cbiAgICA/IGdldFBucG1Ob2RlTW9kdWxlVmVyc2lvbihwYWNrYWdlTmFtZSlcbiAgICA6IGdldE5wbU5vZGVNb2R1bGVWZXJzaW9uKHBhY2thZ2VOYW1lKTtcbn1cblxuYXN5bmMgZnVuY3Rpb24gZ2V0UG5wbU5vZGVNb2R1bGVWZXJzaW9uKFxuICBwYWNrYWdlTmFtZTogc3RyaW5nLFxuKTogUHJvbWlzZTxzdHJpbmcgfCB1bmRlZmluZWQ+IHtcbiAgbGV0IG91dHB1dDtcblxuICB0cnkge1xuICAgIG91dHB1dCA9IGF3YWl0IGV4ZWMoXCJwbnBtXCIsIFtcImxpc3RcIiwgcGFja2FnZU5hbWUsIFwiLS1qc29uXCJdLCB7XG4gICAgICBlbnY6IHsgLi4ucHJvY2Vzcy5lbnYgfSxcbiAgICB9KTtcbiAgfSBjYXRjaCAoZSkge1xuICAgIGxvZ2dlci5kZWJ1ZyhgVW5hYmxlIHRvIHJ1biAncG5wbSBsaXN0ICR7cGFja2FnZU5hbWV9IC0tanNvbic6ICR7ZX1gKTtcbiAgICByZXR1cm4gdW5kZWZpbmVkO1xuICB9XG5cbiAgbGV0IGpzb247XG4gIHRyeSB7XG4gICAganNvbiA9IEpTT04ucGFyc2Uob3V0cHV0KTtcbiAgfSBjYXRjaCAoZSkge1xuICAgIGxvZ2dlci5kZWJ1ZyhcbiAgICAgIGBVbmFibGUgdG8gcGFyc2Ugb3V0cHV0IG9mICdwbnBtIGxpc3QgJHtwYWNrYWdlTmFtZX0gLS1qc29uJzogJHtlfWAsXG4gICAgKTtcbiAgICByZXR1cm4gdW5kZWZpbmVkO1xuICB9XG5cbiAgaWYgKFxuICAgICFqc29uIHx8XG4gICAgIUFycmF5LmlzQXJyYXkoanNvbikgfHxcbiAgICBqc29uLmxlbmd0aCA9PT0gMCB8fFxuICAgICFqc29uWzBdPy5kZXBlbmRlbmNpZXM/LltwYWNrYWdlTmFtZV0/LnZlcnNpb25cbiAgKSB7XG4gICAgbG9nZ2VyLmRlYnVnKFxuICAgICAgYFVuYWJsZSB0byBmaW5kICcke3BhY2thZ2VOYW1lfScgaW4gJ3BucG0gbGlzdCAke3BhY2thZ2VOYW1lfSAtLWpzb24nOiAke291dHB1dH1gLFxuICAgICk7XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxuXG4gIHJldHVybiBqc29uWzBdLmRlcGVuZGVuY2llc1twYWNrYWdlTmFtZV0udmVyc2lvbjtcbn1cblxuYXN5bmMgZnVuY3Rpb24gZ2V0TnBtTm9kZU1vZHVsZVZlcnNpb24oXG4gIHBhY2thZ2VOYW1lOiBzdHJpbmcsXG4pOiBQcm9taXNlPHN0cmluZyB8IHVuZGVmaW5lZD4ge1xuICBsZXQgb3V0cHV0O1xuXG4gIHRyeSB7XG4gICAgb3V0cHV0ID0gYXdhaXQgZXhlYyhcIm5wbVwiLCBbXCJsaXN0XCIsIHBhY2thZ2VOYW1lLCBcIi0tanNvblwiXSwge1xuICAgICAgZW52OiB7IC4uLnByb2Nlc3MuZW52IH0sXG4gICAgfSk7XG4gIH0gY2F0Y2ggKGUpIHtcbiAgICBsb2dnZXIuZGVidWcoYFVuYWJsZSB0byBydW4gJ25wbSBsaXN0ICR7cGFja2FnZU5hbWV9IC0tanNvbic6ICR7ZX1gKTtcbiAgICByZXR1cm4gdW5kZWZpbmVkO1xuICB9XG5cbiAgbGV0IGpzb247XG4gIHRyeSB7XG4gICAganNvbiA9IEpTT04ucGFyc2Uob3V0cHV0KTtcbiAgfSBjYXRjaCAoZSkge1xuICAgIGxvZ2dlci5kZWJ1ZyhcbiAgICAgIGBVbmFibGUgdG8gcGFyc2Ugb3V0cHV0IG9mICducG0gbGlzdCAke3BhY2thZ2VOYW1lfSAtLWpzb24nOiAke2V9YCxcbiAgICApO1xuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cblxuICBpZiAoXG4gICAgIWpzb24uZGVwZW5kZW5jaWVzIHx8XG4gICAgIWpzb24uZGVwZW5kZW5jaWVzW3BhY2thZ2VOYW1lXSB8fFxuICAgICFqc29uLmRlcGVuZGVuY2llc1twYWNrYWdlTmFtZV0udmVyc2lvblxuICApIHtcbiAgICBsb2dnZXIuZGVidWcoXG4gICAgICBgVW5hYmxlIHRvIGZpbmQgJyR7cGFja2FnZU5hbWV9JyBpbiAnbnBtIGxpc3QgJHtwYWNrYWdlTmFtZX0gLS1qc29uJzogJHtvdXRwdXR9YCxcbiAgICApO1xuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cblxuICByZXR1cm4ganNvbi5kZXBlbmRlbmNpZXNbcGFja2FnZU5hbWVdLnZlcnNpb247XG59XG5cbmFzeW5jIGZ1bmN0aW9uIGdldFB5dGhvblBhY2thZ2VWZXJzaW9uKFxuICBwYWNrYWdlTmFtZTogc3RyaW5nLFxuKTogUHJvbWlzZTxzdHJpbmcgfCB1bmRlZmluZWQ+IHtcbiAgbGV0IG91dHB1dDtcbiAgdHJ5IHtcbiAgICBvdXRwdXQgPSBhd2FpdCBleGVjKFwicGlwZW52XCIsIFtcInJ1blwiLCBcInBpcFwiLCBcInNob3dcIiwgXCItcXFcIiwgcGFja2FnZU5hbWVdLCB7XG4gICAgICBlbnY6IHByb2Nlc3MuZW52LFxuICAgIH0pO1xuXG4gICAgLy8gUnVubmluZyB3aXRoIGAtcXFgIHN1cHByZXNzZXMgYm90aCBtaXNzaW5nIHBhY2thZ2VzIGFuZCBhY3R1YWwgcGFja2FnZVxuICAgIG91dHB1dCA9IGF3YWl0IGV4ZWMoXCJwaXBlbnZcIiwgW1wicnVuXCIsIFwicGlwXCIsIFwic2hvd1wiLCBwYWNrYWdlTmFtZV0sIHtcbiAgICAgIGVudjogcHJvY2Vzcy5lbnYsXG4gICAgfSk7XG4gIH0gY2F0Y2ggKGUpIHtcbiAgICBsb2dnZXIuZGVidWcoYFVuYWJsZSB0byBydW4gJ3BpcGVudiBydW4gcGlwIHNob3cgJHtwYWNrYWdlTmFtZX0nOiAke2V9YCk7XG4gIH1cblxuICAvLyBJZiB3ZSBjb3VsZG4ndCBnZXQgdGhlIG91dHB1dCB1c2luZyBwaXBlbnYsIHRyeSB0byBnZXQgaXQgdXNpbmcgcGlwIGRpcmVjdGx5XG4gIGlmICghb3V0cHV0KSB7XG4gICAgdHJ5IHtcbiAgICAgIG91dHB1dCA9IGF3YWl0IGV4ZWMoXCJwaXBcIiwgW1wic2hvd1wiLCBcIi1xcVwiLCBwYWNrYWdlTmFtZV0sIHtcbiAgICAgICAgZW52OiBwcm9jZXNzLmVudixcbiAgICAgIH0pO1xuXG4gICAgICAvLyBSdW5uaW5nIHdpdGggYC1xcWAgc3VwcHJlc3NlcyBib3RoIG1pc3NpbmcgcGFja2FnZXMgYW5kIGFjdHVhbCBwYWNrYWdlXG4gICAgICBvdXRwdXQgPSBhd2FpdCBleGVjKFwicGlwXCIsIFtcInNob3dcIiwgcGFja2FnZU5hbWVdLCB7XG4gICAgICAgIGVudjogcHJvY2Vzcy5lbnYsXG4gICAgICB9KTtcbiAgICB9IGNhdGNoIChlKSB7XG4gICAgICBsb2dnZXIuZGVidWcoYFVuYWJsZSB0byBydW4gJ3BpcCBzaG93ICR7cGFja2FnZU5hbWV9JzogJHtlfWApO1xuICAgIH1cbiAgfVxuXG4gIGlmICghb3V0cHV0KSB7XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxuXG4gIGNvbnN0IHZlcnNpb25JbmZvID0gb3V0cHV0XG4gICAgLnNwbGl0KC9cXHJcXG58XFxyfFxcbi8pXG4gICAgLmZpbmQoKGxpbmUpID0+IGxpbmUuc3RhcnRzV2l0aChcIlZlcnNpb246XCIpKTtcblxuICBpZiAoIXZlcnNpb25JbmZvKSB7XG4gICAgbG9nZ2VyLmRlYnVnKFxuICAgICAgYFVuYWJsZSB0byBmaW5kIHZlcnNpb24gaW4gb3V0cHV0IG9mICdwaXBlbnYgcnVuIHBpcCBzaG93ICR7cGFja2FnZU5hbWV9JyAvICdwaXAgc2hvdyAke3BhY2thZ2VOYW1lfSc6ICR7b3V0cHV0fWAsXG4gICAgKTtcbiAgICByZXR1cm4gdW5kZWZpbmVkO1xuICB9XG5cbiAgY29uc3QgdmVyc2lvbiA9IHZlcnNpb25JbmZvLnNwbGl0KFwiOlwiKVsxXS50cmltKCk7XG4gIHJldHVybiB2ZXJzaW9uO1xufVxuXG4vLyBPbmNlIGh0dHBzOi8vZ2l0aHViLmNvbS9OdUdldC9Ib21lL2lzc3Vlcy83NzUyIGdldHMgcmVzb2x2ZWQgd2UgY2FuIGFsc28gdHJ5IHdpdGggLS1qc29uXG5hc3luYyBmdW5jdGlvbiBnZXRDU2hhcnBQYWNrYWdlVmVyc2lvbihwYWNrYWdlTmFtZTogc3RyaW5nKSB7XG4gIGNvbnN0IHRyYW5zbGF0aW9uTWFwOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+ID0ge1xuICAgIGpzaWk6IFwiQW1hem9uLkpTSUkuUnVudGltZVwiLFxuICAgIGNvbnN0cnVjdHM6IFwiQ29uc3RydWN0c1wiLFxuICAgIGNka3RmOiBcIkhhc2hpQ29ycC5DZGt0ZlwiLFxuICAgIGNka3RuOiBcIklvLkNka3RuXCIsXG4gIH07XG4gIGNvbnN0IGNTaGFycFBhY2thZ2VOYW1lID0gdHJhbnNsYXRpb25NYXBbcGFja2FnZU5hbWVdIHx8IHBhY2thZ2VOYW1lO1xuXG4gIGxldCBvdXRwdXQ7XG4gIHRyeSB7XG4gICAgb3V0cHV0ID0gYXdhaXQgZXhlYyhcImRvdG5ldFwiLCBbXCJsaXN0XCIsIFwicGFja2FnZVwiLCBcIi0taW5jbHVkZS10cmFuc2l0aXZlXCJdLCB7XG4gICAgICBlbnY6IHByb2Nlc3MuZW52LFxuICAgIH0pO1xuICB9IGNhdGNoIChlKSB7XG4gICAgbG9nZ2VyLmRlYnVnKFxuICAgICAgYFVuYWJsZSB0byBydW4gJ2RvdG5ldCBsaXN0IHBhY2thZ2UgLS1pbmNsdWRlLXRyYW5zaXRpdmUnOiAke2V9YCxcbiAgICApO1xuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cblxuICBjb25zdCB2ZXJzaW9uTGluZSA9IG91dHB1dFxuICAgIC5zcGxpdCgvXFxyXFxufFxccnxcXG4vKVxuICAgIC5maW5kKChsaW5lKSA9PiBsaW5lLmluY2x1ZGVzKGA+ICR7Y1NoYXJwUGFja2FnZU5hbWV9YCkpO1xuXG4gIGlmICghdmVyc2lvbkxpbmUpIHtcbiAgICBsb2dnZXIuZGVidWcoXG4gICAgICBgVW5hYmxlIHRvIGZpbmQgdmVyc2lvbiBmb3IgJyR7Y1NoYXJwUGFja2FnZU5hbWV9JyBpbiBvdXRwdXQgb2YgJ2RvdG5ldCBsaXN0IHBhY2thZ2UgLS1pbmNsdWRlLXRyYW5zaXRpdmUnOiAke291dHB1dH1gLFxuICAgICk7XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxuXG4gIC8vIEEgbGluZSBtaWdodCBsb29rIGxpa2UgdGhpczpcbiAgLy8gICBUcmFuc2l0aXZlIFBhY2thZ2UgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUmVzb2x2ZWRcbiAgLy8gICA+IEFtYXpvbi5KU0lJLlJ1bnRpbWUgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMS4xNy4xXG4gIC8vIFRoZXJlZm9yZSB3ZSByZXZlcnNlIHNwbGl0IGJ5IHdoaXRlc3BhY2UgYW5kIHJldmVyc2VcbiAgLy8gc28gdGhhdCB0aGUgZmlyc3QgdGhpbmcgd2UgZmluZCBpcyB0aGUgdmVyc2lvbiBudW1iZXJcbiAgcmV0dXJuIHZlcnNpb25MaW5lXG4gICAgLnNwbGl0KFwiIFwiKVxuICAgIC5yZXZlcnNlKClcbiAgICAuZmluZCgocGFydCkgPT4gcGFydCAhPT0gXCJcIik7XG59XG5cbmFzeW5jIGZ1bmN0aW9uIGdldEdvUGFja2FnZVZlcnNpb24ocGFja2FnZU5hbWU6IHN0cmluZykge1xuICBjb25zdCB0cmFuc2xhdGlvbk1hcDogUmVjb3JkPHN0cmluZywgc3RyaW5nPiA9IHtcbiAgICBqc2lpOiBcImpzaWktcnVudGltZS1nb1wiLFxuICAgIGNka3RmOiBcImdpdGh1Yi5jb20vaGFzaGljb3JwL3RlcnJhZm9ybS1jZGstZ29cIixcbiAgICBjZGt0bjogXCJnaXRodWIuY29tL29wZW4tY29uc3RydWN0cy9jZGstdGVycmFpbi1nb1wiLFxuICB9O1xuICBjb25zdCBnb1BhY2thZ2VOYW1lID0gdHJhbnNsYXRpb25NYXBbcGFja2FnZU5hbWVdIHx8IHBhY2thZ2VOYW1lO1xuXG4gIGxldCBvdXRwdXQ7XG4gIHRyeSB7XG4gICAgb3V0cHV0ID0gYXdhaXQgZXhlYyhcImdvXCIsIFtcImxpc3RcIiwgXCItbVwiLCBcImFsbFwiXSwge1xuICAgICAgZW52OiBwcm9jZXNzLmVudixcbiAgICB9KTtcbiAgfSBjYXRjaCAoZSkge1xuICAgIGxvZ2dlci5kZWJ1ZyhgVW5hYmxlIHRvIHJ1biAnZ28gbGlzdCAtbSBhbGwnOiAke2V9YCk7XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxuXG4gIGxldCB2ZXJzaW9uTGluZSA9IG91dHB1dFxuICAgIC5zcGxpdCgvXFxyXFxufFxccnxcXG4vKVxuICAgIC5maW5kKChsaW5lKSA9PiBsaW5lLmluY2x1ZGVzKGdvUGFja2FnZU5hbWUpKTtcblxuICBpZiAoIXZlcnNpb25MaW5lKSB7XG4gICAgbG9nZ2VyLmRlYnVnKFxuICAgICAgYFVuYWJsZSB0byBmaW5kIHZlcnNpb24gZm9yICcke2dvUGFja2FnZU5hbWV9JyBpbiBvdXRwdXQgb2YgJ2dvIGxpc3QgLW0gYWxsJzogJHtvdXRwdXR9YCxcbiAgICApO1xuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cblxuICAvLyBXZSBhcmUgZGVhbGluZyB3aXRoIGEgbG9jYWwgdmVyc2lvblxuICBpZiAodmVyc2lvbkxpbmUuaW5jbHVkZXMoXCI9PlwiKSkge1xuICAgIGxvZ2dlci5kZWJ1ZyhgRm91bmQgbG9jYWwgdmVyc2lvbiBmb3IgJyR7Z29QYWNrYWdlTmFtZX0nOiAke3ZlcnNpb25MaW5lfWApO1xuICAgIHZlcnNpb25MaW5lID0gdmVyc2lvbkxpbmUuc3BsaXQoXCI9PlwiKVswXS50cmltKCk7XG4gIH1cblxuICByZXR1cm4gdmVyc2lvbkxpbmUuc3BsaXQoXCIgXCIpLnBvcCgpPy5yZXBsYWNlKFwidlwiLCBcIlwiKTtcbn1cblxuYXN5bmMgZnVuY3Rpb24gZ2V0TWF2ZW5QYWNrYWdlVmVyc2lvbihwYWNrYWdlTmFtZTogc3RyaW5nKSB7XG4gIGNvbnN0IHRyYW5zbGF0aW9uTWFwOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+ID0ge1xuICAgIGpzaWk6IFwianNpaS1ydW50aW1lXCIsXG4gIH07XG4gIGNvbnN0IGphdmFQYWNrYWdlTmFtZSA9IHRyYW5zbGF0aW9uTWFwW3BhY2thZ2VOYW1lXSB8fCBwYWNrYWdlTmFtZTtcblxuICBsZXQgb3V0cHV0O1xuICB0cnkge1xuICAgIG91dHB1dCA9IGF3YWl0IGV4ZWMoXCJtdm5cIiwgW1wiZGVwZW5kZW5jeTpsaXN0XCJdLCB7XG4gICAgICBlbnY6IHByb2Nlc3MuZW52LFxuICAgIH0pO1xuICB9IGNhdGNoIChlKSB7XG4gICAgbG9nZ2VyLmRlYnVnKGBVbmFibGUgdG8gcnVuICdtdm4gZGVwZW5kZW5jeTpsaXN0JzogJHtlfWApO1xuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cblxuICBjb25zdCByZXNvbHV0aW9uUGFydCA9IG91dHB1dC5zcGxpdChcbiAgICBcIlRoZSBmb2xsb3dpbmcgZmlsZXMgaGF2ZSBiZWVuIHJlc29sdmVkXCIsXG4gIClbMV07XG4gIGlmICghcmVzb2x1dGlvblBhcnQpIHtcbiAgICBsb2dnZXIuZGVidWcoXG4gICAgICBgVW5hYmxlIHRvIGZpbmQgcmVzb2x1dGlvbiBwYXNzYWdlIGluIG91dHB1dCBvZiAnbXZuIGRlcGVuZGVuY3k6bGlzdCc6ICR7b3V0cHV0fWAsXG4gICAgKTtcbiAgICByZXR1cm4gdW5kZWZpbmVkO1xuICB9XG5cbiAgLy8gV2UgbmVlZCB0byBzZWFyY2ggZm9yIHRoZSBwYWNrYWdlIG5hbWUgQU5EIGEgY29sb24gdG8gbm90IG1hdGNoIGEgbGluZSBsaWtlXG4gIC8vIFtJTkZPXSAgICBjb20uaGFzaGljb3JwOmNka3RmLXByb3ZpZGVyLWF3czpqYXI6OS4wLjk6Y29tcGlsZVxuICAvLyB3aGVuIGxvb2tpbmcgZm9yIHRoZSBjZGt0ZiBwYWNrYWdlIChzZWUgR2l0aHViIGlzc3VlICMxOTk0KVxuICBjb25zdCB2ZXJzaW9uTGluZSA9IHJlc29sdXRpb25QYXJ0XG4gICAgLnNwbGl0KC9cXHJcXG58XFxyfFxcbi8pXG4gICAgLmZpbmQoKGxpbmUpID0+IGxpbmUuaW5jbHVkZXMoYCR7amF2YVBhY2thZ2VOYW1lfTpgKSk7XG5cbiAgaWYgKCF2ZXJzaW9uTGluZSkge1xuICAgIGxvZ2dlci5kZWJ1ZyhcbiAgICAgIGBVbmFibGUgdG8gZmluZCB2ZXJzaW9uIGZvciAnJHtqYXZhUGFja2FnZU5hbWV9JyBpbiBvdXRwdXQgb2YgJ212biBkZXBlbmRlbmN5Omxpc3QnOiAke291dHB1dH1gLFxuICAgICk7XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxuXG4gIC8vIEV4YW1wbGUgbGluZTogW0lORk9dICAgIGNvbS5oYXNoaWNvcnA6Y2RrdGY6amFyOjAuMC4wOmNvbXBpbGVcbiAgY29uc3QgdmVyc2lvblN0YXJ0RGVsaW1pdGVyID0gYCR7amF2YVBhY2thZ2VOYW1lfTpqYXI6YDtcbiAgY29uc3QgdmVyc2lvblN0YXJ0ID1cbiAgICB2ZXJzaW9uTGluZS5pbmRleE9mKHZlcnNpb25TdGFydERlbGltaXRlcikgKyB2ZXJzaW9uU3RhcnREZWxpbWl0ZXIubGVuZ3RoO1xuICBjb25zdCB2ZXJzaW9uRW5kRGVsZW1pdGVyID0gXCI6Y29tcGlsZVwiO1xuICBjb25zdCB2ZXJzaW9uRW5kID0gdmVyc2lvbkxpbmUuaW5kZXhPZih2ZXJzaW9uRW5kRGVsZW1pdGVyKTtcbiAgcmV0dXJuIHZlcnNpb25MaW5lLnN1YnN0cmluZyh2ZXJzaW9uU3RhcnQsIHZlcnNpb25FbmQpO1xufVxuXG5hc3luYyBmdW5jdGlvbiBnZXRKYXZhUGFja2FnZVZlcnNpb24ocGFja2FnZU5hbWU6IHN0cmluZykge1xuICBpZiAoaXNHcmFkbGVQcm9qZWN0KFwiLi9cIikpIHtcbiAgICByZXR1cm4gZ2V0R3JhZGxlUGFja2FnZVZlcnNpb24ocGFja2FnZU5hbWUpO1xuICB9XG5cbiAgcmV0dXJuIGdldE1hdmVuUGFja2FnZVZlcnNpb24ocGFja2FnZU5hbWUpO1xufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZ2V0UGFja2FnZVZlcnNpb24oXG4gIGxhbmd1YWdlOiBzdHJpbmcsXG4gIHBhY2thZ2VOYW1lOiBzdHJpbmcsXG4pOiBQcm9taXNlPHN0cmluZyB8IHVuZGVmaW5lZD4ge1xuICBjb25zdCBub09wID0gYXN5bmMgKCkgPT4gdW5kZWZpbmVkOyAvLyBlc2xpbnQtZGlzYWJsZS1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1lbXB0eS1mdW5jdGlvblxuICBjb25zdCBnZXRMaWJyYXJ5VmVyc2lvbk1hcDogUmVjb3JkPFxuICAgIHN0cmluZyxcbiAgICAobmFtZTogc3RyaW5nKSA9PiBQcm9taXNlPHN0cmluZyB8IHVuZGVmaW5lZD5cbiAgPiA9IHtcbiAgICB0eXBlc2NyaXB0OiBnZXROb2RlTW9kdWxlVmVyc2lvbixcbiAgICBweXRob246IGdldFB5dGhvblBhY2thZ2VWZXJzaW9uLFxuICAgIGdvOiBnZXRHb1BhY2thZ2VWZXJzaW9uLFxuICAgIGNzaGFycDogZ2V0Q1NoYXJwUGFja2FnZVZlcnNpb24sXG4gICAgamF2YTogZ2V0SmF2YVBhY2thZ2VWZXJzaW9uLFxuICB9O1xuXG4gIGNvbnN0IGxpYlZlcnNpb24gPSBhd2FpdCAoZ2V0TGlicmFyeVZlcnNpb25NYXBbbGFuZ3VhZ2VdIHx8IG5vT3ApKFxuICAgIHBhY2thZ2VOYW1lLFxuICApO1xuICByZXR1cm4gbGliVmVyc2lvbiA/PyB1bmRlZmluZWQ7XG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBjb2xsZWN0RGVidWdJbmZvcm1hdGlvbigpIHtcbiAgY29uc3QgZGVidWdPdXRwdXQ6IFJlY29yZDxzdHJpbmcsIHN0cmluZyB8IG51bGw+ID0ge307XG4gIGNvbnN0IGxhbmd1YWdlID0gZ2V0TGFuZ3VhZ2UoKTtcbiAgZGVidWdPdXRwdXRbXCJsYW5ndWFnZVwiXSA9IGxhbmd1YWdlID8/IG51bGw7XG4gIGRlYnVnT3V0cHV0W1wiY2RrdG4tY2xpXCJdID0gRElTUExBWV9WRVJTSU9OO1xuXG4gIGNvbnN0IG5vZGUgPSBnZXROb2RlVmVyc2lvbigpO1xuXG4gIGRlYnVnT3V0cHV0W1wibm9kZVwiXSA9IChhd2FpdCBub2RlKSA/PyBudWxsO1xuICBpZiAobGFuZ3VhZ2UpIHtcbiAgICBjb25zdCBjZGt0biA9IGdldFBhY2thZ2VWZXJzaW9uKGxhbmd1YWdlLCBcImNka3RuXCIpO1xuICAgIGNvbnN0IGNka3RmID0gZ2V0UGFja2FnZVZlcnNpb24obGFuZ3VhZ2UsIFwiY2RrdGZcIik7XG4gICAgY29uc3QgY29uc3RydWN0cyA9IGdldFBhY2thZ2VWZXJzaW9uKGxhbmd1YWdlLCBcImNvbnN0cnVjdHNcIik7XG4gICAgY29uc3QganNpaSA9IGdldFBhY2thZ2VWZXJzaW9uKGxhbmd1YWdlLCBcImpzaWlcIik7XG5cbiAgICBkZWJ1Z091dHB1dFtcImNka3RuXCJdID0gKGF3YWl0IGNka3RuKSA/PyBudWxsO1xuICAgIGRlYnVnT3V0cHV0W1wiY2RrdGZcIl0gPSAoYXdhaXQgY2RrdGYpID8/IG51bGw7XG4gICAgZGVidWdPdXRwdXRbXCJjb25zdHJ1Y3RzXCJdID0gKGF3YWl0IGNvbnN0cnVjdHMpID8/IG51bGw7XG4gICAgZGVidWdPdXRwdXRbXCJqc2lpXCJdID0gKGF3YWl0IGpzaWkpID8/IG51bGw7XG4gIH1cbiAgZGVidWdPdXRwdXRbXCJ0ZXJyYWZvcm1cIl0gPSBhd2FpdCB0ZXJyYWZvcm1WZXJzaW9uO1xuICBkZWJ1Z091dHB1dFtcImFyY2hcIl0gPSBvcy5hcmNoKCk7XG4gIGRlYnVnT3V0cHV0W1wib3NcIl0gPSBgJHtvcy5wbGF0Zm9ybSgpfSAke29zLnJlbGVhc2UoKX1gO1xuXG4gIHN3aXRjaCAobGFuZ3VhZ2UpIHtcbiAgICBjYXNlIFwicHl0aG9uXCI6XG4gICAgICB7XG4gICAgICAgIGNvbnN0IHB5dGhvbiA9IGdldFB5dGhvblZlcnNpb24oKTtcbiAgICAgICAgY29uc3QgcGlwID0gZ2V0UGlwVmVyc2lvbigpO1xuICAgICAgICBjb25zdCBwaXBlbnYgPSBnZXRQaXBlbnZWZXJzaW9uKCk7XG4gICAgICAgIGRlYnVnT3V0cHV0W1wicHl0aG9uXCJdID0gKGF3YWl0IHB5dGhvbikgPz8gbnVsbDtcbiAgICAgICAgZGVidWdPdXRwdXRbXCJwaXBcIl0gPSAoYXdhaXQgcGlwKSA/PyBudWxsO1xuICAgICAgICBkZWJ1Z091dHB1dFtcInBpcGVudlwiXSA9IChhd2FpdCBwaXBlbnYpID8/IG51bGw7XG4gICAgICB9XG4gICAgICBicmVhaztcbiAgICBjYXNlIFwiamF2YVwiOlxuICAgICAge1xuICAgICAgICBjb25zdCBqYXZhID0gZ2V0SmF2YVZlcnNpb24oKTtcbiAgICAgICAgY29uc3QgbWF2ZW4gPSBnZXRNYXZlblZlcnNpb24oKTtcbiAgICAgICAgY29uc3QgZ3JhZGxlID0gZ2V0R3JhZGxlVmVyc2lvbigpO1xuICAgICAgICBkZWJ1Z091dHB1dFtcImphdmFcIl0gPSAoYXdhaXQgamF2YSkgPz8gbnVsbDtcbiAgICAgICAgZGVidWdPdXRwdXRbXCJtYXZlblwiXSA9IChhd2FpdCBtYXZlbikgPz8gbnVsbDtcbiAgICAgICAgZGVidWdPdXRwdXRbXCJncmFkbGVcIl0gPSAoYXdhaXQgZ3JhZGxlKSA/PyBudWxsO1xuICAgICAgfVxuICAgICAgYnJlYWs7XG4gICAgY2FzZSBcImNzaGFycFwiOlxuICAgICAgZGVidWdPdXRwdXRbXCJkb3RuZXRcIl0gPSAoYXdhaXQgZ2V0RG90bmV0VmVyc2lvbigpKSA/PyBudWxsO1xuICAgICAgYnJlYWs7XG4gICAgY2FzZSBcImdvXCI6XG4gICAgICBkZWJ1Z091dHB1dFtcImdvXCJdID0gKGF3YWl0IGdldEdvVmVyc2lvbigpKSA/PyBudWxsO1xuICAgICAgYnJlYWs7XG4gIH1cblxuICByZXR1cm4gZGVidWdPdXRwdXQ7XG59XG4iXX0=
|
package/src/environment.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"environment.d.ts","sourceRoot":"","sources":["environment.ts"],"names":[],"mappings":"AAQA,eAAO,MAAM,qBAAqB,SAEjC,CAAC;AAGF,eAAO,MAAM,kBAAkB,SAA0C,CAAC;AAE1E,eAAO,MAAM,8BAA8B,SAE1C,CAAC"}
|
package/src/environment.js
DELETED
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
// Copyright (c) HashiCorp, Inc
|
|
3
|
-
// SPDX-License-Identifier: MPL-2.0
|
|
4
|
-
// All switches based on environment variables in one place
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.CDKTF_DISABLE_PLUGIN_CACHE_ENV = exports.CHECKPOINT_DISABLE = exports.DISABLE_VERSION_CHECK = void 0;
|
|
7
|
-
function envVarToBoolean(envVar) {
|
|
8
|
-
return envVar === "true" || envVar === "1";
|
|
9
|
-
}
|
|
10
|
-
exports.DISABLE_VERSION_CHECK = envVarToBoolean(process.env.DISABLE_VERSION_CHECK);
|
|
11
|
-
// This is a Terraform global environment variable, so we can't use the same logic as the other env vars
|
|
12
|
-
// https://www.terraform.io/cli/commands#upgrade-and-security-bulletin-checks
|
|
13
|
-
exports.CHECKPOINT_DISABLE = Boolean(process.env.CHECKPOINT_DISABLE);
|
|
14
|
-
exports.CDKTF_DISABLE_PLUGIN_CACHE_ENV = envVarToBoolean(process.env.CDKTF_DISABLE_PLUGIN_CACHE_ENV);
|
|
15
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW52aXJvbm1lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJlbnZpcm9ubWVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsK0JBQStCO0FBQy9CLG1DQUFtQztBQUNuQywyREFBMkQ7OztBQUUzRCxTQUFTLGVBQWUsQ0FBQyxNQUEwQjtJQUNqRCxPQUFPLE1BQU0sS0FBSyxNQUFNLElBQUksTUFBTSxLQUFLLEdBQUcsQ0FBQztBQUM3QyxDQUFDO0FBRVksUUFBQSxxQkFBcUIsR0FBRyxlQUFlLENBQ2xELE9BQU8sQ0FBQyxHQUFHLENBQUMscUJBQXFCLENBQ2xDLENBQUM7QUFDRix3R0FBd0c7QUFDeEcsNkVBQTZFO0FBQ2hFLFFBQUEsa0JBQWtCLEdBQUcsT0FBTyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsa0JBQWtCLENBQUMsQ0FBQztBQUU3RCxRQUFBLDhCQUE4QixHQUFHLGVBQWUsQ0FDM0QsT0FBTyxDQUFDLEdBQUcsQ0FBQyw4QkFBOEIsQ0FDM0MsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8vIENvcHlyaWdodCAoYykgSGFzaGlDb3JwLCBJbmNcbi8vIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBNUEwtMi4wXG4vLyBBbGwgc3dpdGNoZXMgYmFzZWQgb24gZW52aXJvbm1lbnQgdmFyaWFibGVzIGluIG9uZSBwbGFjZVxuXG5mdW5jdGlvbiBlbnZWYXJUb0Jvb2xlYW4oZW52VmFyOiBzdHJpbmcgfCB1bmRlZmluZWQpOiBib29sZWFuIHtcbiAgcmV0dXJuIGVudlZhciA9PT0gXCJ0cnVlXCIgfHwgZW52VmFyID09PSBcIjFcIjtcbn1cblxuZXhwb3J0IGNvbnN0IERJU0FCTEVfVkVSU0lPTl9DSEVDSyA9IGVudlZhclRvQm9vbGVhbihcbiAgcHJvY2Vzcy5lbnYuRElTQUJMRV9WRVJTSU9OX0NIRUNLLFxuKTtcbi8vIFRoaXMgaXMgYSBUZXJyYWZvcm0gZ2xvYmFsIGVudmlyb25tZW50IHZhcmlhYmxlLCBzbyB3ZSBjYW4ndCB1c2UgdGhlIHNhbWUgbG9naWMgYXMgdGhlIG90aGVyIGVudiB2YXJzXG4vLyBodHRwczovL3d3dy50ZXJyYWZvcm0uaW8vY2xpL2NvbW1hbmRzI3VwZ3JhZGUtYW5kLXNlY3VyaXR5LWJ1bGxldGluLWNoZWNrc1xuZXhwb3J0IGNvbnN0IENIRUNLUE9JTlRfRElTQUJMRSA9IEJvb2xlYW4ocHJvY2Vzcy5lbnYuQ0hFQ0tQT0lOVF9ESVNBQkxFKTtcblxuZXhwb3J0IGNvbnN0IENES1RGX0RJU0FCTEVfUExVR0lOX0NBQ0hFX0VOViA9IGVudlZhclRvQm9vbGVhbihcbiAgcHJvY2Vzcy5lbnYuQ0RLVEZfRElTQUJMRV9QTFVHSU5fQ0FDSEVfRU5WLFxuKTtcbiJdfQ==
|
package/src/errors.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["errors.ts"],"names":[],"mappings":"AAmBA,KAAK,SAAS,GAAG,UAAU,GAAG,UAAU,GAAG,OAAO,CAAC;AACnD,wBAAgB,WAAW,CAAC,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,SAAS,GAAG,OAAO,CAEhE;AAsBD,eAAO,MAAM,MAAM;wBAlBN,MAAM,kBACA,KAAK,YACV,OAAO,MAAM,EAAE,GAAG,CAAC;qBAFpB,MAAM,kBACA,KAAK,YACV,OAAO,MAAM,EAAE,GAAG,CAAC;wBAFpB,MAAM,kBACA,KAAK,YACV,OAAO,MAAM,EAAE,GAAG,CAAC;oBAyBf,MAAM;CAIvB,CAAC"}
|
package/src/errors.js
DELETED
|
@@ -1,75 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
-
}) : function(o, v) {
|
|
16
|
-
o["default"] = v;
|
|
17
|
-
});
|
|
18
|
-
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
-
if (mod && mod.__esModule) return mod;
|
|
20
|
-
var result = {};
|
|
21
|
-
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
-
__setModuleDefault(result, mod);
|
|
23
|
-
return result;
|
|
24
|
-
};
|
|
25
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
|
-
exports.Errors = exports.IsErrorType = void 0;
|
|
27
|
-
// Copyright (c) HashiCorp, Inc
|
|
28
|
-
// SPDX-License-Identifier: MPL-2.0
|
|
29
|
-
const checkpoint_1 = require("./checkpoint");
|
|
30
|
-
const version_1 = require("./version");
|
|
31
|
-
const Sentry = __importStar(require("@sentry/node"));
|
|
32
|
-
// Errors that will emit telemetry events
|
|
33
|
-
async function report(command, payload) {
|
|
34
|
-
const reportParams = {
|
|
35
|
-
command,
|
|
36
|
-
product: "cdktn",
|
|
37
|
-
version: `${version_1.DISPLAY_VERSION}`,
|
|
38
|
-
dateTime: new Date(),
|
|
39
|
-
payload,
|
|
40
|
-
};
|
|
41
|
-
await (0, checkpoint_1.ReportRequest)(reportParams);
|
|
42
|
-
}
|
|
43
|
-
function IsErrorType(error, type) {
|
|
44
|
-
return error && error.__type === type;
|
|
45
|
-
}
|
|
46
|
-
exports.IsErrorType = IsErrorType;
|
|
47
|
-
function reportPrefixedError(type, command) {
|
|
48
|
-
return (message, originalError = new Error(), context) => {
|
|
49
|
-
report(command, { ...context, message, type });
|
|
50
|
-
const err = new Error(`${type} Error: ${message}`);
|
|
51
|
-
Object.entries(context || {}).forEach(([key, value]) => {
|
|
52
|
-
err[key] = value;
|
|
53
|
-
});
|
|
54
|
-
err.__type = type;
|
|
55
|
-
err.stack = originalError.stack;
|
|
56
|
-
return err;
|
|
57
|
-
};
|
|
58
|
-
}
|
|
59
|
-
// The CLI only deals with one command at a time, so we can just use the same
|
|
60
|
-
// scope for all errors and set it once during initialization.
|
|
61
|
-
let errorScope = "unknown";
|
|
62
|
-
exports.Errors = {
|
|
63
|
-
// Error within our control
|
|
64
|
-
Internal: reportPrefixedError("Internal", errorScope),
|
|
65
|
-
// Error in the usage
|
|
66
|
-
Usage: reportPrefixedError("Usage", errorScope),
|
|
67
|
-
// Error outside of our control (e.g. terraform failed)
|
|
68
|
-
External: reportPrefixedError("External", errorScope),
|
|
69
|
-
// Set the scope for all errors
|
|
70
|
-
setScope(scope) {
|
|
71
|
-
errorScope = scope;
|
|
72
|
-
Sentry.configureScope((s) => s.setTransactionName(scope));
|
|
73
|
-
},
|
|
74
|
-
};
|
|
75
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXJyb3JzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiZXJyb3JzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsK0JBQStCO0FBQy9CLG1DQUFtQztBQUNuQyw2Q0FBMkQ7QUFDM0QsdUNBQTRDO0FBQzVDLHFEQUF1QztBQUV2Qyx5Q0FBeUM7QUFDekMsS0FBSyxVQUFVLE1BQU0sQ0FBQyxPQUFlLEVBQUUsT0FBNEI7SUFDakUsTUFBTSxZQUFZLEdBQWlCO1FBQ2pDLE9BQU87UUFDUCxPQUFPLEVBQUUsT0FBTztRQUNoQixPQUFPLEVBQUUsR0FBRyx5QkFBZSxFQUFFO1FBQzdCLFFBQVEsRUFBRSxJQUFJLElBQUksRUFBRTtRQUNwQixPQUFPO0tBQ1IsQ0FBQztJQUVGLE1BQU0sSUFBQSwwQkFBYSxFQUFDLFlBQVksQ0FBQyxDQUFDO0FBQ3BDLENBQUM7QUFHRCxTQUFnQixXQUFXLENBQUMsS0FBVSxFQUFFLElBQWU7SUFDckQsT0FBTyxLQUFLLElBQUksS0FBSyxDQUFDLE1BQU0sS0FBSyxJQUFJLENBQUM7QUFDeEMsQ0FBQztBQUZELGtDQUVDO0FBRUQsU0FBUyxtQkFBbUIsQ0FBQyxJQUFlLEVBQUUsT0FBZTtJQUMzRCxPQUFPLENBQ0wsT0FBZSxFQUNmLGdCQUF1QixJQUFJLEtBQUssRUFBRSxFQUNsQyxPQUE2QixFQUM3QixFQUFFO1FBQ0YsTUFBTSxDQUFDLE9BQU8sRUFBRSxFQUFFLEdBQUcsT0FBTyxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBQy9DLE1BQU0sR0FBRyxHQUFRLElBQUksS0FBSyxDQUFDLEdBQUcsSUFBSSxXQUFXLE9BQU8sRUFBRSxDQUFDLENBQUM7UUFDeEQsTUFBTSxDQUFDLE9BQU8sQ0FBQyxPQUFPLElBQUksRUFBRSxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxHQUFHLEVBQUUsS0FBSyxDQUFDLEVBQUUsRUFBRTtZQUNyRCxHQUFHLENBQUMsR0FBRyxDQUFDLEdBQUcsS0FBSyxDQUFDO1FBQ25CLENBQUMsQ0FBQyxDQUFDO1FBQ0gsR0FBRyxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUM7UUFDbEIsR0FBRyxDQUFDLEtBQUssR0FBRyxhQUFhLENBQUMsS0FBSyxDQUFDO1FBQ2hDLE9BQU8sR0FBRyxDQUFDO0lBQ2IsQ0FBQyxDQUFDO0FBQ0osQ0FBQztBQUVELDZFQUE2RTtBQUM3RSw4REFBOEQ7QUFDOUQsSUFBSSxVQUFVLEdBQUcsU0FBUyxDQUFDO0FBQ2QsUUFBQSxNQUFNLEdBQUc7SUFDcEIsMkJBQTJCO0lBQzNCLFFBQVEsRUFBRSxtQkFBbUIsQ0FBQyxVQUFVLEVBQUUsVUFBVSxDQUFDO0lBQ3JELHFCQUFxQjtJQUNyQixLQUFLLEVBQUUsbUJBQW1CLENBQUMsT0FBTyxFQUFFLFVBQVUsQ0FBQztJQUMvQyx1REFBdUQ7SUFDdkQsUUFBUSxFQUFFLG1CQUFtQixDQUFDLFVBQVUsRUFBRSxVQUFVLENBQUM7SUFFckQsK0JBQStCO0lBQy9CLFFBQVEsQ0FBQyxLQUFhO1FBQ3BCLFVBQVUsR0FBRyxLQUFLLENBQUM7UUFDbkIsTUFBTSxDQUFDLGNBQWMsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLGtCQUFrQixDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFDNUQsQ0FBQztDQUNGLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBDb3B5cmlnaHQgKGMpIEhhc2hpQ29ycCwgSW5jXG4vLyBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogTVBMLTIuMFxuaW1wb3J0IHsgUmVwb3J0UGFyYW1zLCBSZXBvcnRSZXF1ZXN0IH0gZnJvbSBcIi4vY2hlY2twb2ludFwiO1xuaW1wb3J0IHsgRElTUExBWV9WRVJTSU9OIH0gZnJvbSBcIi4vdmVyc2lvblwiO1xuaW1wb3J0ICogYXMgU2VudHJ5IGZyb20gXCJAc2VudHJ5L25vZGVcIjtcblxuLy8gRXJyb3JzIHRoYXQgd2lsbCBlbWl0IHRlbGVtZXRyeSBldmVudHNcbmFzeW5jIGZ1bmN0aW9uIHJlcG9ydChjb21tYW5kOiBzdHJpbmcsIHBheWxvYWQ6IFJlY29yZDxzdHJpbmcsIGFueT4pIHtcbiAgY29uc3QgcmVwb3J0UGFyYW1zOiBSZXBvcnRQYXJhbXMgPSB7XG4gICAgY29tbWFuZCxcbiAgICBwcm9kdWN0OiBcImNka3RuXCIsXG4gICAgdmVyc2lvbjogYCR7RElTUExBWV9WRVJTSU9OfWAsXG4gICAgZGF0ZVRpbWU6IG5ldyBEYXRlKCksXG4gICAgcGF5bG9hZCxcbiAgfTtcblxuICBhd2FpdCBSZXBvcnRSZXF1ZXN0KHJlcG9ydFBhcmFtcyk7XG59XG5cbnR5cGUgRXJyb3JUeXBlID0gXCJJbnRlcm5hbFwiIHwgXCJFeHRlcm5hbFwiIHwgXCJVc2FnZVwiO1xuZXhwb3J0IGZ1bmN0aW9uIElzRXJyb3JUeXBlKGVycm9yOiBhbnksIHR5cGU6IEVycm9yVHlwZSk6IGJvb2xlYW4ge1xuICByZXR1cm4gZXJyb3IgJiYgZXJyb3IuX190eXBlID09PSB0eXBlO1xufVxuXG5mdW5jdGlvbiByZXBvcnRQcmVmaXhlZEVycm9yKHR5cGU6IEVycm9yVHlwZSwgY29tbWFuZDogc3RyaW5nKSB7XG4gIHJldHVybiAoXG4gICAgbWVzc2FnZTogc3RyaW5nLFxuICAgIG9yaWdpbmFsRXJyb3I6IEVycm9yID0gbmV3IEVycm9yKCksXG4gICAgY29udGV4dD86IFJlY29yZDxzdHJpbmcsIGFueT4sXG4gICkgPT4ge1xuICAgIHJlcG9ydChjb21tYW5kLCB7IC4uLmNvbnRleHQsIG1lc3NhZ2UsIHR5cGUgfSk7XG4gICAgY29uc3QgZXJyOiBhbnkgPSBuZXcgRXJyb3IoYCR7dHlwZX0gRXJyb3I6ICR7bWVzc2FnZX1gKTtcbiAgICBPYmplY3QuZW50cmllcyhjb250ZXh0IHx8IHt9KS5mb3JFYWNoKChba2V5LCB2YWx1ZV0pID0+IHtcbiAgICAgIGVycltrZXldID0gdmFsdWU7XG4gICAgfSk7XG4gICAgZXJyLl9fdHlwZSA9IHR5cGU7XG4gICAgZXJyLnN0YWNrID0gb3JpZ2luYWxFcnJvci5zdGFjaztcbiAgICByZXR1cm4gZXJyO1xuICB9O1xufVxuXG4vLyBUaGUgQ0xJIG9ubHkgZGVhbHMgd2l0aCBvbmUgY29tbWFuZCBhdCBhIHRpbWUsIHNvIHdlIGNhbiBqdXN0IHVzZSB0aGUgc2FtZVxuLy8gc2NvcGUgZm9yIGFsbCBlcnJvcnMgYW5kIHNldCBpdCBvbmNlIGR1cmluZyBpbml0aWFsaXphdGlvbi5cbmxldCBlcnJvclNjb3BlID0gXCJ1bmtub3duXCI7XG5leHBvcnQgY29uc3QgRXJyb3JzID0ge1xuICAvLyBFcnJvciB3aXRoaW4gb3VyIGNvbnRyb2xcbiAgSW50ZXJuYWw6IHJlcG9ydFByZWZpeGVkRXJyb3IoXCJJbnRlcm5hbFwiLCBlcnJvclNjb3BlKSxcbiAgLy8gRXJyb3IgaW4gdGhlIHVzYWdlXG4gIFVzYWdlOiByZXBvcnRQcmVmaXhlZEVycm9yKFwiVXNhZ2VcIiwgZXJyb3JTY29wZSksXG4gIC8vIEVycm9yIG91dHNpZGUgb2Ygb3VyIGNvbnRyb2wgKGUuZy4gdGVycmFmb3JtIGZhaWxlZClcbiAgRXh0ZXJuYWw6IHJlcG9ydFByZWZpeGVkRXJyb3IoXCJFeHRlcm5hbFwiLCBlcnJvclNjb3BlKSxcblxuICAvLyBTZXQgdGhlIHNjb3BlIGZvciBhbGwgZXJyb3JzXG4gIHNldFNjb3BlKHNjb3BlOiBzdHJpbmcpIHtcbiAgICBlcnJvclNjb3BlID0gc2NvcGU7XG4gICAgU2VudHJ5LmNvbmZpZ3VyZVNjb3BlKChzKSA9PiBzLnNldFRyYW5zYWN0aW9uTmFtZShzY29wZSkpO1xuICB9LFxufTtcbiJdfQ==
|
package/src/gradle.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"gradle.d.ts","sourceRoot":"","sources":["gradle.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAOH,wBAAgB,eAAe,CAAC,gBAAgB,EAAE,MAAM,GAAG,OAAO,CAUjE;AAED,wBAAsB,qBAAqB,kCAqD1C;AAED,MAAM,MAAM,qBAAqB,GAAG;IAClC,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC;AACF,wBAAgB,gCAAgC,CAC9C,IAAI,EAAE,MAAM,GACX,qBAAqB,GAAG,SAAS,CAuBnC;AAWD,wBAAsB,uBAAuB,CAAC,WAAW,EAAE,MAAM,+BAiChE;AAED,wBAAsB,gCAAgC,CAAC,WAAW,EAAE,MAAM;;;;eAqDzE"}
|