@cdktn/provider-generator 0.23.0-pre.38 → 0.23.0-pre.39
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/build/__tests__/edge-provider-schema/builder.js +106 -0
- package/build/__tests__/edge-provider-schema/cli.js +67 -0
- package/build/__tests__/edge-provider-schema/index.js +154 -0
- package/build/__tests__/edge-provider-schema.test.js +46 -0
- package/build/__tests__/provider.test.js +158 -0
- package/build/get/__tests__/constructs-maker.test.js +113 -0
- package/build/get/__tests__/generator/complex-computed-types.test.js +42 -0
- package/build/get/__tests__/generator/deep-nested-attributes.test.js +50 -0
- package/build/get/__tests__/generator/description-escaping.test.js +65 -0
- package/build/get/__tests__/generator/empty-provider-resources.test.js +40 -0
- package/build/get/__tests__/generator/export-sharding.test.js +82 -0
- package/build/get/__tests__/generator/module-generator.test.js +476 -0
- package/build/get/__tests__/generator/nested-types.test.js +51 -0
- package/build/get/__tests__/generator/provider.test.js +51 -0
- package/build/get/__tests__/generator/resource-types.test.js +78 -0
- package/build/get/__tests__/generator/skipped-attributes.test.js +55 -0
- package/build/get/__tests__/generator/types.test.js +289 -0
- package/build/get/__tests__/generator/versions-file.test.js +74 -0
- package/build/get/__tests__/util.js +59 -0
- package/{lib → build}/get/constructs-maker.d.ts +1 -1
- package/build/get/constructs-maker.js +530 -0
- package/build/get/generator/custom-defaults.js +403 -0
- package/build/get/generator/emitter/attributes-emitter.js +161 -0
- package/{lib → build}/get/generator/emitter/index.js +1 -1
- package/build/get/generator/emitter/resource-emitter.js +144 -0
- package/build/get/generator/emitter/struct-emitter.js +500 -0
- package/build/get/generator/loop-detection.js +56 -0
- package/build/get/generator/models/attribute-model.js +160 -0
- package/build/get/generator/models/attribute-type-model.js +376 -0
- package/{lib → build}/get/generator/models/index.js +1 -1
- package/build/get/generator/models/resource-model.js +106 -0
- package/build/get/generator/models/scope.js +36 -0
- package/build/get/generator/models/struct.js +90 -0
- package/build/get/generator/module-generator.js +184 -0
- package/build/get/generator/provider-generator.js +225 -0
- package/build/get/generator/resource-parser.js +497 -0
- package/build/get/generator/sanitized-comments.js +44 -0
- package/build/get/generator/skipped-attributes.js +29 -0
- package/{lib → build}/index.js +1 -1
- package/build/util.js +30 -0
- package/package.json +6 -6
- package/tsconfig.json +5 -3
- package/lib/__tests__/edge-provider-schema/builder.js +0 -106
- package/lib/__tests__/edge-provider-schema/cli.js +0 -67
- package/lib/__tests__/edge-provider-schema/index.js +0 -154
- package/lib/__tests__/edge-provider-schema.test.js +0 -46
- package/lib/__tests__/provider.test.js +0 -158
- package/lib/get/__tests__/constructs-maker.test.js +0 -113
- package/lib/get/__tests__/generator/complex-computed-types.test.js +0 -42
- package/lib/get/__tests__/generator/deep-nested-attributes.test.js +0 -50
- package/lib/get/__tests__/generator/description-escaping.test.js +0 -65
- package/lib/get/__tests__/generator/empty-provider-resources.test.js +0 -40
- package/lib/get/__tests__/generator/export-sharding.test.js +0 -82
- package/lib/get/__tests__/generator/module-generator.test.js +0 -476
- package/lib/get/__tests__/generator/nested-types.test.js +0 -51
- package/lib/get/__tests__/generator/provider.test.js +0 -51
- package/lib/get/__tests__/generator/resource-types.test.js +0 -78
- package/lib/get/__tests__/generator/skipped-attributes.test.js +0 -55
- package/lib/get/__tests__/generator/types.test.js +0 -289
- package/lib/get/__tests__/generator/versions-file.test.js +0 -74
- package/lib/get/__tests__/util.js +0 -59
- package/lib/get/constructs-maker.js +0 -530
- package/lib/get/generator/custom-defaults.js +0 -403
- package/lib/get/generator/emitter/attributes-emitter.js +0 -161
- package/lib/get/generator/emitter/resource-emitter.js +0 -144
- package/lib/get/generator/emitter/struct-emitter.js +0 -500
- package/lib/get/generator/loop-detection.js +0 -56
- package/lib/get/generator/models/attribute-model.js +0 -160
- package/lib/get/generator/models/attribute-type-model.js +0 -376
- package/lib/get/generator/models/resource-model.js +0 -106
- package/lib/get/generator/models/scope.js +0 -36
- package/lib/get/generator/models/struct.js +0 -90
- package/lib/get/generator/module-generator.js +0 -184
- package/lib/get/generator/provider-generator.js +0 -225
- package/lib/get/generator/resource-parser.js +0 -497
- package/lib/get/generator/sanitized-comments.js +0 -44
- package/lib/get/generator/skipped-attributes.js +0 -29
- package/lib/util.js +0 -30
- /package/{lib → build}/__tests__/edge-provider-schema/builder.d.ts +0 -0
- /package/{lib → build}/__tests__/edge-provider-schema/cli.d.ts +0 -0
- /package/{lib → build}/__tests__/edge-provider-schema/index.d.ts +0 -0
- /package/{lib → build}/__tests__/edge-provider-schema.test.d.ts +0 -0
- /package/{lib → build}/__tests__/provider.test.d.ts +0 -0
- /package/{lib → build}/get/__tests__/constructs-maker.test.d.ts +0 -0
- /package/{lib → build}/get/__tests__/generator/complex-computed-types.test.d.ts +0 -0
- /package/{lib → build}/get/__tests__/generator/deep-nested-attributes.test.d.ts +0 -0
- /package/{lib → build}/get/__tests__/generator/description-escaping.test.d.ts +0 -0
- /package/{lib → build}/get/__tests__/generator/empty-provider-resources.test.d.ts +0 -0
- /package/{lib → build}/get/__tests__/generator/export-sharding.test.d.ts +0 -0
- /package/{lib → build}/get/__tests__/generator/module-generator.test.d.ts +0 -0
- /package/{lib → build}/get/__tests__/generator/nested-types.test.d.ts +0 -0
- /package/{lib → build}/get/__tests__/generator/provider.test.d.ts +0 -0
- /package/{lib → build}/get/__tests__/generator/resource-types.test.d.ts +0 -0
- /package/{lib → build}/get/__tests__/generator/skipped-attributes.test.d.ts +0 -0
- /package/{lib → build}/get/__tests__/generator/types.test.d.ts +0 -0
- /package/{lib → build}/get/__tests__/generator/versions-file.test.d.ts +0 -0
- /package/{lib → build}/get/__tests__/util.d.ts +0 -0
- /package/{lib → build}/get/generator/custom-defaults.d.ts +0 -0
- /package/{lib → build}/get/generator/emitter/attributes-emitter.d.ts +0 -0
- /package/{lib → build}/get/generator/emitter/index.d.ts +0 -0
- /package/{lib → build}/get/generator/emitter/resource-emitter.d.ts +0 -0
- /package/{lib → build}/get/generator/emitter/struct-emitter.d.ts +0 -0
- /package/{lib → build}/get/generator/loop-detection.d.ts +0 -0
- /package/{lib → build}/get/generator/models/attribute-model.d.ts +0 -0
- /package/{lib → build}/get/generator/models/attribute-type-model.d.ts +0 -0
- /package/{lib → build}/get/generator/models/index.d.ts +0 -0
- /package/{lib → build}/get/generator/models/resource-model.d.ts +0 -0
- /package/{lib → build}/get/generator/models/scope.d.ts +0 -0
- /package/{lib → build}/get/generator/models/struct.d.ts +0 -0
- /package/{lib → build}/get/generator/module-generator.d.ts +0 -0
- /package/{lib → build}/get/generator/provider-generator.d.ts +0 -0
- /package/{lib → build}/get/generator/resource-parser.d.ts +0 -0
- /package/{lib → build}/get/generator/sanitized-comments.d.ts +0 -0
- /package/{lib → build}/get/generator/skipped-attributes.d.ts +0 -0
- /package/{lib → build}/index.d.ts +0 -0
- /package/{lib → build}/util.d.ts +0 -0
- /package/{lib → src}/__tests__/__snapshots__/edge-provider-schema.test.ts.snap +0 -0
- /package/{lib → src}/__tests__/__snapshots__/provider.test.ts.snap +0 -0
- /package/{lib → src}/get/__tests__/generator/__snapshots__/complex-computed-types.test.ts.snap +0 -0
- /package/{lib → src}/get/__tests__/generator/__snapshots__/description-escaping.test.ts.snap +0 -0
- /package/{lib → src}/get/__tests__/generator/__snapshots__/export-sharding.test.ts.snap +0 -0
- /package/{lib → src}/get/__tests__/generator/__snapshots__/module-generator.test.ts.snap +0 -0
- /package/{lib → src}/get/__tests__/generator/__snapshots__/nested-types.test.ts.snap +0 -0
- /package/{lib → src}/get/__tests__/generator/__snapshots__/provider.test.ts.snap +0 -0
- /package/{lib → src}/get/__tests__/generator/__snapshots__/resource-types.test.ts.snap +0 -0
- /package/{lib → src}/get/__tests__/generator/__snapshots__/skipped-attributes.test.ts.snap +0 -0
- /package/{lib → src}/get/__tests__/generator/__snapshots__/types.test.ts.snap +0 -0
- /package/{lib → src}/get/__tests__/generator/fixtures/aws-provider.test.fixture.json +0 -0
- /package/{lib → src}/get/__tests__/generator/fixtures/aws_acm_certificate.test.fixture.json +0 -0
- /package/{lib → src}/get/__tests__/generator/fixtures/aws_cloudfront_distribution.test.fixture.json +0 -0
- /package/{lib → src}/get/__tests__/generator/fixtures/aws_fms_admin_account.test.fixture.json +0 -0
- /package/{lib → src}/get/__tests__/generator/fixtures/aws_quicksight_template.test.fixture.json +0 -0
- /package/{lib → src}/get/__tests__/generator/fixtures/aws_s3_bucket.test.fixture.json +0 -0
- /package/{lib → src}/get/__tests__/generator/fixtures/aws_security_group.test.fixture.json +0 -0
- /package/{lib → src}/get/__tests__/generator/fixtures/aws_wafv2_web_acl.test.fixture.json +0 -0
- /package/{lib → src}/get/__tests__/generator/fixtures/block-type-nested-computed-list.test.fixture.json +0 -0
- /package/{lib → src}/get/__tests__/generator/fixtures/block-type-set-list.test.fixture.json +0 -0
- /package/{lib → src}/get/__tests__/generator/fixtures/boolean-list.test.fixture.json +0 -0
- /package/{lib → src}/get/__tests__/generator/fixtures/boolean-map.test.fixture.json +0 -0
- /package/{lib → src}/get/__tests__/generator/fixtures/comment-ending-sequence.test.fixture.json +0 -0
- /package/{lib → src}/get/__tests__/generator/fixtures/computed-complex-nested.test.fixture.json +0 -0
- /package/{lib → src}/get/__tests__/generator/fixtures/computed-complex.test.fixture.json +0 -0
- /package/{lib → src}/get/__tests__/generator/fixtures/computed-optional-complex.test.fixture.json +0 -0
- /package/{lib → src}/get/__tests__/generator/fixtures/data_aws_quicksight_analysis.fixture.json +0 -0
- /package/{lib → src}/get/__tests__/generator/fixtures/datadog_dashboard.test.fixture.json +0 -0
- /package/{lib → src}/get/__tests__/generator/fixtures/datadog_spans_metric.test.fixture.json +0 -0
- /package/{lib → src}/get/__tests__/generator/fixtures/deep-attributes.test.fixture.json +0 -0
- /package/{lib → src}/get/__tests__/generator/fixtures/deeply-nested-block-types.test.fixture.json +0 -0
- /package/{lib → src}/get/__tests__/generator/fixtures/description-escaping.test.fixture.json +0 -0
- /package/{lib → src}/get/__tests__/generator/fixtures/elasticstack-provider.test.fixture.json +0 -0
- /package/{lib → src}/get/__tests__/generator/fixtures/empty-provider-resources.test.fixture.json +0 -0
- /package/{lib → src}/get/__tests__/generator/fixtures/ignored-attributes.test.fixture.json +0 -0
- /package/{lib → src}/get/__tests__/generator/fixtures/incompatible-attribute-names.test.fixture.json +0 -0
- /package/{lib → src}/get/__tests__/generator/fixtures/incompatible-resource-names.test.fixture.json +0 -0
- /package/{lib → src}/get/__tests__/generator/fixtures/list-list-object.test.fixture.json +0 -0
- /package/{lib → src}/get/__tests__/generator/fixtures/list-list-string.test.fixture.json +0 -0
- /package/{lib → src}/get/__tests__/generator/fixtures/list-of-string-map.test.fixture.json +0 -0
- /package/{lib → src}/get/__tests__/generator/fixtures/map-of-map-of-string.test.fixture.json +0 -0
- /package/{lib → src}/get/__tests__/generator/fixtures/map-of-string-list.test.fixture.json +0 -0
- /package/{lib → src}/get/__tests__/generator/fixtures/markdown-description-with-code-blocks.test.fixture.json +0 -0
- /package/{lib → src}/get/__tests__/generator/fixtures/module-get-x.test.fixture.tf +0 -0
- /package/{lib → src}/get/__tests__/generator/fixtures/module-no-newline-1.test.fixture.tf +0 -0
- /package/{lib → src}/get/__tests__/generator/fixtures/module-no-newline-2.test.fixture.tf +0 -0
- /package/{lib → src}/get/__tests__/generator/fixtures/module-no-outputs.test.fixture.tf +0 -0
- /package/{lib → src}/get/__tests__/generator/fixtures/module-no-variable-type.test.fixture.tf +0 -0
- /package/{lib → src}/get/__tests__/generator/fixtures/module-with-star-default.test.fixture.tf +0 -0
- /package/{lib → src}/get/__tests__/generator/fixtures/name-conflict.test.fixture.json +0 -0
- /package/{lib → src}/get/__tests__/generator/fixtures/nested-type-without-attributes.test.fixture.json +0 -0
- /package/{lib → src}/get/__tests__/generator/fixtures/nested-types.test.fixture.json +0 -0
- /package/{lib → src}/get/__tests__/generator/fixtures/number-list.test.fixture.json +0 -0
- /package/{lib → src}/get/__tests__/generator/fixtures/number-map.test.fixture.json +0 -0
- /package/{lib → src}/get/__tests__/generator/fixtures/primitive-boolean.test.fixture.json +0 -0
- /package/{lib → src}/get/__tests__/generator/fixtures/primitive-dynamic.test.fixture.json +0 -0
- /package/{lib → src}/get/__tests__/generator/fixtures/primitive-number.test.fixture.json +0 -0
- /package/{lib → src}/get/__tests__/generator/fixtures/primitive-string.test.fixture.json +0 -0
- /package/{lib → src}/get/__tests__/generator/fixtures/single-block-type.test.fixture.json +0 -0
- /package/{lib → src}/get/__tests__/generator/fixtures/string-list.test.fixture.json +0 -0
- /package/{lib → src}/get/__tests__/generator/fixtures/string-map.test.fixture.json +0 -0
- /package/{lib → src}/get/__tests__/generator/fixtures/stripe-schema.test.fixture.json +0 -0
|
@@ -0,0 +1,74 @@
|
|
|
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
|
+
// Copyright (c) HashiCorp, Inc
|
|
27
|
+
// SPDX-License-Identifier: MPL-2.0
|
|
28
|
+
const fs = __importStar(require("fs-extra"));
|
|
29
|
+
const os = __importStar(require("os"));
|
|
30
|
+
const path = __importStar(require("path"));
|
|
31
|
+
const commons_1 = require("@cdktn/commons");
|
|
32
|
+
const constructs_maker_1 = require("../../constructs-maker");
|
|
33
|
+
jest.setTimeout(600000);
|
|
34
|
+
global.setImmediate =
|
|
35
|
+
global.setImmediate ||
|
|
36
|
+
((fn, ...args) => global.setTimeout(fn, 0, ...args));
|
|
37
|
+
describe("versions.json file generation", () => {
|
|
38
|
+
const languages = [commons_1.Language.TYPESCRIPT, commons_1.Language.PYTHON];
|
|
39
|
+
const constraints = [
|
|
40
|
+
{
|
|
41
|
+
fqn: "hashicorp/aws",
|
|
42
|
+
name: "aws",
|
|
43
|
+
source: "hashicorp/aws",
|
|
44
|
+
version: "4.0.0",
|
|
45
|
+
},
|
|
46
|
+
{
|
|
47
|
+
fqn: "hashicorp/random",
|
|
48
|
+
name: "random",
|
|
49
|
+
source: "hashicorp/random",
|
|
50
|
+
version: "3.1.3",
|
|
51
|
+
},
|
|
52
|
+
{
|
|
53
|
+
fqn: "kreuzwerker/docker",
|
|
54
|
+
name: "docker",
|
|
55
|
+
source: "kreuzwerker/docker",
|
|
56
|
+
version: "2.16.0",
|
|
57
|
+
},
|
|
58
|
+
];
|
|
59
|
+
beforeAll(() => { });
|
|
60
|
+
test.each(languages)("generates a file for the %s language", async (language) => {
|
|
61
|
+
const workdir = fs.mkdtempSync(path.join(os.tmpdir(), "versions-file.test"));
|
|
62
|
+
const options = {
|
|
63
|
+
codeMakerOutput: workdir,
|
|
64
|
+
targetLanguage: language,
|
|
65
|
+
};
|
|
66
|
+
// Ignore warnings to pop up from the generate function
|
|
67
|
+
process.env.NODE_OPTIONS = "--max-old-space-size=16384";
|
|
68
|
+
const constructMaker = new constructs_maker_1.ConstructsMaker(options, process.env.CDKTF_EXPERIMENTAL_PROVIDER_SCHEMA_CACHE_PATH);
|
|
69
|
+
await constructMaker.generate(constraints);
|
|
70
|
+
const output = fs.readFileSync(path.join(workdir, "versions.json"), "utf-8");
|
|
71
|
+
expect(Object.keys(JSON.parse(output))).toEqual(expect.arrayContaining(constraints.map((c) => `registry.terraform.io/${c.fqn}`)));
|
|
72
|
+
});
|
|
73
|
+
});
|
|
74
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmVyc2lvbnMtZmlsZS50ZXN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2dldC9fX3Rlc3RzX18vZ2VuZXJhdG9yL3ZlcnNpb25zLWZpbGUudGVzdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsK0JBQStCO0FBQy9CLG1DQUFtQztBQUNuQyw2Q0FBK0I7QUFDL0IsdUNBQXlCO0FBQ3pCLDJDQUE2QjtBQUM3Qiw0Q0FBeUU7QUFDekUsNkRBQXFFO0FBRXJFLElBQUksQ0FBQyxVQUFVLENBQUMsTUFBTyxDQUFDLENBQUM7QUFDekIsTUFBTSxDQUFDLFlBQVk7SUFDakIsTUFBTSxDQUFDLFlBQVk7UUFDbkIsQ0FBQyxDQUFDLEVBQU8sRUFBRSxHQUFHLElBQVcsRUFBRSxFQUFFLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxFQUFFLEdBQUcsSUFBSSxDQUFDLENBQUMsQ0FBQztBQUVuRSxRQUFRLENBQUMsK0JBQStCLEVBQUUsR0FBRyxFQUFFO0lBQzdDLE1BQU0sU0FBUyxHQUFHLENBQUMsa0JBQVEsQ0FBQyxVQUFVLEVBQUUsa0JBQVEsQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUV6RCxNQUFNLFdBQVcsR0FBb0M7UUFDbkQ7WUFDRSxHQUFHLEVBQUUsZUFBZTtZQUNwQixJQUFJLEVBQUUsS0FBSztZQUNYLE1BQU0sRUFBRSxlQUFlO1lBQ3ZCLE9BQU8sRUFBRSxPQUFPO1NBQ2pCO1FBQ0Q7WUFDRSxHQUFHLEVBQUUsa0JBQWtCO1lBQ3ZCLElBQUksRUFBRSxRQUFRO1lBQ2QsTUFBTSxFQUFFLGtCQUFrQjtZQUMxQixPQUFPLEVBQUUsT0FBTztTQUNqQjtRQUNEO1lBQ0UsR0FBRyxFQUFFLG9CQUFvQjtZQUN6QixJQUFJLEVBQUUsUUFBUTtZQUNkLE1BQU0sRUFBRSxvQkFBb0I7WUFDNUIsT0FBTyxFQUFFLFFBQVE7U0FDbEI7S0FDRixDQUFDO0lBRUYsU0FBUyxDQUFDLEdBQUcsRUFBRSxHQUFFLENBQUMsQ0FBQyxDQUFDO0lBRXBCLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQ2xCLHNDQUFzQyxFQUN0QyxLQUFLLEVBQUUsUUFBUSxFQUFFLEVBQUU7UUFDakIsTUFBTSxPQUFPLEdBQUcsRUFBRSxDQUFDLFdBQVcsQ0FDNUIsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsTUFBTSxFQUFFLEVBQUUsb0JBQW9CLENBQUMsQ0FDN0MsQ0FBQztRQUVGLE1BQU0sT0FBTyxHQUFlO1lBQzFCLGVBQWUsRUFBRSxPQUFPO1lBQ3hCLGNBQWMsRUFBRSxRQUFRO1NBQ3pCLENBQUM7UUFFRix1REFBdUQ7UUFDdkQsT0FBTyxDQUFDLEdBQUcsQ0FBQyxZQUFZLEdBQUcsNEJBQTRCLENBQUM7UUFDeEQsTUFBTSxjQUFjLEdBQUcsSUFBSSxrQ0FBZSxDQUN4QyxPQUFPLEVBQ1AsT0FBTyxDQUFDLEdBQUcsQ0FBQyw2Q0FBNkMsQ0FDMUQsQ0FBQztRQUVGLE1BQU0sY0FBYyxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUUzQyxNQUFNLE1BQU0sR0FBRyxFQUFFLENBQUMsWUFBWSxDQUM1QixJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxlQUFlLENBQUMsRUFDbkMsT0FBTyxDQUNSLENBQUM7UUFDRixNQUFNLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQzdDLE1BQU0sQ0FBQyxlQUFlLENBQ3BCLFdBQVcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLHlCQUF5QixDQUFDLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FDekQsQ0FDRixDQUFDO0lBQ0osQ0FBQyxDQUNGLENBQUM7QUFDSixDQUFDLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8vIENvcHlyaWdodCAoYykgSGFzaGlDb3JwLCBJbmNcbi8vIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBNUEwtMi4wXG5pbXBvcnQgKiBhcyBmcyBmcm9tIFwiZnMtZXh0cmFcIjtcbmltcG9ydCAqIGFzIG9zIGZyb20gXCJvc1wiO1xuaW1wb3J0ICogYXMgcGF0aCBmcm9tIFwicGF0aFwiO1xuaW1wb3J0IHsgTGFuZ3VhZ2UsIFRlcnJhZm9ybURlcGVuZGVuY3lDb25zdHJhaW50IH0gZnJvbSBcIkBjZGt0bi9jb21tb25zXCI7XG5pbXBvcnQgeyBDb25zdHJ1Y3RzTWFrZXIsIEdldE9wdGlvbnMgfSBmcm9tIFwiLi4vLi4vY29uc3RydWN0cy1tYWtlclwiO1xuXG5qZXN0LnNldFRpbWVvdXQoNjAwXzAwMCk7XG5nbG9iYWwuc2V0SW1tZWRpYXRlID1cbiAgZ2xvYmFsLnNldEltbWVkaWF0ZSB8fFxuICAoKGZuOiBhbnksIC4uLmFyZ3M6IGFueVtdKSA9PiBnbG9iYWwuc2V0VGltZW91dChmbiwgMCwgLi4uYXJncykpO1xuXG5kZXNjcmliZShcInZlcnNpb25zLmpzb24gZmlsZSBnZW5lcmF0aW9uXCIsICgpID0+IHtcbiAgY29uc3QgbGFuZ3VhZ2VzID0gW0xhbmd1YWdlLlRZUEVTQ1JJUFQsIExhbmd1YWdlLlBZVEhPTl07XG5cbiAgY29uc3QgY29uc3RyYWludHM6IFRlcnJhZm9ybURlcGVuZGVuY3lDb25zdHJhaW50W10gPSBbXG4gICAge1xuICAgICAgZnFuOiBcImhhc2hpY29ycC9hd3NcIixcbiAgICAgIG5hbWU6IFwiYXdzXCIsXG4gICAgICBzb3VyY2U6IFwiaGFzaGljb3JwL2F3c1wiLFxuICAgICAgdmVyc2lvbjogXCI0LjAuMFwiLFxuICAgIH0sXG4gICAge1xuICAgICAgZnFuOiBcImhhc2hpY29ycC9yYW5kb21cIixcbiAgICAgIG5hbWU6IFwicmFuZG9tXCIsXG4gICAgICBzb3VyY2U6IFwiaGFzaGljb3JwL3JhbmRvbVwiLFxuICAgICAgdmVyc2lvbjogXCIzLjEuM1wiLFxuICAgIH0sXG4gICAge1xuICAgICAgZnFuOiBcImtyZXV6d2Vya2VyL2RvY2tlclwiLFxuICAgICAgbmFtZTogXCJkb2NrZXJcIixcbiAgICAgIHNvdXJjZTogXCJrcmV1endlcmtlci9kb2NrZXJcIixcbiAgICAgIHZlcnNpb246IFwiMi4xNi4wXCIsXG4gICAgfSxcbiAgXTtcblxuICBiZWZvcmVBbGwoKCkgPT4ge30pO1xuXG4gIHRlc3QuZWFjaChsYW5ndWFnZXMpKFxuICAgIFwiZ2VuZXJhdGVzIGEgZmlsZSBmb3IgdGhlICVzIGxhbmd1YWdlXCIsXG4gICAgYXN5bmMgKGxhbmd1YWdlKSA9PiB7XG4gICAgICBjb25zdCB3b3JrZGlyID0gZnMubWtkdGVtcFN5bmMoXG4gICAgICAgIHBhdGguam9pbihvcy50bXBkaXIoKSwgXCJ2ZXJzaW9ucy1maWxlLnRlc3RcIiksXG4gICAgICApO1xuXG4gICAgICBjb25zdCBvcHRpb25zOiBHZXRPcHRpb25zID0ge1xuICAgICAgICBjb2RlTWFrZXJPdXRwdXQ6IHdvcmtkaXIsXG4gICAgICAgIHRhcmdldExhbmd1YWdlOiBsYW5ndWFnZSxcbiAgICAgIH07XG5cbiAgICAgIC8vIElnbm9yZSB3YXJuaW5ncyB0byBwb3AgdXAgZnJvbSB0aGUgZ2VuZXJhdGUgZnVuY3Rpb25cbiAgICAgIHByb2Nlc3MuZW52Lk5PREVfT1BUSU9OUyA9IFwiLS1tYXgtb2xkLXNwYWNlLXNpemU9MTYzODRcIjtcbiAgICAgIGNvbnN0IGNvbnN0cnVjdE1ha2VyID0gbmV3IENvbnN0cnVjdHNNYWtlcihcbiAgICAgICAgb3B0aW9ucyxcbiAgICAgICAgcHJvY2Vzcy5lbnYuQ0RLVEZfRVhQRVJJTUVOVEFMX1BST1ZJREVSX1NDSEVNQV9DQUNIRV9QQVRILFxuICAgICAgKTtcblxuICAgICAgYXdhaXQgY29uc3RydWN0TWFrZXIuZ2VuZXJhdGUoY29uc3RyYWludHMpO1xuXG4gICAgICBjb25zdCBvdXRwdXQgPSBmcy5yZWFkRmlsZVN5bmMoXG4gICAgICAgIHBhdGguam9pbih3b3JrZGlyLCBcInZlcnNpb25zLmpzb25cIiksXG4gICAgICAgIFwidXRmLThcIixcbiAgICAgICk7XG4gICAgICBleHBlY3QoT2JqZWN0LmtleXMoSlNPTi5wYXJzZShvdXRwdXQpKSkudG9FcXVhbChcbiAgICAgICAgZXhwZWN0LmFycmF5Q29udGFpbmluZyhcbiAgICAgICAgICBjb25zdHJhaW50cy5tYXAoKGMpID0+IGByZWdpc3RyeS50ZXJyYWZvcm0uaW8vJHtjLmZxbn1gKSxcbiAgICAgICAgKSxcbiAgICAgICk7XG4gICAgfSxcbiAgKTtcbn0pO1xuIl19
|
|
@@ -0,0 +1,59 @@
|
|
|
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.expectModuleToMatchSnapshot = void 0;
|
|
27
|
+
// Copyright (c) HashiCorp, Inc
|
|
28
|
+
// SPDX-License-Identifier: MPL-2.0
|
|
29
|
+
const fs = __importStar(require("fs"));
|
|
30
|
+
const commons_1 = require("@cdktn/commons");
|
|
31
|
+
const constructs_maker_1 = require("../constructs-maker");
|
|
32
|
+
const path = __importStar(require("path"));
|
|
33
|
+
function expectModuleToMatchSnapshot(testName, testCategory, fixtureNames) {
|
|
34
|
+
test(testName, async () => {
|
|
35
|
+
await (0, commons_1.withTempDir)(`${testName.replace(/\s*/, "-")}.test`, async () => {
|
|
36
|
+
const curdir = process.cwd();
|
|
37
|
+
fs.mkdirSync("module");
|
|
38
|
+
fixtureNames.forEach((fixtureName) => {
|
|
39
|
+
fs.copyFileSync(path.join(__dirname, testCategory, "fixtures", fixtureName), path.join(curdir, "module", fixtureName));
|
|
40
|
+
});
|
|
41
|
+
const constraint = new commons_1.TerraformModuleConstraint({
|
|
42
|
+
source: "./module",
|
|
43
|
+
name: "module",
|
|
44
|
+
fqn: "module",
|
|
45
|
+
});
|
|
46
|
+
fs.mkdirSync("work");
|
|
47
|
+
const workdir = path.join(curdir, "work");
|
|
48
|
+
const maker = new constructs_maker_1.ConstructsMaker({
|
|
49
|
+
codeMakerOutput: workdir,
|
|
50
|
+
targetLanguage: commons_1.Language.TYPESCRIPT,
|
|
51
|
+
}, process.env.CDKTF_EXPERIMENTAL_PROVIDER_SCHEMA_CACHE_PATH);
|
|
52
|
+
await maker.generate([constraint]);
|
|
53
|
+
const output = fs.readFileSync(path.join(workdir, "modules/module.ts"), "utf-8");
|
|
54
|
+
expect(output).toMatchSnapshot();
|
|
55
|
+
});
|
|
56
|
+
});
|
|
57
|
+
}
|
|
58
|
+
exports.expectModuleToMatchSnapshot = expectModuleToMatchSnapshot;
|
|
59
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9nZXQvX190ZXN0c19fL3V0aWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSwrQkFBK0I7QUFDL0IsbUNBQW1DO0FBQ25DLHVDQUF5QjtBQUN6Qiw0Q0FJd0I7QUFDeEIsMERBQXNEO0FBQ3RELDJDQUE2QjtBQUU3QixTQUFnQiwyQkFBMkIsQ0FDekMsUUFBZ0IsRUFDaEIsWUFBb0IsRUFDcEIsWUFBc0I7SUFFdEIsSUFBSSxDQUFDLFFBQVEsRUFBRSxLQUFLLElBQUksRUFBRTtRQUN4QixNQUFNLElBQUEscUJBQVcsRUFBQyxHQUFHLFFBQVEsQ0FBQyxPQUFPLENBQUMsS0FBSyxFQUFFLEdBQUcsQ0FBQyxPQUFPLEVBQUUsS0FBSyxJQUFJLEVBQUU7WUFDbkUsTUFBTSxNQUFNLEdBQUcsT0FBTyxDQUFDLEdBQUcsRUFBRSxDQUFDO1lBQzdCLEVBQUUsQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLENBQUM7WUFFdkIsWUFBWSxDQUFDLE9BQU8sQ0FBQyxDQUFDLFdBQVcsRUFBRSxFQUFFO2dCQUNuQyxFQUFFLENBQUMsWUFBWSxDQUNiLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLFlBQVksRUFBRSxVQUFVLEVBQUUsV0FBVyxDQUFDLEVBQzNELElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLFFBQVEsRUFBRSxXQUFXLENBQUMsQ0FDekMsQ0FBQztZQUNKLENBQUMsQ0FBQyxDQUFDO1lBRUgsTUFBTSxVQUFVLEdBQUcsSUFBSSxtQ0FBeUIsQ0FBQztnQkFDL0MsTUFBTSxFQUFFLFVBQVU7Z0JBQ2xCLElBQUksRUFBRSxRQUFRO2dCQUNkLEdBQUcsRUFBRSxRQUFRO2FBQ2QsQ0FBQyxDQUFDO1lBRUgsRUFBRSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsQ0FBQztZQUNyQixNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxNQUFNLENBQUMsQ0FBQztZQUUxQyxNQUFNLEtBQUssR0FBRyxJQUFJLGtDQUFlLENBQy9CO2dCQUNFLGVBQWUsRUFBRSxPQUFPO2dCQUN4QixjQUFjLEVBQUUsa0JBQVEsQ0FBQyxVQUFVO2FBQ3BDLEVBQ0QsT0FBTyxDQUFDLEdBQUcsQ0FBQyw2Q0FBNkMsQ0FDMUQsQ0FBQztZQUNGLE1BQU0sS0FBSyxDQUFDLFFBQVEsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUM7WUFFbkMsTUFBTSxNQUFNLEdBQUcsRUFBRSxDQUFDLFlBQVksQ0FDNUIsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsbUJBQW1CLENBQUMsRUFDdkMsT0FBTyxDQUNSLENBQUM7WUFDRixNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsZUFBZSxFQUFFLENBQUM7UUFDbkMsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDLENBQUMsQ0FBQztBQUNMLENBQUM7QUExQ0Qsa0VBMENDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gQ29weXJpZ2h0IChjKSBIYXNoaUNvcnAsIEluY1xuLy8gU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IE1QTC0yLjBcbmltcG9ydCAqIGFzIGZzIGZyb20gXCJmc1wiO1xuaW1wb3J0IHtcbiAgTGFuZ3VhZ2UsXG4gIFRlcnJhZm9ybU1vZHVsZUNvbnN0cmFpbnQsXG4gIHdpdGhUZW1wRGlyLFxufSBmcm9tIFwiQGNka3RuL2NvbW1vbnNcIjtcbmltcG9ydCB7IENvbnN0cnVjdHNNYWtlciB9IGZyb20gXCIuLi9jb25zdHJ1Y3RzLW1ha2VyXCI7XG5pbXBvcnQgKiBhcyBwYXRoIGZyb20gXCJwYXRoXCI7XG5cbmV4cG9ydCBmdW5jdGlvbiBleHBlY3RNb2R1bGVUb01hdGNoU25hcHNob3QoXG4gIHRlc3ROYW1lOiBzdHJpbmcsXG4gIHRlc3RDYXRlZ29yeTogc3RyaW5nLFxuICBmaXh0dXJlTmFtZXM6IHN0cmluZ1tdLFxuKSB7XG4gIHRlc3QodGVzdE5hbWUsIGFzeW5jICgpID0+IHtcbiAgICBhd2FpdCB3aXRoVGVtcERpcihgJHt0ZXN0TmFtZS5yZXBsYWNlKC9cXHMqLywgXCItXCIpfS50ZXN0YCwgYXN5bmMgKCkgPT4ge1xuICAgICAgY29uc3QgY3VyZGlyID0gcHJvY2Vzcy5jd2QoKTtcbiAgICAgIGZzLm1rZGlyU3luYyhcIm1vZHVsZVwiKTtcblxuICAgICAgZml4dHVyZU5hbWVzLmZvckVhY2goKGZpeHR1cmVOYW1lKSA9PiB7XG4gICAgICAgIGZzLmNvcHlGaWxlU3luYyhcbiAgICAgICAgICBwYXRoLmpvaW4oX19kaXJuYW1lLCB0ZXN0Q2F0ZWdvcnksIFwiZml4dHVyZXNcIiwgZml4dHVyZU5hbWUpLFxuICAgICAgICAgIHBhdGguam9pbihjdXJkaXIsIFwibW9kdWxlXCIsIGZpeHR1cmVOYW1lKSxcbiAgICAgICAgKTtcbiAgICAgIH0pO1xuXG4gICAgICBjb25zdCBjb25zdHJhaW50ID0gbmV3IFRlcnJhZm9ybU1vZHVsZUNvbnN0cmFpbnQoe1xuICAgICAgICBzb3VyY2U6IFwiLi9tb2R1bGVcIixcbiAgICAgICAgbmFtZTogXCJtb2R1bGVcIixcbiAgICAgICAgZnFuOiBcIm1vZHVsZVwiLFxuICAgICAgfSk7XG5cbiAgICAgIGZzLm1rZGlyU3luYyhcIndvcmtcIik7XG4gICAgICBjb25zdCB3b3JrZGlyID0gcGF0aC5qb2luKGN1cmRpciwgXCJ3b3JrXCIpO1xuXG4gICAgICBjb25zdCBtYWtlciA9IG5ldyBDb25zdHJ1Y3RzTWFrZXIoXG4gICAgICAgIHtcbiAgICAgICAgICBjb2RlTWFrZXJPdXRwdXQ6IHdvcmtkaXIsXG4gICAgICAgICAgdGFyZ2V0TGFuZ3VhZ2U6IExhbmd1YWdlLlRZUEVTQ1JJUFQsXG4gICAgICAgIH0sXG4gICAgICAgIHByb2Nlc3MuZW52LkNES1RGX0VYUEVSSU1FTlRBTF9QUk9WSURFUl9TQ0hFTUFfQ0FDSEVfUEFUSCxcbiAgICAgICk7XG4gICAgICBhd2FpdCBtYWtlci5nZW5lcmF0ZShbY29uc3RyYWludF0pO1xuXG4gICAgICBjb25zdCBvdXRwdXQgPSBmcy5yZWFkRmlsZVN5bmMoXG4gICAgICAgIHBhdGguam9pbih3b3JrZGlyLCBcIm1vZHVsZXMvbW9kdWxlLnRzXCIpLFxuICAgICAgICBcInV0Zi04XCIsXG4gICAgICApO1xuICAgICAgZXhwZWN0KG91dHB1dCkudG9NYXRjaFNuYXBzaG90KCk7XG4gICAgfSk7XG4gIH0pO1xufVxuIl19
|
|
@@ -71,7 +71,7 @@ export declare class ConstructsMaker {
|
|
|
71
71
|
removeFoldersThatShouldNotExist(constraintsThatShouldExist: TerraformDependencyConstraint[]): Promise<void>;
|
|
72
72
|
private emitConstraintsFile;
|
|
73
73
|
private generateJsiiLanguage;
|
|
74
|
-
getSchemas(targets: TerraformDependencyConstraint[]): Promise<import("@cdktn/provider-schema/
|
|
74
|
+
getSchemas(targets: TerraformDependencyConstraint[]): Promise<import("@cdktn/provider-schema/build/read").Schema>;
|
|
75
75
|
generate(allConstraints: TerraformDependencyConstraint[], constraintsToGenerate?: TerraformDependencyConstraint[]): Promise<void>;
|
|
76
76
|
private save;
|
|
77
77
|
private get isJavascriptTarget();
|