@pulumi/linode 4.22.0-alpha.1719298977 → 4.22.0
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/config/vars.d.ts +4 -0
- package/config/vars.js +6 -0
- package/config/vars.js.map +1 -1
- package/getPlacementGroup.d.ts +97 -0
- package/getPlacementGroup.js +56 -0
- package/getPlacementGroup.js.map +1 -0
- package/getPlacementGroups.d.ts +117 -0
- package/getPlacementGroups.js +107 -0
- package/getPlacementGroups.js.map +1 -0
- package/getRegion.d.ts +1 -0
- package/getRegion.js.map +1 -1
- package/index.d.ts +12 -0
- package/index.js +19 -2
- package/index.js.map +1 -1
- package/instance.d.ts +51 -0
- package/instance.js +25 -0
- package/instance.js.map +1 -1
- package/package.json +2 -2
- package/placementGroup.d.ts +130 -0
- package/placementGroup.js +96 -0
- package/placementGroup.js.map +1 -0
- package/placementGroupAssignment.d.ts +108 -0
- package/placementGroupAssignment.js +104 -0
- package/placementGroupAssignment.js.map +1 -0
- package/provider.d.ts +4 -0
- package/provider.js +1 -0
- package/provider.js.map +1 -1
- package/types/input.d.ts +194 -9
- package/types/output.d.ts +123 -6
package/instance.d.ts
CHANGED
|
@@ -110,6 +110,27 @@ import * as outputs from "./types/output";
|
|
|
110
110
|
* });
|
|
111
111
|
* ```
|
|
112
112
|
*
|
|
113
|
+
* ### Linode Instance Assigned to a Placement Group
|
|
114
|
+
*
|
|
115
|
+
* **NOTE: Placement Groups may not currently be available to all users.**
|
|
116
|
+
*
|
|
117
|
+
* The following example shows how one might use this resource to configure a Linode instance assigned to a
|
|
118
|
+
* Placement Group.
|
|
119
|
+
*
|
|
120
|
+
* ```typescript
|
|
121
|
+
* import * as pulumi from "@pulumi/pulumi";
|
|
122
|
+
* import * as linode from "@pulumi/linode";
|
|
123
|
+
*
|
|
124
|
+
* const my_instance = new linode.Instance("my-instance", {
|
|
125
|
+
* label: "my-instance",
|
|
126
|
+
* region: "us-mia",
|
|
127
|
+
* type: "g6-standard-1",
|
|
128
|
+
* placementGroup: {
|
|
129
|
+
* id: 12345,
|
|
130
|
+
* },
|
|
131
|
+
* });
|
|
132
|
+
* ```
|
|
133
|
+
*
|
|
113
134
|
* ## Import
|
|
114
135
|
*
|
|
115
136
|
* Linodes Instances can be imported using the Linode `id`, e.g.
|
|
@@ -240,6 +261,14 @@ export declare class Instance extends pulumi.CustomResource {
|
|
|
240
261
|
* * `interface` - (Optional) A list of network interfaces to be assigned to the Linode on creation. If an explicit config or disk is defined, interfaces must be declared in the `config` block.
|
|
241
262
|
*/
|
|
242
263
|
readonly migrationType: pulumi.Output<string | undefined>;
|
|
264
|
+
/**
|
|
265
|
+
* Information about the Placement Group this Linode is assigned to. NOTE: Placement Groups may not currently be available to all users.
|
|
266
|
+
*/
|
|
267
|
+
readonly placementGroup: pulumi.Output<outputs.InstancePlacementGroup | undefined>;
|
|
268
|
+
/**
|
|
269
|
+
* If true, changes to the Linode's assigned Placement Group will be ignored. This is necessary when using this resource in conjunction with the linode.PlacementGroupAssignment resource.
|
|
270
|
+
*/
|
|
271
|
+
readonly placementGroupExternallyManaged: pulumi.Output<boolean | undefined>;
|
|
243
272
|
/**
|
|
244
273
|
* If true, the created Linode will have private networking enabled, allowing use of the 192.168.128.0/17 network within the Linode's region. It can be enabled on an existing Linode but it can't be disabled.
|
|
245
274
|
*/
|
|
@@ -274,6 +303,8 @@ export declare class Instance extends pulumi.CustomResource {
|
|
|
274
303
|
* A set of IPv4 addresses to be shared with the Instance. These IP addresses can be both private and public, but must be in the same region as the instance.
|
|
275
304
|
*
|
|
276
305
|
* * `metadata.0.user_data` - (Optional) The base64-encoded user-defined data exposed to this instance through the Linode Metadata service. Refer to the base64encode(...) function for information on encoding content for this field.
|
|
306
|
+
*
|
|
307
|
+
* * `placement_group.0.id` - (Optional) The ID of the Placement Group to assign this Linode to.
|
|
277
308
|
*/
|
|
278
309
|
readonly sharedIpv4s: pulumi.Output<string[]>;
|
|
279
310
|
/**
|
|
@@ -428,6 +459,14 @@ export interface InstanceState {
|
|
|
428
459
|
* * `interface` - (Optional) A list of network interfaces to be assigned to the Linode on creation. If an explicit config or disk is defined, interfaces must be declared in the `config` block.
|
|
429
460
|
*/
|
|
430
461
|
migrationType?: pulumi.Input<string>;
|
|
462
|
+
/**
|
|
463
|
+
* Information about the Placement Group this Linode is assigned to. NOTE: Placement Groups may not currently be available to all users.
|
|
464
|
+
*/
|
|
465
|
+
placementGroup?: pulumi.Input<inputs.InstancePlacementGroup>;
|
|
466
|
+
/**
|
|
467
|
+
* If true, changes to the Linode's assigned Placement Group will be ignored. This is necessary when using this resource in conjunction with the linode.PlacementGroupAssignment resource.
|
|
468
|
+
*/
|
|
469
|
+
placementGroupExternallyManaged?: pulumi.Input<boolean>;
|
|
431
470
|
/**
|
|
432
471
|
* If true, the created Linode will have private networking enabled, allowing use of the 192.168.128.0/17 network within the Linode's region. It can be enabled on an existing Linode but it can't be disabled.
|
|
433
472
|
*/
|
|
@@ -462,6 +501,8 @@ export interface InstanceState {
|
|
|
462
501
|
* A set of IPv4 addresses to be shared with the Instance. These IP addresses can be both private and public, but must be in the same region as the instance.
|
|
463
502
|
*
|
|
464
503
|
* * `metadata.0.user_data` - (Optional) The base64-encoded user-defined data exposed to this instance through the Linode Metadata service. Refer to the base64encode(...) function for information on encoding content for this field.
|
|
504
|
+
*
|
|
505
|
+
* * `placement_group.0.id` - (Optional) The ID of the Placement Group to assign this Linode to.
|
|
465
506
|
*/
|
|
466
507
|
sharedIpv4s?: pulumi.Input<pulumi.Input<string>[]>;
|
|
467
508
|
/**
|
|
@@ -584,6 +625,14 @@ export interface InstanceArgs {
|
|
|
584
625
|
* * `interface` - (Optional) A list of network interfaces to be assigned to the Linode on creation. If an explicit config or disk is defined, interfaces must be declared in the `config` block.
|
|
585
626
|
*/
|
|
586
627
|
migrationType?: pulumi.Input<string>;
|
|
628
|
+
/**
|
|
629
|
+
* Information about the Placement Group this Linode is assigned to. NOTE: Placement Groups may not currently be available to all users.
|
|
630
|
+
*/
|
|
631
|
+
placementGroup?: pulumi.Input<inputs.InstancePlacementGroup>;
|
|
632
|
+
/**
|
|
633
|
+
* If true, changes to the Linode's assigned Placement Group will be ignored. This is necessary when using this resource in conjunction with the linode.PlacementGroupAssignment resource.
|
|
634
|
+
*/
|
|
635
|
+
placementGroupExternallyManaged?: pulumi.Input<boolean>;
|
|
587
636
|
/**
|
|
588
637
|
* If true, the created Linode will have private networking enabled, allowing use of the 192.168.128.0/17 network within the Linode's region. It can be enabled on an existing Linode but it can't be disabled.
|
|
589
638
|
*/
|
|
@@ -614,6 +663,8 @@ export interface InstanceArgs {
|
|
|
614
663
|
* A set of IPv4 addresses to be shared with the Instance. These IP addresses can be both private and public, but must be in the same region as the instance.
|
|
615
664
|
*
|
|
616
665
|
* * `metadata.0.user_data` - (Optional) The base64-encoded user-defined data exposed to this instance through the Linode Metadata service. Refer to the base64encode(...) function for information on encoding content for this field.
|
|
666
|
+
*
|
|
667
|
+
* * `placement_group.0.id` - (Optional) The ID of the Placement Group to assign this Linode to.
|
|
617
668
|
*/
|
|
618
669
|
sharedIpv4s?: pulumi.Input<pulumi.Input<string>[]>;
|
|
619
670
|
/**
|
package/instance.js
CHANGED
|
@@ -114,6 +114,27 @@ const utilities = require("./utilities");
|
|
|
114
114
|
* });
|
|
115
115
|
* ```
|
|
116
116
|
*
|
|
117
|
+
* ### Linode Instance Assigned to a Placement Group
|
|
118
|
+
*
|
|
119
|
+
* **NOTE: Placement Groups may not currently be available to all users.**
|
|
120
|
+
*
|
|
121
|
+
* The following example shows how one might use this resource to configure a Linode instance assigned to a
|
|
122
|
+
* Placement Group.
|
|
123
|
+
*
|
|
124
|
+
* ```typescript
|
|
125
|
+
* import * as pulumi from "@pulumi/pulumi";
|
|
126
|
+
* import * as linode from "@pulumi/linode";
|
|
127
|
+
*
|
|
128
|
+
* const my_instance = new linode.Instance("my-instance", {
|
|
129
|
+
* label: "my-instance",
|
|
130
|
+
* region: "us-mia",
|
|
131
|
+
* type: "g6-standard-1",
|
|
132
|
+
* placementGroup: {
|
|
133
|
+
* id: 12345,
|
|
134
|
+
* },
|
|
135
|
+
* });
|
|
136
|
+
* ```
|
|
137
|
+
*
|
|
117
138
|
* ## Import
|
|
118
139
|
*
|
|
119
140
|
* Linodes Instances can be imported using the Linode `id`, e.g.
|
|
@@ -178,6 +199,8 @@ class Instance extends pulumi.CustomResource {
|
|
|
178
199
|
resourceInputs["label"] = state ? state.label : undefined;
|
|
179
200
|
resourceInputs["metadatas"] = state ? state.metadatas : undefined;
|
|
180
201
|
resourceInputs["migrationType"] = state ? state.migrationType : undefined;
|
|
202
|
+
resourceInputs["placementGroup"] = state ? state.placementGroup : undefined;
|
|
203
|
+
resourceInputs["placementGroupExternallyManaged"] = state ? state.placementGroupExternallyManaged : undefined;
|
|
181
204
|
resourceInputs["privateIp"] = state ? state.privateIp : undefined;
|
|
182
205
|
resourceInputs["privateIpAddress"] = state ? state.privateIpAddress : undefined;
|
|
183
206
|
resourceInputs["region"] = state ? state.region : undefined;
|
|
@@ -214,6 +237,8 @@ class Instance extends pulumi.CustomResource {
|
|
|
214
237
|
resourceInputs["label"] = args ? args.label : undefined;
|
|
215
238
|
resourceInputs["metadatas"] = args ? args.metadatas : undefined;
|
|
216
239
|
resourceInputs["migrationType"] = args ? args.migrationType : undefined;
|
|
240
|
+
resourceInputs["placementGroup"] = args ? args.placementGroup : undefined;
|
|
241
|
+
resourceInputs["placementGroupExternallyManaged"] = args ? args.placementGroupExternallyManaged : undefined;
|
|
217
242
|
resourceInputs["privateIp"] = args ? args.privateIp : undefined;
|
|
218
243
|
resourceInputs["region"] = args ? args.region : undefined;
|
|
219
244
|
resourceInputs["resizeDisk"] = args ? args.resizeDisk : undefined;
|
package/instance.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"instance.js","sourceRoot":"","sources":["../instance.ts"],"names":[],"mappings":";AAAA,wFAAwF;AACxF,iFAAiF;;;AAEjF,yCAAyC;AAGzC,yCAAyC;AAEzC
|
|
1
|
+
{"version":3,"file":"instance.js","sourceRoot":"","sources":["../instance.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@pulumi/linode",
|
|
3
|
-
"version": "4.22.0
|
|
3
|
+
"version": "4.22.0",
|
|
4
4
|
"description": "A Pulumi package for creating and managing linode cloud resources.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"pulumi",
|
|
@@ -23,6 +23,6 @@
|
|
|
23
23
|
"pulumi": {
|
|
24
24
|
"resource": true,
|
|
25
25
|
"name": "linode",
|
|
26
|
-
"version": "4.22.0
|
|
26
|
+
"version": "4.22.0"
|
|
27
27
|
}
|
|
28
28
|
}
|
|
@@ -0,0 +1,130 @@
|
|
|
1
|
+
import * as pulumi from "@pulumi/pulumi";
|
|
2
|
+
import * as inputs from "./types/input";
|
|
3
|
+
import * as outputs from "./types/output";
|
|
4
|
+
/**
|
|
5
|
+
* **NOTE: Placement Groups may not currently be available to all users.**
|
|
6
|
+
*
|
|
7
|
+
* Manages a Linode Placement Group.
|
|
8
|
+
*
|
|
9
|
+
* ## Example Usage
|
|
10
|
+
*
|
|
11
|
+
* Create a Placement Group with the local anti-affinity policy:
|
|
12
|
+
*
|
|
13
|
+
* ```typescript
|
|
14
|
+
* import * as pulumi from "@pulumi/pulumi";
|
|
15
|
+
* import * as linode from "@pulumi/linode";
|
|
16
|
+
*
|
|
17
|
+
* const test = new linode.PlacementGroup("test", {
|
|
18
|
+
* label: "my-placement-group",
|
|
19
|
+
* region: "us-mia",
|
|
20
|
+
* affinityType: "anti_affinity:local",
|
|
21
|
+
* });
|
|
22
|
+
* ```
|
|
23
|
+
*
|
|
24
|
+
* ## Import
|
|
25
|
+
*
|
|
26
|
+
* Placement Groups be imported using their unique `id`, e.g.
|
|
27
|
+
*
|
|
28
|
+
* ```sh
|
|
29
|
+
* $ pulumi import linode:index/placementGroup:PlacementGroup mygroup 1234567
|
|
30
|
+
* ```
|
|
31
|
+
*/
|
|
32
|
+
export declare class PlacementGroup extends pulumi.CustomResource {
|
|
33
|
+
/**
|
|
34
|
+
* Get an existing PlacementGroup resource's state with the given name, ID, and optional extra
|
|
35
|
+
* properties used to qualify the lookup.
|
|
36
|
+
*
|
|
37
|
+
* @param name The _unique_ name of the resulting resource.
|
|
38
|
+
* @param id The _unique_ provider ID of the resource to lookup.
|
|
39
|
+
* @param state Any extra arguments used during the lookup.
|
|
40
|
+
* @param opts Optional settings to control the behavior of the CustomResource.
|
|
41
|
+
*/
|
|
42
|
+
static get(name: string, id: pulumi.Input<pulumi.ID>, state?: PlacementGroupState, opts?: pulumi.CustomResourceOptions): PlacementGroup;
|
|
43
|
+
/**
|
|
44
|
+
* Returns true if the given object is an instance of PlacementGroup. This is designed to work even
|
|
45
|
+
* when multiple copies of the Pulumi SDK have been loaded into the same process.
|
|
46
|
+
*/
|
|
47
|
+
static isInstance(obj: any): obj is PlacementGroup;
|
|
48
|
+
/**
|
|
49
|
+
* The affinity policy to use when placing Linodes in this group.
|
|
50
|
+
*/
|
|
51
|
+
readonly affinityType: pulumi.Output<string>;
|
|
52
|
+
/**
|
|
53
|
+
* Whether this Linode is currently compliant with the group's affinity policy.
|
|
54
|
+
*/
|
|
55
|
+
readonly isCompliant: pulumi.Output<boolean>;
|
|
56
|
+
/**
|
|
57
|
+
* Whether Linodes must be able to become compliant during assignment. (Default `true`)
|
|
58
|
+
*/
|
|
59
|
+
readonly isStrict: pulumi.Output<boolean>;
|
|
60
|
+
/**
|
|
61
|
+
* The label of the Placement Group. This field can only contain ASCII letters, digits and dashes.
|
|
62
|
+
*/
|
|
63
|
+
readonly label: pulumi.Output<string>;
|
|
64
|
+
/**
|
|
65
|
+
* A set of Linodes currently assigned to this Placement Group.
|
|
66
|
+
*/
|
|
67
|
+
readonly members: pulumi.Output<outputs.PlacementGroupMember[]>;
|
|
68
|
+
/**
|
|
69
|
+
* The region of the Placement Group.
|
|
70
|
+
*/
|
|
71
|
+
readonly region: pulumi.Output<string>;
|
|
72
|
+
/**
|
|
73
|
+
* Create a PlacementGroup resource with the given unique name, arguments, and options.
|
|
74
|
+
*
|
|
75
|
+
* @param name The _unique_ name of the resource.
|
|
76
|
+
* @param args The arguments to use to populate this resource's properties.
|
|
77
|
+
* @param opts A bag of options that control this resource's behavior.
|
|
78
|
+
*/
|
|
79
|
+
constructor(name: string, args: PlacementGroupArgs, opts?: pulumi.CustomResourceOptions);
|
|
80
|
+
}
|
|
81
|
+
/**
|
|
82
|
+
* Input properties used for looking up and filtering PlacementGroup resources.
|
|
83
|
+
*/
|
|
84
|
+
export interface PlacementGroupState {
|
|
85
|
+
/**
|
|
86
|
+
* The affinity policy to use when placing Linodes in this group.
|
|
87
|
+
*/
|
|
88
|
+
affinityType?: pulumi.Input<string>;
|
|
89
|
+
/**
|
|
90
|
+
* Whether this Linode is currently compliant with the group's affinity policy.
|
|
91
|
+
*/
|
|
92
|
+
isCompliant?: pulumi.Input<boolean>;
|
|
93
|
+
/**
|
|
94
|
+
* Whether Linodes must be able to become compliant during assignment. (Default `true`)
|
|
95
|
+
*/
|
|
96
|
+
isStrict?: pulumi.Input<boolean>;
|
|
97
|
+
/**
|
|
98
|
+
* The label of the Placement Group. This field can only contain ASCII letters, digits and dashes.
|
|
99
|
+
*/
|
|
100
|
+
label?: pulumi.Input<string>;
|
|
101
|
+
/**
|
|
102
|
+
* A set of Linodes currently assigned to this Placement Group.
|
|
103
|
+
*/
|
|
104
|
+
members?: pulumi.Input<pulumi.Input<inputs.PlacementGroupMember>[]>;
|
|
105
|
+
/**
|
|
106
|
+
* The region of the Placement Group.
|
|
107
|
+
*/
|
|
108
|
+
region?: pulumi.Input<string>;
|
|
109
|
+
}
|
|
110
|
+
/**
|
|
111
|
+
* The set of arguments for constructing a PlacementGroup resource.
|
|
112
|
+
*/
|
|
113
|
+
export interface PlacementGroupArgs {
|
|
114
|
+
/**
|
|
115
|
+
* The affinity policy to use when placing Linodes in this group.
|
|
116
|
+
*/
|
|
117
|
+
affinityType: pulumi.Input<string>;
|
|
118
|
+
/**
|
|
119
|
+
* Whether Linodes must be able to become compliant during assignment. (Default `true`)
|
|
120
|
+
*/
|
|
121
|
+
isStrict?: pulumi.Input<boolean>;
|
|
122
|
+
/**
|
|
123
|
+
* The label of the Placement Group. This field can only contain ASCII letters, digits and dashes.
|
|
124
|
+
*/
|
|
125
|
+
label: pulumi.Input<string>;
|
|
126
|
+
/**
|
|
127
|
+
* The region of the Placement Group.
|
|
128
|
+
*/
|
|
129
|
+
region: pulumi.Input<string>;
|
|
130
|
+
}
|
|
@@ -0,0 +1,96 @@
|
|
|
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.PlacementGroup = void 0;
|
|
6
|
+
const pulumi = require("@pulumi/pulumi");
|
|
7
|
+
const utilities = require("./utilities");
|
|
8
|
+
/**
|
|
9
|
+
* **NOTE: Placement Groups may not currently be available to all users.**
|
|
10
|
+
*
|
|
11
|
+
* Manages a Linode Placement Group.
|
|
12
|
+
*
|
|
13
|
+
* ## Example Usage
|
|
14
|
+
*
|
|
15
|
+
* Create a Placement Group with the local anti-affinity policy:
|
|
16
|
+
*
|
|
17
|
+
* ```typescript
|
|
18
|
+
* import * as pulumi from "@pulumi/pulumi";
|
|
19
|
+
* import * as linode from "@pulumi/linode";
|
|
20
|
+
*
|
|
21
|
+
* const test = new linode.PlacementGroup("test", {
|
|
22
|
+
* label: "my-placement-group",
|
|
23
|
+
* region: "us-mia",
|
|
24
|
+
* affinityType: "anti_affinity:local",
|
|
25
|
+
* });
|
|
26
|
+
* ```
|
|
27
|
+
*
|
|
28
|
+
* ## Import
|
|
29
|
+
*
|
|
30
|
+
* Placement Groups be imported using their unique `id`, e.g.
|
|
31
|
+
*
|
|
32
|
+
* ```sh
|
|
33
|
+
* $ pulumi import linode:index/placementGroup:PlacementGroup mygroup 1234567
|
|
34
|
+
* ```
|
|
35
|
+
*/
|
|
36
|
+
class PlacementGroup extends pulumi.CustomResource {
|
|
37
|
+
/**
|
|
38
|
+
* Get an existing PlacementGroup resource's state with the given name, ID, and optional extra
|
|
39
|
+
* properties used to qualify the lookup.
|
|
40
|
+
*
|
|
41
|
+
* @param name The _unique_ name of the resulting resource.
|
|
42
|
+
* @param id The _unique_ provider ID of the resource to lookup.
|
|
43
|
+
* @param state Any extra arguments used during the lookup.
|
|
44
|
+
* @param opts Optional settings to control the behavior of the CustomResource.
|
|
45
|
+
*/
|
|
46
|
+
static get(name, id, state, opts) {
|
|
47
|
+
return new PlacementGroup(name, state, Object.assign(Object.assign({}, opts), { id: id }));
|
|
48
|
+
}
|
|
49
|
+
/**
|
|
50
|
+
* Returns true if the given object is an instance of PlacementGroup. This is designed to work even
|
|
51
|
+
* when multiple copies of the Pulumi SDK have been loaded into the same process.
|
|
52
|
+
*/
|
|
53
|
+
static isInstance(obj) {
|
|
54
|
+
if (obj === undefined || obj === null) {
|
|
55
|
+
return false;
|
|
56
|
+
}
|
|
57
|
+
return obj['__pulumiType'] === PlacementGroup.__pulumiType;
|
|
58
|
+
}
|
|
59
|
+
constructor(name, argsOrState, opts) {
|
|
60
|
+
let resourceInputs = {};
|
|
61
|
+
opts = opts || {};
|
|
62
|
+
if (opts.id) {
|
|
63
|
+
const state = argsOrState;
|
|
64
|
+
resourceInputs["affinityType"] = state ? state.affinityType : undefined;
|
|
65
|
+
resourceInputs["isCompliant"] = state ? state.isCompliant : undefined;
|
|
66
|
+
resourceInputs["isStrict"] = state ? state.isStrict : undefined;
|
|
67
|
+
resourceInputs["label"] = state ? state.label : undefined;
|
|
68
|
+
resourceInputs["members"] = state ? state.members : undefined;
|
|
69
|
+
resourceInputs["region"] = state ? state.region : undefined;
|
|
70
|
+
}
|
|
71
|
+
else {
|
|
72
|
+
const args = argsOrState;
|
|
73
|
+
if ((!args || args.affinityType === undefined) && !opts.urn) {
|
|
74
|
+
throw new Error("Missing required property 'affinityType'");
|
|
75
|
+
}
|
|
76
|
+
if ((!args || args.label === undefined) && !opts.urn) {
|
|
77
|
+
throw new Error("Missing required property 'label'");
|
|
78
|
+
}
|
|
79
|
+
if ((!args || args.region === undefined) && !opts.urn) {
|
|
80
|
+
throw new Error("Missing required property 'region'");
|
|
81
|
+
}
|
|
82
|
+
resourceInputs["affinityType"] = args ? args.affinityType : undefined;
|
|
83
|
+
resourceInputs["isStrict"] = args ? args.isStrict : undefined;
|
|
84
|
+
resourceInputs["label"] = args ? args.label : undefined;
|
|
85
|
+
resourceInputs["region"] = args ? args.region : undefined;
|
|
86
|
+
resourceInputs["isCompliant"] = undefined /*out*/;
|
|
87
|
+
resourceInputs["members"] = undefined /*out*/;
|
|
88
|
+
}
|
|
89
|
+
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
|
|
90
|
+
super(PlacementGroup.__pulumiType, name, resourceInputs, opts);
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
exports.PlacementGroup = PlacementGroup;
|
|
94
|
+
/** @internal */
|
|
95
|
+
PlacementGroup.__pulumiType = 'linode:index/placementGroup:PlacementGroup';
|
|
96
|
+
//# sourceMappingURL=placementGroup.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"placementGroup.js","sourceRoot":"","sources":["../placementGroup.ts"],"names":[],"mappings":";AAAA,wFAAwF;AACxF,iFAAiF;;;AAEjF,yCAAyC;AAGzC,yCAAyC;AAEzC;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,MAAa,cAAe,SAAQ,MAAM,CAAC,cAAc;IACrD;;;;;;;;OAQG;IACI,MAAM,CAAC,GAAG,CAAC,IAAY,EAAE,EAA2B,EAAE,KAA2B,EAAE,IAAmC;QACzH,OAAO,IAAI,cAAc,CAAC,IAAI,EAAO,KAAK,kCAAO,IAAI,KAAE,EAAE,EAAE,EAAE,IAAG,CAAC;IACrE,CAAC;IAKD;;;OAGG;IACI,MAAM,CAAC,UAAU,CAAC,GAAQ;QAC7B,IAAI,GAAG,KAAK,SAAS,IAAI,GAAG,KAAK,IAAI,EAAE;YACnC,OAAO,KAAK,CAAC;SAChB;QACD,OAAO,GAAG,CAAC,cAAc,CAAC,KAAK,cAAc,CAAC,YAAY,CAAC;IAC/D,CAAC;IAmCD,YAAY,IAAY,EAAE,WAAsD,EAAE,IAAmC;QACjH,IAAI,cAAc,GAAkB,EAAE,CAAC;QACvC,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;QAClB,IAAI,IAAI,CAAC,EAAE,EAAE;YACT,MAAM,KAAK,GAAG,WAA8C,CAAC;YAC7D,cAAc,CAAC,cAAc,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC,SAAS,CAAC;YACxE,cAAc,CAAC,aAAa,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC;YACtE,cAAc,CAAC,UAAU,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC;YAChE,cAAc,CAAC,OAAO,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;YAC1D,cAAc,CAAC,SAAS,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC;YAC9D,cAAc,CAAC,QAAQ,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC;SAC/D;aAAM;YACH,MAAM,IAAI,GAAG,WAA6C,CAAC;YAC3D,IAAI,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,YAAY,KAAK,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;gBACzD,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAC;aAC/D;YACD,IAAI,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,KAAK,KAAK,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;gBAClD,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;aACxD;YACD,IAAI,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;gBACnD,MAAM,IAAI,KAAK,CAAC,oCAAoC,CAAC,CAAC;aACzD;YACD,cAAc,CAAC,cAAc,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,SAAS,CAAC;YACtE,cAAc,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC;YAC9D,cAAc,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;YACxD,cAAc,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC;YAC1D,cAAc,CAAC,aAAa,CAAC,GAAG,SAAS,CAAC,OAAO,CAAC;YAClD,cAAc,CAAC,SAAS,CAAC,GAAG,SAAS,CAAC,OAAO,CAAC;SACjD;QACD,IAAI,GAAG,MAAM,CAAC,YAAY,CAAC,SAAS,CAAC,oBAAoB,EAAE,EAAE,IAAI,CAAC,CAAC;QACnE,KAAK,CAAC,cAAc,CAAC,YAAY,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,CAAC,CAAC;IACnE,CAAC;;AA5FL,wCA6FC;AA/EG,gBAAgB;AACO,2BAAY,GAAG,4CAA4C,CAAC"}
|
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
import * as pulumi from "@pulumi/pulumi";
|
|
2
|
+
/**
|
|
3
|
+
* **NOTE: Placement Groups may not currently be available to all users.**
|
|
4
|
+
*
|
|
5
|
+
* Manages a single assignment between a Linode and a Placement Group.
|
|
6
|
+
*
|
|
7
|
+
* To prevent update conflicts, Linodes managed through the `linode.Instance` resource should specify `placementGroupExternallyManaged`:
|
|
8
|
+
*
|
|
9
|
+
* ```typescript
|
|
10
|
+
* import * as pulumi from "@pulumi/pulumi";
|
|
11
|
+
* import * as linode from "@pulumi/linode";
|
|
12
|
+
*
|
|
13
|
+
* const my_instance = new linode.Instance("my-instance", {placementGroupExternallyManaged: true});
|
|
14
|
+
* ```
|
|
15
|
+
*
|
|
16
|
+
* ## Example Usage
|
|
17
|
+
*
|
|
18
|
+
* ```typescript
|
|
19
|
+
* import * as pulumi from "@pulumi/pulumi";
|
|
20
|
+
* import * as linode from "@pulumi/linode";
|
|
21
|
+
*
|
|
22
|
+
* const my_pg = new linode.PlacementGroup("my-pg", {
|
|
23
|
+
* label: "my-pg",
|
|
24
|
+
* region: "us-east",
|
|
25
|
+
* affinityType: "anti_affinity:local",
|
|
26
|
+
* });
|
|
27
|
+
* const my_inst = new linode.Instance("my-inst", {
|
|
28
|
+
* label: "my-inst",
|
|
29
|
+
* region: "us-east",
|
|
30
|
+
* type: "g6-nanode-1",
|
|
31
|
+
* placementGroupExternallyManaged: true,
|
|
32
|
+
* });
|
|
33
|
+
* const my_assignment = new linode.PlacementGroupAssignment("my-assignment", {
|
|
34
|
+
* placementGroupId: my_pg.id,
|
|
35
|
+
* linodeId: my_inst.id,
|
|
36
|
+
* });
|
|
37
|
+
* ```
|
|
38
|
+
*
|
|
39
|
+
* ## Import
|
|
40
|
+
*
|
|
41
|
+
* Placement Group assignments can be imported using the Placement Group's ID followed by the Linode's ID separated by a comma, e.g.
|
|
42
|
+
*
|
|
43
|
+
* ```sh
|
|
44
|
+
* $ pulumi import linode:index/placementGroupAssignment:PlacementGroupAssignment my-assignment 1234567,7654321
|
|
45
|
+
* ```
|
|
46
|
+
*/
|
|
47
|
+
export declare class PlacementGroupAssignment extends pulumi.CustomResource {
|
|
48
|
+
/**
|
|
49
|
+
* Get an existing PlacementGroupAssignment resource's state with the given name, ID, and optional extra
|
|
50
|
+
* properties used to qualify the lookup.
|
|
51
|
+
*
|
|
52
|
+
* @param name The _unique_ name of the resulting resource.
|
|
53
|
+
* @param id The _unique_ provider ID of the resource to lookup.
|
|
54
|
+
* @param state Any extra arguments used during the lookup.
|
|
55
|
+
* @param opts Optional settings to control the behavior of the CustomResource.
|
|
56
|
+
*/
|
|
57
|
+
static get(name: string, id: pulumi.Input<pulumi.ID>, state?: PlacementGroupAssignmentState, opts?: pulumi.CustomResourceOptions): PlacementGroupAssignment;
|
|
58
|
+
/**
|
|
59
|
+
* Returns true if the given object is an instance of PlacementGroupAssignment. This is designed to work even
|
|
60
|
+
* when multiple copies of the Pulumi SDK have been loaded into the same process.
|
|
61
|
+
*/
|
|
62
|
+
static isInstance(obj: any): obj is PlacementGroupAssignment;
|
|
63
|
+
readonly compliantOnly: pulumi.Output<boolean | undefined>;
|
|
64
|
+
/**
|
|
65
|
+
* The unique ID of the Linode to assign.
|
|
66
|
+
*/
|
|
67
|
+
readonly linodeId: pulumi.Output<number>;
|
|
68
|
+
/**
|
|
69
|
+
* The unique ID of the target Placement Group.
|
|
70
|
+
*/
|
|
71
|
+
readonly placementGroupId: pulumi.Output<number>;
|
|
72
|
+
/**
|
|
73
|
+
* Create a PlacementGroupAssignment resource with the given unique name, arguments, and options.
|
|
74
|
+
*
|
|
75
|
+
* @param name The _unique_ name of the resource.
|
|
76
|
+
* @param args The arguments to use to populate this resource's properties.
|
|
77
|
+
* @param opts A bag of options that control this resource's behavior.
|
|
78
|
+
*/
|
|
79
|
+
constructor(name: string, args: PlacementGroupAssignmentArgs, opts?: pulumi.CustomResourceOptions);
|
|
80
|
+
}
|
|
81
|
+
/**
|
|
82
|
+
* Input properties used for looking up and filtering PlacementGroupAssignment resources.
|
|
83
|
+
*/
|
|
84
|
+
export interface PlacementGroupAssignmentState {
|
|
85
|
+
compliantOnly?: pulumi.Input<boolean>;
|
|
86
|
+
/**
|
|
87
|
+
* The unique ID of the Linode to assign.
|
|
88
|
+
*/
|
|
89
|
+
linodeId?: pulumi.Input<number>;
|
|
90
|
+
/**
|
|
91
|
+
* The unique ID of the target Placement Group.
|
|
92
|
+
*/
|
|
93
|
+
placementGroupId?: pulumi.Input<number>;
|
|
94
|
+
}
|
|
95
|
+
/**
|
|
96
|
+
* The set of arguments for constructing a PlacementGroupAssignment resource.
|
|
97
|
+
*/
|
|
98
|
+
export interface PlacementGroupAssignmentArgs {
|
|
99
|
+
compliantOnly?: pulumi.Input<boolean>;
|
|
100
|
+
/**
|
|
101
|
+
* The unique ID of the Linode to assign.
|
|
102
|
+
*/
|
|
103
|
+
linodeId: pulumi.Input<number>;
|
|
104
|
+
/**
|
|
105
|
+
* The unique ID of the target Placement Group.
|
|
106
|
+
*/
|
|
107
|
+
placementGroupId: pulumi.Input<number>;
|
|
108
|
+
}
|
|
@@ -0,0 +1,104 @@
|
|
|
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.PlacementGroupAssignment = void 0;
|
|
6
|
+
const pulumi = require("@pulumi/pulumi");
|
|
7
|
+
const utilities = require("./utilities");
|
|
8
|
+
/**
|
|
9
|
+
* **NOTE: Placement Groups may not currently be available to all users.**
|
|
10
|
+
*
|
|
11
|
+
* Manages a single assignment between a Linode and a Placement Group.
|
|
12
|
+
*
|
|
13
|
+
* To prevent update conflicts, Linodes managed through the `linode.Instance` resource should specify `placementGroupExternallyManaged`:
|
|
14
|
+
*
|
|
15
|
+
* ```typescript
|
|
16
|
+
* import * as pulumi from "@pulumi/pulumi";
|
|
17
|
+
* import * as linode from "@pulumi/linode";
|
|
18
|
+
*
|
|
19
|
+
* const my_instance = new linode.Instance("my-instance", {placementGroupExternallyManaged: true});
|
|
20
|
+
* ```
|
|
21
|
+
*
|
|
22
|
+
* ## Example Usage
|
|
23
|
+
*
|
|
24
|
+
* ```typescript
|
|
25
|
+
* import * as pulumi from "@pulumi/pulumi";
|
|
26
|
+
* import * as linode from "@pulumi/linode";
|
|
27
|
+
*
|
|
28
|
+
* const my_pg = new linode.PlacementGroup("my-pg", {
|
|
29
|
+
* label: "my-pg",
|
|
30
|
+
* region: "us-east",
|
|
31
|
+
* affinityType: "anti_affinity:local",
|
|
32
|
+
* });
|
|
33
|
+
* const my_inst = new linode.Instance("my-inst", {
|
|
34
|
+
* label: "my-inst",
|
|
35
|
+
* region: "us-east",
|
|
36
|
+
* type: "g6-nanode-1",
|
|
37
|
+
* placementGroupExternallyManaged: true,
|
|
38
|
+
* });
|
|
39
|
+
* const my_assignment = new linode.PlacementGroupAssignment("my-assignment", {
|
|
40
|
+
* placementGroupId: my_pg.id,
|
|
41
|
+
* linodeId: my_inst.id,
|
|
42
|
+
* });
|
|
43
|
+
* ```
|
|
44
|
+
*
|
|
45
|
+
* ## Import
|
|
46
|
+
*
|
|
47
|
+
* Placement Group assignments can be imported using the Placement Group's ID followed by the Linode's ID separated by a comma, e.g.
|
|
48
|
+
*
|
|
49
|
+
* ```sh
|
|
50
|
+
* $ pulumi import linode:index/placementGroupAssignment:PlacementGroupAssignment my-assignment 1234567,7654321
|
|
51
|
+
* ```
|
|
52
|
+
*/
|
|
53
|
+
class PlacementGroupAssignment extends pulumi.CustomResource {
|
|
54
|
+
/**
|
|
55
|
+
* Get an existing PlacementGroupAssignment resource's state with the given name, ID, and optional extra
|
|
56
|
+
* properties used to qualify the lookup.
|
|
57
|
+
*
|
|
58
|
+
* @param name The _unique_ name of the resulting resource.
|
|
59
|
+
* @param id The _unique_ provider ID of the resource to lookup.
|
|
60
|
+
* @param state Any extra arguments used during the lookup.
|
|
61
|
+
* @param opts Optional settings to control the behavior of the CustomResource.
|
|
62
|
+
*/
|
|
63
|
+
static get(name, id, state, opts) {
|
|
64
|
+
return new PlacementGroupAssignment(name, state, Object.assign(Object.assign({}, opts), { id: id }));
|
|
65
|
+
}
|
|
66
|
+
/**
|
|
67
|
+
* Returns true if the given object is an instance of PlacementGroupAssignment. This is designed to work even
|
|
68
|
+
* when multiple copies of the Pulumi SDK have been loaded into the same process.
|
|
69
|
+
*/
|
|
70
|
+
static isInstance(obj) {
|
|
71
|
+
if (obj === undefined || obj === null) {
|
|
72
|
+
return false;
|
|
73
|
+
}
|
|
74
|
+
return obj['__pulumiType'] === PlacementGroupAssignment.__pulumiType;
|
|
75
|
+
}
|
|
76
|
+
constructor(name, argsOrState, opts) {
|
|
77
|
+
let resourceInputs = {};
|
|
78
|
+
opts = opts || {};
|
|
79
|
+
if (opts.id) {
|
|
80
|
+
const state = argsOrState;
|
|
81
|
+
resourceInputs["compliantOnly"] = state ? state.compliantOnly : undefined;
|
|
82
|
+
resourceInputs["linodeId"] = state ? state.linodeId : undefined;
|
|
83
|
+
resourceInputs["placementGroupId"] = state ? state.placementGroupId : undefined;
|
|
84
|
+
}
|
|
85
|
+
else {
|
|
86
|
+
const args = argsOrState;
|
|
87
|
+
if ((!args || args.linodeId === undefined) && !opts.urn) {
|
|
88
|
+
throw new Error("Missing required property 'linodeId'");
|
|
89
|
+
}
|
|
90
|
+
if ((!args || args.placementGroupId === undefined) && !opts.urn) {
|
|
91
|
+
throw new Error("Missing required property 'placementGroupId'");
|
|
92
|
+
}
|
|
93
|
+
resourceInputs["compliantOnly"] = args ? args.compliantOnly : undefined;
|
|
94
|
+
resourceInputs["linodeId"] = args ? args.linodeId : undefined;
|
|
95
|
+
resourceInputs["placementGroupId"] = args ? args.placementGroupId : undefined;
|
|
96
|
+
}
|
|
97
|
+
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
|
|
98
|
+
super(PlacementGroupAssignment.__pulumiType, name, resourceInputs, opts);
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
exports.PlacementGroupAssignment = PlacementGroupAssignment;
|
|
102
|
+
/** @internal */
|
|
103
|
+
PlacementGroupAssignment.__pulumiType = 'linode:index/placementGroupAssignment:PlacementGroupAssignment';
|
|
104
|
+
//# sourceMappingURL=placementGroupAssignment.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"placementGroupAssignment.js","sourceRoot":"","sources":["../placementGroupAssignment.ts"],"names":[],"mappings":";AAAA,wFAAwF;AACxF,iFAAiF;;;AAEjF,yCAAyC;AACzC,yCAAyC;AAEzC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4CG;AACH,MAAa,wBAAyB,SAAQ,MAAM,CAAC,cAAc;IAC/D;;;;;;;;OAQG;IACI,MAAM,CAAC,GAAG,CAAC,IAAY,EAAE,EAA2B,EAAE,KAAqC,EAAE,IAAmC;QACnI,OAAO,IAAI,wBAAwB,CAAC,IAAI,EAAO,KAAK,kCAAO,IAAI,KAAE,EAAE,EAAE,EAAE,IAAG,CAAC;IAC/E,CAAC;IAKD;;;OAGG;IACI,MAAM,CAAC,UAAU,CAAC,GAAQ;QAC7B,IAAI,GAAG,KAAK,SAAS,IAAI,GAAG,KAAK,IAAI,EAAE;YACnC,OAAO,KAAK,CAAC;SAChB;QACD,OAAO,GAAG,CAAC,cAAc,CAAC,KAAK,wBAAwB,CAAC,YAAY,CAAC;IACzE,CAAC;IAoBD,YAAY,IAAY,EAAE,WAA0E,EAAE,IAAmC;QACrI,IAAI,cAAc,GAAkB,EAAE,CAAC;QACvC,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;QAClB,IAAI,IAAI,CAAC,EAAE,EAAE;YACT,MAAM,KAAK,GAAG,WAAwD,CAAC;YACvE,cAAc,CAAC,eAAe,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS,CAAC;YAC1E,cAAc,CAAC,UAAU,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC;YAChE,cAAc,CAAC,kBAAkB,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC,CAAC,SAAS,CAAC;SACnF;aAAM;YACH,MAAM,IAAI,GAAG,WAAuD,CAAC;YACrE,IAAI,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,QAAQ,KAAK,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;gBACrD,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC,CAAC;aAC3D;YACD,IAAI,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,gBAAgB,KAAK,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;gBAC7D,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;aACnE;YACD,cAAc,CAAC,eAAe,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS,CAAC;YACxE,cAAc,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC;YAC9D,cAAc,CAAC,kBAAkB,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,SAAS,CAAC;SACjF;QACD,IAAI,GAAG,MAAM,CAAC,YAAY,CAAC,SAAS,CAAC,oBAAoB,EAAE,EAAE,IAAI,CAAC,CAAC;QACnE,KAAK,CAAC,wBAAwB,CAAC,YAAY,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,CAAC,CAAC;IAC7E,CAAC;;AApEL,4DAqEC;AAvDG,gBAAgB;AACO,qCAAY,GAAG,gEAAgE,CAAC"}
|
package/provider.d.ts
CHANGED
|
@@ -96,6 +96,10 @@ export interface ProviderArgs {
|
|
|
96
96
|
* The access key to be used in linode.ObjectStorageBucket and linode_object_storage_object.
|
|
97
97
|
*/
|
|
98
98
|
objAccessKey?: pulumi.Input<string>;
|
|
99
|
+
/**
|
|
100
|
+
* If true, when deleting a linode.ObjectStorageBucket any objects and versions will be force deleted.
|
|
101
|
+
*/
|
|
102
|
+
objBucketForceDelete?: pulumi.Input<boolean>;
|
|
99
103
|
/**
|
|
100
104
|
* The secret key to be used in linode.ObjectStorageBucket and linode_object_storage_object.
|
|
101
105
|
*/
|