pulumi-linode 5.1.1__py3-none-any.whl → 5.2.0__py3-none-any.whl

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.

Potentially problematic release.


This version of pulumi-linode might be problematic. Click here for more details.

pulumi_linode/instance.py CHANGED
@@ -38,6 +38,7 @@ class InstanceArgs:
38
38
  interfaces: Optional[pulumi.Input[Sequence[pulumi.Input['InstanceInterfaceArgs']]]] = None,
39
39
  ipv4s: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
40
40
  label: Optional[pulumi.Input[_builtins.str]] = None,
41
+ maintenance_policy: Optional[pulumi.Input[_builtins.str]] = None,
41
42
  metadatas: Optional[pulumi.Input[Sequence[pulumi.Input['InstanceMetadataArgs']]]] = None,
42
43
  migration_type: Optional[pulumi.Input[_builtins.str]] = None,
43
44
  placement_group: Optional[pulumi.Input['InstancePlacementGroupArgs']] = None,
@@ -57,12 +58,8 @@ class InstanceArgs:
57
58
  :param pulumi.Input[_builtins.str] region: This is the location where the Linode is deployed. Examples are `"us-east"`, `"us-west"`, `"ap-south"`, etc. See all regions [here](https://api.linode.com/v4/regions). *Changing `region` will trigger a migration of this Linode. Migration operations are typically long-running operations, so the update timeout should be adjusted accordingly.*.
58
59
  :param pulumi.Input['InstanceAlertsArgs'] alerts: Configuration options for alert triggers on this Linode.
59
60
  :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] authorized_keys: A list of SSH public keys to deploy for the root user on the newly created Linode. Only accepted if 'image' is provided.
60
- :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] authorized_users: A list of Linode usernames. If the usernames have associated SSH keys, the keys will be appended to the `root` user's
61
- `~/.ssh/authorized_keys` file automatically. Only accepted if 'image' is provided.
62
- :param pulumi.Input[_builtins.int] backup_id: A Backup ID from another Linode's available backups. Your User must have read_write access to that Linode, the Backup
63
- must have a status of successful, and the Linode must be deployed to the same region as the Backup. See
64
- /linode/instances/{linodeId}/backups for a Linode's available backups. This field and the image field are mutually
65
- exclusive.
61
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] authorized_users: A list of Linode usernames. If the usernames have associated SSH keys, the keys will be appended to the `root` user's `~/.ssh/authorized_keys` file automatically. Only accepted if 'image' is provided.
62
+ :param pulumi.Input[_builtins.int] backup_id: A Backup ID from another Linode's available backups. Your User must have read_write access to that Linode, the Backup must have a status of successful, and the Linode must be deployed to the same region as the Backup. See /linode/instances/{linodeId}/backups for a Linode's available backups. This field and the image field are mutually exclusive.
66
63
  :param pulumi.Input[_builtins.bool] backups_enabled: If this field is set to true, the created Linode will automatically be enrolled in the Linode Backup service. This will incur an additional charge. The cost for the Backup service is dependent on the Type of Linode deployed.
67
64
  :param pulumi.Input[_builtins.str] boot_config_label: The Label of the Instance Config that should be used to boot the Linode instance.
68
65
  :param pulumi.Input[_builtins.bool] booted: If true, then the instance is kept or converted into in a running state. If false, the instance will be shutdown. If unspecified, the Linode's power status will not be managed by the Provider.
@@ -72,14 +69,13 @@ class InstanceArgs:
72
69
  * **NOTE: Disk encryption may not currently be available to all users.**
73
70
  :param pulumi.Input[_builtins.int] firewall_id: The ID of the Firewall to attach to the instance upon creation. *Changing `firewall_id` forces the creation of a new Linode Instance.*
74
71
  :param pulumi.Input[_builtins.str] group: A deprecated property denoting a group label for this Linode. We recommend using the `tags` attribute instead.
75
- :param pulumi.Input[_builtins.str] image: An Image ID to deploy the Disk from. Official Linode Images start with linode/, while your Images start with private/.
76
- See /images for more information on the Images available for you to use.
77
- :param pulumi.Input[Sequence[pulumi.Input['InstanceInterfaceArgs']]] interfaces: An array of Network Interfaces for this Linode to be created with. If an explicit config or disk is defined, interfaces
78
- must be declared in the config block.
72
+ :param pulumi.Input[_builtins.str] image: An Image ID to deploy the Disk from. Official Linode Images start with linode/, while your Images start with private/. See /images for more information on the Images available for you to use.
73
+ :param pulumi.Input[Sequence[pulumi.Input['InstanceInterfaceArgs']]] interfaces: An array of Network Interfaces for this Linode to be created with. If an explicit config or disk is defined, interfaces must be declared in the config block.
79
74
  :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] ipv4s: A set of reserved IPv4 addresses to assign to this Linode on creation.
80
75
 
81
76
  * **NOTE: IP reservation is not currently available to all users.**
82
77
  :param pulumi.Input[_builtins.str] label: The Linode's label is for display purposes only. If no label is provided for a Linode, a default will be assigned.
78
+ :param pulumi.Input[_builtins.str] maintenance_policy: The maintenance policy of this Linode instance. Examples are `"linode/migrate"` and `"linode/power_off_on"`. Defaults to the default maintenance policy of the account. (**Note: v4beta only.**)
83
79
  :param pulumi.Input[Sequence[pulumi.Input['InstanceMetadataArgs']]] metadatas: Various fields related to the Linode Metadata service.
84
80
  :param pulumi.Input[_builtins.str] migration_type: The type of migration to use when updating the type or region of a Linode. (`cold`, `warm`; default `cold`)
85
81
 
@@ -104,12 +100,9 @@ class InstanceArgs:
104
100
  * `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.
105
101
 
106
102
  * `placement_group.0.id` - (Optional) The ID of the Placement Group to assign this Linode to.
107
- :param pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]] stackscript_data: An object containing responses to any User Defined Fields present in the StackScript being deployed to this Linode. Only
108
- accepted if 'stackscript_id' is given. The required values depend on the StackScript being deployed.
109
- :param pulumi.Input[_builtins.int] stackscript_id: The StackScript to deploy to the newly created Linode. If provided, 'image' must also be provided, and must be an Image
110
- that is compatible with this StackScript.
111
- :param pulumi.Input[_builtins.int] swap_size: When deploying from an Image, this field is optional with a Linode API default of 512mb, otherwise it is ignored. This
112
- is used to set the swap disk size for the newly-created Linode.
103
+ :param pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]] stackscript_data: An object containing responses to any User Defined Fields present in the StackScript being deployed to this Linode. Only accepted if 'stackscript_id' is given. The required values depend on the StackScript being deployed.
104
+ :param pulumi.Input[_builtins.int] stackscript_id: The StackScript to deploy to the newly created Linode. If provided, 'image' must also be provided, and must be an Image that is compatible with this StackScript.
105
+ :param pulumi.Input[_builtins.int] swap_size: When deploying from an Image, this field is optional with a Linode API default of 512mb, otherwise it is ignored. This is used to set the swap disk size for the newly-created Linode.
113
106
  :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] tags: A list of tags applied to this object. Tags are case-insensitive and are for organizational purposes only.
114
107
  :param pulumi.Input[_builtins.str] type: The Linode type defines the pricing, CPU, disk, and RAM specs of the instance. Examples are `"g6-nanode-1"`, `"g6-standard-2"`, `"g6-highmem-16"`, `"g6-dedicated-16"`, etc. See all types [here](https://api.linode.com/v4/linode/types).
115
108
 
@@ -158,6 +151,8 @@ class InstanceArgs:
158
151
  pulumi.set(__self__, "ipv4s", ipv4s)
159
152
  if label is not None:
160
153
  pulumi.set(__self__, "label", label)
154
+ if maintenance_policy is not None:
155
+ pulumi.set(__self__, "maintenance_policy", maintenance_policy)
161
156
  if metadatas is not None:
162
157
  pulumi.set(__self__, "metadatas", metadatas)
163
158
  if migration_type is not None:
@@ -227,8 +222,7 @@ class InstanceArgs:
227
222
  @pulumi.getter(name="authorizedUsers")
228
223
  def authorized_users(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
229
224
  """
230
- A list of Linode usernames. If the usernames have associated SSH keys, the keys will be appended to the `root` user's
231
- `~/.ssh/authorized_keys` file automatically. Only accepted if 'image' is provided.
225
+ A list of Linode usernames. If the usernames have associated SSH keys, the keys will be appended to the `root` user's `~/.ssh/authorized_keys` file automatically. Only accepted if 'image' is provided.
232
226
  """
233
227
  return pulumi.get(self, "authorized_users")
234
228
 
@@ -240,10 +234,7 @@ class InstanceArgs:
240
234
  @pulumi.getter(name="backupId")
241
235
  def backup_id(self) -> Optional[pulumi.Input[_builtins.int]]:
242
236
  """
243
- A Backup ID from another Linode's available backups. Your User must have read_write access to that Linode, the Backup
244
- must have a status of successful, and the Linode must be deployed to the same region as the Backup. See
245
- /linode/instances/{linodeId}/backups for a Linode's available backups. This field and the image field are mutually
246
- exclusive.
237
+ A Backup ID from another Linode's available backups. Your User must have read_write access to that Linode, the Backup must have a status of successful, and the Linode must be deployed to the same region as the Backup. See /linode/instances/{linodeId}/backups for a Linode's available backups. This field and the image field are mutually exclusive.
247
238
  """
248
239
  return pulumi.get(self, "backup_id")
249
240
 
@@ -353,8 +344,7 @@ class InstanceArgs:
353
344
  @pulumi.getter
354
345
  def image(self) -> Optional[pulumi.Input[_builtins.str]]:
355
346
  """
356
- An Image ID to deploy the Disk from. Official Linode Images start with linode/, while your Images start with private/.
357
- See /images for more information on the Images available for you to use.
347
+ An Image ID to deploy the Disk from. Official Linode Images start with linode/, while your Images start with private/. See /images for more information on the Images available for you to use.
358
348
  """
359
349
  return pulumi.get(self, "image")
360
350
 
@@ -366,8 +356,7 @@ class InstanceArgs:
366
356
  @pulumi.getter
367
357
  def interfaces(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['InstanceInterfaceArgs']]]]:
368
358
  """
369
- An array of Network Interfaces for this Linode to be created with. If an explicit config or disk is defined, interfaces
370
- must be declared in the config block.
359
+ An array of Network Interfaces for this Linode to be created with. If an explicit config or disk is defined, interfaces must be declared in the config block.
371
360
  """
372
361
  return pulumi.get(self, "interfaces")
373
362
 
@@ -401,6 +390,18 @@ class InstanceArgs:
401
390
  def label(self, value: Optional[pulumi.Input[_builtins.str]]):
402
391
  pulumi.set(self, "label", value)
403
392
 
393
+ @_builtins.property
394
+ @pulumi.getter(name="maintenancePolicy")
395
+ def maintenance_policy(self) -> Optional[pulumi.Input[_builtins.str]]:
396
+ """
397
+ The maintenance policy of this Linode instance. Examples are `"linode/migrate"` and `"linode/power_off_on"`. Defaults to the default maintenance policy of the account. (**Note: v4beta only.**)
398
+ """
399
+ return pulumi.get(self, "maintenance_policy")
400
+
401
+ @maintenance_policy.setter
402
+ def maintenance_policy(self, value: Optional[pulumi.Input[_builtins.str]]):
403
+ pulumi.set(self, "maintenance_policy", value)
404
+
404
405
  @_builtins.property
405
406
  @pulumi.getter
406
407
  def metadatas(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['InstanceMetadataArgs']]]]:
@@ -517,8 +518,7 @@ class InstanceArgs:
517
518
  @pulumi.getter(name="stackscriptData")
518
519
  def stackscript_data(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]]:
519
520
  """
520
- An object containing responses to any User Defined Fields present in the StackScript being deployed to this Linode. Only
521
- accepted if 'stackscript_id' is given. The required values depend on the StackScript being deployed.
521
+ An object containing responses to any User Defined Fields present in the StackScript being deployed to this Linode. Only accepted if 'stackscript_id' is given. The required values depend on the StackScript being deployed.
522
522
  """
523
523
  return pulumi.get(self, "stackscript_data")
524
524
 
@@ -530,8 +530,7 @@ class InstanceArgs:
530
530
  @pulumi.getter(name="stackscriptId")
531
531
  def stackscript_id(self) -> Optional[pulumi.Input[_builtins.int]]:
532
532
  """
533
- The StackScript to deploy to the newly created Linode. If provided, 'image' must also be provided, and must be an Image
534
- that is compatible with this StackScript.
533
+ The StackScript to deploy to the newly created Linode. If provided, 'image' must also be provided, and must be an Image that is compatible with this StackScript.
535
534
  """
536
535
  return pulumi.get(self, "stackscript_id")
537
536
 
@@ -543,8 +542,7 @@ class InstanceArgs:
543
542
  @pulumi.getter(name="swapSize")
544
543
  def swap_size(self) -> Optional[pulumi.Input[_builtins.int]]:
545
544
  """
546
- When deploying from an Image, this field is optional with a Linode API default of 512mb, otherwise it is ignored. This
547
- is used to set the swap disk size for the newly-created Linode.
545
+ When deploying from an Image, this field is optional with a Linode API default of 512mb, otherwise it is ignored. This is used to set the swap disk size for the newly-created Linode.
548
546
  """
549
547
  return pulumi.get(self, "swap_size")
550
548
 
@@ -617,6 +615,7 @@ class _InstanceState:
617
615
  ipv6: Optional[pulumi.Input[_builtins.str]] = None,
618
616
  label: Optional[pulumi.Input[_builtins.str]] = None,
619
617
  lke_cluster_id: Optional[pulumi.Input[_builtins.int]] = None,
618
+ maintenance_policy: Optional[pulumi.Input[_builtins.str]] = None,
620
619
  metadatas: Optional[pulumi.Input[Sequence[pulumi.Input['InstanceMetadataArgs']]]] = None,
621
620
  migration_type: Optional[pulumi.Input[_builtins.str]] = None,
622
621
  placement_group: Optional[pulumi.Input['InstancePlacementGroupArgs']] = None,
@@ -639,12 +638,8 @@ class _InstanceState:
639
638
  Input properties used for looking up and filtering Instance resources.
640
639
  :param pulumi.Input['InstanceAlertsArgs'] alerts: Configuration options for alert triggers on this Linode.
641
640
  :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] authorized_keys: A list of SSH public keys to deploy for the root user on the newly created Linode. Only accepted if 'image' is provided.
642
- :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] authorized_users: A list of Linode usernames. If the usernames have associated SSH keys, the keys will be appended to the `root` user's
643
- `~/.ssh/authorized_keys` file automatically. Only accepted if 'image' is provided.
644
- :param pulumi.Input[_builtins.int] backup_id: A Backup ID from another Linode's available backups. Your User must have read_write access to that Linode, the Backup
645
- must have a status of successful, and the Linode must be deployed to the same region as the Backup. See
646
- /linode/instances/{linodeId}/backups for a Linode's available backups. This field and the image field are mutually
647
- exclusive.
641
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] authorized_users: A list of Linode usernames. If the usernames have associated SSH keys, the keys will be appended to the `root` user's `~/.ssh/authorized_keys` file automatically. Only accepted if 'image' is provided.
642
+ :param pulumi.Input[_builtins.int] backup_id: A Backup ID from another Linode's available backups. Your User must have read_write access to that Linode, the Backup must have a status of successful, and the Linode must be deployed to the same region as the Backup. See /linode/instances/{linodeId}/backups for a Linode's available backups. This field and the image field are mutually exclusive.
648
643
  :param pulumi.Input[Sequence[pulumi.Input['InstanceBackupArgs']]] backups: Information about this Linode's backups status.
649
644
  :param pulumi.Input[_builtins.bool] backups_enabled: If this field is set to true, the created Linode will automatically be enrolled in the Linode Backup service. This will incur an additional charge. The cost for the Backup service is dependent on the Type of Linode deployed.
650
645
  :param pulumi.Input[_builtins.str] boot_config_label: The Label of the Instance Config that should be used to boot the Linode instance.
@@ -658,10 +653,8 @@ class _InstanceState:
658
653
  :param pulumi.Input[_builtins.str] group: A deprecated property denoting a group label for this Linode. We recommend using the `tags` attribute instead.
659
654
  :param pulumi.Input[_builtins.bool] has_user_data: Whether this Instance was created with user-data.
660
655
  :param pulumi.Input[_builtins.str] host_uuid: The Linode’s host machine, as a UUID.
661
- :param pulumi.Input[_builtins.str] image: An Image ID to deploy the Disk from. Official Linode Images start with linode/, while your Images start with private/.
662
- See /images for more information on the Images available for you to use.
663
- :param pulumi.Input[Sequence[pulumi.Input['InstanceInterfaceArgs']]] interfaces: An array of Network Interfaces for this Linode to be created with. If an explicit config or disk is defined, interfaces
664
- must be declared in the config block.
656
+ :param pulumi.Input[_builtins.str] image: An Image ID to deploy the Disk from. Official Linode Images start with linode/, while your Images start with private/. See /images for more information on the Images available for you to use.
657
+ :param pulumi.Input[Sequence[pulumi.Input['InstanceInterfaceArgs']]] interfaces: An array of Network Interfaces for this Linode to be created with. If an explicit config or disk is defined, interfaces must be declared in the config block.
665
658
  :param pulumi.Input[_builtins.str] ip_address: A string containing the Linode's public IP address.
666
659
  :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] ipv4s: A set of reserved IPv4 addresses to assign to this Linode on creation.
667
660
 
@@ -669,6 +662,7 @@ class _InstanceState:
669
662
  :param pulumi.Input[_builtins.str] ipv6: This Linode's IPv6 SLAAC addresses. This address is specific to a Linode, and may not be shared. The prefix (`/128`) is included in this attribute.
670
663
  :param pulumi.Input[_builtins.str] label: The Linode's label is for display purposes only. If no label is provided for a Linode, a default will be assigned.
671
664
  :param pulumi.Input[_builtins.int] lke_cluster_id: If applicable, the ID of the LKE cluster this instance is a part of.
665
+ :param pulumi.Input[_builtins.str] maintenance_policy: The maintenance policy of this Linode instance. Examples are `"linode/migrate"` and `"linode/power_off_on"`. Defaults to the default maintenance policy of the account. (**Note: v4beta only.**)
672
666
  :param pulumi.Input[Sequence[pulumi.Input['InstanceMetadataArgs']]] metadatas: Various fields related to the Linode Metadata service.
673
667
  :param pulumi.Input[_builtins.str] migration_type: The type of migration to use when updating the type or region of a Linode. (`cold`, `warm`; default `cold`)
674
668
 
@@ -696,13 +690,10 @@ class _InstanceState:
696
690
 
697
691
  * `placement_group.0.id` - (Optional) The ID of the Placement Group to assign this Linode to.
698
692
  :param pulumi.Input[Sequence[pulumi.Input['InstanceSpecArgs']]] specs: Information about the resources available to this Linode.
699
- :param pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]] stackscript_data: An object containing responses to any User Defined Fields present in the StackScript being deployed to this Linode. Only
700
- accepted if 'stackscript_id' is given. The required values depend on the StackScript being deployed.
701
- :param pulumi.Input[_builtins.int] stackscript_id: The StackScript to deploy to the newly created Linode. If provided, 'image' must also be provided, and must be an Image
702
- that is compatible with this StackScript.
693
+ :param pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]] stackscript_data: An object containing responses to any User Defined Fields present in the StackScript being deployed to this Linode. Only accepted if 'stackscript_id' is given. The required values depend on the StackScript being deployed.
694
+ :param pulumi.Input[_builtins.int] stackscript_id: The StackScript to deploy to the newly created Linode. If provided, 'image' must also be provided, and must be an Image that is compatible with this StackScript.
703
695
  :param pulumi.Input[_builtins.str] status: The status of the instance, indicating the current readiness state. (`running`, `offline`, ...)
704
- :param pulumi.Input[_builtins.int] swap_size: When deploying from an Image, this field is optional with a Linode API default of 512mb, otherwise it is ignored. This
705
- is used to set the swap disk size for the newly-created Linode.
696
+ :param pulumi.Input[_builtins.int] swap_size: When deploying from an Image, this field is optional with a Linode API default of 512mb, otherwise it is ignored. This is used to set the swap disk size for the newly-created Linode.
706
697
  :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] tags: A list of tags applied to this object. Tags are case-insensitive and are for organizational purposes only.
707
698
  :param pulumi.Input[_builtins.str] type: The Linode type defines the pricing, CPU, disk, and RAM specs of the instance. Examples are `"g6-nanode-1"`, `"g6-standard-2"`, `"g6-highmem-16"`, `"g6-dedicated-16"`, etc. See all types [here](https://api.linode.com/v4/linode/types).
708
699
 
@@ -767,6 +758,8 @@ class _InstanceState:
767
758
  pulumi.set(__self__, "label", label)
768
759
  if lke_cluster_id is not None:
769
760
  pulumi.set(__self__, "lke_cluster_id", lke_cluster_id)
761
+ if maintenance_policy is not None:
762
+ pulumi.set(__self__, "maintenance_policy", maintenance_policy)
770
763
  if metadatas is not None:
771
764
  pulumi.set(__self__, "metadatas", metadatas)
772
765
  if migration_type is not None:
@@ -832,8 +825,7 @@ class _InstanceState:
832
825
  @pulumi.getter(name="authorizedUsers")
833
826
  def authorized_users(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
834
827
  """
835
- A list of Linode usernames. If the usernames have associated SSH keys, the keys will be appended to the `root` user's
836
- `~/.ssh/authorized_keys` file automatically. Only accepted if 'image' is provided.
828
+ A list of Linode usernames. If the usernames have associated SSH keys, the keys will be appended to the `root` user's `~/.ssh/authorized_keys` file automatically. Only accepted if 'image' is provided.
837
829
  """
838
830
  return pulumi.get(self, "authorized_users")
839
831
 
@@ -845,10 +837,7 @@ class _InstanceState:
845
837
  @pulumi.getter(name="backupId")
846
838
  def backup_id(self) -> Optional[pulumi.Input[_builtins.int]]:
847
839
  """
848
- A Backup ID from another Linode's available backups. Your User must have read_write access to that Linode, the Backup
849
- must have a status of successful, and the Linode must be deployed to the same region as the Backup. See
850
- /linode/instances/{linodeId}/backups for a Linode's available backups. This field and the image field are mutually
851
- exclusive.
840
+ A Backup ID from another Linode's available backups. Your User must have read_write access to that Linode, the Backup must have a status of successful, and the Linode must be deployed to the same region as the Backup. See /linode/instances/{linodeId}/backups for a Linode's available backups. This field and the image field are mutually exclusive.
852
841
  """
853
842
  return pulumi.get(self, "backup_id")
854
843
 
@@ -1006,8 +995,7 @@ class _InstanceState:
1006
995
  @pulumi.getter
1007
996
  def image(self) -> Optional[pulumi.Input[_builtins.str]]:
1008
997
  """
1009
- An Image ID to deploy the Disk from. Official Linode Images start with linode/, while your Images start with private/.
1010
- See /images for more information on the Images available for you to use.
998
+ An Image ID to deploy the Disk from. Official Linode Images start with linode/, while your Images start with private/. See /images for more information on the Images available for you to use.
1011
999
  """
1012
1000
  return pulumi.get(self, "image")
1013
1001
 
@@ -1019,8 +1007,7 @@ class _InstanceState:
1019
1007
  @pulumi.getter
1020
1008
  def interfaces(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['InstanceInterfaceArgs']]]]:
1021
1009
  """
1022
- An array of Network Interfaces for this Linode to be created with. If an explicit config or disk is defined, interfaces
1023
- must be declared in the config block.
1010
+ An array of Network Interfaces for this Linode to be created with. If an explicit config or disk is defined, interfaces must be declared in the config block.
1024
1011
  """
1025
1012
  return pulumi.get(self, "interfaces")
1026
1013
 
@@ -1091,6 +1078,18 @@ class _InstanceState:
1091
1078
  def lke_cluster_id(self, value: Optional[pulumi.Input[_builtins.int]]):
1092
1079
  pulumi.set(self, "lke_cluster_id", value)
1093
1080
 
1081
+ @_builtins.property
1082
+ @pulumi.getter(name="maintenancePolicy")
1083
+ def maintenance_policy(self) -> Optional[pulumi.Input[_builtins.str]]:
1084
+ """
1085
+ The maintenance policy of this Linode instance. Examples are `"linode/migrate"` and `"linode/power_off_on"`. Defaults to the default maintenance policy of the account. (**Note: v4beta only.**)
1086
+ """
1087
+ return pulumi.get(self, "maintenance_policy")
1088
+
1089
+ @maintenance_policy.setter
1090
+ def maintenance_policy(self, value: Optional[pulumi.Input[_builtins.str]]):
1091
+ pulumi.set(self, "maintenance_policy", value)
1092
+
1094
1093
  @_builtins.property
1095
1094
  @pulumi.getter
1096
1095
  def metadatas(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['InstanceMetadataArgs']]]]:
@@ -1243,8 +1242,7 @@ class _InstanceState:
1243
1242
  @pulumi.getter(name="stackscriptData")
1244
1243
  def stackscript_data(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]]:
1245
1244
  """
1246
- An object containing responses to any User Defined Fields present in the StackScript being deployed to this Linode. Only
1247
- accepted if 'stackscript_id' is given. The required values depend on the StackScript being deployed.
1245
+ An object containing responses to any User Defined Fields present in the StackScript being deployed to this Linode. Only accepted if 'stackscript_id' is given. The required values depend on the StackScript being deployed.
1248
1246
  """
1249
1247
  return pulumi.get(self, "stackscript_data")
1250
1248
 
@@ -1256,8 +1254,7 @@ class _InstanceState:
1256
1254
  @pulumi.getter(name="stackscriptId")
1257
1255
  def stackscript_id(self) -> Optional[pulumi.Input[_builtins.int]]:
1258
1256
  """
1259
- The StackScript to deploy to the newly created Linode. If provided, 'image' must also be provided, and must be an Image
1260
- that is compatible with this StackScript.
1257
+ The StackScript to deploy to the newly created Linode. If provided, 'image' must also be provided, and must be an Image that is compatible with this StackScript.
1261
1258
  """
1262
1259
  return pulumi.get(self, "stackscript_id")
1263
1260
 
@@ -1281,8 +1278,7 @@ class _InstanceState:
1281
1278
  @pulumi.getter(name="swapSize")
1282
1279
  def swap_size(self) -> Optional[pulumi.Input[_builtins.int]]:
1283
1280
  """
1284
- When deploying from an Image, this field is optional with a Linode API default of 512mb, otherwise it is ignored. This
1285
- is used to set the swap disk size for the newly-created Linode.
1281
+ When deploying from an Image, this field is optional with a Linode API default of 512mb, otherwise it is ignored. This is used to set the swap disk size for the newly-created Linode.
1286
1282
  """
1287
1283
  return pulumi.get(self, "swap_size")
1288
1284
 
@@ -1351,6 +1347,7 @@ class Instance(pulumi.CustomResource):
1351
1347
  interfaces: Optional[pulumi.Input[Sequence[pulumi.Input[Union['InstanceInterfaceArgs', 'InstanceInterfaceArgsDict']]]]] = None,
1352
1348
  ipv4s: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
1353
1349
  label: Optional[pulumi.Input[_builtins.str]] = None,
1350
+ maintenance_policy: Optional[pulumi.Input[_builtins.str]] = None,
1354
1351
  metadatas: Optional[pulumi.Input[Sequence[pulumi.Input[Union['InstanceMetadataArgs', 'InstanceMetadataArgsDict']]]]] = None,
1355
1352
  migration_type: Optional[pulumi.Input[_builtins.str]] = None,
1356
1353
  placement_group: Optional[pulumi.Input[Union['InstancePlacementGroupArgs', 'InstancePlacementGroupArgsDict']]] = None,
@@ -1461,12 +1458,8 @@ class Instance(pulumi.CustomResource):
1461
1458
  :param pulumi.ResourceOptions opts: Options for the resource.
1462
1459
  :param pulumi.Input[Union['InstanceAlertsArgs', 'InstanceAlertsArgsDict']] alerts: Configuration options for alert triggers on this Linode.
1463
1460
  :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] authorized_keys: A list of SSH public keys to deploy for the root user on the newly created Linode. Only accepted if 'image' is provided.
1464
- :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] authorized_users: A list of Linode usernames. If the usernames have associated SSH keys, the keys will be appended to the `root` user's
1465
- `~/.ssh/authorized_keys` file automatically. Only accepted if 'image' is provided.
1466
- :param pulumi.Input[_builtins.int] backup_id: A Backup ID from another Linode's available backups. Your User must have read_write access to that Linode, the Backup
1467
- must have a status of successful, and the Linode must be deployed to the same region as the Backup. See
1468
- /linode/instances/{linodeId}/backups for a Linode's available backups. This field and the image field are mutually
1469
- exclusive.
1461
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] authorized_users: A list of Linode usernames. If the usernames have associated SSH keys, the keys will be appended to the `root` user's `~/.ssh/authorized_keys` file automatically. Only accepted if 'image' is provided.
1462
+ :param pulumi.Input[_builtins.int] backup_id: A Backup ID from another Linode's available backups. Your User must have read_write access to that Linode, the Backup must have a status of successful, and the Linode must be deployed to the same region as the Backup. See /linode/instances/{linodeId}/backups for a Linode's available backups. This field and the image field are mutually exclusive.
1470
1463
  :param pulumi.Input[_builtins.bool] backups_enabled: If this field is set to true, the created Linode will automatically be enrolled in the Linode Backup service. This will incur an additional charge. The cost for the Backup service is dependent on the Type of Linode deployed.
1471
1464
  :param pulumi.Input[_builtins.str] boot_config_label: The Label of the Instance Config that should be used to boot the Linode instance.
1472
1465
  :param pulumi.Input[_builtins.bool] booted: If true, then the instance is kept or converted into in a running state. If false, the instance will be shutdown. If unspecified, the Linode's power status will not be managed by the Provider.
@@ -1476,14 +1469,13 @@ class Instance(pulumi.CustomResource):
1476
1469
  * **NOTE: Disk encryption may not currently be available to all users.**
1477
1470
  :param pulumi.Input[_builtins.int] firewall_id: The ID of the Firewall to attach to the instance upon creation. *Changing `firewall_id` forces the creation of a new Linode Instance.*
1478
1471
  :param pulumi.Input[_builtins.str] group: A deprecated property denoting a group label for this Linode. We recommend using the `tags` attribute instead.
1479
- :param pulumi.Input[_builtins.str] image: An Image ID to deploy the Disk from. Official Linode Images start with linode/, while your Images start with private/.
1480
- See /images for more information on the Images available for you to use.
1481
- :param pulumi.Input[Sequence[pulumi.Input[Union['InstanceInterfaceArgs', 'InstanceInterfaceArgsDict']]]] interfaces: An array of Network Interfaces for this Linode to be created with. If an explicit config or disk is defined, interfaces
1482
- must be declared in the config block.
1472
+ :param pulumi.Input[_builtins.str] image: An Image ID to deploy the Disk from. Official Linode Images start with linode/, while your Images start with private/. See /images for more information on the Images available for you to use.
1473
+ :param pulumi.Input[Sequence[pulumi.Input[Union['InstanceInterfaceArgs', 'InstanceInterfaceArgsDict']]]] interfaces: An array of Network Interfaces for this Linode to be created with. If an explicit config or disk is defined, interfaces must be declared in the config block.
1483
1474
  :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] ipv4s: A set of reserved IPv4 addresses to assign to this Linode on creation.
1484
1475
 
1485
1476
  * **NOTE: IP reservation is not currently available to all users.**
1486
1477
  :param pulumi.Input[_builtins.str] label: The Linode's label is for display purposes only. If no label is provided for a Linode, a default will be assigned.
1478
+ :param pulumi.Input[_builtins.str] maintenance_policy: The maintenance policy of this Linode instance. Examples are `"linode/migrate"` and `"linode/power_off_on"`. Defaults to the default maintenance policy of the account. (**Note: v4beta only.**)
1487
1479
  :param pulumi.Input[Sequence[pulumi.Input[Union['InstanceMetadataArgs', 'InstanceMetadataArgsDict']]]] metadatas: Various fields related to the Linode Metadata service.
1488
1480
  :param pulumi.Input[_builtins.str] migration_type: The type of migration to use when updating the type or region of a Linode. (`cold`, `warm`; default `cold`)
1489
1481
 
@@ -1509,12 +1501,9 @@ class Instance(pulumi.CustomResource):
1509
1501
  * `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.
1510
1502
 
1511
1503
  * `placement_group.0.id` - (Optional) The ID of the Placement Group to assign this Linode to.
1512
- :param pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]] stackscript_data: An object containing responses to any User Defined Fields present in the StackScript being deployed to this Linode. Only
1513
- accepted if 'stackscript_id' is given. The required values depend on the StackScript being deployed.
1514
- :param pulumi.Input[_builtins.int] stackscript_id: The StackScript to deploy to the newly created Linode. If provided, 'image' must also be provided, and must be an Image
1515
- that is compatible with this StackScript.
1516
- :param pulumi.Input[_builtins.int] swap_size: When deploying from an Image, this field is optional with a Linode API default of 512mb, otherwise it is ignored. This
1517
- is used to set the swap disk size for the newly-created Linode.
1504
+ :param pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]] stackscript_data: An object containing responses to any User Defined Fields present in the StackScript being deployed to this Linode. Only accepted if 'stackscript_id' is given. The required values depend on the StackScript being deployed.
1505
+ :param pulumi.Input[_builtins.int] stackscript_id: The StackScript to deploy to the newly created Linode. If provided, 'image' must also be provided, and must be an Image that is compatible with this StackScript.
1506
+ :param pulumi.Input[_builtins.int] swap_size: When deploying from an Image, this field is optional with a Linode API default of 512mb, otherwise it is ignored. This is used to set the swap disk size for the newly-created Linode.
1518
1507
  :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] tags: A list of tags applied to this object. Tags are case-insensitive and are for organizational purposes only.
1519
1508
  :param pulumi.Input[_builtins.str] type: The Linode type defines the pricing, CPU, disk, and RAM specs of the instance. Examples are `"g6-nanode-1"`, `"g6-standard-2"`, `"g6-highmem-16"`, `"g6-dedicated-16"`, etc. See all types [here](https://api.linode.com/v4/linode/types).
1520
1509
 
@@ -1648,6 +1637,7 @@ class Instance(pulumi.CustomResource):
1648
1637
  interfaces: Optional[pulumi.Input[Sequence[pulumi.Input[Union['InstanceInterfaceArgs', 'InstanceInterfaceArgsDict']]]]] = None,
1649
1638
  ipv4s: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
1650
1639
  label: Optional[pulumi.Input[_builtins.str]] = None,
1640
+ maintenance_policy: Optional[pulumi.Input[_builtins.str]] = None,
1651
1641
  metadatas: Optional[pulumi.Input[Sequence[pulumi.Input[Union['InstanceMetadataArgs', 'InstanceMetadataArgsDict']]]]] = None,
1652
1642
  migration_type: Optional[pulumi.Input[_builtins.str]] = None,
1653
1643
  placement_group: Optional[pulumi.Input[Union['InstancePlacementGroupArgs', 'InstancePlacementGroupArgsDict']]] = None,
@@ -1688,6 +1678,7 @@ class Instance(pulumi.CustomResource):
1688
1678
  __props__.__dict__["interfaces"] = interfaces
1689
1679
  __props__.__dict__["ipv4s"] = ipv4s
1690
1680
  __props__.__dict__["label"] = label
1681
+ __props__.__dict__["maintenance_policy"] = maintenance_policy
1691
1682
  __props__.__dict__["metadatas"] = metadatas
1692
1683
  __props__.__dict__["migration_type"] = migration_type
1693
1684
  __props__.__dict__["placement_group"] = placement_group
@@ -1750,6 +1741,7 @@ class Instance(pulumi.CustomResource):
1750
1741
  ipv6: Optional[pulumi.Input[_builtins.str]] = None,
1751
1742
  label: Optional[pulumi.Input[_builtins.str]] = None,
1752
1743
  lke_cluster_id: Optional[pulumi.Input[_builtins.int]] = None,
1744
+ maintenance_policy: Optional[pulumi.Input[_builtins.str]] = None,
1753
1745
  metadatas: Optional[pulumi.Input[Sequence[pulumi.Input[Union['InstanceMetadataArgs', 'InstanceMetadataArgsDict']]]]] = None,
1754
1746
  migration_type: Optional[pulumi.Input[_builtins.str]] = None,
1755
1747
  placement_group: Optional[pulumi.Input[Union['InstancePlacementGroupArgs', 'InstancePlacementGroupArgsDict']]] = None,
@@ -1777,12 +1769,8 @@ class Instance(pulumi.CustomResource):
1777
1769
  :param pulumi.ResourceOptions opts: Options for the resource.
1778
1770
  :param pulumi.Input[Union['InstanceAlertsArgs', 'InstanceAlertsArgsDict']] alerts: Configuration options for alert triggers on this Linode.
1779
1771
  :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] authorized_keys: A list of SSH public keys to deploy for the root user on the newly created Linode. Only accepted if 'image' is provided.
1780
- :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] authorized_users: A list of Linode usernames. If the usernames have associated SSH keys, the keys will be appended to the `root` user's
1781
- `~/.ssh/authorized_keys` file automatically. Only accepted if 'image' is provided.
1782
- :param pulumi.Input[_builtins.int] backup_id: A Backup ID from another Linode's available backups. Your User must have read_write access to that Linode, the Backup
1783
- must have a status of successful, and the Linode must be deployed to the same region as the Backup. See
1784
- /linode/instances/{linodeId}/backups for a Linode's available backups. This field and the image field are mutually
1785
- exclusive.
1772
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] authorized_users: A list of Linode usernames. If the usernames have associated SSH keys, the keys will be appended to the `root` user's `~/.ssh/authorized_keys` file automatically. Only accepted if 'image' is provided.
1773
+ :param pulumi.Input[_builtins.int] backup_id: A Backup ID from another Linode's available backups. Your User must have read_write access to that Linode, the Backup must have a status of successful, and the Linode must be deployed to the same region as the Backup. See /linode/instances/{linodeId}/backups for a Linode's available backups. This field and the image field are mutually exclusive.
1786
1774
  :param pulumi.Input[Sequence[pulumi.Input[Union['InstanceBackupArgs', 'InstanceBackupArgsDict']]]] backups: Information about this Linode's backups status.
1787
1775
  :param pulumi.Input[_builtins.bool] backups_enabled: If this field is set to true, the created Linode will automatically be enrolled in the Linode Backup service. This will incur an additional charge. The cost for the Backup service is dependent on the Type of Linode deployed.
1788
1776
  :param pulumi.Input[_builtins.str] boot_config_label: The Label of the Instance Config that should be used to boot the Linode instance.
@@ -1796,10 +1784,8 @@ class Instance(pulumi.CustomResource):
1796
1784
  :param pulumi.Input[_builtins.str] group: A deprecated property denoting a group label for this Linode. We recommend using the `tags` attribute instead.
1797
1785
  :param pulumi.Input[_builtins.bool] has_user_data: Whether this Instance was created with user-data.
1798
1786
  :param pulumi.Input[_builtins.str] host_uuid: The Linode’s host machine, as a UUID.
1799
- :param pulumi.Input[_builtins.str] image: An Image ID to deploy the Disk from. Official Linode Images start with linode/, while your Images start with private/.
1800
- See /images for more information on the Images available for you to use.
1801
- :param pulumi.Input[Sequence[pulumi.Input[Union['InstanceInterfaceArgs', 'InstanceInterfaceArgsDict']]]] interfaces: An array of Network Interfaces for this Linode to be created with. If an explicit config or disk is defined, interfaces
1802
- must be declared in the config block.
1787
+ :param pulumi.Input[_builtins.str] image: An Image ID to deploy the Disk from. Official Linode Images start with linode/, while your Images start with private/. See /images for more information on the Images available for you to use.
1788
+ :param pulumi.Input[Sequence[pulumi.Input[Union['InstanceInterfaceArgs', 'InstanceInterfaceArgsDict']]]] interfaces: An array of Network Interfaces for this Linode to be created with. If an explicit config or disk is defined, interfaces must be declared in the config block.
1803
1789
  :param pulumi.Input[_builtins.str] ip_address: A string containing the Linode's public IP address.
1804
1790
  :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] ipv4s: A set of reserved IPv4 addresses to assign to this Linode on creation.
1805
1791
 
@@ -1807,6 +1793,7 @@ class Instance(pulumi.CustomResource):
1807
1793
  :param pulumi.Input[_builtins.str] ipv6: This Linode's IPv6 SLAAC addresses. This address is specific to a Linode, and may not be shared. The prefix (`/128`) is included in this attribute.
1808
1794
  :param pulumi.Input[_builtins.str] label: The Linode's label is for display purposes only. If no label is provided for a Linode, a default will be assigned.
1809
1795
  :param pulumi.Input[_builtins.int] lke_cluster_id: If applicable, the ID of the LKE cluster this instance is a part of.
1796
+ :param pulumi.Input[_builtins.str] maintenance_policy: The maintenance policy of this Linode instance. Examples are `"linode/migrate"` and `"linode/power_off_on"`. Defaults to the default maintenance policy of the account. (**Note: v4beta only.**)
1810
1797
  :param pulumi.Input[Sequence[pulumi.Input[Union['InstanceMetadataArgs', 'InstanceMetadataArgsDict']]]] metadatas: Various fields related to the Linode Metadata service.
1811
1798
  :param pulumi.Input[_builtins.str] migration_type: The type of migration to use when updating the type or region of a Linode. (`cold`, `warm`; default `cold`)
1812
1799
 
@@ -1834,13 +1821,10 @@ class Instance(pulumi.CustomResource):
1834
1821
 
1835
1822
  * `placement_group.0.id` - (Optional) The ID of the Placement Group to assign this Linode to.
1836
1823
  :param pulumi.Input[Sequence[pulumi.Input[Union['InstanceSpecArgs', 'InstanceSpecArgsDict']]]] specs: Information about the resources available to this Linode.
1837
- :param pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]] stackscript_data: An object containing responses to any User Defined Fields present in the StackScript being deployed to this Linode. Only
1838
- accepted if 'stackscript_id' is given. The required values depend on the StackScript being deployed.
1839
- :param pulumi.Input[_builtins.int] stackscript_id: The StackScript to deploy to the newly created Linode. If provided, 'image' must also be provided, and must be an Image
1840
- that is compatible with this StackScript.
1824
+ :param pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]] stackscript_data: An object containing responses to any User Defined Fields present in the StackScript being deployed to this Linode. Only accepted if 'stackscript_id' is given. The required values depend on the StackScript being deployed.
1825
+ :param pulumi.Input[_builtins.int] stackscript_id: The StackScript to deploy to the newly created Linode. If provided, 'image' must also be provided, and must be an Image that is compatible with this StackScript.
1841
1826
  :param pulumi.Input[_builtins.str] status: The status of the instance, indicating the current readiness state. (`running`, `offline`, ...)
1842
- :param pulumi.Input[_builtins.int] swap_size: When deploying from an Image, this field is optional with a Linode API default of 512mb, otherwise it is ignored. This
1843
- is used to set the swap disk size for the newly-created Linode.
1827
+ :param pulumi.Input[_builtins.int] swap_size: When deploying from an Image, this field is optional with a Linode API default of 512mb, otherwise it is ignored. This is used to set the swap disk size for the newly-created Linode.
1844
1828
  :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] tags: A list of tags applied to this object. Tags are case-insensitive and are for organizational purposes only.
1845
1829
  :param pulumi.Input[_builtins.str] type: The Linode type defines the pricing, CPU, disk, and RAM specs of the instance. Examples are `"g6-nanode-1"`, `"g6-standard-2"`, `"g6-highmem-16"`, `"g6-dedicated-16"`, etc. See all types [here](https://api.linode.com/v4/linode/types).
1846
1830
 
@@ -1874,6 +1858,7 @@ class Instance(pulumi.CustomResource):
1874
1858
  __props__.__dict__["ipv6"] = ipv6
1875
1859
  __props__.__dict__["label"] = label
1876
1860
  __props__.__dict__["lke_cluster_id"] = lke_cluster_id
1861
+ __props__.__dict__["maintenance_policy"] = maintenance_policy
1877
1862
  __props__.__dict__["metadatas"] = metadatas
1878
1863
  __props__.__dict__["migration_type"] = migration_type
1879
1864
  __props__.__dict__["placement_group"] = placement_group
@@ -1914,8 +1899,7 @@ class Instance(pulumi.CustomResource):
1914
1899
  @pulumi.getter(name="authorizedUsers")
1915
1900
  def authorized_users(self) -> pulumi.Output[Optional[Sequence[_builtins.str]]]:
1916
1901
  """
1917
- A list of Linode usernames. If the usernames have associated SSH keys, the keys will be appended to the `root` user's
1918
- `~/.ssh/authorized_keys` file automatically. Only accepted if 'image' is provided.
1902
+ A list of Linode usernames. If the usernames have associated SSH keys, the keys will be appended to the `root` user's `~/.ssh/authorized_keys` file automatically. Only accepted if 'image' is provided.
1919
1903
  """
1920
1904
  return pulumi.get(self, "authorized_users")
1921
1905
 
@@ -1923,10 +1907,7 @@ class Instance(pulumi.CustomResource):
1923
1907
  @pulumi.getter(name="backupId")
1924
1908
  def backup_id(self) -> pulumi.Output[Optional[_builtins.int]]:
1925
1909
  """
1926
- A Backup ID from another Linode's available backups. Your User must have read_write access to that Linode, the Backup
1927
- must have a status of successful, and the Linode must be deployed to the same region as the Backup. See
1928
- /linode/instances/{linodeId}/backups for a Linode's available backups. This field and the image field are mutually
1929
- exclusive.
1910
+ A Backup ID from another Linode's available backups. Your User must have read_write access to that Linode, the Backup must have a status of successful, and the Linode must be deployed to the same region as the Backup. See /linode/instances/{linodeId}/backups for a Linode's available backups. This field and the image field are mutually exclusive.
1930
1911
  """
1931
1912
  return pulumi.get(self, "backup_id")
1932
1913
 
@@ -2032,8 +2013,7 @@ class Instance(pulumi.CustomResource):
2032
2013
  @pulumi.getter
2033
2014
  def image(self) -> pulumi.Output[Optional[_builtins.str]]:
2034
2015
  """
2035
- An Image ID to deploy the Disk from. Official Linode Images start with linode/, while your Images start with private/.
2036
- See /images for more information on the Images available for you to use.
2016
+ An Image ID to deploy the Disk from. Official Linode Images start with linode/, while your Images start with private/. See /images for more information on the Images available for you to use.
2037
2017
  """
2038
2018
  return pulumi.get(self, "image")
2039
2019
 
@@ -2041,8 +2021,7 @@ class Instance(pulumi.CustomResource):
2041
2021
  @pulumi.getter
2042
2022
  def interfaces(self) -> pulumi.Output[Optional[Sequence['outputs.InstanceInterface']]]:
2043
2023
  """
2044
- An array of Network Interfaces for this Linode to be created with. If an explicit config or disk is defined, interfaces
2045
- must be declared in the config block.
2024
+ An array of Network Interfaces for this Linode to be created with. If an explicit config or disk is defined, interfaces must be declared in the config block.
2046
2025
  """
2047
2026
  return pulumi.get(self, "interfaces")
2048
2027
 
@@ -2089,6 +2068,14 @@ class Instance(pulumi.CustomResource):
2089
2068
  """
2090
2069
  return pulumi.get(self, "lke_cluster_id")
2091
2070
 
2071
+ @_builtins.property
2072
+ @pulumi.getter(name="maintenancePolicy")
2073
+ def maintenance_policy(self) -> pulumi.Output[_builtins.str]:
2074
+ """
2075
+ The maintenance policy of this Linode instance. Examples are `"linode/migrate"` and `"linode/power_off_on"`. Defaults to the default maintenance policy of the account. (**Note: v4beta only.**)
2076
+ """
2077
+ return pulumi.get(self, "maintenance_policy")
2078
+
2092
2079
  @_builtins.property
2093
2080
  @pulumi.getter
2094
2081
  def metadatas(self) -> pulumi.Output[Optional[Sequence['outputs.InstanceMetadata']]]:
@@ -2197,8 +2184,7 @@ class Instance(pulumi.CustomResource):
2197
2184
  @pulumi.getter(name="stackscriptData")
2198
2185
  def stackscript_data(self) -> pulumi.Output[Optional[Mapping[str, _builtins.str]]]:
2199
2186
  """
2200
- An object containing responses to any User Defined Fields present in the StackScript being deployed to this Linode. Only
2201
- accepted if 'stackscript_id' is given. The required values depend on the StackScript being deployed.
2187
+ An object containing responses to any User Defined Fields present in the StackScript being deployed to this Linode. Only accepted if 'stackscript_id' is given. The required values depend on the StackScript being deployed.
2202
2188
  """
2203
2189
  return pulumi.get(self, "stackscript_data")
2204
2190
 
@@ -2206,8 +2192,7 @@ class Instance(pulumi.CustomResource):
2206
2192
  @pulumi.getter(name="stackscriptId")
2207
2193
  def stackscript_id(self) -> pulumi.Output[Optional[_builtins.int]]:
2208
2194
  """
2209
- The StackScript to deploy to the newly created Linode. If provided, 'image' must also be provided, and must be an Image
2210
- that is compatible with this StackScript.
2195
+ The StackScript to deploy to the newly created Linode. If provided, 'image' must also be provided, and must be an Image that is compatible with this StackScript.
2211
2196
  """
2212
2197
  return pulumi.get(self, "stackscript_id")
2213
2198
 
@@ -2223,8 +2208,7 @@ class Instance(pulumi.CustomResource):
2223
2208
  @pulumi.getter(name="swapSize")
2224
2209
  def swap_size(self) -> pulumi.Output[_builtins.int]:
2225
2210
  """
2226
- When deploying from an Image, this field is optional with a Linode API default of 512mb, otherwise it is ignored. This
2227
- is used to set the swap disk size for the newly-created Linode.
2211
+ When deploying from an Image, this field is optional with a Linode API default of 512mb, otherwise it is ignored. This is used to set the swap disk size for the newly-created Linode.
2228
2212
  """
2229
2213
  return pulumi.get(self, "swap_size")
2230
2214