@pulumi/pulumi 3.135.2-alpha.xaa9ca8a → 3.136.0-alpha.xbd76b17

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (177) hide show
  1. package/package.json +1 -1
  2. package/version.d.ts +1 -1
  3. package/version.js +1 -1
  4. package/npm/testdata/nested/project/index.d.ts +0 -0
  5. package/npm/testdata/nested/project/index.js +0 -16
  6. package/npm/testdata/nested/project/index.js.map +0 -1
  7. package/tests/automation/cmd.spec.d.ts +0 -1
  8. package/tests/automation/cmd.spec.js +0 -186
  9. package/tests/automation/cmd.spec.js.map +0 -1
  10. package/tests/automation/data/correct_project/Pulumi.yaml +0 -3
  11. package/tests/automation/data/import/Pulumi.yaml +0 -2
  12. package/tests/automation/data/import/expected_generated_code.txt +0 -11
  13. package/tests/automation/data/json/Pulumi.dev.json +0 -9
  14. package/tests/automation/data/json/Pulumi.json +0 -5
  15. package/tests/automation/data/nested_config/Pulumi.dev.yaml +0 -11
  16. package/tests/automation/data/nested_config/Pulumi.yaml +0 -3
  17. package/tests/automation/data/tcfg/Pulumi.yaml +0 -4
  18. package/tests/automation/data/tcfg/index.ts +0 -1
  19. package/tests/automation/data/tcfg/package-lock.json +0 -3062
  20. package/tests/automation/data/tcfg/package.json +0 -9
  21. package/tests/automation/data/tcfg/tsconfig.json +0 -16
  22. package/tests/automation/data/testproj/Pulumi.yaml +0 -3
  23. package/tests/automation/data/testproj/go.mod +0 -71
  24. package/tests/automation/data/testproj/go.sum +0 -299
  25. package/tests/automation/data/testproj/main.go +0 -19
  26. package/tests/automation/data/testproj_dotnet/Program.cs +0 -12
  27. package/tests/automation/data/testproj_dotnet/Pulumi.yaml +0 -3
  28. package/tests/automation/data/testproj_dotnet/TestProj.csproj +0 -12
  29. package/tests/automation/data/yaml/Pulumi.dev.yaml +0 -5
  30. package/tests/automation/data/yaml/Pulumi.yaml +0 -3
  31. package/tests/automation/data/yml/Pulumi.dev.yml +0 -5
  32. package/tests/automation/data/yml/Pulumi.yml +0 -3
  33. package/tests/automation/localWorkspace.spec.d.ts +0 -1
  34. package/tests/automation/localWorkspace.spec.js +0 -1325
  35. package/tests/automation/localWorkspace.spec.js.map +0 -1
  36. package/tests/automation/remoteWorkspace.spec.d.ts +0 -1
  37. package/tests/automation/remoteWorkspace.spec.js +0 -460
  38. package/tests/automation/remoteWorkspace.spec.js.map +0 -1
  39. package/tests/automation/util.d.ts +0 -1
  40. package/tests/automation/util.js +0 -31
  41. package/tests/automation/util.js.map +0 -1
  42. package/tests/config.spec.d.ts +0 -1
  43. package/tests/config.spec.js +0 -177
  44. package/tests/config.spec.js.map +0 -1
  45. package/tests/constants.d.ts +0 -1
  46. package/tests/constants.js +0 -18
  47. package/tests/constants.js.map +0 -1
  48. package/tests/init.spec.d.ts +0 -1
  49. package/tests/init.spec.js +0 -18
  50. package/tests/init.spec.js.map +0 -1
  51. package/tests/iterable.spec.d.ts +0 -1
  52. package/tests/iterable.spec.js +0 -60
  53. package/tests/iterable.spec.js.map +0 -1
  54. package/tests/options.spec.d.ts +0 -1
  55. package/tests/options.spec.js +0 -233
  56. package/tests/options.spec.js.map +0 -1
  57. package/tests/output.spec.d.ts +0 -1
  58. package/tests/output.spec.js +0 -809
  59. package/tests/output.spec.js.map +0 -1
  60. package/tests/provider.spec.d.ts +0 -1
  61. package/tests/provider.spec.js +0 -524
  62. package/tests/provider.spec.js.map +0 -1
  63. package/tests/resource.spec.d.ts +0 -1
  64. package/tests/resource.spec.js +0 -275
  65. package/tests/resource.spec.js.map +0 -1
  66. package/tests/runtime/asyncIterableUtil.spec.d.ts +0 -1
  67. package/tests/runtime/asyncIterableUtil.spec.js +0 -115
  68. package/tests/runtime/asyncIterableUtil.spec.js.map +0 -1
  69. package/tests/runtime/closure-integration-tests.d.ts +0 -1
  70. package/tests/runtime/closure-integration-tests.js +0 -120
  71. package/tests/runtime/closure-integration-tests.js.map +0 -1
  72. package/tests/runtime/findWorkspaceRoot.spec.d.ts +0 -1
  73. package/tests/runtime/findWorkspaceRoot.spec.js +0 -62
  74. package/tests/runtime/findWorkspaceRoot.spec.js.map +0 -1
  75. package/tests/runtime/install-package-tests.d.ts +0 -1
  76. package/tests/runtime/install-package-tests.js +0 -230
  77. package/tests/runtime/install-package-tests.js.map +0 -1
  78. package/tests/runtime/langhost/cases/000.empty/index.js +0 -1
  79. package/tests/runtime/langhost/cases/001.one_resource/index.js +0 -11
  80. package/tests/runtime/langhost/cases/002.ten_resources/index.js +0 -13
  81. package/tests/runtime/langhost/cases/003.one_complex_resource/index.js +0 -77
  82. package/tests/runtime/langhost/cases/004.ten_complex_resources/index.js +0 -38
  83. package/tests/runtime/langhost/cases/004.ten_complex_resources/resource.js +0 -30
  84. package/tests/runtime/langhost/cases/005.resource_thens/index.js +0 -72
  85. package/tests/runtime/langhost/cases/006.asset/index.js +0 -13
  86. package/tests/runtime/langhost/cases/006.asset/testdata.txt +0 -4
  87. package/tests/runtime/langhost/cases/007.promises_io/index.js +0 -25
  88. package/tests/runtime/langhost/cases/007.promises_io/testdata.txt +0 -4
  89. package/tests/runtime/langhost/cases/008.ten_depends_on_resources/index.js +0 -46
  90. package/tests/runtime/langhost/cases/009.invoke/index.js +0 -25
  91. package/tests/runtime/langhost/cases/010.runtime_settings/index.js +0 -22
  92. package/tests/runtime/langhost/cases/011.unhandled_error/index.js +0 -1
  93. package/tests/runtime/langhost/cases/012.assets_archive/index.js +0 -25
  94. package/tests/runtime/langhost/cases/013.unhandled_promise_rejection/index.js +0 -3
  95. package/tests/runtime/langhost/cases/014.read_resource/index.js +0 -19
  96. package/tests/runtime/langhost/cases/015.runtime_sxs/index.js +0 -100
  97. package/tests/runtime/langhost/cases/016.promise_leak/index.js +0 -3
  98. package/tests/runtime/langhost/cases/017.parent_defaults/index.js +0 -89
  99. package/tests/runtime/langhost/cases/018.logging/index.js +0 -15
  100. package/tests/runtime/langhost/cases/019.stack_exports/index.js +0 -15
  101. package/tests/runtime/langhost/cases/020.property_dependencies/index.js +0 -39
  102. package/tests/runtime/langhost/cases/021.parent_child_dependencies/index.js +0 -15
  103. package/tests/runtime/langhost/cases/022.parent_child_dependencies_2/index.js +0 -16
  104. package/tests/runtime/langhost/cases/023.parent_child_dependencies_3/index.js +0 -28
  105. package/tests/runtime/langhost/cases/024.parent_child_dependencies_4/index.js +0 -22
  106. package/tests/runtime/langhost/cases/025.parent_child_dependencies_5/index.js +0 -24
  107. package/tests/runtime/langhost/cases/026.parent_child_dependencies_6/index.js +0 -29
  108. package/tests/runtime/langhost/cases/027.parent_child_dependencies_7/index.js +0 -36
  109. package/tests/runtime/langhost/cases/028.parent_child_dependencies_8/index.js +0 -28
  110. package/tests/runtime/langhost/cases/029.parent_child_dependencies_9/index.js +0 -23
  111. package/tests/runtime/langhost/cases/030.import_resource/index.js +0 -11
  112. package/tests/runtime/langhost/cases/040.run_error/index.js +0 -3
  113. package/tests/runtime/langhost/cases/041.component_opt_single_provider/index.js +0 -89
  114. package/tests/runtime/langhost/cases/042.component_opt_providers_array/index.js +0 -89
  115. package/tests/runtime/langhost/cases/043.depends_on_non_resource/index.js +0 -11
  116. package/tests/runtime/langhost/cases/044.versions/index.js +0 -22
  117. package/tests/runtime/langhost/cases/045.ignore_changes/index.js +0 -11
  118. package/tests/runtime/langhost/cases/046.recursive_stack_exports/index.js +0 -19
  119. package/tests/runtime/langhost/cases/047.exported_function/index.js +0 -13
  120. package/tests/runtime/langhost/cases/048.exported_promise_function/index.js +0 -13
  121. package/tests/runtime/langhost/cases/049.exported_async_function/index.js +0 -13
  122. package/tests/runtime/langhost/cases/050.resource_creation_in_function/index.js +0 -11
  123. package/tests/runtime/langhost/cases/051.resource_creation_in_function_with_result/index.js +0 -12
  124. package/tests/runtime/langhost/cases/052.resource_creation_in_async_function_with_result/index.js +0 -12
  125. package/tests/runtime/langhost/cases/060.provider_invokes/index.js +0 -26
  126. package/tests/runtime/langhost/cases/061.provider_in_parent_invokes/index.js +0 -33
  127. package/tests/runtime/langhost/cases/062.providerref_invokes/index.js +0 -33
  128. package/tests/runtime/langhost/cases/063.providerref_in_parent_invokes/index.js +0 -41
  129. package/tests/runtime/langhost/cases/064.async_components/index.js +0 -44
  130. package/tests/runtime/langhost/cases/065.large_resource/index.js +0 -17
  131. package/tests/runtime/langhost/cases/066.replace_on_changes/index.js +0 -11
  132. package/tests/runtime/langhost/cases/067.native_es_module/index.js +0 -11
  133. package/tests/runtime/langhost/cases/067.native_es_module/package.json +0 -1
  134. package/tests/runtime/langhost/cases/068.remote_component_providers/index.js +0 -34
  135. package/tests/runtime/langhost/cases/068.remote_component_providers/package.json +0 -3
  136. package/tests/runtime/langhost/cases/069.ambiguous_entrypoints/index.d.ts +0 -1
  137. package/tests/runtime/langhost/cases/069.ambiguous_entrypoints/index.js +0 -11
  138. package/tests/runtime/langhost/cases/069.ambiguous_entrypoints/index.js.map +0 -1
  139. package/tests/runtime/langhost/cases/069.ambiguous_entrypoints/index.ts +0 -23
  140. package/tests/runtime/langhost/cases/070.unusual_alias_names/index.js +0 -26
  141. package/tests/runtime/langhost/cases/071.large_alias_counts/index.js +0 -22
  142. package/tests/runtime/langhost/cases/072.large_alias_lineage_chains/index.js +0 -55
  143. package/tests/runtime/langhost/cases/073.component_dependencies/index.js +0 -28
  144. package/tests/runtime/langhost/cases/074.source_position/index.js +0 -17
  145. package/tests/runtime/langhost/run.spec.d.ts +0 -1
  146. package/tests/runtime/langhost/run.spec.js +0 -1685
  147. package/tests/runtime/langhost/run.spec.js.map +0 -1
  148. package/tests/runtime/pack.d.ts +0 -1
  149. package/tests/runtime/pack.js +0 -56
  150. package/tests/runtime/pack.js.map +0 -1
  151. package/tests/runtime/props.spec.d.ts +0 -1
  152. package/tests/runtime/props.spec.js +0 -387
  153. package/tests/runtime/props.spec.js.map +0 -1
  154. package/tests/runtime/registrations.spec.d.ts +0 -1
  155. package/tests/runtime/registrations.spec.js +0 -139
  156. package/tests/runtime/registrations.spec.js.map +0 -1
  157. package/tests/runtime/rpc.spec.d.ts +0 -1
  158. package/tests/runtime/rpc.spec.js +0 -79
  159. package/tests/runtime/rpc.spec.js.map +0 -1
  160. package/tests/runtime/settings.spec.d.ts +0 -1
  161. package/tests/runtime/settings.spec.js +0 -57
  162. package/tests/runtime/settings.spec.js.map +0 -1
  163. package/tests/runtime/testdata/nested/project/index.d.ts +0 -0
  164. package/tests/runtime/testdata/nested/project/index.js +0 -16
  165. package/tests/runtime/testdata/nested/project/index.js.map +0 -1
  166. package/tests/stackReference.spec.d.ts +0 -1
  167. package/tests/stackReference.spec.js +0 -86
  168. package/tests/stackReference.spec.js.map +0 -1
  169. package/tests/unwrap.spec.d.ts +0 -1
  170. package/tests/unwrap.spec.js +0 -254
  171. package/tests/unwrap.spec.js.map +0 -1
  172. package/tests/util.d.ts +0 -1
  173. package/tests/util.js +0 -71
  174. package/tests/util.js.map +0 -1
  175. package/tests_with_mocks/mocks.spec.d.ts +0 -1
  176. package/tests_with_mocks/mocks.spec.js +0 -182
  177. package/tests_with_mocks/mocks.spec.js.map +0 -1
@@ -1,25 +0,0 @@
1
- // Test the ability to invoke provider functions via RPC.
2
-
3
- let assert = require("assert");
4
- let pulumi = require("../../../../../");
5
-
6
- let args = {
7
- a: "hello",
8
- b: true,
9
- c: [0.99, 42, { z: "x" }],
10
- id: "some-id",
11
- urn: "some-urn",
12
- };
13
-
14
- let result2 = pulumi.runtime.invoke("invoke:index:echo", args);
15
-
16
- // When invoking asynchronously: Ensure the properties are *not* present on the result.
17
- for (const key in args) {
18
- assert.notDeepStrictEqual(result2[key], args[key]);
19
- }
20
-
21
- // When invoking asynchronously: Ensure the properties are available asynchronously through normal
22
- // Promise semantics.
23
- result2.then((v) => {
24
- assert.deepStrictEqual(v, args);
25
- });
@@ -1,22 +0,0 @@
1
- // Ensure that certain runtime settings are available.
2
-
3
- const assert = require("assert");
4
- const pulumi = require("../../../../../");
5
-
6
- assert.strictEqual(pulumi.getProject(), "runtimeSettingsProject");
7
- assert.strictEqual(pulumi.getStack(), "runtimeSettingsStack");
8
-
9
- const config = new pulumi.Config("myBag");
10
- assert.strictEqual(config.getNumber("A"), 42);
11
- assert.strictEqual(config.requireNumber("A"), 42);
12
- assert.strictEqual(config.get("bbbb"), "a string o' b's");
13
- assert.strictEqual(config.require("bbbb"), "a string o' b's");
14
- assert.strictEqual(config.get("missingC"), undefined);
15
-
16
- // ensure the older format works as well
17
- const configOld = new pulumi.Config("myBag:config");
18
- assert.strictEqual(configOld.getNumber("A"), 42);
19
- assert.strictEqual(configOld.requireNumber("A"), 42);
20
- assert.strictEqual(configOld.get("bbbb"), "a string o' b's");
21
- assert.strictEqual(configOld.require("bbbb"), "a string o' b's");
22
- assert.strictEqual(configOld.get("missingC"), undefined);
@@ -1 +0,0 @@
1
- throw new Error("💥 goes the dynamite");
@@ -1,25 +0,0 @@
1
- // This tests the basic creation of a single resource with an assets archive property.
2
-
3
- let pulumi = require("../../../../../");
4
-
5
- class MyResource extends pulumi.CustomResource {
6
- constructor(name) {
7
- let archive = new pulumi.asset.AssetArchive({
8
- asset: new pulumi.asset.StringAsset("foo"),
9
- archive: new pulumi.asset.AssetArchive({}),
10
- });
11
- let archiveP = Promise.resolve(
12
- new pulumi.asset.AssetArchive({
13
- foo: new pulumi.asset.StringAsset("bar"),
14
- }),
15
- );
16
- let assetP = Promise.resolve(new pulumi.asset.StringAsset("baz"));
17
- super("test:index:MyResource", name, {
18
- archive: archive,
19
- archiveP: archiveP,
20
- assetP: assetP,
21
- });
22
- }
23
- }
24
-
25
- new MyResource("testResource1");
@@ -1,3 +0,0 @@
1
- new Promise((resolve, reject) => {
2
- reject(new Error("💥 goes the dynamite (as promised)"));
3
- });
@@ -1,19 +0,0 @@
1
- // Test the ability to invoke provider functions via RPC.
2
-
3
- let assert = require("assert");
4
- let pulumi = require("../../../../../");
5
-
6
- let inputs = {
7
- a: "fizzz",
8
- b: false,
9
- c: [0.73, "x", { zed: 923 }],
10
- d: undefined,
11
- };
12
-
13
- let res = new pulumi.CustomResource("test:read:resource", "foo", inputs, { id: pulumi.secret("abc123") });
14
- res.id.apply((id) => assert.strictEqual(id, "abc123"));
15
- res.urn.apply((urn) => assert.strictEqual(urn, "test:read:resource::foo"));
16
- res.a.apply((a) => assert.strictEqual(a, inputs.a)); // same as input
17
- res.b.apply((b) => assert.strictEqual(b, true)); // output changed to true
18
- res.c.apply((c) => assert.deepStrictEqual(c, inputs.c)); // same as input
19
- res.d.apply((d) => assert.strictEqual(d, "and then, out of nowhere ...")); // from the inputs
@@ -1,100 +0,0 @@
1
- // This tests the runtime's ability to be loaded side-by-side with another copy of the same runtime library.
2
- // This is a hard and subtle problem because the runtime is configured with a bunch of state, like whether
3
- // we are doing a dry-run and, more importantly, RPC addresses to communicate with the engine. Normally we
4
- // go through the startup shim to configure all of these things, but when the second copy gets loaded we don't.
5
- // Subsequent copies of the runtime are able to configure themselves by using environment variables.
6
-
7
- let assert = require("assert");
8
- let path = require("path");
9
-
10
- const sdkPath = "../../../../../";
11
-
12
- // Load the first copy:
13
- let pulumi1 = require(sdkPath);
14
-
15
- // Now delete the entries in the require cache, and load up the second copy:
16
- const resolvedSdkPath = path.dirname(require.resolve(sdkPath));
17
- Object.keys(require.cache).forEach((path) => {
18
- if (path.startsWith(resolvedSdkPath)) {
19
- delete require.cache[path];
20
- }
21
- });
22
- let pulumi2 = require(sdkPath);
23
-
24
- // Make sure they are different:
25
- assert(pulumi1 !== pulumi2, "pulumi1 !== pulumi2");
26
- assert(pulumi1.runtime !== pulumi2.runtime, "pulumi1.runtime !== pulumi2.runtime");
27
-
28
- // Check that various settings are equal:
29
- assert.strictEqual(
30
- pulumi1.runtime.isDryRun(),
31
- pulumi2.runtime.isDryRun(),
32
- "pulumi1.runtime.isDryRun() !== pulumi2.runtime.isDryRun()",
33
- );
34
- assert.strictEqual(
35
- pulumi1.runtime.getProject(),
36
- pulumi2.runtime.getProject(),
37
- "pulumi1.runtime.getProject() !== pulumi2.runtime.getProject()",
38
- );
39
- assert.strictEqual(
40
- pulumi1.runtime.getStack(),
41
- pulumi2.runtime.getStack(),
42
- "pulumi1.runtime.getStack() !== pulumi2.runtime.getStack()",
43
- );
44
- assert.deepStrictEqual(
45
- pulumi1.runtime.allConfig(),
46
- pulumi2.runtime.allConfig(),
47
- "pulumi1.runtime.allConfig() !== pulumi2.runtime.getStack()",
48
- );
49
-
50
- // Check that the two runtimes agree on the stack resource
51
- let stack1 = pulumi1.runtime.getStackResource();
52
- let stack2 = pulumi2.runtime.getStackResource();
53
- assert.strictEqual(stack1, stack2, "pulumi1.runtime.getStackResource() !== pulumi2.runtime.getStackResource()");
54
-
55
- // allConfig should have caught this, but let's check individual config values too.
56
- let cfg1 = new pulumi1.Config("sxs");
57
- let cfg2 = new pulumi2.Config("sxs");
58
- assert.strictEqual(cfg1.get("message"), cfg2.get("message"));
59
-
60
- // Try and set a stack transformation
61
- function transform1(args) {
62
- args.props["runtime1"] = 1;
63
- return { props: args.props, opts: args.opts };
64
- }
65
- function transform2(args) {
66
- args.props["runtime2"] = 2;
67
- return { props: args.props, opts: args.opts };
68
- }
69
-
70
- pulumi1.runtime.registerStackTransformation(transform1);
71
- pulumi2.runtime.registerStackTransformation(transform2);
72
-
73
- // Now do some useful things that require RPC connections:
74
- pulumi1.log.info("logging via Pulumi1 works!");
75
- pulumi2.log.info("logging via Pulumi2 works too!");
76
- let res1 = new pulumi1.CustomResource("test:x:resource", "p1p1p1");
77
- res1.urn.apply((urn) => assert.strictEqual(urn, "test:x:resource::p1p1p1"));
78
- let res2 = new pulumi2.CustomResource("test:y:resource", "p2p2p2");
79
- res2.urn.apply((urn) => assert.strictEqual(urn, "test:y:resource::p2p2p2"));
80
-
81
- // Both resources should have the stack transforms applied
82
- res1.runtime1.apply((value) => assert.strictEqual(value, 1));
83
- res1.runtime2.apply((value) => assert.strictEqual(value, 2));
84
- res2.runtime1.apply((value) => assert.strictEqual(value, 1));
85
- res2.runtime2.apply((value) => assert.strictEqual(value, 2));
86
-
87
- pulumi1.runtime.registerResourcePackage("test1", {
88
- version: "0.0.1",
89
- });
90
- pulumi2.runtime.registerResourcePackage("test2", {
91
- version: "0.0.2",
92
- });
93
- let test1pulumi1 = pulumi1.runtime.getResourcePackage("test1");
94
- assert.strictEqual(test1pulumi1.version, "0.0.1");
95
- let test1pulumi2 = pulumi2.runtime.getResourcePackage("test1");
96
- assert.strictEqual(test1pulumi2.version, "0.0.1");
97
- let test2pulumi1 = pulumi1.runtime.getResourcePackage("test2");
98
- assert.strictEqual(test2pulumi1.version, "0.0.2");
99
- let test2pulumi2 = pulumi2.runtime.getResourcePackage("test2");
100
- assert.strictEqual(test2pulumi2.version, "0.0.2");
@@ -1,3 +0,0 @@
1
- const debuggable = require("../../../../../runtime/debuggable");
2
-
3
- const leakedPromise = debuggable.debuggablePromise(new Promise((resolve, reject) => {}));
@@ -1,89 +0,0 @@
1
- // This tests the creation of ten resources that contains "simple" input and output propeprties.
2
- // In particular, there aren't any fancy dataflow linked properties.
3
-
4
- let assert = require("assert");
5
-
6
- let pulumi = require("../../../../../");
7
-
8
- class Provider extends pulumi.ProviderResource {
9
- constructor(name, opts) {
10
- super("test", name, {}, opts);
11
- }
12
- }
13
-
14
- class Resource extends pulumi.CustomResource {
15
- constructor(name, createChildren, opts) {
16
- super("test:index:Resource", name, {}, opts);
17
-
18
- if (createChildren) {
19
- createChildren(name, this);
20
- }
21
- }
22
- }
23
-
24
- class Component extends pulumi.ComponentResource {
25
- constructor(name, createChildren, opts) {
26
- super("test:index:Component", name, {}, opts);
27
-
28
- createChildren(name, this);
29
- }
30
- }
31
-
32
- function createResources(name, createChildren, parent) {
33
- // Use all parent defaults
34
- new Resource(`${name}/r0`, createChildren, { parent: parent });
35
-
36
- // Override protect
37
- new Resource(`${name}/r1`, createChildren, { parent: parent, protect: false });
38
- new Resource(`${name}/r2`, createChildren, { parent: parent, protect: true });
39
-
40
- // Override provider
41
- const provider = new Provider(`${name}-p`, { parent });
42
- const r3 = new Resource(`${name}/r3`, createChildren, { parent, provider });
43
- assert.strictEqual(r3.getProvider("test:index:Resource"), provider);
44
- }
45
-
46
- function createComponents(name, createChildren, parent) {
47
- // Use all parent defaults
48
- new Component(`${name}/c0`, createChildren, { parent: parent });
49
-
50
- // Override protect.
51
- new Component(`${name}/c1`, createChildren, { parent: parent, protect: false });
52
- new Component(`${name}/c2`, createChildren, { parent: parent, protect: true });
53
-
54
- // Override providers.
55
- new Component(`${name}/c3`, createChildren, {
56
- parent: parent,
57
- providers: { test: new Provider(`${name}-p`, { parent: parent }) },
58
- });
59
- }
60
-
61
- // Create default (unparented) resources
62
- createResources("unparented");
63
-
64
- // Create singly-nested resources
65
- createComponents("single-nest", (name, parent) => {
66
- createResources(name, undefined, parent);
67
- });
68
-
69
- // Create doubly-nested resources
70
- createComponents("double-nest", (name, parent) => {
71
- createComponents(
72
- name,
73
- (name, parent) => {
74
- createResources(name, undefined, parent);
75
- },
76
- parent,
77
- );
78
- });
79
-
80
- // Create doubly-nested resources parented to other resources
81
- createComponents("double-nest-2", (name, parent) => {
82
- createResources(
83
- name,
84
- (name, parent) => {
85
- createResources(name, undefined, parent);
86
- },
87
- parent,
88
- );
89
- });
@@ -1,15 +0,0 @@
1
- let pulumi = require("../../../../../");
2
-
3
- pulumi.log.info("info message");
4
- pulumi.log.warn("warning message");
5
- pulumi.log.error("error message");
6
-
7
- class FakeResource extends pulumi.CustomResource {
8
- constructor(name) {
9
- super("test:index:FakeResource", name);
10
- }
11
- }
12
-
13
- const res = new FakeResource("test");
14
- pulumi.log.info("attached to resource", res);
15
- pulumi.log.info("with streamid", res, 42);
@@ -1,15 +0,0 @@
1
- function main() {
2
- return Promise.resolve({
3
- a: Promise.resolve({
4
- x: Promise.resolve(99),
5
- y: "z",
6
- }),
7
- b: 42,
8
- c: {
9
- d: "a",
10
- e: false,
11
- },
12
- });
13
- }
14
-
15
- module.exports = main();
@@ -1,39 +0,0 @@
1
- // Test the ability to invoke provider functions via RPC.
2
-
3
- let assert = require("assert");
4
- let pulumi = require("../../../../../");
5
-
6
- class MyResource extends pulumi.CustomResource {
7
- constructor(name, args, opts) {
8
- super(
9
- "test:index:MyResource",
10
- name,
11
- Object.assign(args, {
12
- outprop: undefined,
13
- }),
14
- opts,
15
- );
16
- }
17
- }
18
-
19
- let resA = new MyResource("resA", {});
20
- let resB = new MyResource("resB", {}, { dependsOn: [resA] });
21
- let resC = new MyResource("resC", {
22
- propA: resA.outprop,
23
- propB: resB.outprop,
24
- propC: "foo",
25
- });
26
- let resD = new MyResource("resD", {
27
- propA: pulumi.all([resA.outprop, resB.outprop]).apply(([a, b]) => `${a} ${b}`),
28
- propB: resC.outprop,
29
- propC: "bar",
30
- });
31
- let resE = new MyResource(
32
- "resE",
33
- {
34
- propA: resC.outprop,
35
- propB: pulumi.all([resA.outprop, resB.outprop]).apply(([a, b]) => `${a} ${b}`),
36
- propC: "baz",
37
- },
38
- { dependsOn: [resD] },
39
- );
@@ -1,15 +0,0 @@
1
- let assert = require("assert");
2
- let pulumi = require("../../../../../");
3
-
4
- class MyResource extends pulumi.CustomResource {
5
- constructor(name, args, opts) {
6
- super("test:index:MyResource", name, args, opts);
7
- }
8
- }
9
-
10
- // cust1
11
- // \
12
- // cust2
13
-
14
- let cust1 = new MyResource("cust1", {});
15
- let cust2 = new MyResource("cust2", { parentId: cust1.id }, { parent: cust1 });
@@ -1,16 +0,0 @@
1
- let assert = require("assert");
2
- let pulumi = require("../../../../../");
3
-
4
- class MyResource extends pulumi.CustomResource {
5
- constructor(name, args, opts) {
6
- super("test:index:MyResource", name, args, opts);
7
- }
8
- }
9
-
10
- // cust1
11
- // / \
12
- // cust2 cust3
13
-
14
- let cust1 = new MyResource("cust1");
15
- let cust2 = new MyResource("cust2", { parentId: cust1.id }, { parent: cust1 });
16
- let cust3 = new MyResource("cust3", { parentId: cust1.id }, { parent: cust1 });
@@ -1,28 +0,0 @@
1
- let assert = require("assert");
2
- let pulumi = require("../../../../../");
3
-
4
- class MyCustomResource extends pulumi.CustomResource {
5
- constructor(name, args, opts) {
6
- super("test:index:MyCustomResource", name, args, opts);
7
- }
8
- }
9
-
10
- class MyComponentResource extends pulumi.ComponentResource {
11
- constructor(name, args, opts) {
12
- super("test:index:MyComponentResource", name, args, opts);
13
- }
14
- }
15
-
16
- // comp1
17
- // / \
18
- // cust1 cust2
19
-
20
- let comp1 = new MyComponentResource("comp1");
21
-
22
- // this represents a nonsensical program where a custom resource references the urn
23
- // of a component. There is no good need for the urn to be used there. To represent
24
- // a component dependency, 'dependsOn' should be used instead.
25
- //
26
- // This test just documents our behavior here (which is that we deadlock).
27
- let cust1 = new MyCustomResource("cust1", { parentId: comp1.urn }, { parent: comp1 });
28
- let cust2 = new MyCustomResource("cust2", { parentId: comp1.urn }, { parent: comp1 });
@@ -1,22 +0,0 @@
1
- let assert = require("assert");
2
- let pulumi = require("../../../../../");
3
-
4
- class MyCustomResource extends pulumi.CustomResource {
5
- constructor(name, args, opts) {
6
- super("test:index:MyCustomResource", name, args, opts);
7
- }
8
- }
9
-
10
- class MyComponentResource extends pulumi.ComponentResource {
11
- constructor(name, args, opts) {
12
- super("test:index:MyComponentResource", name, args, opts);
13
- }
14
- }
15
-
16
- // comp1
17
- // / \
18
- // cust1 cust2
19
-
20
- let comp1 = new MyComponentResource("comp1");
21
- let cust1 = new MyCustomResource("cust1", {}, { parent: comp1 });
22
- let cust2 = new MyCustomResource("cust2", {}, { parent: comp1 });
@@ -1,24 +0,0 @@
1
- let assert = require("assert");
2
- let pulumi = require("../../../../../");
3
-
4
- class MyCustomResource extends pulumi.CustomResource {
5
- constructor(name, args, opts) {
6
- super("test:index:MyCustomResource", name, args, opts);
7
- }
8
- }
9
-
10
- class MyComponentResource extends pulumi.ComponentResource {
11
- constructor(name, args, opts) {
12
- super("test:index:MyComponentResource", name, args, opts);
13
- }
14
- }
15
-
16
- // comp1
17
- // / \
18
- // cust1 cust2
19
-
20
- let comp1 = new MyComponentResource("comp1");
21
- let cust1 = new MyCustomResource("cust1", {}, { parent: comp1 });
22
- let cust2 = new MyCustomResource("cust2", {}, { parent: comp1 });
23
-
24
- let res1 = new MyCustomResource("res1", {}, { dependsOn: comp1 });
@@ -1,29 +0,0 @@
1
- let assert = require("assert");
2
- let pulumi = require("../../../../../");
3
-
4
- class MyCustomResource extends pulumi.CustomResource {
5
- constructor(name, args, opts) {
6
- super("test:index:MyCustomResource", name, args, opts);
7
- }
8
- }
9
-
10
- class MyComponentResource extends pulumi.ComponentResource {
11
- constructor(name, args, opts) {
12
- super("test:index:MyComponentResource", name, args, opts);
13
- }
14
- }
15
-
16
- // comp1
17
- // / \
18
- // cust1 comp2
19
- // / \
20
- // cust2 cust3
21
-
22
- let comp1 = new MyComponentResource("comp1");
23
- let cust1 = new MyCustomResource("cust1", {}, { parent: comp1 });
24
-
25
- let comp2 = new MyComponentResource("comp2", {}, { parent: comp1 });
26
- let cust2 = new MyCustomResource("cust2", {}, { parent: comp2 });
27
- let cust3 = new MyCustomResource("cust3", {}, { parent: comp2 });
28
-
29
- let res1 = new MyCustomResource("res1", {}, { dependsOn: comp1 });
@@ -1,36 +0,0 @@
1
- let assert = require("assert");
2
- let pulumi = require("../../../../../");
3
-
4
- class MyCustomResource extends pulumi.CustomResource {
5
- constructor(name, args, opts) {
6
- super("test:index:MyCustomResource", name, args, opts);
7
- }
8
- }
9
-
10
- class MyComponentResource extends pulumi.ComponentResource {
11
- constructor(name, args, opts) {
12
- super("test:index:MyComponentResource", name, args, opts);
13
- }
14
- }
15
-
16
- // comp1
17
- // / \
18
- // cust1 comp2
19
- // / \
20
- // cust2 cust3
21
- // /
22
- // cust4
23
-
24
- let comp1 = new MyComponentResource("comp1");
25
- let cust1 = new MyCustomResource("cust1", {}, { parent: comp1 });
26
-
27
- let comp2 = new MyComponentResource("comp2", {}, { parent: comp1 });
28
- let cust2 = new MyCustomResource("cust2", {}, { parent: comp2 });
29
- let cust3 = new MyCustomResource("cust3", {}, { parent: comp2 });
30
-
31
- let cust4 = new MyCustomResource("cust4", { parentId: cust2.id }, { parent: cust2 });
32
-
33
- let res1 = new MyCustomResource("res1", {}, { dependsOn: comp1 });
34
- let res2 = new MyCustomResource("res2", {}, { dependsOn: comp2 });
35
- let res3 = new MyCustomResource("res3", {}, { dependsOn: cust2 });
36
- let res4 = new MyCustomResource("res4", {}, { dependsOn: cust4 });
@@ -1,28 +0,0 @@
1
- let assert = require("assert");
2
- let pulumi = require("../../../../../");
3
-
4
- class MyCustomResource extends pulumi.CustomResource {
5
- constructor(name, args, opts) {
6
- super("test:index:MyCustomResource", name, args, opts);
7
- }
8
- }
9
-
10
- class MyComponentResource extends pulumi.ComponentResource {
11
- constructor(name, args, opts) {
12
- super("test:index:MyComponentResource", name, args, opts);
13
- }
14
- }
15
-
16
- // comp1
17
- // \
18
- // cust1
19
- // \
20
- // cust2
21
-
22
- let comp1 = new MyComponentResource("comp1");
23
- let cust1 = new MyCustomResource("cust1", {}, { parent: comp1 });
24
- let cust2 = new MyCustomResource("cust2", { parentId: cust1.id }, { parent: cust1 });
25
-
26
- let res1 = new MyCustomResource("res1", {}, { dependsOn: comp1 });
27
- let res2 = new MyCustomResource("res2", {}, { dependsOn: cust1 });
28
- let res3 = new MyCustomResource("res3", {}, { dependsOn: cust2 });
@@ -1,23 +0,0 @@
1
- let assert = require("assert");
2
- let pulumi = require("../../../../../");
3
-
4
- class MyCustomResource extends pulumi.CustomResource {
5
- constructor(name, args, opts) {
6
- super("test:index:MyCustomResource", name, args, opts);
7
- }
8
- }
9
-
10
- class MyComponentResource extends pulumi.ComponentResource {
11
- constructor(name, args, opts) {
12
- super("test:index:MyComponentResource", name, args, opts);
13
- }
14
- }
15
-
16
- // cust1
17
- // \
18
- // cust2
19
-
20
- let cust1 = new MyCustomResource("cust1", {}, {});
21
- let cust2 = new MyCustomResource("cust2", { parentId: cust1.id }, { parent: cust1 });
22
-
23
- let res1 = new MyCustomResource("res1", {}, { dependsOn: cust1 });
@@ -1,11 +0,0 @@
1
- // This tests the basic creation of a single propertyless resource.
2
-
3
- let pulumi = require("../../../../../");
4
-
5
- class MyResource extends pulumi.CustomResource {
6
- constructor(name, opts) {
7
- super("test:index:MyResource", name, {}, opts);
8
- }
9
- }
10
-
11
- new MyResource("testResource1", { import: "testID" });
@@ -1,3 +0,0 @@
1
- let errors = require("../../../../../errors");
2
-
3
- throw new errors.RunError("💥 goes the dynamite");