pulumi-alicloud 3.59.0a1720761596__py3-none-any.whl → 3.59.0a1720785756__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-alicloud might be problematic. Click here for more details.

Files changed (30) hide show
  1. pulumi_alicloud/__init__.py +48 -0
  2. pulumi_alicloud/adb/resource_group.py +115 -119
  3. pulumi_alicloud/clickhouse/get_regions.py +2 -2
  4. pulumi_alicloud/cloudstoragegateway/gateway_cache_disk.py +150 -27
  5. pulumi_alicloud/dfs/file_system.py +52 -19
  6. pulumi_alicloud/ecs/_inputs.py +132 -8
  7. pulumi_alicloud/ecs/image.py +607 -121
  8. pulumi_alicloud/ecs/outputs.py +131 -8
  9. pulumi_alicloud/emrv2/_inputs.py +490 -0
  10. pulumi_alicloud/emrv2/cluster.py +14 -14
  11. pulumi_alicloud/emrv2/outputs.py +500 -0
  12. pulumi_alicloud/ens/__init__.py +2 -0
  13. pulumi_alicloud/ens/eip_instance_attachment.py +480 -0
  14. pulumi_alicloud/ens/instance.py +16 -17
  15. pulumi_alicloud/ens/nat_gateway.py +458 -0
  16. pulumi_alicloud/ess/eci_scaling_configuration.py +94 -0
  17. pulumi_alicloud/ess/scaling_group.py +94 -0
  18. pulumi_alicloud/ga/bandwidth_package_attachment.py +34 -34
  19. pulumi_alicloud/ga/listener.py +122 -0
  20. pulumi_alicloud/gpdb/__init__.py +4 -0
  21. pulumi_alicloud/gpdb/external_data_service.py +485 -0
  22. pulumi_alicloud/gpdb/remote_adb_data_source.py +763 -0
  23. pulumi_alicloud/gpdb/streaming_data_service.py +481 -0
  24. pulumi_alicloud/gpdb/streaming_data_source.py +645 -0
  25. pulumi_alicloud/pulumi-plugin.json +1 -1
  26. pulumi_alicloud/redis/tair_instance.py +161 -67
  27. {pulumi_alicloud-3.59.0a1720761596.dist-info → pulumi_alicloud-3.59.0a1720785756.dist-info}/METADATA +1 -1
  28. {pulumi_alicloud-3.59.0a1720761596.dist-info → pulumi_alicloud-3.59.0a1720785756.dist-info}/RECORD +30 -24
  29. {pulumi_alicloud-3.59.0a1720761596.dist-info → pulumi_alicloud-3.59.0a1720785756.dist-info}/WHEEL +0 -0
  30. {pulumi_alicloud-3.59.0a1720761596.dist-info → pulumi_alicloud-3.59.0a1720785756.dist-info}/top_level.txt +0 -0
@@ -17,12 +17,18 @@ __all__ = ['ImageArgs', 'Image']
17
17
  class ImageArgs:
18
18
  def __init__(__self__, *,
19
19
  architecture: Optional[pulumi.Input[str]] = None,
20
+ boot_mode: Optional[pulumi.Input[str]] = None,
20
21
  delete_auto_snapshot: Optional[pulumi.Input[bool]] = None,
21
22
  description: Optional[pulumi.Input[str]] = None,
23
+ detection_strategy: Optional[pulumi.Input[str]] = None,
22
24
  disk_device_mappings: Optional[pulumi.Input[Sequence[pulumi.Input['ImageDiskDeviceMappingArgs']]]] = None,
25
+ features: Optional[pulumi.Input['ImageFeaturesArgs']] = None,
23
26
  force: Optional[pulumi.Input[bool]] = None,
27
+ image_family: Optional[pulumi.Input[str]] = None,
24
28
  image_name: Optional[pulumi.Input[str]] = None,
29
+ image_version: Optional[pulumi.Input[str]] = None,
25
30
  instance_id: Optional[pulumi.Input[str]] = None,
31
+ license_type: Optional[pulumi.Input[str]] = None,
26
32
  name: Optional[pulumi.Input[str]] = None,
27
33
  platform: Optional[pulumi.Input[str]] = None,
28
34
  resource_group_id: Optional[pulumi.Input[str]] = None,
@@ -30,40 +36,76 @@ class ImageArgs:
30
36
  tags: Optional[pulumi.Input[Mapping[str, Any]]] = None):
31
37
  """
32
38
  The set of arguments for constructing a Image resource.
33
- :param pulumi.Input[str] architecture: Specifies the architecture of the system disk after you specify a data disk snapshot as the data source of the system disk for creating an image. Valid values: `i386` , Default is `x86_64`.
34
- :param pulumi.Input[str] description: The description of the image. It must be 2 to 256 characters in length and must not start with http:// or https://. Default value: null.
35
- :param pulumi.Input[Sequence[pulumi.Input['ImageDiskDeviceMappingArgs']]] disk_device_mappings: Description of the system with disks and snapshots under the image.
36
- :param pulumi.Input[bool] force: Indicates whether to force delete the custom image, Default is `false`.
37
- - true:Force deletes the custom image, regardless of whether the image is currently being used by other instances.
38
- - false:Verifies that the image is not currently in use by any other instances before deleting the image.
39
- :param pulumi.Input[str] image_name: The image name. It must be 2 to 128 characters in length, and must begin with a letter or Chinese character (beginning with http:// or https:// is not allowed). It can contain digits, colons (:), underscores (_), or hyphens (-). Default value: null.
39
+ :param pulumi.Input[str] architecture: The system architecture of the system disk. If you specify a data disk snapshot to create the system disk of the custom image, you must use Architecture to specify the system architecture of the system disk. Valid values: `i386`, `x86\\_64`, `arm64`. Default value: `x86\\_64`.
40
+ :param pulumi.Input[str] boot_mode: The new boot mode of the image. Valid values:
41
+
42
+ * BIOS: Basic Input/Output System (BIOS)
43
+
44
+ * UEFI: Unified Extensible Firmware Interface (UEFI)
45
+
46
+ * UEFI-Preferred: BIOS and UEFI
47
+
48
+ > **NOTE:** Before you change the boot mode, we recommend that you obtain the boot modes supported by the image. If you specify an unsupported boot mode for the image, ECS instances that use the image cannot start as expected. If you do not know which boot modes are supported by the image, we recommend that you use the image check feature to perform a check. For information about the image check feature, see [Overview](https://www.alibabacloud.com/help/en/doc-detail/439819.html).
49
+
50
+ > **NOTE:** For information about the UEFI-Preferred boot mode, see [Best practices for ECS instance boot modes](https://www.alibabacloud.com/help/en/doc-detail/2244655.html).
51
+ :param pulumi.Input[bool] delete_auto_snapshot: Not the public attribute and it used to automatically delete dependence snapshots while deleting the image.
52
+ :param pulumi.Input[str] description: The new description of the custom image. The description must be 2 to 256 characters in length It cannot start with `http://` or `https://`. This parameter is empty by default, which specifies that the original description is retained.
53
+ :param pulumi.Input[str] detection_strategy: The mode in which to check the custom image. If you do not specify this parameter, the image is not checked. Only the standard check mode is supported.
54
+
55
+ > **NOTE:** This parameter is supported for most Linux and Windows operating system versions. For information about image check items and operating system limits for image check, see [Overview of image check](https://www.alibabacloud.com/help/en/doc-detail/439819.html) and [Operating system limits for image check](https://www.alibabacloud.com/help/en/doc-detail/475800.html).
56
+ :param pulumi.Input[Sequence[pulumi.Input['ImageDiskDeviceMappingArgs']]] disk_device_mappings: Snapshot information for the image See `disk_device_mapping` below.
57
+ :param pulumi.Input['ImageFeaturesArgs'] features: Features See `features` below.
58
+ :param pulumi.Input[bool] force: Whether to perform forced deletion. Value range:
59
+ - true: forcibly deletes the custom image, ignoring whether the current image is used by other instances.
60
+ - false: The custom image is deleted normally. Before deleting the custom image, check whether the current image is used by other instances.
61
+
62
+ Default value: false
63
+ :param pulumi.Input[str] image_family: The name of the image family. The name must be 2 to 128 characters in length. It must start with a letter and cannot start with acs: or aliyun. It cannot contain http:// or https://. It can contain letters, digits, periods (.), colons (:), underscores (\\_), and hyphens (-). By default, this parameter is empty.
64
+ :param pulumi.Input[str] image_name: The name of the custom image. The name must be 2 to 128 characters in length. It must start with a letter and cannot start with acs: or aliyun. It cannot contain http:// or https://. It can contain letters, digits, periods (.), colons (:), underscores (\\_), and hyphens (-). By default, this parameter is empty. In this case, the original name is retained.
65
+ :param pulumi.Input[str] image_version: The image version.
66
+
67
+ > **NOTE:** If you specify an instance by configuring `InstanceId`, and the instance uses an Alibaba Cloud Marketplace image or a custom image that is created from an Alibaba Cloud Marketplace image, you must leave this parameter empty or set this parameter to the value of ImageVersion of the instance.
40
68
  :param pulumi.Input[str] instance_id: The instance ID.
41
- :param pulumi.Input[str] platform: The distribution of the operating system for the system disk in the custom image.
42
- If you specify a data disk snapshot to create the system disk of the custom image, you must use the Platform parameter
43
- to specify the distribution of the operating system for the system disk. Default value: Others Linux.
44
- More valid values refer to [CreateImage OpenAPI](https://www.alibabacloud.com/help/en/elastic-compute-service/latest/createimage)
45
- **NOTE**: It's default value is Ubuntu before version 1.197.0.
46
- :param pulumi.Input[str] resource_group_id: The ID of the enterprise resource group to which a custom image belongs
47
- :param pulumi.Input[str] snapshot_id: Specifies a snapshot that is used to create a custom image.
48
- :param pulumi.Input[Mapping[str, Any]] tags: The tag value of an image. The value of N ranges from 1 to 20.
69
+ :param pulumi.Input[str] license_type: The type of the license that is used to activate the operating system after the image is imported. Set the value to BYOL. BYOL: The license that comes with the source operating system is used. When you use the BYOL license, make sure that your license key is supported by Alibaba Cloud.
70
+ :param pulumi.Input[str] name: . Field 'name' has been deprecated from provider version 1.227.0. New field 'image_name' instead.
71
+ :param pulumi.Input[str] platform: The operating system distribution for the system disk in the custom image. If you specify a data disk snapshot to create the system disk of the custom image, use Platform to specify the operating system distribution for the system disk. Valid values: `Aliyun`, `Anolis`, `CentOS`, `Ubuntu`, `CoreOS`, `SUSE`, `Debian`, `OpenSUSE`, `FreeBSD`, `RedHat`, `Kylin`, `UOS`, `Fedora`, `Fedora CoreOS`, `CentOS Stream`, `AlmaLinux`, `Rocky Linux`, `Gentoo`, `Customized Linux`, `Others Linux`, `Windows Server 2022`, `Windows Server 2019`, `Windows Server 2016`, `Windows Server 2012`, `Windows Server 2008`, `Windows Server 2003`. Default value: `Others Linux`.
72
+ :param pulumi.Input[str] resource_group_id: The ID of the resource group to which to assign the custom image. If you do not specify this parameter, the image is assigned to the default resource group.
73
+
74
+ > **NOTE:** If you call the CreateImage operation as a Resource Access Management (RAM) user who does not have the permissions to manage the default resource group and do not specify `ResourceGroupId`, the `Forbbiden: User not authorized to operate on the specified resource` error message is returned. You must specify the ID of a resource group that the RAM user has the permissions to manage or grant the RAM user the permissions to manage the default resource group before you call the CreateImage operation again.
75
+ :param pulumi.Input[str] snapshot_id: The ID of the snapshot that you want to use to create the custom image.
76
+ :param pulumi.Input[Mapping[str, Any]] tags: The tag
77
+
78
+ The following arguments will be discarded. Please use new fields as soon as possible:
49
79
  """
50
80
  if architecture is not None:
51
81
  pulumi.set(__self__, "architecture", architecture)
82
+ if boot_mode is not None:
83
+ pulumi.set(__self__, "boot_mode", boot_mode)
52
84
  if delete_auto_snapshot is not None:
53
85
  pulumi.set(__self__, "delete_auto_snapshot", delete_auto_snapshot)
54
86
  if description is not None:
55
87
  pulumi.set(__self__, "description", description)
88
+ if detection_strategy is not None:
89
+ pulumi.set(__self__, "detection_strategy", detection_strategy)
56
90
  if disk_device_mappings is not None:
57
91
  pulumi.set(__self__, "disk_device_mappings", disk_device_mappings)
92
+ if features is not None:
93
+ pulumi.set(__self__, "features", features)
58
94
  if force is not None:
59
95
  pulumi.set(__self__, "force", force)
96
+ if image_family is not None:
97
+ pulumi.set(__self__, "image_family", image_family)
60
98
  if image_name is not None:
61
99
  pulumi.set(__self__, "image_name", image_name)
100
+ if image_version is not None:
101
+ pulumi.set(__self__, "image_version", image_version)
62
102
  if instance_id is not None:
63
103
  pulumi.set(__self__, "instance_id", instance_id)
104
+ if license_type is not None:
105
+ pulumi.set(__self__, "license_type", license_type)
64
106
  if name is not None:
65
- warnings.warn("""Attribute 'name' has been deprecated from version 1.69.0. Use `image_name` instead.""", DeprecationWarning)
66
- pulumi.log.warn("""name is deprecated: Attribute 'name' has been deprecated from version 1.69.0. Use `image_name` instead.""")
107
+ warnings.warn("""Field 'name' has been deprecated since provider version 1.227.0. New field 'image_name' instead.""", DeprecationWarning)
108
+ pulumi.log.warn("""name is deprecated: Field 'name' has been deprecated since provider version 1.227.0. New field 'image_name' instead.""")
67
109
  if name is not None:
68
110
  pulumi.set(__self__, "name", name)
69
111
  if platform is not None:
@@ -79,7 +121,7 @@ class ImageArgs:
79
121
  @pulumi.getter
80
122
  def architecture(self) -> Optional[pulumi.Input[str]]:
81
123
  """
82
- Specifies the architecture of the system disk after you specify a data disk snapshot as the data source of the system disk for creating an image. Valid values: `i386` , Default is `x86_64`.
124
+ The system architecture of the system disk. If you specify a data disk snapshot to create the system disk of the custom image, you must use Architecture to specify the system architecture of the system disk. Valid values: `i386`, `x86\\_64`, `arm64`. Default value: `x86\\_64`.
83
125
  """
84
126
  return pulumi.get(self, "architecture")
85
127
 
@@ -87,9 +129,34 @@ class ImageArgs:
87
129
  def architecture(self, value: Optional[pulumi.Input[str]]):
88
130
  pulumi.set(self, "architecture", value)
89
131
 
132
+ @property
133
+ @pulumi.getter(name="bootMode")
134
+ def boot_mode(self) -> Optional[pulumi.Input[str]]:
135
+ """
136
+ The new boot mode of the image. Valid values:
137
+
138
+ * BIOS: Basic Input/Output System (BIOS)
139
+
140
+ * UEFI: Unified Extensible Firmware Interface (UEFI)
141
+
142
+ * UEFI-Preferred: BIOS and UEFI
143
+
144
+ > **NOTE:** Before you change the boot mode, we recommend that you obtain the boot modes supported by the image. If you specify an unsupported boot mode for the image, ECS instances that use the image cannot start as expected. If you do not know which boot modes are supported by the image, we recommend that you use the image check feature to perform a check. For information about the image check feature, see [Overview](https://www.alibabacloud.com/help/en/doc-detail/439819.html).
145
+
146
+ > **NOTE:** For information about the UEFI-Preferred boot mode, see [Best practices for ECS instance boot modes](https://www.alibabacloud.com/help/en/doc-detail/2244655.html).
147
+ """
148
+ return pulumi.get(self, "boot_mode")
149
+
150
+ @boot_mode.setter
151
+ def boot_mode(self, value: Optional[pulumi.Input[str]]):
152
+ pulumi.set(self, "boot_mode", value)
153
+
90
154
  @property
91
155
  @pulumi.getter(name="deleteAutoSnapshot")
92
156
  def delete_auto_snapshot(self) -> Optional[pulumi.Input[bool]]:
157
+ """
158
+ Not the public attribute and it used to automatically delete dependence snapshots while deleting the image.
159
+ """
93
160
  return pulumi.get(self, "delete_auto_snapshot")
94
161
 
95
162
  @delete_auto_snapshot.setter
@@ -100,7 +167,7 @@ class ImageArgs:
100
167
  @pulumi.getter
101
168
  def description(self) -> Optional[pulumi.Input[str]]:
102
169
  """
103
- The description of the image. It must be 2 to 256 characters in length and must not start with http:// or https://. Default value: null.
170
+ The new description of the custom image. The description must be 2 to 256 characters in length It cannot start with `http://` or `https://`. This parameter is empty by default, which specifies that the original description is retained.
104
171
  """
105
172
  return pulumi.get(self, "description")
106
173
 
@@ -108,11 +175,25 @@ class ImageArgs:
108
175
  def description(self, value: Optional[pulumi.Input[str]]):
109
176
  pulumi.set(self, "description", value)
110
177
 
178
+ @property
179
+ @pulumi.getter(name="detectionStrategy")
180
+ def detection_strategy(self) -> Optional[pulumi.Input[str]]:
181
+ """
182
+ The mode in which to check the custom image. If you do not specify this parameter, the image is not checked. Only the standard check mode is supported.
183
+
184
+ > **NOTE:** This parameter is supported for most Linux and Windows operating system versions. For information about image check items and operating system limits for image check, see [Overview of image check](https://www.alibabacloud.com/help/en/doc-detail/439819.html) and [Operating system limits for image check](https://www.alibabacloud.com/help/en/doc-detail/475800.html).
185
+ """
186
+ return pulumi.get(self, "detection_strategy")
187
+
188
+ @detection_strategy.setter
189
+ def detection_strategy(self, value: Optional[pulumi.Input[str]]):
190
+ pulumi.set(self, "detection_strategy", value)
191
+
111
192
  @property
112
193
  @pulumi.getter(name="diskDeviceMappings")
113
194
  def disk_device_mappings(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ImageDiskDeviceMappingArgs']]]]:
114
195
  """
115
- Description of the system with disks and snapshots under the image.
196
+ Snapshot information for the image See `disk_device_mapping` below.
116
197
  """
117
198
  return pulumi.get(self, "disk_device_mappings")
118
199
 
@@ -120,13 +201,27 @@ class ImageArgs:
120
201
  def disk_device_mappings(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['ImageDiskDeviceMappingArgs']]]]):
121
202
  pulumi.set(self, "disk_device_mappings", value)
122
203
 
204
+ @property
205
+ @pulumi.getter
206
+ def features(self) -> Optional[pulumi.Input['ImageFeaturesArgs']]:
207
+ """
208
+ Features See `features` below.
209
+ """
210
+ return pulumi.get(self, "features")
211
+
212
+ @features.setter
213
+ def features(self, value: Optional[pulumi.Input['ImageFeaturesArgs']]):
214
+ pulumi.set(self, "features", value)
215
+
123
216
  @property
124
217
  @pulumi.getter
125
218
  def force(self) -> Optional[pulumi.Input[bool]]:
126
219
  """
127
- Indicates whether to force delete the custom image, Default is `false`.
128
- - true:Force deletes the custom image, regardless of whether the image is currently being used by other instances.
129
- - false:Verifies that the image is not currently in use by any other instances before deleting the image.
220
+ Whether to perform forced deletion. Value range:
221
+ - true: forcibly deletes the custom image, ignoring whether the current image is used by other instances.
222
+ - false: The custom image is deleted normally. Before deleting the custom image, check whether the current image is used by other instances.
223
+
224
+ Default value: false
130
225
  """
131
226
  return pulumi.get(self, "force")
132
227
 
@@ -134,11 +229,23 @@ class ImageArgs:
134
229
  def force(self, value: Optional[pulumi.Input[bool]]):
135
230
  pulumi.set(self, "force", value)
136
231
 
232
+ @property
233
+ @pulumi.getter(name="imageFamily")
234
+ def image_family(self) -> Optional[pulumi.Input[str]]:
235
+ """
236
+ The name of the image family. The name must be 2 to 128 characters in length. It must start with a letter and cannot start with acs: or aliyun. It cannot contain http:// or https://. It can contain letters, digits, periods (.), colons (:), underscores (\\_), and hyphens (-). By default, this parameter is empty.
237
+ """
238
+ return pulumi.get(self, "image_family")
239
+
240
+ @image_family.setter
241
+ def image_family(self, value: Optional[pulumi.Input[str]]):
242
+ pulumi.set(self, "image_family", value)
243
+
137
244
  @property
138
245
  @pulumi.getter(name="imageName")
139
246
  def image_name(self) -> Optional[pulumi.Input[str]]:
140
247
  """
141
- The image name. It must be 2 to 128 characters in length, and must begin with a letter or Chinese character (beginning with http:// or https:// is not allowed). It can contain digits, colons (:), underscores (_), or hyphens (-). Default value: null.
248
+ The name of the custom image. The name must be 2 to 128 characters in length. It must start with a letter and cannot start with acs: or aliyun. It cannot contain http:// or https://. It can contain letters, digits, periods (.), colons (:), underscores (\\_), and hyphens (-). By default, this parameter is empty. In this case, the original name is retained.
142
249
  """
143
250
  return pulumi.get(self, "image_name")
144
251
 
@@ -146,6 +253,20 @@ class ImageArgs:
146
253
  def image_name(self, value: Optional[pulumi.Input[str]]):
147
254
  pulumi.set(self, "image_name", value)
148
255
 
256
+ @property
257
+ @pulumi.getter(name="imageVersion")
258
+ def image_version(self) -> Optional[pulumi.Input[str]]:
259
+ """
260
+ The image version.
261
+
262
+ > **NOTE:** If you specify an instance by configuring `InstanceId`, and the instance uses an Alibaba Cloud Marketplace image or a custom image that is created from an Alibaba Cloud Marketplace image, you must leave this parameter empty or set this parameter to the value of ImageVersion of the instance.
263
+ """
264
+ return pulumi.get(self, "image_version")
265
+
266
+ @image_version.setter
267
+ def image_version(self, value: Optional[pulumi.Input[str]]):
268
+ pulumi.set(self, "image_version", value)
269
+
149
270
  @property
150
271
  @pulumi.getter(name="instanceId")
151
272
  def instance_id(self) -> Optional[pulumi.Input[str]]:
@@ -158,10 +279,25 @@ class ImageArgs:
158
279
  def instance_id(self, value: Optional[pulumi.Input[str]]):
159
280
  pulumi.set(self, "instance_id", value)
160
281
 
282
+ @property
283
+ @pulumi.getter(name="licenseType")
284
+ def license_type(self) -> Optional[pulumi.Input[str]]:
285
+ """
286
+ The type of the license that is used to activate the operating system after the image is imported. Set the value to BYOL. BYOL: The license that comes with the source operating system is used. When you use the BYOL license, make sure that your license key is supported by Alibaba Cloud.
287
+ """
288
+ return pulumi.get(self, "license_type")
289
+
290
+ @license_type.setter
291
+ def license_type(self, value: Optional[pulumi.Input[str]]):
292
+ pulumi.set(self, "license_type", value)
293
+
161
294
  @property
162
295
  @pulumi.getter
163
- @_utilities.deprecated("""Attribute 'name' has been deprecated from version 1.69.0. Use `image_name` instead.""")
296
+ @_utilities.deprecated("""Field 'name' has been deprecated since provider version 1.227.0. New field 'image_name' instead.""")
164
297
  def name(self) -> Optional[pulumi.Input[str]]:
298
+ """
299
+ . Field 'name' has been deprecated from provider version 1.227.0. New field 'image_name' instead.
300
+ """
165
301
  return pulumi.get(self, "name")
166
302
 
167
303
  @name.setter
@@ -172,11 +308,7 @@ class ImageArgs:
172
308
  @pulumi.getter
173
309
  def platform(self) -> Optional[pulumi.Input[str]]:
174
310
  """
175
- The distribution of the operating system for the system disk in the custom image.
176
- If you specify a data disk snapshot to create the system disk of the custom image, you must use the Platform parameter
177
- to specify the distribution of the operating system for the system disk. Default value: Others Linux.
178
- More valid values refer to [CreateImage OpenAPI](https://www.alibabacloud.com/help/en/elastic-compute-service/latest/createimage)
179
- **NOTE**: It's default value is Ubuntu before version 1.197.0.
311
+ The operating system distribution for the system disk in the custom image. If you specify a data disk snapshot to create the system disk of the custom image, use Platform to specify the operating system distribution for the system disk. Valid values: `Aliyun`, `Anolis`, `CentOS`, `Ubuntu`, `CoreOS`, `SUSE`, `Debian`, `OpenSUSE`, `FreeBSD`, `RedHat`, `Kylin`, `UOS`, `Fedora`, `Fedora CoreOS`, `CentOS Stream`, `AlmaLinux`, `Rocky Linux`, `Gentoo`, `Customized Linux`, `Others Linux`, `Windows Server 2022`, `Windows Server 2019`, `Windows Server 2016`, `Windows Server 2012`, `Windows Server 2008`, `Windows Server 2003`. Default value: `Others Linux`.
180
312
  """
181
313
  return pulumi.get(self, "platform")
182
314
 
@@ -188,7 +320,9 @@ class ImageArgs:
188
320
  @pulumi.getter(name="resourceGroupId")
189
321
  def resource_group_id(self) -> Optional[pulumi.Input[str]]:
190
322
  """
191
- The ID of the enterprise resource group to which a custom image belongs
323
+ The ID of the resource group to which to assign the custom image. If you do not specify this parameter, the image is assigned to the default resource group.
324
+
325
+ > **NOTE:** If you call the CreateImage operation as a Resource Access Management (RAM) user who does not have the permissions to manage the default resource group and do not specify `ResourceGroupId`, the `Forbbiden: User not authorized to operate on the specified resource` error message is returned. You must specify the ID of a resource group that the RAM user has the permissions to manage or grant the RAM user the permissions to manage the default resource group before you call the CreateImage operation again.
192
326
  """
193
327
  return pulumi.get(self, "resource_group_id")
194
328
 
@@ -200,7 +334,7 @@ class ImageArgs:
200
334
  @pulumi.getter(name="snapshotId")
201
335
  def snapshot_id(self) -> Optional[pulumi.Input[str]]:
202
336
  """
203
- Specifies a snapshot that is used to create a custom image.
337
+ The ID of the snapshot that you want to use to create the custom image.
204
338
  """
205
339
  return pulumi.get(self, "snapshot_id")
206
340
 
@@ -212,7 +346,9 @@ class ImageArgs:
212
346
  @pulumi.getter
213
347
  def tags(self) -> Optional[pulumi.Input[Mapping[str, Any]]]:
214
348
  """
215
- The tag value of an image. The value of N ranges from 1 to 20.
349
+ The tag
350
+
351
+ The following arguments will be discarded. Please use new fields as soon as possible:
216
352
  """
217
353
  return pulumi.get(self, "tags")
218
354
 
@@ -225,53 +361,101 @@ class ImageArgs:
225
361
  class _ImageState:
226
362
  def __init__(__self__, *,
227
363
  architecture: Optional[pulumi.Input[str]] = None,
364
+ boot_mode: Optional[pulumi.Input[str]] = None,
365
+ create_time: Optional[pulumi.Input[str]] = None,
228
366
  delete_auto_snapshot: Optional[pulumi.Input[bool]] = None,
229
367
  description: Optional[pulumi.Input[str]] = None,
368
+ detection_strategy: Optional[pulumi.Input[str]] = None,
230
369
  disk_device_mappings: Optional[pulumi.Input[Sequence[pulumi.Input['ImageDiskDeviceMappingArgs']]]] = None,
370
+ features: Optional[pulumi.Input['ImageFeaturesArgs']] = None,
231
371
  force: Optional[pulumi.Input[bool]] = None,
372
+ image_family: Optional[pulumi.Input[str]] = None,
232
373
  image_name: Optional[pulumi.Input[str]] = None,
374
+ image_version: Optional[pulumi.Input[str]] = None,
233
375
  instance_id: Optional[pulumi.Input[str]] = None,
376
+ license_type: Optional[pulumi.Input[str]] = None,
234
377
  name: Optional[pulumi.Input[str]] = None,
235
378
  platform: Optional[pulumi.Input[str]] = None,
236
379
  resource_group_id: Optional[pulumi.Input[str]] = None,
237
380
  snapshot_id: Optional[pulumi.Input[str]] = None,
381
+ status: Optional[pulumi.Input[str]] = None,
238
382
  tags: Optional[pulumi.Input[Mapping[str, Any]]] = None):
239
383
  """
240
384
  Input properties used for looking up and filtering Image resources.
241
- :param pulumi.Input[str] architecture: Specifies the architecture of the system disk after you specify a data disk snapshot as the data source of the system disk for creating an image. Valid values: `i386` , Default is `x86_64`.
242
- :param pulumi.Input[str] description: The description of the image. It must be 2 to 256 characters in length and must not start with http:// or https://. Default value: null.
243
- :param pulumi.Input[Sequence[pulumi.Input['ImageDiskDeviceMappingArgs']]] disk_device_mappings: Description of the system with disks and snapshots under the image.
244
- :param pulumi.Input[bool] force: Indicates whether to force delete the custom image, Default is `false`.
245
- - true:Force deletes the custom image, regardless of whether the image is currently being used by other instances.
246
- - false:Verifies that the image is not currently in use by any other instances before deleting the image.
247
- :param pulumi.Input[str] image_name: The image name. It must be 2 to 128 characters in length, and must begin with a letter or Chinese character (beginning with http:// or https:// is not allowed). It can contain digits, colons (:), underscores (_), or hyphens (-). Default value: null.
385
+ :param pulumi.Input[str] architecture: The system architecture of the system disk. If you specify a data disk snapshot to create the system disk of the custom image, you must use Architecture to specify the system architecture of the system disk. Valid values: `i386`, `x86\\_64`, `arm64`. Default value: `x86\\_64`.
386
+ :param pulumi.Input[str] boot_mode: The new boot mode of the image. Valid values:
387
+
388
+ * BIOS: Basic Input/Output System (BIOS)
389
+
390
+ * UEFI: Unified Extensible Firmware Interface (UEFI)
391
+
392
+ * UEFI-Preferred: BIOS and UEFI
393
+
394
+ > **NOTE:** Before you change the boot mode, we recommend that you obtain the boot modes supported by the image. If you specify an unsupported boot mode for the image, ECS instances that use the image cannot start as expected. If you do not know which boot modes are supported by the image, we recommend that you use the image check feature to perform a check. For information about the image check feature, see [Overview](https://www.alibabacloud.com/help/en/doc-detail/439819.html).
395
+
396
+ > **NOTE:** For information about the UEFI-Preferred boot mode, see [Best practices for ECS instance boot modes](https://www.alibabacloud.com/help/en/doc-detail/2244655.html).
397
+ :param pulumi.Input[str] create_time: The create time
398
+ :param pulumi.Input[bool] delete_auto_snapshot: Not the public attribute and it used to automatically delete dependence snapshots while deleting the image.
399
+ :param pulumi.Input[str] description: The new description of the custom image. The description must be 2 to 256 characters in length It cannot start with `http://` or `https://`. This parameter is empty by default, which specifies that the original description is retained.
400
+ :param pulumi.Input[str] detection_strategy: The mode in which to check the custom image. If you do not specify this parameter, the image is not checked. Only the standard check mode is supported.
401
+
402
+ > **NOTE:** This parameter is supported for most Linux and Windows operating system versions. For information about image check items and operating system limits for image check, see [Overview of image check](https://www.alibabacloud.com/help/en/doc-detail/439819.html) and [Operating system limits for image check](https://www.alibabacloud.com/help/en/doc-detail/475800.html).
403
+ :param pulumi.Input[Sequence[pulumi.Input['ImageDiskDeviceMappingArgs']]] disk_device_mappings: Snapshot information for the image See `disk_device_mapping` below.
404
+ :param pulumi.Input['ImageFeaturesArgs'] features: Features See `features` below.
405
+ :param pulumi.Input[bool] force: Whether to perform forced deletion. Value range:
406
+ - true: forcibly deletes the custom image, ignoring whether the current image is used by other instances.
407
+ - false: The custom image is deleted normally. Before deleting the custom image, check whether the current image is used by other instances.
408
+
409
+ Default value: false
410
+ :param pulumi.Input[str] image_family: The name of the image family. The name must be 2 to 128 characters in length. It must start with a letter and cannot start with acs: or aliyun. It cannot contain http:// or https://. It can contain letters, digits, periods (.), colons (:), underscores (\\_), and hyphens (-). By default, this parameter is empty.
411
+ :param pulumi.Input[str] image_name: The name of the custom image. The name must be 2 to 128 characters in length. It must start with a letter and cannot start with acs: or aliyun. It cannot contain http:// or https://. It can contain letters, digits, periods (.), colons (:), underscores (\\_), and hyphens (-). By default, this parameter is empty. In this case, the original name is retained.
412
+ :param pulumi.Input[str] image_version: The image version.
413
+
414
+ > **NOTE:** If you specify an instance by configuring `InstanceId`, and the instance uses an Alibaba Cloud Marketplace image or a custom image that is created from an Alibaba Cloud Marketplace image, you must leave this parameter empty or set this parameter to the value of ImageVersion of the instance.
248
415
  :param pulumi.Input[str] instance_id: The instance ID.
249
- :param pulumi.Input[str] platform: The distribution of the operating system for the system disk in the custom image.
250
- If you specify a data disk snapshot to create the system disk of the custom image, you must use the Platform parameter
251
- to specify the distribution of the operating system for the system disk. Default value: Others Linux.
252
- More valid values refer to [CreateImage OpenAPI](https://www.alibabacloud.com/help/en/elastic-compute-service/latest/createimage)
253
- **NOTE**: It's default value is Ubuntu before version 1.197.0.
254
- :param pulumi.Input[str] resource_group_id: The ID of the enterprise resource group to which a custom image belongs
255
- :param pulumi.Input[str] snapshot_id: Specifies a snapshot that is used to create a custom image.
256
- :param pulumi.Input[Mapping[str, Any]] tags: The tag value of an image. The value of N ranges from 1 to 20.
416
+ :param pulumi.Input[str] license_type: The type of the license that is used to activate the operating system after the image is imported. Set the value to BYOL. BYOL: The license that comes with the source operating system is used. When you use the BYOL license, make sure that your license key is supported by Alibaba Cloud.
417
+ :param pulumi.Input[str] name: . Field 'name' has been deprecated from provider version 1.227.0. New field 'image_name' instead.
418
+ :param pulumi.Input[str] platform: The operating system distribution for the system disk in the custom image. If you specify a data disk snapshot to create the system disk of the custom image, use Platform to specify the operating system distribution for the system disk. Valid values: `Aliyun`, `Anolis`, `CentOS`, `Ubuntu`, `CoreOS`, `SUSE`, `Debian`, `OpenSUSE`, `FreeBSD`, `RedHat`, `Kylin`, `UOS`, `Fedora`, `Fedora CoreOS`, `CentOS Stream`, `AlmaLinux`, `Rocky Linux`, `Gentoo`, `Customized Linux`, `Others Linux`, `Windows Server 2022`, `Windows Server 2019`, `Windows Server 2016`, `Windows Server 2012`, `Windows Server 2008`, `Windows Server 2003`. Default value: `Others Linux`.
419
+ :param pulumi.Input[str] resource_group_id: The ID of the resource group to which to assign the custom image. If you do not specify this parameter, the image is assigned to the default resource group.
420
+
421
+ > **NOTE:** If you call the CreateImage operation as a Resource Access Management (RAM) user who does not have the permissions to manage the default resource group and do not specify `ResourceGroupId`, the `Forbbiden: User not authorized to operate on the specified resource` error message is returned. You must specify the ID of a resource group that the RAM user has the permissions to manage or grant the RAM user the permissions to manage the default resource group before you call the CreateImage operation again.
422
+ :param pulumi.Input[str] snapshot_id: The ID of the snapshot that you want to use to create the custom image.
423
+ :param pulumi.Input[str] status: The status of the image. By default, if you do not specify this parameter, only images in the Available state are returned.
424
+ :param pulumi.Input[Mapping[str, Any]] tags: The tag
425
+
426
+ The following arguments will be discarded. Please use new fields as soon as possible:
257
427
  """
258
428
  if architecture is not None:
259
429
  pulumi.set(__self__, "architecture", architecture)
430
+ if boot_mode is not None:
431
+ pulumi.set(__self__, "boot_mode", boot_mode)
432
+ if create_time is not None:
433
+ pulumi.set(__self__, "create_time", create_time)
260
434
  if delete_auto_snapshot is not None:
261
435
  pulumi.set(__self__, "delete_auto_snapshot", delete_auto_snapshot)
262
436
  if description is not None:
263
437
  pulumi.set(__self__, "description", description)
438
+ if detection_strategy is not None:
439
+ pulumi.set(__self__, "detection_strategy", detection_strategy)
264
440
  if disk_device_mappings is not None:
265
441
  pulumi.set(__self__, "disk_device_mappings", disk_device_mappings)
442
+ if features is not None:
443
+ pulumi.set(__self__, "features", features)
266
444
  if force is not None:
267
445
  pulumi.set(__self__, "force", force)
446
+ if image_family is not None:
447
+ pulumi.set(__self__, "image_family", image_family)
268
448
  if image_name is not None:
269
449
  pulumi.set(__self__, "image_name", image_name)
450
+ if image_version is not None:
451
+ pulumi.set(__self__, "image_version", image_version)
270
452
  if instance_id is not None:
271
453
  pulumi.set(__self__, "instance_id", instance_id)
454
+ if license_type is not None:
455
+ pulumi.set(__self__, "license_type", license_type)
272
456
  if name is not None:
273
- warnings.warn("""Attribute 'name' has been deprecated from version 1.69.0. Use `image_name` instead.""", DeprecationWarning)
274
- pulumi.log.warn("""name is deprecated: Attribute 'name' has been deprecated from version 1.69.0. Use `image_name` instead.""")
457
+ warnings.warn("""Field 'name' has been deprecated since provider version 1.227.0. New field 'image_name' instead.""", DeprecationWarning)
458
+ pulumi.log.warn("""name is deprecated: Field 'name' has been deprecated since provider version 1.227.0. New field 'image_name' instead.""")
275
459
  if name is not None:
276
460
  pulumi.set(__self__, "name", name)
277
461
  if platform is not None:
@@ -280,6 +464,8 @@ class _ImageState:
280
464
  pulumi.set(__self__, "resource_group_id", resource_group_id)
281
465
  if snapshot_id is not None:
282
466
  pulumi.set(__self__, "snapshot_id", snapshot_id)
467
+ if status is not None:
468
+ pulumi.set(__self__, "status", status)
283
469
  if tags is not None:
284
470
  pulumi.set(__self__, "tags", tags)
285
471
 
@@ -287,7 +473,7 @@ class _ImageState:
287
473
  @pulumi.getter
288
474
  def architecture(self) -> Optional[pulumi.Input[str]]:
289
475
  """
290
- Specifies the architecture of the system disk after you specify a data disk snapshot as the data source of the system disk for creating an image. Valid values: `i386` , Default is `x86_64`.
476
+ The system architecture of the system disk. If you specify a data disk snapshot to create the system disk of the custom image, you must use Architecture to specify the system architecture of the system disk. Valid values: `i386`, `x86\\_64`, `arm64`. Default value: `x86\\_64`.
291
477
  """
292
478
  return pulumi.get(self, "architecture")
293
479
 
@@ -295,9 +481,46 @@ class _ImageState:
295
481
  def architecture(self, value: Optional[pulumi.Input[str]]):
296
482
  pulumi.set(self, "architecture", value)
297
483
 
484
+ @property
485
+ @pulumi.getter(name="bootMode")
486
+ def boot_mode(self) -> Optional[pulumi.Input[str]]:
487
+ """
488
+ The new boot mode of the image. Valid values:
489
+
490
+ * BIOS: Basic Input/Output System (BIOS)
491
+
492
+ * UEFI: Unified Extensible Firmware Interface (UEFI)
493
+
494
+ * UEFI-Preferred: BIOS and UEFI
495
+
496
+ > **NOTE:** Before you change the boot mode, we recommend that you obtain the boot modes supported by the image. If you specify an unsupported boot mode for the image, ECS instances that use the image cannot start as expected. If you do not know which boot modes are supported by the image, we recommend that you use the image check feature to perform a check. For information about the image check feature, see [Overview](https://www.alibabacloud.com/help/en/doc-detail/439819.html).
497
+
498
+ > **NOTE:** For information about the UEFI-Preferred boot mode, see [Best practices for ECS instance boot modes](https://www.alibabacloud.com/help/en/doc-detail/2244655.html).
499
+ """
500
+ return pulumi.get(self, "boot_mode")
501
+
502
+ @boot_mode.setter
503
+ def boot_mode(self, value: Optional[pulumi.Input[str]]):
504
+ pulumi.set(self, "boot_mode", value)
505
+
506
+ @property
507
+ @pulumi.getter(name="createTime")
508
+ def create_time(self) -> Optional[pulumi.Input[str]]:
509
+ """
510
+ The create time
511
+ """
512
+ return pulumi.get(self, "create_time")
513
+
514
+ @create_time.setter
515
+ def create_time(self, value: Optional[pulumi.Input[str]]):
516
+ pulumi.set(self, "create_time", value)
517
+
298
518
  @property
299
519
  @pulumi.getter(name="deleteAutoSnapshot")
300
520
  def delete_auto_snapshot(self) -> Optional[pulumi.Input[bool]]:
521
+ """
522
+ Not the public attribute and it used to automatically delete dependence snapshots while deleting the image.
523
+ """
301
524
  return pulumi.get(self, "delete_auto_snapshot")
302
525
 
303
526
  @delete_auto_snapshot.setter
@@ -308,7 +531,7 @@ class _ImageState:
308
531
  @pulumi.getter
309
532
  def description(self) -> Optional[pulumi.Input[str]]:
310
533
  """
311
- The description of the image. It must be 2 to 256 characters in length and must not start with http:// or https://. Default value: null.
534
+ The new description of the custom image. The description must be 2 to 256 characters in length It cannot start with `http://` or `https://`. This parameter is empty by default, which specifies that the original description is retained.
312
535
  """
313
536
  return pulumi.get(self, "description")
314
537
 
@@ -316,11 +539,25 @@ class _ImageState:
316
539
  def description(self, value: Optional[pulumi.Input[str]]):
317
540
  pulumi.set(self, "description", value)
318
541
 
542
+ @property
543
+ @pulumi.getter(name="detectionStrategy")
544
+ def detection_strategy(self) -> Optional[pulumi.Input[str]]:
545
+ """
546
+ The mode in which to check the custom image. If you do not specify this parameter, the image is not checked. Only the standard check mode is supported.
547
+
548
+ > **NOTE:** This parameter is supported for most Linux and Windows operating system versions. For information about image check items and operating system limits for image check, see [Overview of image check](https://www.alibabacloud.com/help/en/doc-detail/439819.html) and [Operating system limits for image check](https://www.alibabacloud.com/help/en/doc-detail/475800.html).
549
+ """
550
+ return pulumi.get(self, "detection_strategy")
551
+
552
+ @detection_strategy.setter
553
+ def detection_strategy(self, value: Optional[pulumi.Input[str]]):
554
+ pulumi.set(self, "detection_strategy", value)
555
+
319
556
  @property
320
557
  @pulumi.getter(name="diskDeviceMappings")
321
558
  def disk_device_mappings(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ImageDiskDeviceMappingArgs']]]]:
322
559
  """
323
- Description of the system with disks and snapshots under the image.
560
+ Snapshot information for the image See `disk_device_mapping` below.
324
561
  """
325
562
  return pulumi.get(self, "disk_device_mappings")
326
563
 
@@ -328,13 +565,27 @@ class _ImageState:
328
565
  def disk_device_mappings(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['ImageDiskDeviceMappingArgs']]]]):
329
566
  pulumi.set(self, "disk_device_mappings", value)
330
567
 
568
+ @property
569
+ @pulumi.getter
570
+ def features(self) -> Optional[pulumi.Input['ImageFeaturesArgs']]:
571
+ """
572
+ Features See `features` below.
573
+ """
574
+ return pulumi.get(self, "features")
575
+
576
+ @features.setter
577
+ def features(self, value: Optional[pulumi.Input['ImageFeaturesArgs']]):
578
+ pulumi.set(self, "features", value)
579
+
331
580
  @property
332
581
  @pulumi.getter
333
582
  def force(self) -> Optional[pulumi.Input[bool]]:
334
583
  """
335
- Indicates whether to force delete the custom image, Default is `false`.
336
- - true:Force deletes the custom image, regardless of whether the image is currently being used by other instances.
337
- - false:Verifies that the image is not currently in use by any other instances before deleting the image.
584
+ Whether to perform forced deletion. Value range:
585
+ - true: forcibly deletes the custom image, ignoring whether the current image is used by other instances.
586
+ - false: The custom image is deleted normally. Before deleting the custom image, check whether the current image is used by other instances.
587
+
588
+ Default value: false
338
589
  """
339
590
  return pulumi.get(self, "force")
340
591
 
@@ -342,11 +593,23 @@ class _ImageState:
342
593
  def force(self, value: Optional[pulumi.Input[bool]]):
343
594
  pulumi.set(self, "force", value)
344
595
 
596
+ @property
597
+ @pulumi.getter(name="imageFamily")
598
+ def image_family(self) -> Optional[pulumi.Input[str]]:
599
+ """
600
+ The name of the image family. The name must be 2 to 128 characters in length. It must start with a letter and cannot start with acs: or aliyun. It cannot contain http:// or https://. It can contain letters, digits, periods (.), colons (:), underscores (\\_), and hyphens (-). By default, this parameter is empty.
601
+ """
602
+ return pulumi.get(self, "image_family")
603
+
604
+ @image_family.setter
605
+ def image_family(self, value: Optional[pulumi.Input[str]]):
606
+ pulumi.set(self, "image_family", value)
607
+
345
608
  @property
346
609
  @pulumi.getter(name="imageName")
347
610
  def image_name(self) -> Optional[pulumi.Input[str]]:
348
611
  """
349
- The image name. It must be 2 to 128 characters in length, and must begin with a letter or Chinese character (beginning with http:// or https:// is not allowed). It can contain digits, colons (:), underscores (_), or hyphens (-). Default value: null.
612
+ The name of the custom image. The name must be 2 to 128 characters in length. It must start with a letter and cannot start with acs: or aliyun. It cannot contain http:// or https://. It can contain letters, digits, periods (.), colons (:), underscores (\\_), and hyphens (-). By default, this parameter is empty. In this case, the original name is retained.
350
613
  """
351
614
  return pulumi.get(self, "image_name")
352
615
 
@@ -354,6 +617,20 @@ class _ImageState:
354
617
  def image_name(self, value: Optional[pulumi.Input[str]]):
355
618
  pulumi.set(self, "image_name", value)
356
619
 
620
+ @property
621
+ @pulumi.getter(name="imageVersion")
622
+ def image_version(self) -> Optional[pulumi.Input[str]]:
623
+ """
624
+ The image version.
625
+
626
+ > **NOTE:** If you specify an instance by configuring `InstanceId`, and the instance uses an Alibaba Cloud Marketplace image or a custom image that is created from an Alibaba Cloud Marketplace image, you must leave this parameter empty or set this parameter to the value of ImageVersion of the instance.
627
+ """
628
+ return pulumi.get(self, "image_version")
629
+
630
+ @image_version.setter
631
+ def image_version(self, value: Optional[pulumi.Input[str]]):
632
+ pulumi.set(self, "image_version", value)
633
+
357
634
  @property
358
635
  @pulumi.getter(name="instanceId")
359
636
  def instance_id(self) -> Optional[pulumi.Input[str]]:
@@ -366,10 +643,25 @@ class _ImageState:
366
643
  def instance_id(self, value: Optional[pulumi.Input[str]]):
367
644
  pulumi.set(self, "instance_id", value)
368
645
 
646
+ @property
647
+ @pulumi.getter(name="licenseType")
648
+ def license_type(self) -> Optional[pulumi.Input[str]]:
649
+ """
650
+ The type of the license that is used to activate the operating system after the image is imported. Set the value to BYOL. BYOL: The license that comes with the source operating system is used. When you use the BYOL license, make sure that your license key is supported by Alibaba Cloud.
651
+ """
652
+ return pulumi.get(self, "license_type")
653
+
654
+ @license_type.setter
655
+ def license_type(self, value: Optional[pulumi.Input[str]]):
656
+ pulumi.set(self, "license_type", value)
657
+
369
658
  @property
370
659
  @pulumi.getter
371
- @_utilities.deprecated("""Attribute 'name' has been deprecated from version 1.69.0. Use `image_name` instead.""")
660
+ @_utilities.deprecated("""Field 'name' has been deprecated since provider version 1.227.0. New field 'image_name' instead.""")
372
661
  def name(self) -> Optional[pulumi.Input[str]]:
662
+ """
663
+ . Field 'name' has been deprecated from provider version 1.227.0. New field 'image_name' instead.
664
+ """
373
665
  return pulumi.get(self, "name")
374
666
 
375
667
  @name.setter
@@ -380,11 +672,7 @@ class _ImageState:
380
672
  @pulumi.getter
381
673
  def platform(self) -> Optional[pulumi.Input[str]]:
382
674
  """
383
- The distribution of the operating system for the system disk in the custom image.
384
- If you specify a data disk snapshot to create the system disk of the custom image, you must use the Platform parameter
385
- to specify the distribution of the operating system for the system disk. Default value: Others Linux.
386
- More valid values refer to [CreateImage OpenAPI](https://www.alibabacloud.com/help/en/elastic-compute-service/latest/createimage)
387
- **NOTE**: It's default value is Ubuntu before version 1.197.0.
675
+ The operating system distribution for the system disk in the custom image. If you specify a data disk snapshot to create the system disk of the custom image, use Platform to specify the operating system distribution for the system disk. Valid values: `Aliyun`, `Anolis`, `CentOS`, `Ubuntu`, `CoreOS`, `SUSE`, `Debian`, `OpenSUSE`, `FreeBSD`, `RedHat`, `Kylin`, `UOS`, `Fedora`, `Fedora CoreOS`, `CentOS Stream`, `AlmaLinux`, `Rocky Linux`, `Gentoo`, `Customized Linux`, `Others Linux`, `Windows Server 2022`, `Windows Server 2019`, `Windows Server 2016`, `Windows Server 2012`, `Windows Server 2008`, `Windows Server 2003`. Default value: `Others Linux`.
388
676
  """
389
677
  return pulumi.get(self, "platform")
390
678
 
@@ -396,7 +684,9 @@ class _ImageState:
396
684
  @pulumi.getter(name="resourceGroupId")
397
685
  def resource_group_id(self) -> Optional[pulumi.Input[str]]:
398
686
  """
399
- The ID of the enterprise resource group to which a custom image belongs
687
+ The ID of the resource group to which to assign the custom image. If you do not specify this parameter, the image is assigned to the default resource group.
688
+
689
+ > **NOTE:** If you call the CreateImage operation as a Resource Access Management (RAM) user who does not have the permissions to manage the default resource group and do not specify `ResourceGroupId`, the `Forbbiden: User not authorized to operate on the specified resource` error message is returned. You must specify the ID of a resource group that the RAM user has the permissions to manage or grant the RAM user the permissions to manage the default resource group before you call the CreateImage operation again.
400
690
  """
401
691
  return pulumi.get(self, "resource_group_id")
402
692
 
@@ -408,7 +698,7 @@ class _ImageState:
408
698
  @pulumi.getter(name="snapshotId")
409
699
  def snapshot_id(self) -> Optional[pulumi.Input[str]]:
410
700
  """
411
- Specifies a snapshot that is used to create a custom image.
701
+ The ID of the snapshot that you want to use to create the custom image.
412
702
  """
413
703
  return pulumi.get(self, "snapshot_id")
414
704
 
@@ -416,11 +706,25 @@ class _ImageState:
416
706
  def snapshot_id(self, value: Optional[pulumi.Input[str]]):
417
707
  pulumi.set(self, "snapshot_id", value)
418
708
 
709
+ @property
710
+ @pulumi.getter
711
+ def status(self) -> Optional[pulumi.Input[str]]:
712
+ """
713
+ The status of the image. By default, if you do not specify this parameter, only images in the Available state are returned.
714
+ """
715
+ return pulumi.get(self, "status")
716
+
717
+ @status.setter
718
+ def status(self, value: Optional[pulumi.Input[str]]):
719
+ pulumi.set(self, "status", value)
720
+
419
721
  @property
420
722
  @pulumi.getter
421
723
  def tags(self) -> Optional[pulumi.Input[Mapping[str, Any]]]:
422
724
  """
423
- The tag value of an image. The value of N ranges from 1 to 20.
725
+ The tag
726
+
727
+ The following arguments will be discarded. Please use new fields as soon as possible:
424
728
  """
425
729
  return pulumi.get(self, "tags")
426
730
 
@@ -435,12 +739,18 @@ class Image(pulumi.CustomResource):
435
739
  resource_name: str,
436
740
  opts: Optional[pulumi.ResourceOptions] = None,
437
741
  architecture: Optional[pulumi.Input[str]] = None,
742
+ boot_mode: Optional[pulumi.Input[str]] = None,
438
743
  delete_auto_snapshot: Optional[pulumi.Input[bool]] = None,
439
744
  description: Optional[pulumi.Input[str]] = None,
745
+ detection_strategy: Optional[pulumi.Input[str]] = None,
440
746
  disk_device_mappings: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ImageDiskDeviceMappingArgs']]]]] = None,
747
+ features: Optional[pulumi.Input[pulumi.InputType['ImageFeaturesArgs']]] = None,
441
748
  force: Optional[pulumi.Input[bool]] = None,
749
+ image_family: Optional[pulumi.Input[str]] = None,
442
750
  image_name: Optional[pulumi.Input[str]] = None,
751
+ image_version: Optional[pulumi.Input[str]] = None,
443
752
  instance_id: Optional[pulumi.Input[str]] = None,
753
+ license_type: Optional[pulumi.Input[str]] = None,
444
754
  name: Optional[pulumi.Input[str]] = None,
445
755
  platform: Optional[pulumi.Input[str]] = None,
446
756
  resource_group_id: Optional[pulumi.Input[str]] = None,
@@ -448,7 +758,7 @@ class Image(pulumi.CustomResource):
448
758
  tags: Optional[pulumi.Input[Mapping[str, Any]]] = None,
449
759
  __props__=None):
450
760
  """
451
- Creates a custom image. You can then use a custom image to create ECS instances (RunInstances) or change the system disk for an existing instance (ReplaceSystemDisk).
761
+ Provides a ECS Image resource.
452
762
 
453
763
  > **NOTE:** If you want to create a template from an ECS instance, you can specify the instance ID (InstanceId) to create a custom image. You must make sure that the status of the specified instance is Running or Stopped. After a successful invocation, each disk of the specified instance has a new snapshot created.
454
764
 
@@ -456,10 +766,14 @@ class Image(pulumi.CustomResource):
456
766
 
457
767
  > **NOTE:** If you want to combine snapshots of multiple disks into an image template, you can specify DiskDeviceMapping to create a custom image.
458
768
 
769
+ For information about ECS Image and how to use it, see [What is Image](https://www.alibabacloud.com/help/en/ecs/developer-reference/api-ecs-2014-05-26-createimage).
770
+
459
771
  > **NOTE:** Available since v1.64.0.
460
772
 
461
773
  ## Example Usage
462
774
 
775
+ Basic Usage
776
+
463
777
  ```python
464
778
  import pulumi
465
779
  import pulumi_alicloud as alicloud
@@ -468,7 +782,8 @@ class Image(pulumi.CustomResource):
468
782
  default = alicloud.get_zones(available_resource_creation="Instance")
469
783
  default_get_instance_types = alicloud.ecs.get_instance_types(instance_type_family="ecs.sn1ne")
470
784
  default_get_images = alicloud.ecs.get_images(name_regex="^ubuntu_[0-9]+_[0-9]+_x64*",
471
- owners="system")
785
+ owners="system",
786
+ instance_type=default_get_instance_types.ids[0])
472
787
  default_network = alicloud.vpc.Network("default",
473
788
  vpc_name="terraform-example",
474
789
  cidr_block="172.17.3.0/24")
@@ -505,30 +820,54 @@ class Image(pulumi.CustomResource):
505
820
 
506
821
  ## Import
507
822
 
508
- image can be imported using the id, e.g.
823
+ ECS Image can be imported using the id, e.g.
509
824
 
510
825
  ```sh
511
- $ pulumi import alicloud:ecs/image:Image default m-uf66871ape***yg1q***
826
+ $ pulumi import alicloud:ecs/image:Image example <id>
512
827
  ```
513
828
 
514
829
  :param str resource_name: The name of the resource.
515
830
  :param pulumi.ResourceOptions opts: Options for the resource.
516
- :param pulumi.Input[str] architecture: Specifies the architecture of the system disk after you specify a data disk snapshot as the data source of the system disk for creating an image. Valid values: `i386` , Default is `x86_64`.
517
- :param pulumi.Input[str] description: The description of the image. It must be 2 to 256 characters in length and must not start with http:// or https://. Default value: null.
518
- :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ImageDiskDeviceMappingArgs']]]] disk_device_mappings: Description of the system with disks and snapshots under the image.
519
- :param pulumi.Input[bool] force: Indicates whether to force delete the custom image, Default is `false`.
520
- - true:Force deletes the custom image, regardless of whether the image is currently being used by other instances.
521
- - false:Verifies that the image is not currently in use by any other instances before deleting the image.
522
- :param pulumi.Input[str] image_name: The image name. It must be 2 to 128 characters in length, and must begin with a letter or Chinese character (beginning with http:// or https:// is not allowed). It can contain digits, colons (:), underscores (_), or hyphens (-). Default value: null.
831
+ :param pulumi.Input[str] architecture: The system architecture of the system disk. If you specify a data disk snapshot to create the system disk of the custom image, you must use Architecture to specify the system architecture of the system disk. Valid values: `i386`, `x86\\_64`, `arm64`. Default value: `x86\\_64`.
832
+ :param pulumi.Input[str] boot_mode: The new boot mode of the image. Valid values:
833
+
834
+ * BIOS: Basic Input/Output System (BIOS)
835
+
836
+ * UEFI: Unified Extensible Firmware Interface (UEFI)
837
+
838
+ * UEFI-Preferred: BIOS and UEFI
839
+
840
+ > **NOTE:** Before you change the boot mode, we recommend that you obtain the boot modes supported by the image. If you specify an unsupported boot mode for the image, ECS instances that use the image cannot start as expected. If you do not know which boot modes are supported by the image, we recommend that you use the image check feature to perform a check. For information about the image check feature, see [Overview](https://www.alibabacloud.com/help/en/doc-detail/439819.html).
841
+
842
+ > **NOTE:** For information about the UEFI-Preferred boot mode, see [Best practices for ECS instance boot modes](https://www.alibabacloud.com/help/en/doc-detail/2244655.html).
843
+ :param pulumi.Input[bool] delete_auto_snapshot: Not the public attribute and it used to automatically delete dependence snapshots while deleting the image.
844
+ :param pulumi.Input[str] description: The new description of the custom image. The description must be 2 to 256 characters in length It cannot start with `http://` or `https://`. This parameter is empty by default, which specifies that the original description is retained.
845
+ :param pulumi.Input[str] detection_strategy: The mode in which to check the custom image. If you do not specify this parameter, the image is not checked. Only the standard check mode is supported.
846
+
847
+ > **NOTE:** This parameter is supported for most Linux and Windows operating system versions. For information about image check items and operating system limits for image check, see [Overview of image check](https://www.alibabacloud.com/help/en/doc-detail/439819.html) and [Operating system limits for image check](https://www.alibabacloud.com/help/en/doc-detail/475800.html).
848
+ :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ImageDiskDeviceMappingArgs']]]] disk_device_mappings: Snapshot information for the image See `disk_device_mapping` below.
849
+ :param pulumi.Input[pulumi.InputType['ImageFeaturesArgs']] features: Features See `features` below.
850
+ :param pulumi.Input[bool] force: Whether to perform forced deletion. Value range:
851
+ - true: forcibly deletes the custom image, ignoring whether the current image is used by other instances.
852
+ - false: The custom image is deleted normally. Before deleting the custom image, check whether the current image is used by other instances.
853
+
854
+ Default value: false
855
+ :param pulumi.Input[str] image_family: The name of the image family. The name must be 2 to 128 characters in length. It must start with a letter and cannot start with acs: or aliyun. It cannot contain http:// or https://. It can contain letters, digits, periods (.), colons (:), underscores (\\_), and hyphens (-). By default, this parameter is empty.
856
+ :param pulumi.Input[str] image_name: The name of the custom image. The name must be 2 to 128 characters in length. It must start with a letter and cannot start with acs: or aliyun. It cannot contain http:// or https://. It can contain letters, digits, periods (.), colons (:), underscores (\\_), and hyphens (-). By default, this parameter is empty. In this case, the original name is retained.
857
+ :param pulumi.Input[str] image_version: The image version.
858
+
859
+ > **NOTE:** If you specify an instance by configuring `InstanceId`, and the instance uses an Alibaba Cloud Marketplace image or a custom image that is created from an Alibaba Cloud Marketplace image, you must leave this parameter empty or set this parameter to the value of ImageVersion of the instance.
523
860
  :param pulumi.Input[str] instance_id: The instance ID.
524
- :param pulumi.Input[str] platform: The distribution of the operating system for the system disk in the custom image.
525
- If you specify a data disk snapshot to create the system disk of the custom image, you must use the Platform parameter
526
- to specify the distribution of the operating system for the system disk. Default value: Others Linux.
527
- More valid values refer to [CreateImage OpenAPI](https://www.alibabacloud.com/help/en/elastic-compute-service/latest/createimage)
528
- **NOTE**: It's default value is Ubuntu before version 1.197.0.
529
- :param pulumi.Input[str] resource_group_id: The ID of the enterprise resource group to which a custom image belongs
530
- :param pulumi.Input[str] snapshot_id: Specifies a snapshot that is used to create a custom image.
531
- :param pulumi.Input[Mapping[str, Any]] tags: The tag value of an image. The value of N ranges from 1 to 20.
861
+ :param pulumi.Input[str] license_type: The type of the license that is used to activate the operating system after the image is imported. Set the value to BYOL. BYOL: The license that comes with the source operating system is used. When you use the BYOL license, make sure that your license key is supported by Alibaba Cloud.
862
+ :param pulumi.Input[str] name: . Field 'name' has been deprecated from provider version 1.227.0. New field 'image_name' instead.
863
+ :param pulumi.Input[str] platform: The operating system distribution for the system disk in the custom image. If you specify a data disk snapshot to create the system disk of the custom image, use Platform to specify the operating system distribution for the system disk. Valid values: `Aliyun`, `Anolis`, `CentOS`, `Ubuntu`, `CoreOS`, `SUSE`, `Debian`, `OpenSUSE`, `FreeBSD`, `RedHat`, `Kylin`, `UOS`, `Fedora`, `Fedora CoreOS`, `CentOS Stream`, `AlmaLinux`, `Rocky Linux`, `Gentoo`, `Customized Linux`, `Others Linux`, `Windows Server 2022`, `Windows Server 2019`, `Windows Server 2016`, `Windows Server 2012`, `Windows Server 2008`, `Windows Server 2003`. Default value: `Others Linux`.
864
+ :param pulumi.Input[str] resource_group_id: The ID of the resource group to which to assign the custom image. If you do not specify this parameter, the image is assigned to the default resource group.
865
+
866
+ > **NOTE:** If you call the CreateImage operation as a Resource Access Management (RAM) user who does not have the permissions to manage the default resource group and do not specify `ResourceGroupId`, the `Forbbiden: User not authorized to operate on the specified resource` error message is returned. You must specify the ID of a resource group that the RAM user has the permissions to manage or grant the RAM user the permissions to manage the default resource group before you call the CreateImage operation again.
867
+ :param pulumi.Input[str] snapshot_id: The ID of the snapshot that you want to use to create the custom image.
868
+ :param pulumi.Input[Mapping[str, Any]] tags: The tag
869
+
870
+ The following arguments will be discarded. Please use new fields as soon as possible:
532
871
  """
533
872
  ...
534
873
  @overload
@@ -537,7 +876,7 @@ class Image(pulumi.CustomResource):
537
876
  args: Optional[ImageArgs] = None,
538
877
  opts: Optional[pulumi.ResourceOptions] = None):
539
878
  """
540
- Creates a custom image. You can then use a custom image to create ECS instances (RunInstances) or change the system disk for an existing instance (ReplaceSystemDisk).
879
+ Provides a ECS Image resource.
541
880
 
542
881
  > **NOTE:** If you want to create a template from an ECS instance, you can specify the instance ID (InstanceId) to create a custom image. You must make sure that the status of the specified instance is Running or Stopped. After a successful invocation, each disk of the specified instance has a new snapshot created.
543
882
 
@@ -545,10 +884,14 @@ class Image(pulumi.CustomResource):
545
884
 
546
885
  > **NOTE:** If you want to combine snapshots of multiple disks into an image template, you can specify DiskDeviceMapping to create a custom image.
547
886
 
887
+ For information about ECS Image and how to use it, see [What is Image](https://www.alibabacloud.com/help/en/ecs/developer-reference/api-ecs-2014-05-26-createimage).
888
+
548
889
  > **NOTE:** Available since v1.64.0.
549
890
 
550
891
  ## Example Usage
551
892
 
893
+ Basic Usage
894
+
552
895
  ```python
553
896
  import pulumi
554
897
  import pulumi_alicloud as alicloud
@@ -557,7 +900,8 @@ class Image(pulumi.CustomResource):
557
900
  default = alicloud.get_zones(available_resource_creation="Instance")
558
901
  default_get_instance_types = alicloud.ecs.get_instance_types(instance_type_family="ecs.sn1ne")
559
902
  default_get_images = alicloud.ecs.get_images(name_regex="^ubuntu_[0-9]+_[0-9]+_x64*",
560
- owners="system")
903
+ owners="system",
904
+ instance_type=default_get_instance_types.ids[0])
561
905
  default_network = alicloud.vpc.Network("default",
562
906
  vpc_name="terraform-example",
563
907
  cidr_block="172.17.3.0/24")
@@ -594,10 +938,10 @@ class Image(pulumi.CustomResource):
594
938
 
595
939
  ## Import
596
940
 
597
- image can be imported using the id, e.g.
941
+ ECS Image can be imported using the id, e.g.
598
942
 
599
943
  ```sh
600
- $ pulumi import alicloud:ecs/image:Image default m-uf66871ape***yg1q***
944
+ $ pulumi import alicloud:ecs/image:Image example <id>
601
945
  ```
602
946
 
603
947
  :param str resource_name: The name of the resource.
@@ -616,12 +960,18 @@ class Image(pulumi.CustomResource):
616
960
  resource_name: str,
617
961
  opts: Optional[pulumi.ResourceOptions] = None,
618
962
  architecture: Optional[pulumi.Input[str]] = None,
963
+ boot_mode: Optional[pulumi.Input[str]] = None,
619
964
  delete_auto_snapshot: Optional[pulumi.Input[bool]] = None,
620
965
  description: Optional[pulumi.Input[str]] = None,
966
+ detection_strategy: Optional[pulumi.Input[str]] = None,
621
967
  disk_device_mappings: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ImageDiskDeviceMappingArgs']]]]] = None,
968
+ features: Optional[pulumi.Input[pulumi.InputType['ImageFeaturesArgs']]] = None,
622
969
  force: Optional[pulumi.Input[bool]] = None,
970
+ image_family: Optional[pulumi.Input[str]] = None,
623
971
  image_name: Optional[pulumi.Input[str]] = None,
972
+ image_version: Optional[pulumi.Input[str]] = None,
624
973
  instance_id: Optional[pulumi.Input[str]] = None,
974
+ license_type: Optional[pulumi.Input[str]] = None,
625
975
  name: Optional[pulumi.Input[str]] = None,
626
976
  platform: Optional[pulumi.Input[str]] = None,
627
977
  resource_group_id: Optional[pulumi.Input[str]] = None,
@@ -637,17 +987,25 @@ class Image(pulumi.CustomResource):
637
987
  __props__ = ImageArgs.__new__(ImageArgs)
638
988
 
639
989
  __props__.__dict__["architecture"] = architecture
990
+ __props__.__dict__["boot_mode"] = boot_mode
640
991
  __props__.__dict__["delete_auto_snapshot"] = delete_auto_snapshot
641
992
  __props__.__dict__["description"] = description
993
+ __props__.__dict__["detection_strategy"] = detection_strategy
642
994
  __props__.__dict__["disk_device_mappings"] = disk_device_mappings
995
+ __props__.__dict__["features"] = features
643
996
  __props__.__dict__["force"] = force
997
+ __props__.__dict__["image_family"] = image_family
644
998
  __props__.__dict__["image_name"] = image_name
999
+ __props__.__dict__["image_version"] = image_version
645
1000
  __props__.__dict__["instance_id"] = instance_id
1001
+ __props__.__dict__["license_type"] = license_type
646
1002
  __props__.__dict__["name"] = name
647
1003
  __props__.__dict__["platform"] = platform
648
1004
  __props__.__dict__["resource_group_id"] = resource_group_id
649
1005
  __props__.__dict__["snapshot_id"] = snapshot_id
650
1006
  __props__.__dict__["tags"] = tags
1007
+ __props__.__dict__["create_time"] = None
1008
+ __props__.__dict__["status"] = None
651
1009
  super(Image, __self__).__init__(
652
1010
  'alicloud:ecs/image:Image',
653
1011
  resource_name,
@@ -659,16 +1017,24 @@ class Image(pulumi.CustomResource):
659
1017
  id: pulumi.Input[str],
660
1018
  opts: Optional[pulumi.ResourceOptions] = None,
661
1019
  architecture: Optional[pulumi.Input[str]] = None,
1020
+ boot_mode: Optional[pulumi.Input[str]] = None,
1021
+ create_time: Optional[pulumi.Input[str]] = None,
662
1022
  delete_auto_snapshot: Optional[pulumi.Input[bool]] = None,
663
1023
  description: Optional[pulumi.Input[str]] = None,
1024
+ detection_strategy: Optional[pulumi.Input[str]] = None,
664
1025
  disk_device_mappings: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ImageDiskDeviceMappingArgs']]]]] = None,
1026
+ features: Optional[pulumi.Input[pulumi.InputType['ImageFeaturesArgs']]] = None,
665
1027
  force: Optional[pulumi.Input[bool]] = None,
1028
+ image_family: Optional[pulumi.Input[str]] = None,
666
1029
  image_name: Optional[pulumi.Input[str]] = None,
1030
+ image_version: Optional[pulumi.Input[str]] = None,
667
1031
  instance_id: Optional[pulumi.Input[str]] = None,
1032
+ license_type: Optional[pulumi.Input[str]] = None,
668
1033
  name: Optional[pulumi.Input[str]] = None,
669
1034
  platform: Optional[pulumi.Input[str]] = None,
670
1035
  resource_group_id: Optional[pulumi.Input[str]] = None,
671
1036
  snapshot_id: Optional[pulumi.Input[str]] = None,
1037
+ status: Optional[pulumi.Input[str]] = None,
672
1038
  tags: Optional[pulumi.Input[Mapping[str, Any]]] = None) -> 'Image':
673
1039
  """
674
1040
  Get an existing Image resource's state with the given name, id, and optional extra
@@ -677,38 +1043,72 @@ class Image(pulumi.CustomResource):
677
1043
  :param str resource_name: The unique name of the resulting resource.
678
1044
  :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
679
1045
  :param pulumi.ResourceOptions opts: Options for the resource.
680
- :param pulumi.Input[str] architecture: Specifies the architecture of the system disk after you specify a data disk snapshot as the data source of the system disk for creating an image. Valid values: `i386` , Default is `x86_64`.
681
- :param pulumi.Input[str] description: The description of the image. It must be 2 to 256 characters in length and must not start with http:// or https://. Default value: null.
682
- :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ImageDiskDeviceMappingArgs']]]] disk_device_mappings: Description of the system with disks and snapshots under the image.
683
- :param pulumi.Input[bool] force: Indicates whether to force delete the custom image, Default is `false`.
684
- - true:Force deletes the custom image, regardless of whether the image is currently being used by other instances.
685
- - false:Verifies that the image is not currently in use by any other instances before deleting the image.
686
- :param pulumi.Input[str] image_name: The image name. It must be 2 to 128 characters in length, and must begin with a letter or Chinese character (beginning with http:// or https:// is not allowed). It can contain digits, colons (:), underscores (_), or hyphens (-). Default value: null.
1046
+ :param pulumi.Input[str] architecture: The system architecture of the system disk. If you specify a data disk snapshot to create the system disk of the custom image, you must use Architecture to specify the system architecture of the system disk. Valid values: `i386`, `x86\\_64`, `arm64`. Default value: `x86\\_64`.
1047
+ :param pulumi.Input[str] boot_mode: The new boot mode of the image. Valid values:
1048
+
1049
+ * BIOS: Basic Input/Output System (BIOS)
1050
+
1051
+ * UEFI: Unified Extensible Firmware Interface (UEFI)
1052
+
1053
+ * UEFI-Preferred: BIOS and UEFI
1054
+
1055
+ > **NOTE:** Before you change the boot mode, we recommend that you obtain the boot modes supported by the image. If you specify an unsupported boot mode for the image, ECS instances that use the image cannot start as expected. If you do not know which boot modes are supported by the image, we recommend that you use the image check feature to perform a check. For information about the image check feature, see [Overview](https://www.alibabacloud.com/help/en/doc-detail/439819.html).
1056
+
1057
+ > **NOTE:** For information about the UEFI-Preferred boot mode, see [Best practices for ECS instance boot modes](https://www.alibabacloud.com/help/en/doc-detail/2244655.html).
1058
+ :param pulumi.Input[str] create_time: The create time
1059
+ :param pulumi.Input[bool] delete_auto_snapshot: Not the public attribute and it used to automatically delete dependence snapshots while deleting the image.
1060
+ :param pulumi.Input[str] description: The new description of the custom image. The description must be 2 to 256 characters in length It cannot start with `http://` or `https://`. This parameter is empty by default, which specifies that the original description is retained.
1061
+ :param pulumi.Input[str] detection_strategy: The mode in which to check the custom image. If you do not specify this parameter, the image is not checked. Only the standard check mode is supported.
1062
+
1063
+ > **NOTE:** This parameter is supported for most Linux and Windows operating system versions. For information about image check items and operating system limits for image check, see [Overview of image check](https://www.alibabacloud.com/help/en/doc-detail/439819.html) and [Operating system limits for image check](https://www.alibabacloud.com/help/en/doc-detail/475800.html).
1064
+ :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ImageDiskDeviceMappingArgs']]]] disk_device_mappings: Snapshot information for the image See `disk_device_mapping` below.
1065
+ :param pulumi.Input[pulumi.InputType['ImageFeaturesArgs']] features: Features See `features` below.
1066
+ :param pulumi.Input[bool] force: Whether to perform forced deletion. Value range:
1067
+ - true: forcibly deletes the custom image, ignoring whether the current image is used by other instances.
1068
+ - false: The custom image is deleted normally. Before deleting the custom image, check whether the current image is used by other instances.
1069
+
1070
+ Default value: false
1071
+ :param pulumi.Input[str] image_family: The name of the image family. The name must be 2 to 128 characters in length. It must start with a letter and cannot start with acs: or aliyun. It cannot contain http:// or https://. It can contain letters, digits, periods (.), colons (:), underscores (\\_), and hyphens (-). By default, this parameter is empty.
1072
+ :param pulumi.Input[str] image_name: The name of the custom image. The name must be 2 to 128 characters in length. It must start with a letter and cannot start with acs: or aliyun. It cannot contain http:// or https://. It can contain letters, digits, periods (.), colons (:), underscores (\\_), and hyphens (-). By default, this parameter is empty. In this case, the original name is retained.
1073
+ :param pulumi.Input[str] image_version: The image version.
1074
+
1075
+ > **NOTE:** If you specify an instance by configuring `InstanceId`, and the instance uses an Alibaba Cloud Marketplace image or a custom image that is created from an Alibaba Cloud Marketplace image, you must leave this parameter empty or set this parameter to the value of ImageVersion of the instance.
687
1076
  :param pulumi.Input[str] instance_id: The instance ID.
688
- :param pulumi.Input[str] platform: The distribution of the operating system for the system disk in the custom image.
689
- If you specify a data disk snapshot to create the system disk of the custom image, you must use the Platform parameter
690
- to specify the distribution of the operating system for the system disk. Default value: Others Linux.
691
- More valid values refer to [CreateImage OpenAPI](https://www.alibabacloud.com/help/en/elastic-compute-service/latest/createimage)
692
- **NOTE**: It's default value is Ubuntu before version 1.197.0.
693
- :param pulumi.Input[str] resource_group_id: The ID of the enterprise resource group to which a custom image belongs
694
- :param pulumi.Input[str] snapshot_id: Specifies a snapshot that is used to create a custom image.
695
- :param pulumi.Input[Mapping[str, Any]] tags: The tag value of an image. The value of N ranges from 1 to 20.
1077
+ :param pulumi.Input[str] license_type: The type of the license that is used to activate the operating system after the image is imported. Set the value to BYOL. BYOL: The license that comes with the source operating system is used. When you use the BYOL license, make sure that your license key is supported by Alibaba Cloud.
1078
+ :param pulumi.Input[str] name: . Field 'name' has been deprecated from provider version 1.227.0. New field 'image_name' instead.
1079
+ :param pulumi.Input[str] platform: The operating system distribution for the system disk in the custom image. If you specify a data disk snapshot to create the system disk of the custom image, use Platform to specify the operating system distribution for the system disk. Valid values: `Aliyun`, `Anolis`, `CentOS`, `Ubuntu`, `CoreOS`, `SUSE`, `Debian`, `OpenSUSE`, `FreeBSD`, `RedHat`, `Kylin`, `UOS`, `Fedora`, `Fedora CoreOS`, `CentOS Stream`, `AlmaLinux`, `Rocky Linux`, `Gentoo`, `Customized Linux`, `Others Linux`, `Windows Server 2022`, `Windows Server 2019`, `Windows Server 2016`, `Windows Server 2012`, `Windows Server 2008`, `Windows Server 2003`. Default value: `Others Linux`.
1080
+ :param pulumi.Input[str] resource_group_id: The ID of the resource group to which to assign the custom image. If you do not specify this parameter, the image is assigned to the default resource group.
1081
+
1082
+ > **NOTE:** If you call the CreateImage operation as a Resource Access Management (RAM) user who does not have the permissions to manage the default resource group and do not specify `ResourceGroupId`, the `Forbbiden: User not authorized to operate on the specified resource` error message is returned. You must specify the ID of a resource group that the RAM user has the permissions to manage or grant the RAM user the permissions to manage the default resource group before you call the CreateImage operation again.
1083
+ :param pulumi.Input[str] snapshot_id: The ID of the snapshot that you want to use to create the custom image.
1084
+ :param pulumi.Input[str] status: The status of the image. By default, if you do not specify this parameter, only images in the Available state are returned.
1085
+ :param pulumi.Input[Mapping[str, Any]] tags: The tag
1086
+
1087
+ The following arguments will be discarded. Please use new fields as soon as possible:
696
1088
  """
697
1089
  opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
698
1090
 
699
1091
  __props__ = _ImageState.__new__(_ImageState)
700
1092
 
701
1093
  __props__.__dict__["architecture"] = architecture
1094
+ __props__.__dict__["boot_mode"] = boot_mode
1095
+ __props__.__dict__["create_time"] = create_time
702
1096
  __props__.__dict__["delete_auto_snapshot"] = delete_auto_snapshot
703
1097
  __props__.__dict__["description"] = description
1098
+ __props__.__dict__["detection_strategy"] = detection_strategy
704
1099
  __props__.__dict__["disk_device_mappings"] = disk_device_mappings
1100
+ __props__.__dict__["features"] = features
705
1101
  __props__.__dict__["force"] = force
1102
+ __props__.__dict__["image_family"] = image_family
706
1103
  __props__.__dict__["image_name"] = image_name
1104
+ __props__.__dict__["image_version"] = image_version
707
1105
  __props__.__dict__["instance_id"] = instance_id
1106
+ __props__.__dict__["license_type"] = license_type
708
1107
  __props__.__dict__["name"] = name
709
1108
  __props__.__dict__["platform"] = platform
710
1109
  __props__.__dict__["resource_group_id"] = resource_group_id
711
1110
  __props__.__dict__["snapshot_id"] = snapshot_id
1111
+ __props__.__dict__["status"] = status
712
1112
  __props__.__dict__["tags"] = tags
713
1113
  return Image(resource_name, opts=opts, __props__=__props__)
714
1114
 
@@ -716,49 +1116,116 @@ class Image(pulumi.CustomResource):
716
1116
  @pulumi.getter
717
1117
  def architecture(self) -> pulumi.Output[Optional[str]]:
718
1118
  """
719
- Specifies the architecture of the system disk after you specify a data disk snapshot as the data source of the system disk for creating an image. Valid values: `i386` , Default is `x86_64`.
1119
+ The system architecture of the system disk. If you specify a data disk snapshot to create the system disk of the custom image, you must use Architecture to specify the system architecture of the system disk. Valid values: `i386`, `x86\\_64`, `arm64`. Default value: `x86\\_64`.
720
1120
  """
721
1121
  return pulumi.get(self, "architecture")
722
1122
 
1123
+ @property
1124
+ @pulumi.getter(name="bootMode")
1125
+ def boot_mode(self) -> pulumi.Output[str]:
1126
+ """
1127
+ The new boot mode of the image. Valid values:
1128
+
1129
+ * BIOS: Basic Input/Output System (BIOS)
1130
+
1131
+ * UEFI: Unified Extensible Firmware Interface (UEFI)
1132
+
1133
+ * UEFI-Preferred: BIOS and UEFI
1134
+
1135
+ > **NOTE:** Before you change the boot mode, we recommend that you obtain the boot modes supported by the image. If you specify an unsupported boot mode for the image, ECS instances that use the image cannot start as expected. If you do not know which boot modes are supported by the image, we recommend that you use the image check feature to perform a check. For information about the image check feature, see [Overview](https://www.alibabacloud.com/help/en/doc-detail/439819.html).
1136
+
1137
+ > **NOTE:** For information about the UEFI-Preferred boot mode, see [Best practices for ECS instance boot modes](https://www.alibabacloud.com/help/en/doc-detail/2244655.html).
1138
+ """
1139
+ return pulumi.get(self, "boot_mode")
1140
+
1141
+ @property
1142
+ @pulumi.getter(name="createTime")
1143
+ def create_time(self) -> pulumi.Output[str]:
1144
+ """
1145
+ The create time
1146
+ """
1147
+ return pulumi.get(self, "create_time")
1148
+
723
1149
  @property
724
1150
  @pulumi.getter(name="deleteAutoSnapshot")
725
1151
  def delete_auto_snapshot(self) -> pulumi.Output[Optional[bool]]:
1152
+ """
1153
+ Not the public attribute and it used to automatically delete dependence snapshots while deleting the image.
1154
+ """
726
1155
  return pulumi.get(self, "delete_auto_snapshot")
727
1156
 
728
1157
  @property
729
1158
  @pulumi.getter
730
1159
  def description(self) -> pulumi.Output[Optional[str]]:
731
1160
  """
732
- The description of the image. It must be 2 to 256 characters in length and must not start with http:// or https://. Default value: null.
1161
+ The new description of the custom image. The description must be 2 to 256 characters in length It cannot start with `http://` or `https://`. This parameter is empty by default, which specifies that the original description is retained.
733
1162
  """
734
1163
  return pulumi.get(self, "description")
735
1164
 
1165
+ @property
1166
+ @pulumi.getter(name="detectionStrategy")
1167
+ def detection_strategy(self) -> pulumi.Output[Optional[str]]:
1168
+ """
1169
+ The mode in which to check the custom image. If you do not specify this parameter, the image is not checked. Only the standard check mode is supported.
1170
+
1171
+ > **NOTE:** This parameter is supported for most Linux and Windows operating system versions. For information about image check items and operating system limits for image check, see [Overview of image check](https://www.alibabacloud.com/help/en/doc-detail/439819.html) and [Operating system limits for image check](https://www.alibabacloud.com/help/en/doc-detail/475800.html).
1172
+ """
1173
+ return pulumi.get(self, "detection_strategy")
1174
+
736
1175
  @property
737
1176
  @pulumi.getter(name="diskDeviceMappings")
738
1177
  def disk_device_mappings(self) -> pulumi.Output[Sequence['outputs.ImageDiskDeviceMapping']]:
739
1178
  """
740
- Description of the system with disks and snapshots under the image.
1179
+ Snapshot information for the image See `disk_device_mapping` below.
741
1180
  """
742
1181
  return pulumi.get(self, "disk_device_mappings")
743
1182
 
1183
+ @property
1184
+ @pulumi.getter
1185
+ def features(self) -> pulumi.Output['outputs.ImageFeatures']:
1186
+ """
1187
+ Features See `features` below.
1188
+ """
1189
+ return pulumi.get(self, "features")
1190
+
744
1191
  @property
745
1192
  @pulumi.getter
746
1193
  def force(self) -> pulumi.Output[Optional[bool]]:
747
1194
  """
748
- Indicates whether to force delete the custom image, Default is `false`.
749
- - true:Force deletes the custom image, regardless of whether the image is currently being used by other instances.
750
- - false:Verifies that the image is not currently in use by any other instances before deleting the image.
1195
+ Whether to perform forced deletion. Value range:
1196
+ - true: forcibly deletes the custom image, ignoring whether the current image is used by other instances.
1197
+ - false: The custom image is deleted normally. Before deleting the custom image, check whether the current image is used by other instances.
1198
+
1199
+ Default value: false
751
1200
  """
752
1201
  return pulumi.get(self, "force")
753
1202
 
1203
+ @property
1204
+ @pulumi.getter(name="imageFamily")
1205
+ def image_family(self) -> pulumi.Output[Optional[str]]:
1206
+ """
1207
+ The name of the image family. The name must be 2 to 128 characters in length. It must start with a letter and cannot start with acs: or aliyun. It cannot contain http:// or https://. It can contain letters, digits, periods (.), colons (:), underscores (\\_), and hyphens (-). By default, this parameter is empty.
1208
+ """
1209
+ return pulumi.get(self, "image_family")
1210
+
754
1211
  @property
755
1212
  @pulumi.getter(name="imageName")
756
1213
  def image_name(self) -> pulumi.Output[str]:
757
1214
  """
758
- The image name. It must be 2 to 128 characters in length, and must begin with a letter or Chinese character (beginning with http:// or https:// is not allowed). It can contain digits, colons (:), underscores (_), or hyphens (-). Default value: null.
1215
+ The name of the custom image. The name must be 2 to 128 characters in length. It must start with a letter and cannot start with acs: or aliyun. It cannot contain http:// or https://. It can contain letters, digits, periods (.), colons (:), underscores (\\_), and hyphens (-). By default, this parameter is empty. In this case, the original name is retained.
759
1216
  """
760
1217
  return pulumi.get(self, "image_name")
761
1218
 
1219
+ @property
1220
+ @pulumi.getter(name="imageVersion")
1221
+ def image_version(self) -> pulumi.Output[Optional[str]]:
1222
+ """
1223
+ The image version.
1224
+
1225
+ > **NOTE:** If you specify an instance by configuring `InstanceId`, and the instance uses an Alibaba Cloud Marketplace image or a custom image that is created from an Alibaba Cloud Marketplace image, you must leave this parameter empty or set this parameter to the value of ImageVersion of the instance.
1226
+ """
1227
+ return pulumi.get(self, "image_version")
1228
+
762
1229
  @property
763
1230
  @pulumi.getter(name="instanceId")
764
1231
  def instance_id(self) -> pulumi.Output[Optional[str]]:
@@ -767,29 +1234,38 @@ class Image(pulumi.CustomResource):
767
1234
  """
768
1235
  return pulumi.get(self, "instance_id")
769
1236
 
1237
+ @property
1238
+ @pulumi.getter(name="licenseType")
1239
+ def license_type(self) -> pulumi.Output[Optional[str]]:
1240
+ """
1241
+ The type of the license that is used to activate the operating system after the image is imported. Set the value to BYOL. BYOL: The license that comes with the source operating system is used. When you use the BYOL license, make sure that your license key is supported by Alibaba Cloud.
1242
+ """
1243
+ return pulumi.get(self, "license_type")
1244
+
770
1245
  @property
771
1246
  @pulumi.getter
772
- @_utilities.deprecated("""Attribute 'name' has been deprecated from version 1.69.0. Use `image_name` instead.""")
1247
+ @_utilities.deprecated("""Field 'name' has been deprecated since provider version 1.227.0. New field 'image_name' instead.""")
773
1248
  def name(self) -> pulumi.Output[str]:
1249
+ """
1250
+ . Field 'name' has been deprecated from provider version 1.227.0. New field 'image_name' instead.
1251
+ """
774
1252
  return pulumi.get(self, "name")
775
1253
 
776
1254
  @property
777
1255
  @pulumi.getter
778
1256
  def platform(self) -> pulumi.Output[str]:
779
1257
  """
780
- The distribution of the operating system for the system disk in the custom image.
781
- If you specify a data disk snapshot to create the system disk of the custom image, you must use the Platform parameter
782
- to specify the distribution of the operating system for the system disk. Default value: Others Linux.
783
- More valid values refer to [CreateImage OpenAPI](https://www.alibabacloud.com/help/en/elastic-compute-service/latest/createimage)
784
- **NOTE**: It's default value is Ubuntu before version 1.197.0.
1258
+ The operating system distribution for the system disk in the custom image. If you specify a data disk snapshot to create the system disk of the custom image, use Platform to specify the operating system distribution for the system disk. Valid values: `Aliyun`, `Anolis`, `CentOS`, `Ubuntu`, `CoreOS`, `SUSE`, `Debian`, `OpenSUSE`, `FreeBSD`, `RedHat`, `Kylin`, `UOS`, `Fedora`, `Fedora CoreOS`, `CentOS Stream`, `AlmaLinux`, `Rocky Linux`, `Gentoo`, `Customized Linux`, `Others Linux`, `Windows Server 2022`, `Windows Server 2019`, `Windows Server 2016`, `Windows Server 2012`, `Windows Server 2008`, `Windows Server 2003`. Default value: `Others Linux`.
785
1259
  """
786
1260
  return pulumi.get(self, "platform")
787
1261
 
788
1262
  @property
789
1263
  @pulumi.getter(name="resourceGroupId")
790
- def resource_group_id(self) -> pulumi.Output[Optional[str]]:
1264
+ def resource_group_id(self) -> pulumi.Output[str]:
791
1265
  """
792
- The ID of the enterprise resource group to which a custom image belongs
1266
+ The ID of the resource group to which to assign the custom image. If you do not specify this parameter, the image is assigned to the default resource group.
1267
+
1268
+ > **NOTE:** If you call the CreateImage operation as a Resource Access Management (RAM) user who does not have the permissions to manage the default resource group and do not specify `ResourceGroupId`, the `Forbbiden: User not authorized to operate on the specified resource` error message is returned. You must specify the ID of a resource group that the RAM user has the permissions to manage or grant the RAM user the permissions to manage the default resource group before you call the CreateImage operation again.
793
1269
  """
794
1270
  return pulumi.get(self, "resource_group_id")
795
1271
 
@@ -797,15 +1273,25 @@ class Image(pulumi.CustomResource):
797
1273
  @pulumi.getter(name="snapshotId")
798
1274
  def snapshot_id(self) -> pulumi.Output[Optional[str]]:
799
1275
  """
800
- Specifies a snapshot that is used to create a custom image.
1276
+ The ID of the snapshot that you want to use to create the custom image.
801
1277
  """
802
1278
  return pulumi.get(self, "snapshot_id")
803
1279
 
1280
+ @property
1281
+ @pulumi.getter
1282
+ def status(self) -> pulumi.Output[str]:
1283
+ """
1284
+ The status of the image. By default, if you do not specify this parameter, only images in the Available state are returned.
1285
+ """
1286
+ return pulumi.get(self, "status")
1287
+
804
1288
  @property
805
1289
  @pulumi.getter
806
1290
  def tags(self) -> pulumi.Output[Optional[Mapping[str, Any]]]:
807
1291
  """
808
- The tag value of an image. The value of N ranges from 1 to 20.
1292
+ The tag
1293
+
1294
+ The following arguments will be discarded. Please use new fields as soon as possible:
809
1295
  """
810
1296
  return pulumi.get(self, "tags")
811
1297