@pulumi/azure 6.6.0-alpha.1729058638 → 6.6.0-alpha.1729620477

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 (53) hide show
  1. package/appconfiguration/configurationStore.d.ts +6 -6
  2. package/appinsights/insights.d.ts +3 -3
  3. package/compute/bastionHost.d.ts +18 -18
  4. package/compute/getBastionHost.d.ts +3 -0
  5. package/compute/getBastionHost.js.map +1 -1
  6. package/compute/linuxVirtualMachine.d.ts +3 -3
  7. package/containerapp/app.d.ts +12 -0
  8. package/containerapp/app.js +2 -0
  9. package/containerapp/app.js.map +1 -1
  10. package/containerapp/customDomain.d.ts +5 -2
  11. package/containerapp/customDomain.js +5 -2
  12. package/containerapp/customDomain.js.map +1 -1
  13. package/containerapp/getApp.d.ts +4 -0
  14. package/containerapp/getApp.js.map +1 -1
  15. package/containerservice/kubernetesCluster.d.ts +3 -3
  16. package/devcenter/attachedNetwork.d.ts +127 -0
  17. package/devcenter/attachedNetwork.js +114 -0
  18. package/devcenter/attachedNetwork.js.map +1 -0
  19. package/devcenter/index.d.ts +3 -0
  20. package/devcenter/index.js +6 -1
  21. package/devcenter/index.js.map +1 -1
  22. package/fluidrelay/server.d.ts +3 -0
  23. package/fluidrelay/server.js +2 -0
  24. package/fluidrelay/server.js.map +1 -1
  25. package/index.d.ts +2 -1
  26. package/index.js +4 -2
  27. package/index.js.map +1 -1
  28. package/monitoring/alertPrometheusRuleGroup.d.ts +3 -3
  29. package/network/virtualHub.d.ts +3 -3
  30. package/oracle/cloudVmCluster.d.ts +417 -0
  31. package/oracle/cloudVmCluster.js +207 -0
  32. package/oracle/cloudVmCluster.js.map +1 -0
  33. package/oracle/exadataInfrastructure.d.ts +209 -0
  34. package/oracle/exadataInfrastructure.js +120 -0
  35. package/oracle/exadataInfrastructure.js.map +1 -0
  36. package/oracle/getCloudVmCluster.d.ts +272 -0
  37. package/oracle/getCloudVmCluster.js +56 -0
  38. package/oracle/getCloudVmCluster.js.map +1 -0
  39. package/oracle/getDbServers.d.ts +77 -0
  40. package/oracle/getDbServers.js +56 -0
  41. package/oracle/getDbServers.js.map +1 -0
  42. package/oracle/getExadataInfrastructure.d.ts +207 -0
  43. package/oracle/getExadataInfrastructure.js +56 -0
  44. package/oracle/getExadataInfrastructure.js.map +1 -0
  45. package/oracle/index.d.ts +15 -0
  46. package/oracle/index.js +36 -0
  47. package/oracle/index.js.map +1 -0
  48. package/package.json +2 -2
  49. package/stack/hciLogicalNetwork.d.ts +0 -36
  50. package/stack/hciLogicalNetwork.js +0 -36
  51. package/stack/hciLogicalNetwork.js.map +1 -1
  52. package/types/input.d.ts +58 -6
  53. package/types/output.d.ts +237 -7
@@ -0,0 +1,417 @@
1
+ import * as pulumi from "@pulumi/pulumi";
2
+ import * as inputs from "../types/input";
3
+ import * as outputs from "../types/output";
4
+ /**
5
+ * Manages a Cloud VM Cluster.
6
+ *
7
+ * ## Example Usage
8
+ *
9
+ * ```typescript
10
+ * import * as pulumi from "@pulumi/pulumi";
11
+ * import * as azure from "@pulumi/azure";
12
+ * import * as std from "@pulumi/std";
13
+ *
14
+ * const exampleResourceGroup = new azure.core.ResourceGroup("example", {
15
+ * name: "example-resources",
16
+ * location: "West Europe",
17
+ * });
18
+ * const exampleExadataInfrastructure = new azure.oracle.ExadataInfrastructure("example", {
19
+ * name: "example-exadata-infrastructure",
20
+ * displayName: "example-exadata-infrastructure",
21
+ * location: exampleResourceGroup.location,
22
+ * resourceGroupName: exampleResourceGroup.name,
23
+ * shape: "Exadata.X9M",
24
+ * storageCount: 3,
25
+ * computeCount: 2,
26
+ * zones: ["3"],
27
+ * });
28
+ * const exampleVirtualNetwork = new azure.network.VirtualNetwork("example", {
29
+ * name: "example-virtual-network",
30
+ * addressSpaces: ["10.0.0.0/16"],
31
+ * location: exampleResourceGroup.location,
32
+ * resourceGroupName: exampleResourceGroup.name,
33
+ * });
34
+ * const exampleSubnet = new azure.network.Subnet("example", {
35
+ * name: "example-subnet",
36
+ * resourceGroupName: exampleResourceGroup.name,
37
+ * virtualNetworkName: exampleVirtualNetwork.name,
38
+ * addressPrefixes: ["10.0.1.0/24"],
39
+ * delegations: [{
40
+ * name: "delegation",
41
+ * serviceDelegation: {
42
+ * actions: [
43
+ * "Microsoft.Network/networkinterfaces/*",
44
+ * "Microsoft.Network/virtualNetworks/subnets/join/action",
45
+ * ],
46
+ * name: "Oracle.Database/networkAttachments",
47
+ * },
48
+ * }],
49
+ * });
50
+ * const example = azure.oracle.getDbServersOutput({
51
+ * resourceGroupName: exampleResourceGroup.name,
52
+ * cloudExadataInfrastructureName: exampleExadataInfrastructure.name,
53
+ * });
54
+ * const exampleCloudVmCluster = new azure.oracle.CloudVmCluster("example", {
55
+ * name: "example-cloud-vm-cluster",
56
+ * resourceGroupName: exampleResourceGroup.name,
57
+ * location: exampleResourceGroup.location,
58
+ * giVersion: "23.0.0.0",
59
+ * virtualNetworkId: exampleVirtualNetwork.id,
60
+ * licenseModel: "BringYourOwnLicense",
61
+ * dbServers: example.apply(example => .map(obj => (obj.ocid))),
62
+ * sshPublicKeys: [std.file({
63
+ * input: "~/.ssh/id_rsa.pub",
64
+ * }).then(invoke => invoke.result)],
65
+ * displayName: "example-cloud-vm-cluster",
66
+ * cloudExadataInfrastructureId: exampleExadataInfrastructure.id,
67
+ * cpuCoreCount: 2,
68
+ * hostname: "hostname",
69
+ * subnetId: exampleSubnet.id,
70
+ * });
71
+ * ```
72
+ *
73
+ * ## Import
74
+ *
75
+ * Cloud VM Clusters can be imported using the `resource id`, e.g.
76
+ *
77
+ * ```sh
78
+ * $ pulumi import azure:oracle/cloudVmCluster:CloudVmCluster example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/resourceGroup/providers/Oracle.Database/cloudVmClusters/cloudVmClusters1
79
+ * ```
80
+ */
81
+ export declare class CloudVmCluster extends pulumi.CustomResource {
82
+ /**
83
+ * Get an existing CloudVmCluster resource's state with the given name, ID, and optional extra
84
+ * properties used to qualify the lookup.
85
+ *
86
+ * @param name The _unique_ name of the resulting resource.
87
+ * @param id The _unique_ provider ID of the resource to lookup.
88
+ * @param state Any extra arguments used during the lookup.
89
+ * @param opts Optional settings to control the behavior of the CustomResource.
90
+ */
91
+ static get(name: string, id: pulumi.Input<pulumi.ID>, state?: CloudVmClusterState, opts?: pulumi.CustomResourceOptions): CloudVmCluster;
92
+ /**
93
+ * Returns true if the given object is an instance of CloudVmCluster. This is designed to work even
94
+ * when multiple copies of the Pulumi SDK have been loaded into the same process.
95
+ */
96
+ static isInstance(obj: any): obj is CloudVmCluster;
97
+ /**
98
+ * The backup subnet CIDR of the Virtual Network associated with the Cloud VM Cluster.
99
+ */
100
+ readonly backupSubnetCidr: pulumi.Output<string | undefined>;
101
+ /**
102
+ * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the Cloud Exadata infrastructure.
103
+ */
104
+ readonly cloudExadataInfrastructureId: pulumi.Output<string>;
105
+ /**
106
+ * The cluster name for Cloud VM Cluster.
107
+ */
108
+ readonly clusterName: pulumi.Output<string>;
109
+ /**
110
+ * The number of CPU cores enabled on the Cloud VM Cluster.
111
+ */
112
+ readonly cpuCoreCount: pulumi.Output<number>;
113
+ /**
114
+ * A `dataCollectionOptions` block as defined below.
115
+ */
116
+ readonly dataCollectionOptions: pulumi.Output<outputs.oracle.CloudVmClusterDataCollectionOptions>;
117
+ /**
118
+ * The percentage assigned to DATA storage (user data and database files). The remaining percentage is assigned to RECO storage (database redo logs, archive logs, and recovery manager backups). Accepted values are `35`, `40`, `60` and `80`.
119
+ */
120
+ readonly dataStoragePercentage: pulumi.Output<number>;
121
+ /**
122
+ * The data disk group size to be allocated in TBs.
123
+ */
124
+ readonly dataStorageSizeInTbs: pulumi.Output<number>;
125
+ /**
126
+ * The local node storage to be allocated in GBs.
127
+ */
128
+ readonly dbNodeStorageSizeInGbs: pulumi.Output<number>;
129
+ /**
130
+ * The list of DB servers.
131
+ */
132
+ readonly dbServers: pulumi.Output<string[]>;
133
+ /**
134
+ * The user-friendly name for the Cloud VM Cluster. The name does not need to be unique..
135
+ */
136
+ readonly displayName: pulumi.Output<string>;
137
+ /**
138
+ * A valid Oracle Grid Infrastructure (GI) software version.
139
+ */
140
+ readonly giVersion: pulumi.Output<string>;
141
+ /**
142
+ * The hostname for the Cloud VM Cluster without suffix.
143
+ */
144
+ readonly hostname: pulumi.Output<string>;
145
+ /**
146
+ * The hostname for the Cloud VM Cluster with suffix.
147
+ */
148
+ readonly hostnameActual: pulumi.Output<string>;
149
+ /**
150
+ * The Oracle license model that applies to the Cloud VM Cluster, either `BringYourOwnLicense` or `LicenseIncluded`.
151
+ */
152
+ readonly licenseModel: pulumi.Output<string>;
153
+ /**
154
+ * If true, database backup on local Exadata storage is configured for the Cloud VM Cluster. If `false`, database backup on local Exadata storage is not available in the Cloud VM Cluster.
155
+ */
156
+ readonly localBackupEnabled: pulumi.Output<boolean>;
157
+ /**
158
+ * The Azure Region where the Cloud VM Cluster should exist.
159
+ */
160
+ readonly location: pulumi.Output<string>;
161
+ /**
162
+ * The memory to be allocated in GBs.
163
+ */
164
+ readonly memorySizeInGbs: pulumi.Output<number>;
165
+ /**
166
+ * The name which should be used for this Cloud VM Cluster.
167
+ */
168
+ readonly name: pulumi.Output<string>;
169
+ /**
170
+ * The name of the Resource Group where the Cloud VM Cluster should exist.
171
+ */
172
+ readonly resourceGroupName: pulumi.Output<string>;
173
+ /**
174
+ * If true, the sparse disk group is configured for the Cloud VM Cluster. If `false`, the sparse disk group is not created.
175
+ */
176
+ readonly sparseDiskgroupEnabled: pulumi.Output<boolean>;
177
+ /**
178
+ * The public key portion of one or more key pairs used for SSH access to the Cloud VM Cluster.
179
+ */
180
+ readonly sshPublicKeys: pulumi.Output<string[]>;
181
+ /**
182
+ * The ID of the subnet associated with the Cloud VM Cluster.
183
+ */
184
+ readonly subnetId: pulumi.Output<string>;
185
+ /**
186
+ * A mapping of tags which should be assigned to the Cloud VM Cluster.
187
+ */
188
+ readonly tags: pulumi.Output<{
189
+ [key: string]: string;
190
+ } | undefined>;
191
+ /**
192
+ * The time zone of the Cloud VM Cluster. For details, see [Exadata Infrastructure Time Zones](https://docs.cloud.oracle.com/iaas/Content/Database/References/timezones.htm).
193
+ */
194
+ readonly timeZone: pulumi.Output<string>;
195
+ /**
196
+ * The ID of the Virtual Network associated with the Cloud VM Cluster.
197
+ */
198
+ readonly virtualNetworkId: pulumi.Output<string>;
199
+ /**
200
+ * Create a CloudVmCluster resource with the given unique name, arguments, and options.
201
+ *
202
+ * @param name The _unique_ name of the resource.
203
+ * @param args The arguments to use to populate this resource's properties.
204
+ * @param opts A bag of options that control this resource's behavior.
205
+ */
206
+ constructor(name: string, args: CloudVmClusterArgs, opts?: pulumi.CustomResourceOptions);
207
+ }
208
+ /**
209
+ * Input properties used for looking up and filtering CloudVmCluster resources.
210
+ */
211
+ export interface CloudVmClusterState {
212
+ /**
213
+ * The backup subnet CIDR of the Virtual Network associated with the Cloud VM Cluster.
214
+ */
215
+ backupSubnetCidr?: pulumi.Input<string>;
216
+ /**
217
+ * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the Cloud Exadata infrastructure.
218
+ */
219
+ cloudExadataInfrastructureId?: pulumi.Input<string>;
220
+ /**
221
+ * The cluster name for Cloud VM Cluster.
222
+ */
223
+ clusterName?: pulumi.Input<string>;
224
+ /**
225
+ * The number of CPU cores enabled on the Cloud VM Cluster.
226
+ */
227
+ cpuCoreCount?: pulumi.Input<number>;
228
+ /**
229
+ * A `dataCollectionOptions` block as defined below.
230
+ */
231
+ dataCollectionOptions?: pulumi.Input<inputs.oracle.CloudVmClusterDataCollectionOptions>;
232
+ /**
233
+ * The percentage assigned to DATA storage (user data and database files). The remaining percentage is assigned to RECO storage (database redo logs, archive logs, and recovery manager backups). Accepted values are `35`, `40`, `60` and `80`.
234
+ */
235
+ dataStoragePercentage?: pulumi.Input<number>;
236
+ /**
237
+ * The data disk group size to be allocated in TBs.
238
+ */
239
+ dataStorageSizeInTbs?: pulumi.Input<number>;
240
+ /**
241
+ * The local node storage to be allocated in GBs.
242
+ */
243
+ dbNodeStorageSizeInGbs?: pulumi.Input<number>;
244
+ /**
245
+ * The list of DB servers.
246
+ */
247
+ dbServers?: pulumi.Input<pulumi.Input<string>[]>;
248
+ /**
249
+ * The user-friendly name for the Cloud VM Cluster. The name does not need to be unique..
250
+ */
251
+ displayName?: pulumi.Input<string>;
252
+ /**
253
+ * A valid Oracle Grid Infrastructure (GI) software version.
254
+ */
255
+ giVersion?: pulumi.Input<string>;
256
+ /**
257
+ * The hostname for the Cloud VM Cluster without suffix.
258
+ */
259
+ hostname?: pulumi.Input<string>;
260
+ /**
261
+ * The hostname for the Cloud VM Cluster with suffix.
262
+ */
263
+ hostnameActual?: pulumi.Input<string>;
264
+ /**
265
+ * The Oracle license model that applies to the Cloud VM Cluster, either `BringYourOwnLicense` or `LicenseIncluded`.
266
+ */
267
+ licenseModel?: pulumi.Input<string>;
268
+ /**
269
+ * If true, database backup on local Exadata storage is configured for the Cloud VM Cluster. If `false`, database backup on local Exadata storage is not available in the Cloud VM Cluster.
270
+ */
271
+ localBackupEnabled?: pulumi.Input<boolean>;
272
+ /**
273
+ * The Azure Region where the Cloud VM Cluster should exist.
274
+ */
275
+ location?: pulumi.Input<string>;
276
+ /**
277
+ * The memory to be allocated in GBs.
278
+ */
279
+ memorySizeInGbs?: pulumi.Input<number>;
280
+ /**
281
+ * The name which should be used for this Cloud VM Cluster.
282
+ */
283
+ name?: pulumi.Input<string>;
284
+ /**
285
+ * The name of the Resource Group where the Cloud VM Cluster should exist.
286
+ */
287
+ resourceGroupName?: pulumi.Input<string>;
288
+ /**
289
+ * If true, the sparse disk group is configured for the Cloud VM Cluster. If `false`, the sparse disk group is not created.
290
+ */
291
+ sparseDiskgroupEnabled?: pulumi.Input<boolean>;
292
+ /**
293
+ * The public key portion of one or more key pairs used for SSH access to the Cloud VM Cluster.
294
+ */
295
+ sshPublicKeys?: pulumi.Input<pulumi.Input<string>[]>;
296
+ /**
297
+ * The ID of the subnet associated with the Cloud VM Cluster.
298
+ */
299
+ subnetId?: pulumi.Input<string>;
300
+ /**
301
+ * A mapping of tags which should be assigned to the Cloud VM Cluster.
302
+ */
303
+ tags?: pulumi.Input<{
304
+ [key: string]: pulumi.Input<string>;
305
+ }>;
306
+ /**
307
+ * The time zone of the Cloud VM Cluster. For details, see [Exadata Infrastructure Time Zones](https://docs.cloud.oracle.com/iaas/Content/Database/References/timezones.htm).
308
+ */
309
+ timeZone?: pulumi.Input<string>;
310
+ /**
311
+ * The ID of the Virtual Network associated with the Cloud VM Cluster.
312
+ */
313
+ virtualNetworkId?: pulumi.Input<string>;
314
+ }
315
+ /**
316
+ * The set of arguments for constructing a CloudVmCluster resource.
317
+ */
318
+ export interface CloudVmClusterArgs {
319
+ /**
320
+ * The backup subnet CIDR of the Virtual Network associated with the Cloud VM Cluster.
321
+ */
322
+ backupSubnetCidr?: pulumi.Input<string>;
323
+ /**
324
+ * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the Cloud Exadata infrastructure.
325
+ */
326
+ cloudExadataInfrastructureId: pulumi.Input<string>;
327
+ /**
328
+ * The cluster name for Cloud VM Cluster.
329
+ */
330
+ clusterName?: pulumi.Input<string>;
331
+ /**
332
+ * The number of CPU cores enabled on the Cloud VM Cluster.
333
+ */
334
+ cpuCoreCount: pulumi.Input<number>;
335
+ /**
336
+ * A `dataCollectionOptions` block as defined below.
337
+ */
338
+ dataCollectionOptions?: pulumi.Input<inputs.oracle.CloudVmClusterDataCollectionOptions>;
339
+ /**
340
+ * The percentage assigned to DATA storage (user data and database files). The remaining percentage is assigned to RECO storage (database redo logs, archive logs, and recovery manager backups). Accepted values are `35`, `40`, `60` and `80`.
341
+ */
342
+ dataStoragePercentage?: pulumi.Input<number>;
343
+ /**
344
+ * The data disk group size to be allocated in TBs.
345
+ */
346
+ dataStorageSizeInTbs?: pulumi.Input<number>;
347
+ /**
348
+ * The local node storage to be allocated in GBs.
349
+ */
350
+ dbNodeStorageSizeInGbs?: pulumi.Input<number>;
351
+ /**
352
+ * The list of DB servers.
353
+ */
354
+ dbServers: pulumi.Input<pulumi.Input<string>[]>;
355
+ /**
356
+ * The user-friendly name for the Cloud VM Cluster. The name does not need to be unique..
357
+ */
358
+ displayName: pulumi.Input<string>;
359
+ /**
360
+ * A valid Oracle Grid Infrastructure (GI) software version.
361
+ */
362
+ giVersion: pulumi.Input<string>;
363
+ /**
364
+ * The hostname for the Cloud VM Cluster without suffix.
365
+ */
366
+ hostname: pulumi.Input<string>;
367
+ /**
368
+ * The Oracle license model that applies to the Cloud VM Cluster, either `BringYourOwnLicense` or `LicenseIncluded`.
369
+ */
370
+ licenseModel: pulumi.Input<string>;
371
+ /**
372
+ * If true, database backup on local Exadata storage is configured for the Cloud VM Cluster. If `false`, database backup on local Exadata storage is not available in the Cloud VM Cluster.
373
+ */
374
+ localBackupEnabled?: pulumi.Input<boolean>;
375
+ /**
376
+ * The Azure Region where the Cloud VM Cluster should exist.
377
+ */
378
+ location?: pulumi.Input<string>;
379
+ /**
380
+ * The memory to be allocated in GBs.
381
+ */
382
+ memorySizeInGbs?: pulumi.Input<number>;
383
+ /**
384
+ * The name which should be used for this Cloud VM Cluster.
385
+ */
386
+ name?: pulumi.Input<string>;
387
+ /**
388
+ * The name of the Resource Group where the Cloud VM Cluster should exist.
389
+ */
390
+ resourceGroupName: pulumi.Input<string>;
391
+ /**
392
+ * If true, the sparse disk group is configured for the Cloud VM Cluster. If `false`, the sparse disk group is not created.
393
+ */
394
+ sparseDiskgroupEnabled?: pulumi.Input<boolean>;
395
+ /**
396
+ * The public key portion of one or more key pairs used for SSH access to the Cloud VM Cluster.
397
+ */
398
+ sshPublicKeys: pulumi.Input<pulumi.Input<string>[]>;
399
+ /**
400
+ * The ID of the subnet associated with the Cloud VM Cluster.
401
+ */
402
+ subnetId: pulumi.Input<string>;
403
+ /**
404
+ * A mapping of tags which should be assigned to the Cloud VM Cluster.
405
+ */
406
+ tags?: pulumi.Input<{
407
+ [key: string]: pulumi.Input<string>;
408
+ }>;
409
+ /**
410
+ * The time zone of the Cloud VM Cluster. For details, see [Exadata Infrastructure Time Zones](https://docs.cloud.oracle.com/iaas/Content/Database/References/timezones.htm).
411
+ */
412
+ timeZone?: pulumi.Input<string>;
413
+ /**
414
+ * The ID of the Virtual Network associated with the Cloud VM Cluster.
415
+ */
416
+ virtualNetworkId: pulumi.Input<string>;
417
+ }
@@ -0,0 +1,207 @@
1
+ "use strict";
2
+ // *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
3
+ // *** Do not edit by hand unless you're certain you know what you are doing! ***
4
+ Object.defineProperty(exports, "__esModule", { value: true });
5
+ exports.CloudVmCluster = void 0;
6
+ const pulumi = require("@pulumi/pulumi");
7
+ const utilities = require("../utilities");
8
+ /**
9
+ * Manages a Cloud VM Cluster.
10
+ *
11
+ * ## Example Usage
12
+ *
13
+ * ```typescript
14
+ * import * as pulumi from "@pulumi/pulumi";
15
+ * import * as azure from "@pulumi/azure";
16
+ * import * as std from "@pulumi/std";
17
+ *
18
+ * const exampleResourceGroup = new azure.core.ResourceGroup("example", {
19
+ * name: "example-resources",
20
+ * location: "West Europe",
21
+ * });
22
+ * const exampleExadataInfrastructure = new azure.oracle.ExadataInfrastructure("example", {
23
+ * name: "example-exadata-infrastructure",
24
+ * displayName: "example-exadata-infrastructure",
25
+ * location: exampleResourceGroup.location,
26
+ * resourceGroupName: exampleResourceGroup.name,
27
+ * shape: "Exadata.X9M",
28
+ * storageCount: 3,
29
+ * computeCount: 2,
30
+ * zones: ["3"],
31
+ * });
32
+ * const exampleVirtualNetwork = new azure.network.VirtualNetwork("example", {
33
+ * name: "example-virtual-network",
34
+ * addressSpaces: ["10.0.0.0/16"],
35
+ * location: exampleResourceGroup.location,
36
+ * resourceGroupName: exampleResourceGroup.name,
37
+ * });
38
+ * const exampleSubnet = new azure.network.Subnet("example", {
39
+ * name: "example-subnet",
40
+ * resourceGroupName: exampleResourceGroup.name,
41
+ * virtualNetworkName: exampleVirtualNetwork.name,
42
+ * addressPrefixes: ["10.0.1.0/24"],
43
+ * delegations: [{
44
+ * name: "delegation",
45
+ * serviceDelegation: {
46
+ * actions: [
47
+ * "Microsoft.Network/networkinterfaces/*",
48
+ * "Microsoft.Network/virtualNetworks/subnets/join/action",
49
+ * ],
50
+ * name: "Oracle.Database/networkAttachments",
51
+ * },
52
+ * }],
53
+ * });
54
+ * const example = azure.oracle.getDbServersOutput({
55
+ * resourceGroupName: exampleResourceGroup.name,
56
+ * cloudExadataInfrastructureName: exampleExadataInfrastructure.name,
57
+ * });
58
+ * const exampleCloudVmCluster = new azure.oracle.CloudVmCluster("example", {
59
+ * name: "example-cloud-vm-cluster",
60
+ * resourceGroupName: exampleResourceGroup.name,
61
+ * location: exampleResourceGroup.location,
62
+ * giVersion: "23.0.0.0",
63
+ * virtualNetworkId: exampleVirtualNetwork.id,
64
+ * licenseModel: "BringYourOwnLicense",
65
+ * dbServers: example.apply(example => .map(obj => (obj.ocid))),
66
+ * sshPublicKeys: [std.file({
67
+ * input: "~/.ssh/id_rsa.pub",
68
+ * }).then(invoke => invoke.result)],
69
+ * displayName: "example-cloud-vm-cluster",
70
+ * cloudExadataInfrastructureId: exampleExadataInfrastructure.id,
71
+ * cpuCoreCount: 2,
72
+ * hostname: "hostname",
73
+ * subnetId: exampleSubnet.id,
74
+ * });
75
+ * ```
76
+ *
77
+ * ## Import
78
+ *
79
+ * Cloud VM Clusters can be imported using the `resource id`, e.g.
80
+ *
81
+ * ```sh
82
+ * $ pulumi import azure:oracle/cloudVmCluster:CloudVmCluster example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/resourceGroup/providers/Oracle.Database/cloudVmClusters/cloudVmClusters1
83
+ * ```
84
+ */
85
+ class CloudVmCluster extends pulumi.CustomResource {
86
+ constructor(name, argsOrState, opts) {
87
+ let resourceInputs = {};
88
+ opts = opts || {};
89
+ if (opts.id) {
90
+ const state = argsOrState;
91
+ resourceInputs["backupSubnetCidr"] = state ? state.backupSubnetCidr : undefined;
92
+ resourceInputs["cloudExadataInfrastructureId"] = state ? state.cloudExadataInfrastructureId : undefined;
93
+ resourceInputs["clusterName"] = state ? state.clusterName : undefined;
94
+ resourceInputs["cpuCoreCount"] = state ? state.cpuCoreCount : undefined;
95
+ resourceInputs["dataCollectionOptions"] = state ? state.dataCollectionOptions : undefined;
96
+ resourceInputs["dataStoragePercentage"] = state ? state.dataStoragePercentage : undefined;
97
+ resourceInputs["dataStorageSizeInTbs"] = state ? state.dataStorageSizeInTbs : undefined;
98
+ resourceInputs["dbNodeStorageSizeInGbs"] = state ? state.dbNodeStorageSizeInGbs : undefined;
99
+ resourceInputs["dbServers"] = state ? state.dbServers : undefined;
100
+ resourceInputs["displayName"] = state ? state.displayName : undefined;
101
+ resourceInputs["giVersion"] = state ? state.giVersion : undefined;
102
+ resourceInputs["hostname"] = state ? state.hostname : undefined;
103
+ resourceInputs["hostnameActual"] = state ? state.hostnameActual : undefined;
104
+ resourceInputs["licenseModel"] = state ? state.licenseModel : undefined;
105
+ resourceInputs["localBackupEnabled"] = state ? state.localBackupEnabled : undefined;
106
+ resourceInputs["location"] = state ? state.location : undefined;
107
+ resourceInputs["memorySizeInGbs"] = state ? state.memorySizeInGbs : undefined;
108
+ resourceInputs["name"] = state ? state.name : undefined;
109
+ resourceInputs["resourceGroupName"] = state ? state.resourceGroupName : undefined;
110
+ resourceInputs["sparseDiskgroupEnabled"] = state ? state.sparseDiskgroupEnabled : undefined;
111
+ resourceInputs["sshPublicKeys"] = state ? state.sshPublicKeys : undefined;
112
+ resourceInputs["subnetId"] = state ? state.subnetId : undefined;
113
+ resourceInputs["tags"] = state ? state.tags : undefined;
114
+ resourceInputs["timeZone"] = state ? state.timeZone : undefined;
115
+ resourceInputs["virtualNetworkId"] = state ? state.virtualNetworkId : undefined;
116
+ }
117
+ else {
118
+ const args = argsOrState;
119
+ if ((!args || args.cloudExadataInfrastructureId === undefined) && !opts.urn) {
120
+ throw new Error("Missing required property 'cloudExadataInfrastructureId'");
121
+ }
122
+ if ((!args || args.cpuCoreCount === undefined) && !opts.urn) {
123
+ throw new Error("Missing required property 'cpuCoreCount'");
124
+ }
125
+ if ((!args || args.dbServers === undefined) && !opts.urn) {
126
+ throw new Error("Missing required property 'dbServers'");
127
+ }
128
+ if ((!args || args.displayName === undefined) && !opts.urn) {
129
+ throw new Error("Missing required property 'displayName'");
130
+ }
131
+ if ((!args || args.giVersion === undefined) && !opts.urn) {
132
+ throw new Error("Missing required property 'giVersion'");
133
+ }
134
+ if ((!args || args.hostname === undefined) && !opts.urn) {
135
+ throw new Error("Missing required property 'hostname'");
136
+ }
137
+ if ((!args || args.licenseModel === undefined) && !opts.urn) {
138
+ throw new Error("Missing required property 'licenseModel'");
139
+ }
140
+ if ((!args || args.resourceGroupName === undefined) && !opts.urn) {
141
+ throw new Error("Missing required property 'resourceGroupName'");
142
+ }
143
+ if ((!args || args.sshPublicKeys === undefined) && !opts.urn) {
144
+ throw new Error("Missing required property 'sshPublicKeys'");
145
+ }
146
+ if ((!args || args.subnetId === undefined) && !opts.urn) {
147
+ throw new Error("Missing required property 'subnetId'");
148
+ }
149
+ if ((!args || args.virtualNetworkId === undefined) && !opts.urn) {
150
+ throw new Error("Missing required property 'virtualNetworkId'");
151
+ }
152
+ resourceInputs["backupSubnetCidr"] = args ? args.backupSubnetCidr : undefined;
153
+ resourceInputs["cloudExadataInfrastructureId"] = args ? args.cloudExadataInfrastructureId : undefined;
154
+ resourceInputs["clusterName"] = args ? args.clusterName : undefined;
155
+ resourceInputs["cpuCoreCount"] = args ? args.cpuCoreCount : undefined;
156
+ resourceInputs["dataCollectionOptions"] = args ? args.dataCollectionOptions : undefined;
157
+ resourceInputs["dataStoragePercentage"] = args ? args.dataStoragePercentage : undefined;
158
+ resourceInputs["dataStorageSizeInTbs"] = args ? args.dataStorageSizeInTbs : undefined;
159
+ resourceInputs["dbNodeStorageSizeInGbs"] = args ? args.dbNodeStorageSizeInGbs : undefined;
160
+ resourceInputs["dbServers"] = args ? args.dbServers : undefined;
161
+ resourceInputs["displayName"] = args ? args.displayName : undefined;
162
+ resourceInputs["giVersion"] = args ? args.giVersion : undefined;
163
+ resourceInputs["hostname"] = args ? args.hostname : undefined;
164
+ resourceInputs["licenseModel"] = args ? args.licenseModel : undefined;
165
+ resourceInputs["localBackupEnabled"] = args ? args.localBackupEnabled : undefined;
166
+ resourceInputs["location"] = args ? args.location : undefined;
167
+ resourceInputs["memorySizeInGbs"] = args ? args.memorySizeInGbs : undefined;
168
+ resourceInputs["name"] = args ? args.name : undefined;
169
+ resourceInputs["resourceGroupName"] = args ? args.resourceGroupName : undefined;
170
+ resourceInputs["sparseDiskgroupEnabled"] = args ? args.sparseDiskgroupEnabled : undefined;
171
+ resourceInputs["sshPublicKeys"] = args ? args.sshPublicKeys : undefined;
172
+ resourceInputs["subnetId"] = args ? args.subnetId : undefined;
173
+ resourceInputs["tags"] = args ? args.tags : undefined;
174
+ resourceInputs["timeZone"] = args ? args.timeZone : undefined;
175
+ resourceInputs["virtualNetworkId"] = args ? args.virtualNetworkId : undefined;
176
+ resourceInputs["hostnameActual"] = undefined /*out*/;
177
+ }
178
+ opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
179
+ super(CloudVmCluster.__pulumiType, name, resourceInputs, opts);
180
+ }
181
+ /**
182
+ * Get an existing CloudVmCluster resource's state with the given name, ID, and optional extra
183
+ * properties used to qualify the lookup.
184
+ *
185
+ * @param name The _unique_ name of the resulting resource.
186
+ * @param id The _unique_ provider ID of the resource to lookup.
187
+ * @param state Any extra arguments used during the lookup.
188
+ * @param opts Optional settings to control the behavior of the CustomResource.
189
+ */
190
+ static get(name, id, state, opts) {
191
+ return new CloudVmCluster(name, state, Object.assign(Object.assign({}, opts), { id: id }));
192
+ }
193
+ /**
194
+ * Returns true if the given object is an instance of CloudVmCluster. This is designed to work even
195
+ * when multiple copies of the Pulumi SDK have been loaded into the same process.
196
+ */
197
+ static isInstance(obj) {
198
+ if (obj === undefined || obj === null) {
199
+ return false;
200
+ }
201
+ return obj['__pulumiType'] === CloudVmCluster.__pulumiType;
202
+ }
203
+ }
204
+ exports.CloudVmCluster = CloudVmCluster;
205
+ /** @internal */
206
+ CloudVmCluster.__pulumiType = 'azure:oracle/cloudVmCluster:CloudVmCluster';
207
+ //# sourceMappingURL=cloudVmCluster.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cloudVmCluster.js","sourceRoot":"","sources":["../../oracle/cloudVmCluster.ts"],"names":[],"mappings":"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"}