pulumi-alicloud 3.64.0a1729894283__py3-none-any.whl → 3.65.0__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of pulumi-alicloud might be problematic. Click here for more details.
- pulumi_alicloud/__init__.py +35 -0
- pulumi_alicloud/amqp/instance.py +8 -8
- pulumi_alicloud/bss/get_open_api_pricing_modules.py +4 -4
- pulumi_alicloud/bss/get_open_api_products.py +4 -4
- pulumi_alicloud/cas/get_certificates.py +17 -1
- pulumi_alicloud/cas/get_service_certificates.py +153 -17
- pulumi_alicloud/cas/outputs.py +40 -36
- pulumi_alicloud/cen/instance.py +108 -53
- pulumi_alicloud/cen/transit_router_route_table_association.py +72 -68
- pulumi_alicloud/cloudfirewall/control_policy.py +524 -23
- pulumi_alicloud/cloudfirewall/instance.py +64 -36
- pulumi_alicloud/cloudstoragegateway/gateway.py +134 -58
- pulumi_alicloud/cs/_inputs.py +390 -26
- pulumi_alicloud/cs/get_serverless_kubernetes_clusters.py +2 -0
- pulumi_alicloud/cs/kubernetes.py +48 -35
- pulumi_alicloud/cs/managed_kubernetes.py +91 -35
- pulumi_alicloud/cs/node_pool.py +68 -14
- pulumi_alicloud/cs/outputs.py +293 -16
- pulumi_alicloud/cs/serverless_kubernetes.py +157 -63
- pulumi_alicloud/databasefilesystem/_inputs.py +0 -6
- pulumi_alicloud/databasefilesystem/instance.py +31 -0
- pulumi_alicloud/databasefilesystem/outputs.py +0 -4
- pulumi_alicloud/dns/get_alidns_records.py +26 -4
- pulumi_alicloud/dns/outputs.py +2 -2
- pulumi_alicloud/eais/instance.py +55 -57
- pulumi_alicloud/ecp/instance.py +177 -219
- pulumi_alicloud/ecs/disk.py +2 -2
- pulumi_alicloud/ecs/ecs_disk.py +142 -58
- pulumi_alicloud/ecs/ecs_key_pair.py +1 -1
- pulumi_alicloud/ecs/ecs_launch_template.py +169 -0
- pulumi_alicloud/ecs/get_ecs_launch_templates.py +172 -6
- pulumi_alicloud/ecs/instance.py +131 -98
- pulumi_alicloud/ecs/key_pair.py +1 -1
- pulumi_alicloud/ecs/launch_template.py +102 -0
- pulumi_alicloud/ecs/outputs.py +57 -24
- pulumi_alicloud/ens/disk.py +2 -2
- pulumi_alicloud/ens/disk_instance_attachment.py +2 -2
- pulumi_alicloud/ess/_inputs.py +342 -2
- pulumi_alicloud/ess/eci_scaling_configuration.py +202 -0
- pulumi_alicloud/ess/outputs.py +226 -2
- pulumi_alicloud/ess/scaling_configuration.py +377 -1
- pulumi_alicloud/ess/scaling_group.py +54 -7
- pulumi_alicloud/fc/_inputs.py +3 -3
- pulumi_alicloud/fc/outputs.py +2 -2
- pulumi_alicloud/ga/_inputs.py +57 -22
- pulumi_alicloud/ga/outputs.py +39 -15
- pulumi_alicloud/governance/baseline.py +18 -18
- pulumi_alicloud/governance/get_baselines.py +18 -18
- pulumi_alicloud/gpdb/__init__.py +1 -0
- pulumi_alicloud/gpdb/database.py +545 -0
- pulumi_alicloud/gpdb/instance.py +1 -1
- pulumi_alicloud/kms/get_secrets.py +5 -5
- pulumi_alicloud/kms/outputs.py +18 -18
- pulumi_alicloud/kvstore/instance.py +24 -5
- pulumi_alicloud/log/alert.py +14 -14
- pulumi_alicloud/mse/__init__.py +2 -0
- pulumi_alicloud/mse/cluster.py +149 -51
- pulumi_alicloud/mse/engine_namespace.py +176 -74
- pulumi_alicloud/mse/get_clusters.py +70 -10
- pulumi_alicloud/mse/get_engine_namespaces.py +93 -15
- pulumi_alicloud/mse/get_nacos_configs.py +394 -0
- pulumi_alicloud/mse/nacos_config.py +762 -0
- pulumi_alicloud/mse/outputs.py +165 -8
- pulumi_alicloud/nas/data_flow.py +6 -6
- pulumi_alicloud/nas/fileset.py +6 -6
- pulumi_alicloud/nas/lifecycle_policy.py +6 -6
- pulumi_alicloud/nas/recycle_bin.py +6 -6
- pulumi_alicloud/nas/snapshot.py +6 -6
- pulumi_alicloud/ocean/base_instance.py +2 -2
- pulumi_alicloud/pai/__init__.py +8 -0
- pulumi_alicloud/pai/workspace_workspace.py +447 -0
- pulumi_alicloud/polardb/cluster.py +176 -14
- pulumi_alicloud/privatelink/get_vpc_endpoint_services.py +51 -7
- pulumi_alicloud/privatelink/outputs.py +17 -6
- pulumi_alicloud/privatelink/vpc_endpoint_service_user.py +54 -17
- pulumi_alicloud/privatelink/vpc_endpoint_zone.py +7 -21
- pulumi_alicloud/pulumi-plugin.json +1 -1
- pulumi_alicloud/rds/instance.py +50 -3
- pulumi_alicloud/resourcemanager/get_folders.py +35 -28
- pulumi_alicloud/resourcemanager/outputs.py +8 -8
- pulumi_alicloud/servicemesh/_inputs.py +656 -174
- pulumi_alicloud/servicemesh/outputs.py +507 -117
- pulumi_alicloud/servicemesh/service_mesh.py +120 -78
- pulumi_alicloud/sls/__init__.py +1 -0
- pulumi_alicloud/sls/_inputs.py +307 -0
- pulumi_alicloud/sls/collection_policy.py +561 -0
- pulumi_alicloud/sls/outputs.py +263 -0
- pulumi_alicloud/threatdetection/instance.py +331 -43
- pulumi_alicloud/vpc/subnet.py +59 -27
- pulumi_alicloud/vpc/switch.py +104 -87
- {pulumi_alicloud-3.64.0a1729894283.dist-info → pulumi_alicloud-3.65.0.dist-info}/METADATA +1 -1
- {pulumi_alicloud-3.64.0a1729894283.dist-info → pulumi_alicloud-3.65.0.dist-info}/RECORD +94 -88
- {pulumi_alicloud-3.64.0a1729894283.dist-info → pulumi_alicloud-3.65.0.dist-info}/WHEEL +1 -1
- {pulumi_alicloud-3.64.0a1729894283.dist-info → pulumi_alicloud-3.65.0.dist-info}/top_level.txt +0 -0
|
@@ -25,11 +25,14 @@ class ScalingConfigurationArgs:
|
|
|
25
25
|
active: Optional[pulumi.Input[bool]] = None,
|
|
26
26
|
credit_specification: Optional[pulumi.Input[str]] = None,
|
|
27
27
|
data_disks: Optional[pulumi.Input[Sequence[pulumi.Input['ScalingConfigurationDataDiskArgs']]]] = None,
|
|
28
|
+
deletion_protection: Optional[pulumi.Input[bool]] = None,
|
|
28
29
|
enable: Optional[pulumi.Input[bool]] = None,
|
|
29
30
|
force_delete: Optional[pulumi.Input[bool]] = None,
|
|
30
31
|
host_name: Optional[pulumi.Input[str]] = None,
|
|
31
32
|
image_id: Optional[pulumi.Input[str]] = None,
|
|
32
33
|
image_name: Optional[pulumi.Input[str]] = None,
|
|
34
|
+
image_options_login_as_non_root: Optional[pulumi.Input[bool]] = None,
|
|
35
|
+
instance_description: Optional[pulumi.Input[str]] = None,
|
|
33
36
|
instance_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
|
34
37
|
instance_name: Optional[pulumi.Input[str]] = None,
|
|
35
38
|
instance_pattern_infos: Optional[pulumi.Input[Sequence[pulumi.Input['ScalingConfigurationInstancePatternInfoArgs']]]] = None,
|
|
@@ -50,17 +53,22 @@ class ScalingConfigurationArgs:
|
|
|
50
53
|
resource_group_id: Optional[pulumi.Input[str]] = None,
|
|
51
54
|
role_name: Optional[pulumi.Input[str]] = None,
|
|
52
55
|
scaling_configuration_name: Optional[pulumi.Input[str]] = None,
|
|
56
|
+
security_enhancement_strategy: Optional[pulumi.Input[str]] = None,
|
|
53
57
|
security_group_id: Optional[pulumi.Input[str]] = None,
|
|
54
58
|
security_group_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
|
59
|
+
spot_duration: Optional[pulumi.Input[int]] = None,
|
|
55
60
|
spot_price_limits: Optional[pulumi.Input[Sequence[pulumi.Input['ScalingConfigurationSpotPriceLimitArgs']]]] = None,
|
|
56
61
|
spot_strategy: Optional[pulumi.Input[str]] = None,
|
|
57
62
|
substitute: Optional[pulumi.Input[str]] = None,
|
|
58
63
|
system_disk_auto_snapshot_policy_id: Optional[pulumi.Input[str]] = None,
|
|
59
64
|
system_disk_category: Optional[pulumi.Input[str]] = None,
|
|
60
65
|
system_disk_description: Optional[pulumi.Input[str]] = None,
|
|
66
|
+
system_disk_encrypt_algorithm: Optional[pulumi.Input[str]] = None,
|
|
61
67
|
system_disk_encrypted: Optional[pulumi.Input[bool]] = None,
|
|
68
|
+
system_disk_kms_key_id: Optional[pulumi.Input[str]] = None,
|
|
62
69
|
system_disk_name: Optional[pulumi.Input[str]] = None,
|
|
63
70
|
system_disk_performance_level: Optional[pulumi.Input[str]] = None,
|
|
71
|
+
system_disk_provisioned_iops: Optional[pulumi.Input[int]] = None,
|
|
64
72
|
system_disk_size: Optional[pulumi.Input[int]] = None,
|
|
65
73
|
tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
|
|
66
74
|
user_data: Optional[pulumi.Input[str]] = None):
|
|
@@ -70,11 +78,14 @@ class ScalingConfigurationArgs:
|
|
|
70
78
|
:param pulumi.Input[bool] active: Whether active current scaling configuration in the specified scaling group. Default to `false`.
|
|
71
79
|
:param pulumi.Input[str] credit_specification: Performance mode of the t5 burstable instance. Valid values: 'Standard', 'Unlimited'.
|
|
72
80
|
:param pulumi.Input[Sequence[pulumi.Input['ScalingConfigurationDataDiskArgs']]] data_disks: DataDisk mappings to attach to ecs instance. See `data_disk` below for details.
|
|
81
|
+
:param pulumi.Input[bool] deletion_protection: Specifies whether to enable the Release Protection feature for ECS instances. This parameter is applicable to only pay-as-you-go instances. You can use this parameter to specify whether an ECS instance can be directly released by using the ECS console or calling the DeleteInstance operation. Valid values: true, false. Default value: false.
|
|
73
82
|
:param pulumi.Input[bool] enable: Whether enable the specified scaling group(make it active) to which the current scaling configuration belongs.
|
|
74
83
|
:param pulumi.Input[bool] force_delete: The last scaling configuration will be deleted forcibly with deleting its scaling group. Default to false.
|
|
75
84
|
:param pulumi.Input[str] host_name: Hostname of an ECS instance.
|
|
76
85
|
:param pulumi.Input[str] image_id: ID of an image file, indicating the image resource selected when an instance is enabled.
|
|
77
86
|
:param pulumi.Input[str] image_name: Name of an image file, indicating the image resource selected when an instance is enabled.
|
|
87
|
+
:param pulumi.Input[bool] image_options_login_as_non_root: Specifies whether to use ecs-user to log on to an ECS instance. For more information, see Manage the username used to log on to an ECS instance. Valid values: true, false. Default value: false.
|
|
88
|
+
:param pulumi.Input[str] instance_description: The description of ECS instances. The description must be 2 to 256 characters in length. It can contain letters but cannot start with http:// or https://.
|
|
78
89
|
:param pulumi.Input[Sequence[pulumi.Input[str]]] instance_ids: It has been deprecated from version 1.6.0. New resource `ess.Attachment` replaces it.
|
|
79
90
|
:param pulumi.Input[str] instance_name: Name of an ECS instance. Default to "ESS-Instance". It is valid from version 1.7.1.
|
|
80
91
|
:param pulumi.Input[Sequence[pulumi.Input['ScalingConfigurationInstancePatternInfoArgs']]] instance_pattern_infos: intelligent configuration mode. In this mode, you only need to specify the number of vCPUs, memory size, instance family, and maximum price. The system selects an instance type that is provided at the lowest price based on your configurations to create ECS instances. This mode is available only for scaling groups that reside in virtual private clouds (VPCs). This mode helps reduce the failures of scale-out activities caused by insufficient inventory of instance types. See `instance_pattern_info` below for details.
|
|
@@ -95,8 +106,10 @@ class ScalingConfigurationArgs:
|
|
|
95
106
|
:param pulumi.Input[str] resource_group_id: ID of resource group.
|
|
96
107
|
:param pulumi.Input[str] role_name: Instance RAM role name. The name is provided and maintained by RAM. You can use `ram.Role` to create a new one.
|
|
97
108
|
:param pulumi.Input[str] scaling_configuration_name: Name shown for the scheduled task. which must contain 2-64 characters (English or Chinese), starting with numbers, English letters or Chinese characters, and can contain number, underscores `_`, hypens `-`, and decimal point `.`. If this parameter value is not specified, the default value is ScalingConfigurationId.
|
|
109
|
+
:param pulumi.Input[str] security_enhancement_strategy: Specifies whether to enable Security Hardening. Valid values: Active, Deactive.
|
|
98
110
|
:param pulumi.Input[str] security_group_id: ID of the security group used to create new instance. It is conflict with `security_group_ids`.
|
|
99
111
|
:param pulumi.Input[Sequence[pulumi.Input[str]]] security_group_ids: List IDs of the security group used to create new instances. It is conflict with `security_group_id`.
|
|
112
|
+
:param pulumi.Input[int] spot_duration: The protection period of preemptible instances. Unit: hours. Valid values: 1, 0.
|
|
100
113
|
:param pulumi.Input[Sequence[pulumi.Input['ScalingConfigurationSpotPriceLimitArgs']]] spot_price_limits: Sets the maximum price hourly for instance types. See `spot_price_limit` below for details.
|
|
101
114
|
|
|
102
115
|
> **NOTE:** Before enabling the scaling group, it must have a active scaling configuration.
|
|
@@ -117,9 +130,12 @@ class ScalingConfigurationArgs:
|
|
|
117
130
|
:param pulumi.Input[str] system_disk_auto_snapshot_policy_id: The id of auto snapshot policy for system disk.
|
|
118
131
|
:param pulumi.Input[str] system_disk_category: Category of the system disk. The parameter value options are `ephemeral_ssd`, `cloud_efficiency`, `cloud_ssd`, `cloud_essd` and `cloud`. `cloud` only is used to some no I/O optimized instance. Default to `cloud_efficiency`.
|
|
119
132
|
:param pulumi.Input[str] system_disk_description: The description of the system disk. The description must be 2 to 256 characters in length and cannot start with http:// or https://.
|
|
133
|
+
:param pulumi.Input[str] system_disk_encrypt_algorithm: The algorithm that you want to use to encrypt the system disk. Valid values: AES-256, SM4-128.
|
|
120
134
|
:param pulumi.Input[bool] system_disk_encrypted: Whether to encrypt the system disk.
|
|
135
|
+
:param pulumi.Input[str] system_disk_kms_key_id: The ID of the KMS key that you want to use to encrypt the system disk.
|
|
121
136
|
:param pulumi.Input[str] system_disk_name: The name of the system disk. It must be 2 to 128 characters in length. It must start with a letter and cannot start with http:// or https://. It can contain letters, digits, colons (:), underscores (_), and hyphens (-). Default value: null.
|
|
122
137
|
:param pulumi.Input[str] system_disk_performance_level: The performance level of the ESSD used as the system disk.
|
|
138
|
+
:param pulumi.Input[int] system_disk_provisioned_iops: IOPS measures the number of read and write operations that an EBS device can process per second.
|
|
123
139
|
:param pulumi.Input[int] system_disk_size: Size of system disk, in GiB. Optional values: cloud: 20-500, cloud_efficiency: 20-500, cloud_ssd: 20-500, ephemeral_ssd: 20-500 The default value is max{40, ImageSize}. If this parameter is set, the system disk size must be greater than or equal to max{40, ImageSize}.
|
|
124
140
|
:param pulumi.Input[Mapping[str, pulumi.Input[str]]] tags: A mapping of tags to assign to the resource. It will be applied for ECS instances finally.
|
|
125
141
|
- Key: It can be up to 64 characters in length. It cannot begin with "aliyun", "http://", or "https://". It cannot be a null string.
|
|
@@ -133,6 +149,8 @@ class ScalingConfigurationArgs:
|
|
|
133
149
|
pulumi.set(__self__, "credit_specification", credit_specification)
|
|
134
150
|
if data_disks is not None:
|
|
135
151
|
pulumi.set(__self__, "data_disks", data_disks)
|
|
152
|
+
if deletion_protection is not None:
|
|
153
|
+
pulumi.set(__self__, "deletion_protection", deletion_protection)
|
|
136
154
|
if enable is not None:
|
|
137
155
|
pulumi.set(__self__, "enable", enable)
|
|
138
156
|
if force_delete is not None:
|
|
@@ -143,6 +161,10 @@ class ScalingConfigurationArgs:
|
|
|
143
161
|
pulumi.set(__self__, "image_id", image_id)
|
|
144
162
|
if image_name is not None:
|
|
145
163
|
pulumi.set(__self__, "image_name", image_name)
|
|
164
|
+
if image_options_login_as_non_root is not None:
|
|
165
|
+
pulumi.set(__self__, "image_options_login_as_non_root", image_options_login_as_non_root)
|
|
166
|
+
if instance_description is not None:
|
|
167
|
+
pulumi.set(__self__, "instance_description", instance_description)
|
|
146
168
|
if instance_ids is not None:
|
|
147
169
|
warnings.warn("""Field 'instance_ids' has been deprecated from provider version 1.6.0. New resource 'alicloud_ess_attachment' replaces it.""", DeprecationWarning)
|
|
148
170
|
pulumi.log.warn("""instance_ids is deprecated: Field 'instance_ids' has been deprecated from provider version 1.6.0. New resource 'alicloud_ess_attachment' replaces it.""")
|
|
@@ -189,10 +211,14 @@ class ScalingConfigurationArgs:
|
|
|
189
211
|
pulumi.set(__self__, "role_name", role_name)
|
|
190
212
|
if scaling_configuration_name is not None:
|
|
191
213
|
pulumi.set(__self__, "scaling_configuration_name", scaling_configuration_name)
|
|
214
|
+
if security_enhancement_strategy is not None:
|
|
215
|
+
pulumi.set(__self__, "security_enhancement_strategy", security_enhancement_strategy)
|
|
192
216
|
if security_group_id is not None:
|
|
193
217
|
pulumi.set(__self__, "security_group_id", security_group_id)
|
|
194
218
|
if security_group_ids is not None:
|
|
195
219
|
pulumi.set(__self__, "security_group_ids", security_group_ids)
|
|
220
|
+
if spot_duration is not None:
|
|
221
|
+
pulumi.set(__self__, "spot_duration", spot_duration)
|
|
196
222
|
if spot_price_limits is not None:
|
|
197
223
|
pulumi.set(__self__, "spot_price_limits", spot_price_limits)
|
|
198
224
|
if spot_strategy is not None:
|
|
@@ -205,12 +231,18 @@ class ScalingConfigurationArgs:
|
|
|
205
231
|
pulumi.set(__self__, "system_disk_category", system_disk_category)
|
|
206
232
|
if system_disk_description is not None:
|
|
207
233
|
pulumi.set(__self__, "system_disk_description", system_disk_description)
|
|
234
|
+
if system_disk_encrypt_algorithm is not None:
|
|
235
|
+
pulumi.set(__self__, "system_disk_encrypt_algorithm", system_disk_encrypt_algorithm)
|
|
208
236
|
if system_disk_encrypted is not None:
|
|
209
237
|
pulumi.set(__self__, "system_disk_encrypted", system_disk_encrypted)
|
|
238
|
+
if system_disk_kms_key_id is not None:
|
|
239
|
+
pulumi.set(__self__, "system_disk_kms_key_id", system_disk_kms_key_id)
|
|
210
240
|
if system_disk_name is not None:
|
|
211
241
|
pulumi.set(__self__, "system_disk_name", system_disk_name)
|
|
212
242
|
if system_disk_performance_level is not None:
|
|
213
243
|
pulumi.set(__self__, "system_disk_performance_level", system_disk_performance_level)
|
|
244
|
+
if system_disk_provisioned_iops is not None:
|
|
245
|
+
pulumi.set(__self__, "system_disk_provisioned_iops", system_disk_provisioned_iops)
|
|
214
246
|
if system_disk_size is not None:
|
|
215
247
|
pulumi.set(__self__, "system_disk_size", system_disk_size)
|
|
216
248
|
if tags is not None:
|
|
@@ -266,6 +298,18 @@ class ScalingConfigurationArgs:
|
|
|
266
298
|
def data_disks(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['ScalingConfigurationDataDiskArgs']]]]):
|
|
267
299
|
pulumi.set(self, "data_disks", value)
|
|
268
300
|
|
|
301
|
+
@property
|
|
302
|
+
@pulumi.getter(name="deletionProtection")
|
|
303
|
+
def deletion_protection(self) -> Optional[pulumi.Input[bool]]:
|
|
304
|
+
"""
|
|
305
|
+
Specifies whether to enable the Release Protection feature for ECS instances. This parameter is applicable to only pay-as-you-go instances. You can use this parameter to specify whether an ECS instance can be directly released by using the ECS console or calling the DeleteInstance operation. Valid values: true, false. Default value: false.
|
|
306
|
+
"""
|
|
307
|
+
return pulumi.get(self, "deletion_protection")
|
|
308
|
+
|
|
309
|
+
@deletion_protection.setter
|
|
310
|
+
def deletion_protection(self, value: Optional[pulumi.Input[bool]]):
|
|
311
|
+
pulumi.set(self, "deletion_protection", value)
|
|
312
|
+
|
|
269
313
|
@property
|
|
270
314
|
@pulumi.getter
|
|
271
315
|
def enable(self) -> Optional[pulumi.Input[bool]]:
|
|
@@ -326,6 +370,30 @@ class ScalingConfigurationArgs:
|
|
|
326
370
|
def image_name(self, value: Optional[pulumi.Input[str]]):
|
|
327
371
|
pulumi.set(self, "image_name", value)
|
|
328
372
|
|
|
373
|
+
@property
|
|
374
|
+
@pulumi.getter(name="imageOptionsLoginAsNonRoot")
|
|
375
|
+
def image_options_login_as_non_root(self) -> Optional[pulumi.Input[bool]]:
|
|
376
|
+
"""
|
|
377
|
+
Specifies whether to use ecs-user to log on to an ECS instance. For more information, see Manage the username used to log on to an ECS instance. Valid values: true, false. Default value: false.
|
|
378
|
+
"""
|
|
379
|
+
return pulumi.get(self, "image_options_login_as_non_root")
|
|
380
|
+
|
|
381
|
+
@image_options_login_as_non_root.setter
|
|
382
|
+
def image_options_login_as_non_root(self, value: Optional[pulumi.Input[bool]]):
|
|
383
|
+
pulumi.set(self, "image_options_login_as_non_root", value)
|
|
384
|
+
|
|
385
|
+
@property
|
|
386
|
+
@pulumi.getter(name="instanceDescription")
|
|
387
|
+
def instance_description(self) -> Optional[pulumi.Input[str]]:
|
|
388
|
+
"""
|
|
389
|
+
The description of ECS instances. The description must be 2 to 256 characters in length. It can contain letters but cannot start with http:// or https://.
|
|
390
|
+
"""
|
|
391
|
+
return pulumi.get(self, "instance_description")
|
|
392
|
+
|
|
393
|
+
@instance_description.setter
|
|
394
|
+
def instance_description(self, value: Optional[pulumi.Input[str]]):
|
|
395
|
+
pulumi.set(self, "instance_description", value)
|
|
396
|
+
|
|
329
397
|
@property
|
|
330
398
|
@pulumi.getter(name="instanceIds")
|
|
331
399
|
@_utilities.deprecated("""Field 'instance_ids' has been deprecated from provider version 1.6.0. New resource 'alicloud_ess_attachment' replaces it.""")
|
|
@@ -568,6 +636,18 @@ class ScalingConfigurationArgs:
|
|
|
568
636
|
def scaling_configuration_name(self, value: Optional[pulumi.Input[str]]):
|
|
569
637
|
pulumi.set(self, "scaling_configuration_name", value)
|
|
570
638
|
|
|
639
|
+
@property
|
|
640
|
+
@pulumi.getter(name="securityEnhancementStrategy")
|
|
641
|
+
def security_enhancement_strategy(self) -> Optional[pulumi.Input[str]]:
|
|
642
|
+
"""
|
|
643
|
+
Specifies whether to enable Security Hardening. Valid values: Active, Deactive.
|
|
644
|
+
"""
|
|
645
|
+
return pulumi.get(self, "security_enhancement_strategy")
|
|
646
|
+
|
|
647
|
+
@security_enhancement_strategy.setter
|
|
648
|
+
def security_enhancement_strategy(self, value: Optional[pulumi.Input[str]]):
|
|
649
|
+
pulumi.set(self, "security_enhancement_strategy", value)
|
|
650
|
+
|
|
571
651
|
@property
|
|
572
652
|
@pulumi.getter(name="securityGroupId")
|
|
573
653
|
def security_group_id(self) -> Optional[pulumi.Input[str]]:
|
|
@@ -592,6 +672,18 @@ class ScalingConfigurationArgs:
|
|
|
592
672
|
def security_group_ids(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
|
|
593
673
|
pulumi.set(self, "security_group_ids", value)
|
|
594
674
|
|
|
675
|
+
@property
|
|
676
|
+
@pulumi.getter(name="spotDuration")
|
|
677
|
+
def spot_duration(self) -> Optional[pulumi.Input[int]]:
|
|
678
|
+
"""
|
|
679
|
+
The protection period of preemptible instances. Unit: hours. Valid values: 1, 0.
|
|
680
|
+
"""
|
|
681
|
+
return pulumi.get(self, "spot_duration")
|
|
682
|
+
|
|
683
|
+
@spot_duration.setter
|
|
684
|
+
def spot_duration(self, value: Optional[pulumi.Input[int]]):
|
|
685
|
+
pulumi.set(self, "spot_duration", value)
|
|
686
|
+
|
|
595
687
|
@property
|
|
596
688
|
@pulumi.getter(name="spotPriceLimits")
|
|
597
689
|
def spot_price_limits(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ScalingConfigurationSpotPriceLimitArgs']]]]:
|
|
@@ -678,6 +770,18 @@ class ScalingConfigurationArgs:
|
|
|
678
770
|
def system_disk_description(self, value: Optional[pulumi.Input[str]]):
|
|
679
771
|
pulumi.set(self, "system_disk_description", value)
|
|
680
772
|
|
|
773
|
+
@property
|
|
774
|
+
@pulumi.getter(name="systemDiskEncryptAlgorithm")
|
|
775
|
+
def system_disk_encrypt_algorithm(self) -> Optional[pulumi.Input[str]]:
|
|
776
|
+
"""
|
|
777
|
+
The algorithm that you want to use to encrypt the system disk. Valid values: AES-256, SM4-128.
|
|
778
|
+
"""
|
|
779
|
+
return pulumi.get(self, "system_disk_encrypt_algorithm")
|
|
780
|
+
|
|
781
|
+
@system_disk_encrypt_algorithm.setter
|
|
782
|
+
def system_disk_encrypt_algorithm(self, value: Optional[pulumi.Input[str]]):
|
|
783
|
+
pulumi.set(self, "system_disk_encrypt_algorithm", value)
|
|
784
|
+
|
|
681
785
|
@property
|
|
682
786
|
@pulumi.getter(name="systemDiskEncrypted")
|
|
683
787
|
def system_disk_encrypted(self) -> Optional[pulumi.Input[bool]]:
|
|
@@ -690,6 +794,18 @@ class ScalingConfigurationArgs:
|
|
|
690
794
|
def system_disk_encrypted(self, value: Optional[pulumi.Input[bool]]):
|
|
691
795
|
pulumi.set(self, "system_disk_encrypted", value)
|
|
692
796
|
|
|
797
|
+
@property
|
|
798
|
+
@pulumi.getter(name="systemDiskKmsKeyId")
|
|
799
|
+
def system_disk_kms_key_id(self) -> Optional[pulumi.Input[str]]:
|
|
800
|
+
"""
|
|
801
|
+
The ID of the KMS key that you want to use to encrypt the system disk.
|
|
802
|
+
"""
|
|
803
|
+
return pulumi.get(self, "system_disk_kms_key_id")
|
|
804
|
+
|
|
805
|
+
@system_disk_kms_key_id.setter
|
|
806
|
+
def system_disk_kms_key_id(self, value: Optional[pulumi.Input[str]]):
|
|
807
|
+
pulumi.set(self, "system_disk_kms_key_id", value)
|
|
808
|
+
|
|
693
809
|
@property
|
|
694
810
|
@pulumi.getter(name="systemDiskName")
|
|
695
811
|
def system_disk_name(self) -> Optional[pulumi.Input[str]]:
|
|
@@ -714,6 +830,18 @@ class ScalingConfigurationArgs:
|
|
|
714
830
|
def system_disk_performance_level(self, value: Optional[pulumi.Input[str]]):
|
|
715
831
|
pulumi.set(self, "system_disk_performance_level", value)
|
|
716
832
|
|
|
833
|
+
@property
|
|
834
|
+
@pulumi.getter(name="systemDiskProvisionedIops")
|
|
835
|
+
def system_disk_provisioned_iops(self) -> Optional[pulumi.Input[int]]:
|
|
836
|
+
"""
|
|
837
|
+
IOPS measures the number of read and write operations that an EBS device can process per second.
|
|
838
|
+
"""
|
|
839
|
+
return pulumi.get(self, "system_disk_provisioned_iops")
|
|
840
|
+
|
|
841
|
+
@system_disk_provisioned_iops.setter
|
|
842
|
+
def system_disk_provisioned_iops(self, value: Optional[pulumi.Input[int]]):
|
|
843
|
+
pulumi.set(self, "system_disk_provisioned_iops", value)
|
|
844
|
+
|
|
717
845
|
@property
|
|
718
846
|
@pulumi.getter(name="systemDiskSize")
|
|
719
847
|
def system_disk_size(self) -> Optional[pulumi.Input[int]]:
|
|
@@ -759,11 +887,14 @@ class _ScalingConfigurationState:
|
|
|
759
887
|
active: Optional[pulumi.Input[bool]] = None,
|
|
760
888
|
credit_specification: Optional[pulumi.Input[str]] = None,
|
|
761
889
|
data_disks: Optional[pulumi.Input[Sequence[pulumi.Input['ScalingConfigurationDataDiskArgs']]]] = None,
|
|
890
|
+
deletion_protection: Optional[pulumi.Input[bool]] = None,
|
|
762
891
|
enable: Optional[pulumi.Input[bool]] = None,
|
|
763
892
|
force_delete: Optional[pulumi.Input[bool]] = None,
|
|
764
893
|
host_name: Optional[pulumi.Input[str]] = None,
|
|
765
894
|
image_id: Optional[pulumi.Input[str]] = None,
|
|
766
895
|
image_name: Optional[pulumi.Input[str]] = None,
|
|
896
|
+
image_options_login_as_non_root: Optional[pulumi.Input[bool]] = None,
|
|
897
|
+
instance_description: Optional[pulumi.Input[str]] = None,
|
|
767
898
|
instance_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
|
768
899
|
instance_name: Optional[pulumi.Input[str]] = None,
|
|
769
900
|
instance_pattern_infos: Optional[pulumi.Input[Sequence[pulumi.Input['ScalingConfigurationInstancePatternInfoArgs']]]] = None,
|
|
@@ -785,17 +916,22 @@ class _ScalingConfigurationState:
|
|
|
785
916
|
role_name: Optional[pulumi.Input[str]] = None,
|
|
786
917
|
scaling_configuration_name: Optional[pulumi.Input[str]] = None,
|
|
787
918
|
scaling_group_id: Optional[pulumi.Input[str]] = None,
|
|
919
|
+
security_enhancement_strategy: Optional[pulumi.Input[str]] = None,
|
|
788
920
|
security_group_id: Optional[pulumi.Input[str]] = None,
|
|
789
921
|
security_group_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
|
922
|
+
spot_duration: Optional[pulumi.Input[int]] = None,
|
|
790
923
|
spot_price_limits: Optional[pulumi.Input[Sequence[pulumi.Input['ScalingConfigurationSpotPriceLimitArgs']]]] = None,
|
|
791
924
|
spot_strategy: Optional[pulumi.Input[str]] = None,
|
|
792
925
|
substitute: Optional[pulumi.Input[str]] = None,
|
|
793
926
|
system_disk_auto_snapshot_policy_id: Optional[pulumi.Input[str]] = None,
|
|
794
927
|
system_disk_category: Optional[pulumi.Input[str]] = None,
|
|
795
928
|
system_disk_description: Optional[pulumi.Input[str]] = None,
|
|
929
|
+
system_disk_encrypt_algorithm: Optional[pulumi.Input[str]] = None,
|
|
796
930
|
system_disk_encrypted: Optional[pulumi.Input[bool]] = None,
|
|
931
|
+
system_disk_kms_key_id: Optional[pulumi.Input[str]] = None,
|
|
797
932
|
system_disk_name: Optional[pulumi.Input[str]] = None,
|
|
798
933
|
system_disk_performance_level: Optional[pulumi.Input[str]] = None,
|
|
934
|
+
system_disk_provisioned_iops: Optional[pulumi.Input[int]] = None,
|
|
799
935
|
system_disk_size: Optional[pulumi.Input[int]] = None,
|
|
800
936
|
tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
|
|
801
937
|
user_data: Optional[pulumi.Input[str]] = None):
|
|
@@ -804,11 +940,14 @@ class _ScalingConfigurationState:
|
|
|
804
940
|
:param pulumi.Input[bool] active: Whether active current scaling configuration in the specified scaling group. Default to `false`.
|
|
805
941
|
:param pulumi.Input[str] credit_specification: Performance mode of the t5 burstable instance. Valid values: 'Standard', 'Unlimited'.
|
|
806
942
|
:param pulumi.Input[Sequence[pulumi.Input['ScalingConfigurationDataDiskArgs']]] data_disks: DataDisk mappings to attach to ecs instance. See `data_disk` below for details.
|
|
943
|
+
:param pulumi.Input[bool] deletion_protection: Specifies whether to enable the Release Protection feature for ECS instances. This parameter is applicable to only pay-as-you-go instances. You can use this parameter to specify whether an ECS instance can be directly released by using the ECS console or calling the DeleteInstance operation. Valid values: true, false. Default value: false.
|
|
807
944
|
:param pulumi.Input[bool] enable: Whether enable the specified scaling group(make it active) to which the current scaling configuration belongs.
|
|
808
945
|
:param pulumi.Input[bool] force_delete: The last scaling configuration will be deleted forcibly with deleting its scaling group. Default to false.
|
|
809
946
|
:param pulumi.Input[str] host_name: Hostname of an ECS instance.
|
|
810
947
|
:param pulumi.Input[str] image_id: ID of an image file, indicating the image resource selected when an instance is enabled.
|
|
811
948
|
:param pulumi.Input[str] image_name: Name of an image file, indicating the image resource selected when an instance is enabled.
|
|
949
|
+
:param pulumi.Input[bool] image_options_login_as_non_root: Specifies whether to use ecs-user to log on to an ECS instance. For more information, see Manage the username used to log on to an ECS instance. Valid values: true, false. Default value: false.
|
|
950
|
+
:param pulumi.Input[str] instance_description: The description of ECS instances. The description must be 2 to 256 characters in length. It can contain letters but cannot start with http:// or https://.
|
|
812
951
|
:param pulumi.Input[Sequence[pulumi.Input[str]]] instance_ids: It has been deprecated from version 1.6.0. New resource `ess.Attachment` replaces it.
|
|
813
952
|
:param pulumi.Input[str] instance_name: Name of an ECS instance. Default to "ESS-Instance". It is valid from version 1.7.1.
|
|
814
953
|
:param pulumi.Input[Sequence[pulumi.Input['ScalingConfigurationInstancePatternInfoArgs']]] instance_pattern_infos: intelligent configuration mode. In this mode, you only need to specify the number of vCPUs, memory size, instance family, and maximum price. The system selects an instance type that is provided at the lowest price based on your configurations to create ECS instances. This mode is available only for scaling groups that reside in virtual private clouds (VPCs). This mode helps reduce the failures of scale-out activities caused by insufficient inventory of instance types. See `instance_pattern_info` below for details.
|
|
@@ -830,8 +969,10 @@ class _ScalingConfigurationState:
|
|
|
830
969
|
:param pulumi.Input[str] role_name: Instance RAM role name. The name is provided and maintained by RAM. You can use `ram.Role` to create a new one.
|
|
831
970
|
:param pulumi.Input[str] scaling_configuration_name: Name shown for the scheduled task. which must contain 2-64 characters (English or Chinese), starting with numbers, English letters or Chinese characters, and can contain number, underscores `_`, hypens `-`, and decimal point `.`. If this parameter value is not specified, the default value is ScalingConfigurationId.
|
|
832
971
|
:param pulumi.Input[str] scaling_group_id: ID of the scaling group of a scaling configuration.
|
|
972
|
+
:param pulumi.Input[str] security_enhancement_strategy: Specifies whether to enable Security Hardening. Valid values: Active, Deactive.
|
|
833
973
|
:param pulumi.Input[str] security_group_id: ID of the security group used to create new instance. It is conflict with `security_group_ids`.
|
|
834
974
|
:param pulumi.Input[Sequence[pulumi.Input[str]]] security_group_ids: List IDs of the security group used to create new instances. It is conflict with `security_group_id`.
|
|
975
|
+
:param pulumi.Input[int] spot_duration: The protection period of preemptible instances. Unit: hours. Valid values: 1, 0.
|
|
835
976
|
:param pulumi.Input[Sequence[pulumi.Input['ScalingConfigurationSpotPriceLimitArgs']]] spot_price_limits: Sets the maximum price hourly for instance types. See `spot_price_limit` below for details.
|
|
836
977
|
|
|
837
978
|
> **NOTE:** Before enabling the scaling group, it must have a active scaling configuration.
|
|
@@ -852,9 +993,12 @@ class _ScalingConfigurationState:
|
|
|
852
993
|
:param pulumi.Input[str] system_disk_auto_snapshot_policy_id: The id of auto snapshot policy for system disk.
|
|
853
994
|
:param pulumi.Input[str] system_disk_category: Category of the system disk. The parameter value options are `ephemeral_ssd`, `cloud_efficiency`, `cloud_ssd`, `cloud_essd` and `cloud`. `cloud` only is used to some no I/O optimized instance. Default to `cloud_efficiency`.
|
|
854
995
|
:param pulumi.Input[str] system_disk_description: The description of the system disk. The description must be 2 to 256 characters in length and cannot start with http:// or https://.
|
|
996
|
+
:param pulumi.Input[str] system_disk_encrypt_algorithm: The algorithm that you want to use to encrypt the system disk. Valid values: AES-256, SM4-128.
|
|
855
997
|
:param pulumi.Input[bool] system_disk_encrypted: Whether to encrypt the system disk.
|
|
998
|
+
:param pulumi.Input[str] system_disk_kms_key_id: The ID of the KMS key that you want to use to encrypt the system disk.
|
|
856
999
|
:param pulumi.Input[str] system_disk_name: The name of the system disk. It must be 2 to 128 characters in length. It must start with a letter and cannot start with http:// or https://. It can contain letters, digits, colons (:), underscores (_), and hyphens (-). Default value: null.
|
|
857
1000
|
:param pulumi.Input[str] system_disk_performance_level: The performance level of the ESSD used as the system disk.
|
|
1001
|
+
:param pulumi.Input[int] system_disk_provisioned_iops: IOPS measures the number of read and write operations that an EBS device can process per second.
|
|
858
1002
|
:param pulumi.Input[int] system_disk_size: Size of system disk, in GiB. Optional values: cloud: 20-500, cloud_efficiency: 20-500, cloud_ssd: 20-500, ephemeral_ssd: 20-500 The default value is max{40, ImageSize}. If this parameter is set, the system disk size must be greater than or equal to max{40, ImageSize}.
|
|
859
1003
|
:param pulumi.Input[Mapping[str, pulumi.Input[str]]] tags: A mapping of tags to assign to the resource. It will be applied for ECS instances finally.
|
|
860
1004
|
- Key: It can be up to 64 characters in length. It cannot begin with "aliyun", "http://", or "https://". It cannot be a null string.
|
|
@@ -867,6 +1011,8 @@ class _ScalingConfigurationState:
|
|
|
867
1011
|
pulumi.set(__self__, "credit_specification", credit_specification)
|
|
868
1012
|
if data_disks is not None:
|
|
869
1013
|
pulumi.set(__self__, "data_disks", data_disks)
|
|
1014
|
+
if deletion_protection is not None:
|
|
1015
|
+
pulumi.set(__self__, "deletion_protection", deletion_protection)
|
|
870
1016
|
if enable is not None:
|
|
871
1017
|
pulumi.set(__self__, "enable", enable)
|
|
872
1018
|
if force_delete is not None:
|
|
@@ -877,6 +1023,10 @@ class _ScalingConfigurationState:
|
|
|
877
1023
|
pulumi.set(__self__, "image_id", image_id)
|
|
878
1024
|
if image_name is not None:
|
|
879
1025
|
pulumi.set(__self__, "image_name", image_name)
|
|
1026
|
+
if image_options_login_as_non_root is not None:
|
|
1027
|
+
pulumi.set(__self__, "image_options_login_as_non_root", image_options_login_as_non_root)
|
|
1028
|
+
if instance_description is not None:
|
|
1029
|
+
pulumi.set(__self__, "instance_description", instance_description)
|
|
880
1030
|
if instance_ids is not None:
|
|
881
1031
|
warnings.warn("""Field 'instance_ids' has been deprecated from provider version 1.6.0. New resource 'alicloud_ess_attachment' replaces it.""", DeprecationWarning)
|
|
882
1032
|
pulumi.log.warn("""instance_ids is deprecated: Field 'instance_ids' has been deprecated from provider version 1.6.0. New resource 'alicloud_ess_attachment' replaces it.""")
|
|
@@ -925,10 +1075,14 @@ class _ScalingConfigurationState:
|
|
|
925
1075
|
pulumi.set(__self__, "scaling_configuration_name", scaling_configuration_name)
|
|
926
1076
|
if scaling_group_id is not None:
|
|
927
1077
|
pulumi.set(__self__, "scaling_group_id", scaling_group_id)
|
|
1078
|
+
if security_enhancement_strategy is not None:
|
|
1079
|
+
pulumi.set(__self__, "security_enhancement_strategy", security_enhancement_strategy)
|
|
928
1080
|
if security_group_id is not None:
|
|
929
1081
|
pulumi.set(__self__, "security_group_id", security_group_id)
|
|
930
1082
|
if security_group_ids is not None:
|
|
931
1083
|
pulumi.set(__self__, "security_group_ids", security_group_ids)
|
|
1084
|
+
if spot_duration is not None:
|
|
1085
|
+
pulumi.set(__self__, "spot_duration", spot_duration)
|
|
932
1086
|
if spot_price_limits is not None:
|
|
933
1087
|
pulumi.set(__self__, "spot_price_limits", spot_price_limits)
|
|
934
1088
|
if spot_strategy is not None:
|
|
@@ -941,12 +1095,18 @@ class _ScalingConfigurationState:
|
|
|
941
1095
|
pulumi.set(__self__, "system_disk_category", system_disk_category)
|
|
942
1096
|
if system_disk_description is not None:
|
|
943
1097
|
pulumi.set(__self__, "system_disk_description", system_disk_description)
|
|
1098
|
+
if system_disk_encrypt_algorithm is not None:
|
|
1099
|
+
pulumi.set(__self__, "system_disk_encrypt_algorithm", system_disk_encrypt_algorithm)
|
|
944
1100
|
if system_disk_encrypted is not None:
|
|
945
1101
|
pulumi.set(__self__, "system_disk_encrypted", system_disk_encrypted)
|
|
1102
|
+
if system_disk_kms_key_id is not None:
|
|
1103
|
+
pulumi.set(__self__, "system_disk_kms_key_id", system_disk_kms_key_id)
|
|
946
1104
|
if system_disk_name is not None:
|
|
947
1105
|
pulumi.set(__self__, "system_disk_name", system_disk_name)
|
|
948
1106
|
if system_disk_performance_level is not None:
|
|
949
1107
|
pulumi.set(__self__, "system_disk_performance_level", system_disk_performance_level)
|
|
1108
|
+
if system_disk_provisioned_iops is not None:
|
|
1109
|
+
pulumi.set(__self__, "system_disk_provisioned_iops", system_disk_provisioned_iops)
|
|
950
1110
|
if system_disk_size is not None:
|
|
951
1111
|
pulumi.set(__self__, "system_disk_size", system_disk_size)
|
|
952
1112
|
if tags is not None:
|
|
@@ -990,6 +1150,18 @@ class _ScalingConfigurationState:
|
|
|
990
1150
|
def data_disks(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['ScalingConfigurationDataDiskArgs']]]]):
|
|
991
1151
|
pulumi.set(self, "data_disks", value)
|
|
992
1152
|
|
|
1153
|
+
@property
|
|
1154
|
+
@pulumi.getter(name="deletionProtection")
|
|
1155
|
+
def deletion_protection(self) -> Optional[pulumi.Input[bool]]:
|
|
1156
|
+
"""
|
|
1157
|
+
Specifies whether to enable the Release Protection feature for ECS instances. This parameter is applicable to only pay-as-you-go instances. You can use this parameter to specify whether an ECS instance can be directly released by using the ECS console or calling the DeleteInstance operation. Valid values: true, false. Default value: false.
|
|
1158
|
+
"""
|
|
1159
|
+
return pulumi.get(self, "deletion_protection")
|
|
1160
|
+
|
|
1161
|
+
@deletion_protection.setter
|
|
1162
|
+
def deletion_protection(self, value: Optional[pulumi.Input[bool]]):
|
|
1163
|
+
pulumi.set(self, "deletion_protection", value)
|
|
1164
|
+
|
|
993
1165
|
@property
|
|
994
1166
|
@pulumi.getter
|
|
995
1167
|
def enable(self) -> Optional[pulumi.Input[bool]]:
|
|
@@ -1050,6 +1222,30 @@ class _ScalingConfigurationState:
|
|
|
1050
1222
|
def image_name(self, value: Optional[pulumi.Input[str]]):
|
|
1051
1223
|
pulumi.set(self, "image_name", value)
|
|
1052
1224
|
|
|
1225
|
+
@property
|
|
1226
|
+
@pulumi.getter(name="imageOptionsLoginAsNonRoot")
|
|
1227
|
+
def image_options_login_as_non_root(self) -> Optional[pulumi.Input[bool]]:
|
|
1228
|
+
"""
|
|
1229
|
+
Specifies whether to use ecs-user to log on to an ECS instance. For more information, see Manage the username used to log on to an ECS instance. Valid values: true, false. Default value: false.
|
|
1230
|
+
"""
|
|
1231
|
+
return pulumi.get(self, "image_options_login_as_non_root")
|
|
1232
|
+
|
|
1233
|
+
@image_options_login_as_non_root.setter
|
|
1234
|
+
def image_options_login_as_non_root(self, value: Optional[pulumi.Input[bool]]):
|
|
1235
|
+
pulumi.set(self, "image_options_login_as_non_root", value)
|
|
1236
|
+
|
|
1237
|
+
@property
|
|
1238
|
+
@pulumi.getter(name="instanceDescription")
|
|
1239
|
+
def instance_description(self) -> Optional[pulumi.Input[str]]:
|
|
1240
|
+
"""
|
|
1241
|
+
The description of ECS instances. The description must be 2 to 256 characters in length. It can contain letters but cannot start with http:// or https://.
|
|
1242
|
+
"""
|
|
1243
|
+
return pulumi.get(self, "instance_description")
|
|
1244
|
+
|
|
1245
|
+
@instance_description.setter
|
|
1246
|
+
def instance_description(self, value: Optional[pulumi.Input[str]]):
|
|
1247
|
+
pulumi.set(self, "instance_description", value)
|
|
1248
|
+
|
|
1053
1249
|
@property
|
|
1054
1250
|
@pulumi.getter(name="instanceIds")
|
|
1055
1251
|
@_utilities.deprecated("""Field 'instance_ids' has been deprecated from provider version 1.6.0. New resource 'alicloud_ess_attachment' replaces it.""")
|
|
@@ -1304,6 +1500,18 @@ class _ScalingConfigurationState:
|
|
|
1304
1500
|
def scaling_group_id(self, value: Optional[pulumi.Input[str]]):
|
|
1305
1501
|
pulumi.set(self, "scaling_group_id", value)
|
|
1306
1502
|
|
|
1503
|
+
@property
|
|
1504
|
+
@pulumi.getter(name="securityEnhancementStrategy")
|
|
1505
|
+
def security_enhancement_strategy(self) -> Optional[pulumi.Input[str]]:
|
|
1506
|
+
"""
|
|
1507
|
+
Specifies whether to enable Security Hardening. Valid values: Active, Deactive.
|
|
1508
|
+
"""
|
|
1509
|
+
return pulumi.get(self, "security_enhancement_strategy")
|
|
1510
|
+
|
|
1511
|
+
@security_enhancement_strategy.setter
|
|
1512
|
+
def security_enhancement_strategy(self, value: Optional[pulumi.Input[str]]):
|
|
1513
|
+
pulumi.set(self, "security_enhancement_strategy", value)
|
|
1514
|
+
|
|
1307
1515
|
@property
|
|
1308
1516
|
@pulumi.getter(name="securityGroupId")
|
|
1309
1517
|
def security_group_id(self) -> Optional[pulumi.Input[str]]:
|
|
@@ -1328,6 +1536,18 @@ class _ScalingConfigurationState:
|
|
|
1328
1536
|
def security_group_ids(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
|
|
1329
1537
|
pulumi.set(self, "security_group_ids", value)
|
|
1330
1538
|
|
|
1539
|
+
@property
|
|
1540
|
+
@pulumi.getter(name="spotDuration")
|
|
1541
|
+
def spot_duration(self) -> Optional[pulumi.Input[int]]:
|
|
1542
|
+
"""
|
|
1543
|
+
The protection period of preemptible instances. Unit: hours. Valid values: 1, 0.
|
|
1544
|
+
"""
|
|
1545
|
+
return pulumi.get(self, "spot_duration")
|
|
1546
|
+
|
|
1547
|
+
@spot_duration.setter
|
|
1548
|
+
def spot_duration(self, value: Optional[pulumi.Input[int]]):
|
|
1549
|
+
pulumi.set(self, "spot_duration", value)
|
|
1550
|
+
|
|
1331
1551
|
@property
|
|
1332
1552
|
@pulumi.getter(name="spotPriceLimits")
|
|
1333
1553
|
def spot_price_limits(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ScalingConfigurationSpotPriceLimitArgs']]]]:
|
|
@@ -1414,6 +1634,18 @@ class _ScalingConfigurationState:
|
|
|
1414
1634
|
def system_disk_description(self, value: Optional[pulumi.Input[str]]):
|
|
1415
1635
|
pulumi.set(self, "system_disk_description", value)
|
|
1416
1636
|
|
|
1637
|
+
@property
|
|
1638
|
+
@pulumi.getter(name="systemDiskEncryptAlgorithm")
|
|
1639
|
+
def system_disk_encrypt_algorithm(self) -> Optional[pulumi.Input[str]]:
|
|
1640
|
+
"""
|
|
1641
|
+
The algorithm that you want to use to encrypt the system disk. Valid values: AES-256, SM4-128.
|
|
1642
|
+
"""
|
|
1643
|
+
return pulumi.get(self, "system_disk_encrypt_algorithm")
|
|
1644
|
+
|
|
1645
|
+
@system_disk_encrypt_algorithm.setter
|
|
1646
|
+
def system_disk_encrypt_algorithm(self, value: Optional[pulumi.Input[str]]):
|
|
1647
|
+
pulumi.set(self, "system_disk_encrypt_algorithm", value)
|
|
1648
|
+
|
|
1417
1649
|
@property
|
|
1418
1650
|
@pulumi.getter(name="systemDiskEncrypted")
|
|
1419
1651
|
def system_disk_encrypted(self) -> Optional[pulumi.Input[bool]]:
|
|
@@ -1426,6 +1658,18 @@ class _ScalingConfigurationState:
|
|
|
1426
1658
|
def system_disk_encrypted(self, value: Optional[pulumi.Input[bool]]):
|
|
1427
1659
|
pulumi.set(self, "system_disk_encrypted", value)
|
|
1428
1660
|
|
|
1661
|
+
@property
|
|
1662
|
+
@pulumi.getter(name="systemDiskKmsKeyId")
|
|
1663
|
+
def system_disk_kms_key_id(self) -> Optional[pulumi.Input[str]]:
|
|
1664
|
+
"""
|
|
1665
|
+
The ID of the KMS key that you want to use to encrypt the system disk.
|
|
1666
|
+
"""
|
|
1667
|
+
return pulumi.get(self, "system_disk_kms_key_id")
|
|
1668
|
+
|
|
1669
|
+
@system_disk_kms_key_id.setter
|
|
1670
|
+
def system_disk_kms_key_id(self, value: Optional[pulumi.Input[str]]):
|
|
1671
|
+
pulumi.set(self, "system_disk_kms_key_id", value)
|
|
1672
|
+
|
|
1429
1673
|
@property
|
|
1430
1674
|
@pulumi.getter(name="systemDiskName")
|
|
1431
1675
|
def system_disk_name(self) -> Optional[pulumi.Input[str]]:
|
|
@@ -1450,6 +1694,18 @@ class _ScalingConfigurationState:
|
|
|
1450
1694
|
def system_disk_performance_level(self, value: Optional[pulumi.Input[str]]):
|
|
1451
1695
|
pulumi.set(self, "system_disk_performance_level", value)
|
|
1452
1696
|
|
|
1697
|
+
@property
|
|
1698
|
+
@pulumi.getter(name="systemDiskProvisionedIops")
|
|
1699
|
+
def system_disk_provisioned_iops(self) -> Optional[pulumi.Input[int]]:
|
|
1700
|
+
"""
|
|
1701
|
+
IOPS measures the number of read and write operations that an EBS device can process per second.
|
|
1702
|
+
"""
|
|
1703
|
+
return pulumi.get(self, "system_disk_provisioned_iops")
|
|
1704
|
+
|
|
1705
|
+
@system_disk_provisioned_iops.setter
|
|
1706
|
+
def system_disk_provisioned_iops(self, value: Optional[pulumi.Input[int]]):
|
|
1707
|
+
pulumi.set(self, "system_disk_provisioned_iops", value)
|
|
1708
|
+
|
|
1453
1709
|
@property
|
|
1454
1710
|
@pulumi.getter(name="systemDiskSize")
|
|
1455
1711
|
def system_disk_size(self) -> Optional[pulumi.Input[int]]:
|
|
@@ -1497,11 +1753,14 @@ class ScalingConfiguration(pulumi.CustomResource):
|
|
|
1497
1753
|
active: Optional[pulumi.Input[bool]] = None,
|
|
1498
1754
|
credit_specification: Optional[pulumi.Input[str]] = None,
|
|
1499
1755
|
data_disks: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ScalingConfigurationDataDiskArgs', 'ScalingConfigurationDataDiskArgsDict']]]]] = None,
|
|
1756
|
+
deletion_protection: Optional[pulumi.Input[bool]] = None,
|
|
1500
1757
|
enable: Optional[pulumi.Input[bool]] = None,
|
|
1501
1758
|
force_delete: Optional[pulumi.Input[bool]] = None,
|
|
1502
1759
|
host_name: Optional[pulumi.Input[str]] = None,
|
|
1503
1760
|
image_id: Optional[pulumi.Input[str]] = None,
|
|
1504
1761
|
image_name: Optional[pulumi.Input[str]] = None,
|
|
1762
|
+
image_options_login_as_non_root: Optional[pulumi.Input[bool]] = None,
|
|
1763
|
+
instance_description: Optional[pulumi.Input[str]] = None,
|
|
1505
1764
|
instance_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
|
1506
1765
|
instance_name: Optional[pulumi.Input[str]] = None,
|
|
1507
1766
|
instance_pattern_infos: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ScalingConfigurationInstancePatternInfoArgs', 'ScalingConfigurationInstancePatternInfoArgsDict']]]]] = None,
|
|
@@ -1523,17 +1782,22 @@ class ScalingConfiguration(pulumi.CustomResource):
|
|
|
1523
1782
|
role_name: Optional[pulumi.Input[str]] = None,
|
|
1524
1783
|
scaling_configuration_name: Optional[pulumi.Input[str]] = None,
|
|
1525
1784
|
scaling_group_id: Optional[pulumi.Input[str]] = None,
|
|
1785
|
+
security_enhancement_strategy: Optional[pulumi.Input[str]] = None,
|
|
1526
1786
|
security_group_id: Optional[pulumi.Input[str]] = None,
|
|
1527
1787
|
security_group_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
|
1788
|
+
spot_duration: Optional[pulumi.Input[int]] = None,
|
|
1528
1789
|
spot_price_limits: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ScalingConfigurationSpotPriceLimitArgs', 'ScalingConfigurationSpotPriceLimitArgsDict']]]]] = None,
|
|
1529
1790
|
spot_strategy: Optional[pulumi.Input[str]] = None,
|
|
1530
1791
|
substitute: Optional[pulumi.Input[str]] = None,
|
|
1531
1792
|
system_disk_auto_snapshot_policy_id: Optional[pulumi.Input[str]] = None,
|
|
1532
1793
|
system_disk_category: Optional[pulumi.Input[str]] = None,
|
|
1533
1794
|
system_disk_description: Optional[pulumi.Input[str]] = None,
|
|
1795
|
+
system_disk_encrypt_algorithm: Optional[pulumi.Input[str]] = None,
|
|
1534
1796
|
system_disk_encrypted: Optional[pulumi.Input[bool]] = None,
|
|
1797
|
+
system_disk_kms_key_id: Optional[pulumi.Input[str]] = None,
|
|
1535
1798
|
system_disk_name: Optional[pulumi.Input[str]] = None,
|
|
1536
1799
|
system_disk_performance_level: Optional[pulumi.Input[str]] = None,
|
|
1800
|
+
system_disk_provisioned_iops: Optional[pulumi.Input[int]] = None,
|
|
1537
1801
|
system_disk_size: Optional[pulumi.Input[int]] = None,
|
|
1538
1802
|
tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
|
|
1539
1803
|
user_data: Optional[pulumi.Input[str]] = None,
|
|
@@ -1624,11 +1888,14 @@ class ScalingConfiguration(pulumi.CustomResource):
|
|
|
1624
1888
|
:param pulumi.Input[bool] active: Whether active current scaling configuration in the specified scaling group. Default to `false`.
|
|
1625
1889
|
:param pulumi.Input[str] credit_specification: Performance mode of the t5 burstable instance. Valid values: 'Standard', 'Unlimited'.
|
|
1626
1890
|
:param pulumi.Input[Sequence[pulumi.Input[Union['ScalingConfigurationDataDiskArgs', 'ScalingConfigurationDataDiskArgsDict']]]] data_disks: DataDisk mappings to attach to ecs instance. See `data_disk` below for details.
|
|
1891
|
+
:param pulumi.Input[bool] deletion_protection: Specifies whether to enable the Release Protection feature for ECS instances. This parameter is applicable to only pay-as-you-go instances. You can use this parameter to specify whether an ECS instance can be directly released by using the ECS console or calling the DeleteInstance operation. Valid values: true, false. Default value: false.
|
|
1627
1892
|
:param pulumi.Input[bool] enable: Whether enable the specified scaling group(make it active) to which the current scaling configuration belongs.
|
|
1628
1893
|
:param pulumi.Input[bool] force_delete: The last scaling configuration will be deleted forcibly with deleting its scaling group. Default to false.
|
|
1629
1894
|
:param pulumi.Input[str] host_name: Hostname of an ECS instance.
|
|
1630
1895
|
:param pulumi.Input[str] image_id: ID of an image file, indicating the image resource selected when an instance is enabled.
|
|
1631
1896
|
:param pulumi.Input[str] image_name: Name of an image file, indicating the image resource selected when an instance is enabled.
|
|
1897
|
+
:param pulumi.Input[bool] image_options_login_as_non_root: Specifies whether to use ecs-user to log on to an ECS instance. For more information, see Manage the username used to log on to an ECS instance. Valid values: true, false. Default value: false.
|
|
1898
|
+
:param pulumi.Input[str] instance_description: The description of ECS instances. The description must be 2 to 256 characters in length. It can contain letters but cannot start with http:// or https://.
|
|
1632
1899
|
:param pulumi.Input[Sequence[pulumi.Input[str]]] instance_ids: It has been deprecated from version 1.6.0. New resource `ess.Attachment` replaces it.
|
|
1633
1900
|
:param pulumi.Input[str] instance_name: Name of an ECS instance. Default to "ESS-Instance". It is valid from version 1.7.1.
|
|
1634
1901
|
:param pulumi.Input[Sequence[pulumi.Input[Union['ScalingConfigurationInstancePatternInfoArgs', 'ScalingConfigurationInstancePatternInfoArgsDict']]]] instance_pattern_infos: intelligent configuration mode. In this mode, you only need to specify the number of vCPUs, memory size, instance family, and maximum price. The system selects an instance type that is provided at the lowest price based on your configurations to create ECS instances. This mode is available only for scaling groups that reside in virtual private clouds (VPCs). This mode helps reduce the failures of scale-out activities caused by insufficient inventory of instance types. See `instance_pattern_info` below for details.
|
|
@@ -1650,8 +1917,10 @@ class ScalingConfiguration(pulumi.CustomResource):
|
|
|
1650
1917
|
:param pulumi.Input[str] role_name: Instance RAM role name. The name is provided and maintained by RAM. You can use `ram.Role` to create a new one.
|
|
1651
1918
|
:param pulumi.Input[str] scaling_configuration_name: Name shown for the scheduled task. which must contain 2-64 characters (English or Chinese), starting with numbers, English letters or Chinese characters, and can contain number, underscores `_`, hypens `-`, and decimal point `.`. If this parameter value is not specified, the default value is ScalingConfigurationId.
|
|
1652
1919
|
:param pulumi.Input[str] scaling_group_id: ID of the scaling group of a scaling configuration.
|
|
1920
|
+
:param pulumi.Input[str] security_enhancement_strategy: Specifies whether to enable Security Hardening. Valid values: Active, Deactive.
|
|
1653
1921
|
:param pulumi.Input[str] security_group_id: ID of the security group used to create new instance. It is conflict with `security_group_ids`.
|
|
1654
1922
|
:param pulumi.Input[Sequence[pulumi.Input[str]]] security_group_ids: List IDs of the security group used to create new instances. It is conflict with `security_group_id`.
|
|
1923
|
+
:param pulumi.Input[int] spot_duration: The protection period of preemptible instances. Unit: hours. Valid values: 1, 0.
|
|
1655
1924
|
:param pulumi.Input[Sequence[pulumi.Input[Union['ScalingConfigurationSpotPriceLimitArgs', 'ScalingConfigurationSpotPriceLimitArgsDict']]]] spot_price_limits: Sets the maximum price hourly for instance types. See `spot_price_limit` below for details.
|
|
1656
1925
|
|
|
1657
1926
|
> **NOTE:** Before enabling the scaling group, it must have a active scaling configuration.
|
|
@@ -1672,9 +1941,12 @@ class ScalingConfiguration(pulumi.CustomResource):
|
|
|
1672
1941
|
:param pulumi.Input[str] system_disk_auto_snapshot_policy_id: The id of auto snapshot policy for system disk.
|
|
1673
1942
|
:param pulumi.Input[str] system_disk_category: Category of the system disk. The parameter value options are `ephemeral_ssd`, `cloud_efficiency`, `cloud_ssd`, `cloud_essd` and `cloud`. `cloud` only is used to some no I/O optimized instance. Default to `cloud_efficiency`.
|
|
1674
1943
|
:param pulumi.Input[str] system_disk_description: The description of the system disk. The description must be 2 to 256 characters in length and cannot start with http:// or https://.
|
|
1944
|
+
:param pulumi.Input[str] system_disk_encrypt_algorithm: The algorithm that you want to use to encrypt the system disk. Valid values: AES-256, SM4-128.
|
|
1675
1945
|
:param pulumi.Input[bool] system_disk_encrypted: Whether to encrypt the system disk.
|
|
1946
|
+
:param pulumi.Input[str] system_disk_kms_key_id: The ID of the KMS key that you want to use to encrypt the system disk.
|
|
1676
1947
|
:param pulumi.Input[str] system_disk_name: The name of the system disk. It must be 2 to 128 characters in length. It must start with a letter and cannot start with http:// or https://. It can contain letters, digits, colons (:), underscores (_), and hyphens (-). Default value: null.
|
|
1677
1948
|
:param pulumi.Input[str] system_disk_performance_level: The performance level of the ESSD used as the system disk.
|
|
1949
|
+
:param pulumi.Input[int] system_disk_provisioned_iops: IOPS measures the number of read and write operations that an EBS device can process per second.
|
|
1678
1950
|
:param pulumi.Input[int] system_disk_size: Size of system disk, in GiB. Optional values: cloud: 20-500, cloud_efficiency: 20-500, cloud_ssd: 20-500, ephemeral_ssd: 20-500 The default value is max{40, ImageSize}. If this parameter is set, the system disk size must be greater than or equal to max{40, ImageSize}.
|
|
1679
1951
|
:param pulumi.Input[Mapping[str, pulumi.Input[str]]] tags: A mapping of tags to assign to the resource. It will be applied for ECS instances finally.
|
|
1680
1952
|
- Key: It can be up to 64 characters in length. It cannot begin with "aliyun", "http://", or "https://". It cannot be a null string.
|
|
@@ -1786,11 +2058,14 @@ class ScalingConfiguration(pulumi.CustomResource):
|
|
|
1786
2058
|
active: Optional[pulumi.Input[bool]] = None,
|
|
1787
2059
|
credit_specification: Optional[pulumi.Input[str]] = None,
|
|
1788
2060
|
data_disks: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ScalingConfigurationDataDiskArgs', 'ScalingConfigurationDataDiskArgsDict']]]]] = None,
|
|
2061
|
+
deletion_protection: Optional[pulumi.Input[bool]] = None,
|
|
1789
2062
|
enable: Optional[pulumi.Input[bool]] = None,
|
|
1790
2063
|
force_delete: Optional[pulumi.Input[bool]] = None,
|
|
1791
2064
|
host_name: Optional[pulumi.Input[str]] = None,
|
|
1792
2065
|
image_id: Optional[pulumi.Input[str]] = None,
|
|
1793
2066
|
image_name: Optional[pulumi.Input[str]] = None,
|
|
2067
|
+
image_options_login_as_non_root: Optional[pulumi.Input[bool]] = None,
|
|
2068
|
+
instance_description: Optional[pulumi.Input[str]] = None,
|
|
1794
2069
|
instance_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
|
1795
2070
|
instance_name: Optional[pulumi.Input[str]] = None,
|
|
1796
2071
|
instance_pattern_infos: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ScalingConfigurationInstancePatternInfoArgs', 'ScalingConfigurationInstancePatternInfoArgsDict']]]]] = None,
|
|
@@ -1812,17 +2087,22 @@ class ScalingConfiguration(pulumi.CustomResource):
|
|
|
1812
2087
|
role_name: Optional[pulumi.Input[str]] = None,
|
|
1813
2088
|
scaling_configuration_name: Optional[pulumi.Input[str]] = None,
|
|
1814
2089
|
scaling_group_id: Optional[pulumi.Input[str]] = None,
|
|
2090
|
+
security_enhancement_strategy: Optional[pulumi.Input[str]] = None,
|
|
1815
2091
|
security_group_id: Optional[pulumi.Input[str]] = None,
|
|
1816
2092
|
security_group_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
|
2093
|
+
spot_duration: Optional[pulumi.Input[int]] = None,
|
|
1817
2094
|
spot_price_limits: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ScalingConfigurationSpotPriceLimitArgs', 'ScalingConfigurationSpotPriceLimitArgsDict']]]]] = None,
|
|
1818
2095
|
spot_strategy: Optional[pulumi.Input[str]] = None,
|
|
1819
2096
|
substitute: Optional[pulumi.Input[str]] = None,
|
|
1820
2097
|
system_disk_auto_snapshot_policy_id: Optional[pulumi.Input[str]] = None,
|
|
1821
2098
|
system_disk_category: Optional[pulumi.Input[str]] = None,
|
|
1822
2099
|
system_disk_description: Optional[pulumi.Input[str]] = None,
|
|
2100
|
+
system_disk_encrypt_algorithm: Optional[pulumi.Input[str]] = None,
|
|
1823
2101
|
system_disk_encrypted: Optional[pulumi.Input[bool]] = None,
|
|
2102
|
+
system_disk_kms_key_id: Optional[pulumi.Input[str]] = None,
|
|
1824
2103
|
system_disk_name: Optional[pulumi.Input[str]] = None,
|
|
1825
2104
|
system_disk_performance_level: Optional[pulumi.Input[str]] = None,
|
|
2105
|
+
system_disk_provisioned_iops: Optional[pulumi.Input[int]] = None,
|
|
1826
2106
|
system_disk_size: Optional[pulumi.Input[int]] = None,
|
|
1827
2107
|
tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
|
|
1828
2108
|
user_data: Optional[pulumi.Input[str]] = None,
|
|
@@ -1838,11 +2118,14 @@ class ScalingConfiguration(pulumi.CustomResource):
|
|
|
1838
2118
|
__props__.__dict__["active"] = active
|
|
1839
2119
|
__props__.__dict__["credit_specification"] = credit_specification
|
|
1840
2120
|
__props__.__dict__["data_disks"] = data_disks
|
|
2121
|
+
__props__.__dict__["deletion_protection"] = deletion_protection
|
|
1841
2122
|
__props__.__dict__["enable"] = enable
|
|
1842
2123
|
__props__.__dict__["force_delete"] = force_delete
|
|
1843
2124
|
__props__.__dict__["host_name"] = host_name
|
|
1844
2125
|
__props__.__dict__["image_id"] = image_id
|
|
1845
2126
|
__props__.__dict__["image_name"] = image_name
|
|
2127
|
+
__props__.__dict__["image_options_login_as_non_root"] = image_options_login_as_non_root
|
|
2128
|
+
__props__.__dict__["instance_description"] = instance_description
|
|
1846
2129
|
__props__.__dict__["instance_ids"] = instance_ids
|
|
1847
2130
|
__props__.__dict__["instance_name"] = instance_name
|
|
1848
2131
|
__props__.__dict__["instance_pattern_infos"] = instance_pattern_infos
|
|
@@ -1866,17 +2149,22 @@ class ScalingConfiguration(pulumi.CustomResource):
|
|
|
1866
2149
|
if scaling_group_id is None and not opts.urn:
|
|
1867
2150
|
raise TypeError("Missing required property 'scaling_group_id'")
|
|
1868
2151
|
__props__.__dict__["scaling_group_id"] = scaling_group_id
|
|
2152
|
+
__props__.__dict__["security_enhancement_strategy"] = security_enhancement_strategy
|
|
1869
2153
|
__props__.__dict__["security_group_id"] = security_group_id
|
|
1870
2154
|
__props__.__dict__["security_group_ids"] = security_group_ids
|
|
2155
|
+
__props__.__dict__["spot_duration"] = spot_duration
|
|
1871
2156
|
__props__.__dict__["spot_price_limits"] = spot_price_limits
|
|
1872
2157
|
__props__.__dict__["spot_strategy"] = spot_strategy
|
|
1873
2158
|
__props__.__dict__["substitute"] = substitute
|
|
1874
2159
|
__props__.__dict__["system_disk_auto_snapshot_policy_id"] = system_disk_auto_snapshot_policy_id
|
|
1875
2160
|
__props__.__dict__["system_disk_category"] = system_disk_category
|
|
1876
2161
|
__props__.__dict__["system_disk_description"] = system_disk_description
|
|
2162
|
+
__props__.__dict__["system_disk_encrypt_algorithm"] = system_disk_encrypt_algorithm
|
|
1877
2163
|
__props__.__dict__["system_disk_encrypted"] = system_disk_encrypted
|
|
2164
|
+
__props__.__dict__["system_disk_kms_key_id"] = system_disk_kms_key_id
|
|
1878
2165
|
__props__.__dict__["system_disk_name"] = system_disk_name
|
|
1879
2166
|
__props__.__dict__["system_disk_performance_level"] = system_disk_performance_level
|
|
2167
|
+
__props__.__dict__["system_disk_provisioned_iops"] = system_disk_provisioned_iops
|
|
1880
2168
|
__props__.__dict__["system_disk_size"] = system_disk_size
|
|
1881
2169
|
__props__.__dict__["tags"] = tags
|
|
1882
2170
|
__props__.__dict__["user_data"] = user_data
|
|
@@ -1893,11 +2181,14 @@ class ScalingConfiguration(pulumi.CustomResource):
|
|
|
1893
2181
|
active: Optional[pulumi.Input[bool]] = None,
|
|
1894
2182
|
credit_specification: Optional[pulumi.Input[str]] = None,
|
|
1895
2183
|
data_disks: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ScalingConfigurationDataDiskArgs', 'ScalingConfigurationDataDiskArgsDict']]]]] = None,
|
|
2184
|
+
deletion_protection: Optional[pulumi.Input[bool]] = None,
|
|
1896
2185
|
enable: Optional[pulumi.Input[bool]] = None,
|
|
1897
2186
|
force_delete: Optional[pulumi.Input[bool]] = None,
|
|
1898
2187
|
host_name: Optional[pulumi.Input[str]] = None,
|
|
1899
2188
|
image_id: Optional[pulumi.Input[str]] = None,
|
|
1900
2189
|
image_name: Optional[pulumi.Input[str]] = None,
|
|
2190
|
+
image_options_login_as_non_root: Optional[pulumi.Input[bool]] = None,
|
|
2191
|
+
instance_description: Optional[pulumi.Input[str]] = None,
|
|
1901
2192
|
instance_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
|
1902
2193
|
instance_name: Optional[pulumi.Input[str]] = None,
|
|
1903
2194
|
instance_pattern_infos: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ScalingConfigurationInstancePatternInfoArgs', 'ScalingConfigurationInstancePatternInfoArgsDict']]]]] = None,
|
|
@@ -1919,17 +2210,22 @@ class ScalingConfiguration(pulumi.CustomResource):
|
|
|
1919
2210
|
role_name: Optional[pulumi.Input[str]] = None,
|
|
1920
2211
|
scaling_configuration_name: Optional[pulumi.Input[str]] = None,
|
|
1921
2212
|
scaling_group_id: Optional[pulumi.Input[str]] = None,
|
|
2213
|
+
security_enhancement_strategy: Optional[pulumi.Input[str]] = None,
|
|
1922
2214
|
security_group_id: Optional[pulumi.Input[str]] = None,
|
|
1923
2215
|
security_group_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
|
2216
|
+
spot_duration: Optional[pulumi.Input[int]] = None,
|
|
1924
2217
|
spot_price_limits: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ScalingConfigurationSpotPriceLimitArgs', 'ScalingConfigurationSpotPriceLimitArgsDict']]]]] = None,
|
|
1925
2218
|
spot_strategy: Optional[pulumi.Input[str]] = None,
|
|
1926
2219
|
substitute: Optional[pulumi.Input[str]] = None,
|
|
1927
2220
|
system_disk_auto_snapshot_policy_id: Optional[pulumi.Input[str]] = None,
|
|
1928
2221
|
system_disk_category: Optional[pulumi.Input[str]] = None,
|
|
1929
2222
|
system_disk_description: Optional[pulumi.Input[str]] = None,
|
|
2223
|
+
system_disk_encrypt_algorithm: Optional[pulumi.Input[str]] = None,
|
|
1930
2224
|
system_disk_encrypted: Optional[pulumi.Input[bool]] = None,
|
|
2225
|
+
system_disk_kms_key_id: Optional[pulumi.Input[str]] = None,
|
|
1931
2226
|
system_disk_name: Optional[pulumi.Input[str]] = None,
|
|
1932
2227
|
system_disk_performance_level: Optional[pulumi.Input[str]] = None,
|
|
2228
|
+
system_disk_provisioned_iops: Optional[pulumi.Input[int]] = None,
|
|
1933
2229
|
system_disk_size: Optional[pulumi.Input[int]] = None,
|
|
1934
2230
|
tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
|
|
1935
2231
|
user_data: Optional[pulumi.Input[str]] = None) -> 'ScalingConfiguration':
|
|
@@ -1943,11 +2239,14 @@ class ScalingConfiguration(pulumi.CustomResource):
|
|
|
1943
2239
|
:param pulumi.Input[bool] active: Whether active current scaling configuration in the specified scaling group. Default to `false`.
|
|
1944
2240
|
:param pulumi.Input[str] credit_specification: Performance mode of the t5 burstable instance. Valid values: 'Standard', 'Unlimited'.
|
|
1945
2241
|
:param pulumi.Input[Sequence[pulumi.Input[Union['ScalingConfigurationDataDiskArgs', 'ScalingConfigurationDataDiskArgsDict']]]] data_disks: DataDisk mappings to attach to ecs instance. See `data_disk` below for details.
|
|
2242
|
+
:param pulumi.Input[bool] deletion_protection: Specifies whether to enable the Release Protection feature for ECS instances. This parameter is applicable to only pay-as-you-go instances. You can use this parameter to specify whether an ECS instance can be directly released by using the ECS console or calling the DeleteInstance operation. Valid values: true, false. Default value: false.
|
|
1946
2243
|
:param pulumi.Input[bool] enable: Whether enable the specified scaling group(make it active) to which the current scaling configuration belongs.
|
|
1947
2244
|
:param pulumi.Input[bool] force_delete: The last scaling configuration will be deleted forcibly with deleting its scaling group. Default to false.
|
|
1948
2245
|
:param pulumi.Input[str] host_name: Hostname of an ECS instance.
|
|
1949
2246
|
:param pulumi.Input[str] image_id: ID of an image file, indicating the image resource selected when an instance is enabled.
|
|
1950
2247
|
:param pulumi.Input[str] image_name: Name of an image file, indicating the image resource selected when an instance is enabled.
|
|
2248
|
+
:param pulumi.Input[bool] image_options_login_as_non_root: Specifies whether to use ecs-user to log on to an ECS instance. For more information, see Manage the username used to log on to an ECS instance. Valid values: true, false. Default value: false.
|
|
2249
|
+
:param pulumi.Input[str] instance_description: The description of ECS instances. The description must be 2 to 256 characters in length. It can contain letters but cannot start with http:// or https://.
|
|
1951
2250
|
:param pulumi.Input[Sequence[pulumi.Input[str]]] instance_ids: It has been deprecated from version 1.6.0. New resource `ess.Attachment` replaces it.
|
|
1952
2251
|
:param pulumi.Input[str] instance_name: Name of an ECS instance. Default to "ESS-Instance". It is valid from version 1.7.1.
|
|
1953
2252
|
:param pulumi.Input[Sequence[pulumi.Input[Union['ScalingConfigurationInstancePatternInfoArgs', 'ScalingConfigurationInstancePatternInfoArgsDict']]]] instance_pattern_infos: intelligent configuration mode. In this mode, you only need to specify the number of vCPUs, memory size, instance family, and maximum price. The system selects an instance type that is provided at the lowest price based on your configurations to create ECS instances. This mode is available only for scaling groups that reside in virtual private clouds (VPCs). This mode helps reduce the failures of scale-out activities caused by insufficient inventory of instance types. See `instance_pattern_info` below for details.
|
|
@@ -1969,8 +2268,10 @@ class ScalingConfiguration(pulumi.CustomResource):
|
|
|
1969
2268
|
:param pulumi.Input[str] role_name: Instance RAM role name. The name is provided and maintained by RAM. You can use `ram.Role` to create a new one.
|
|
1970
2269
|
:param pulumi.Input[str] scaling_configuration_name: Name shown for the scheduled task. which must contain 2-64 characters (English or Chinese), starting with numbers, English letters or Chinese characters, and can contain number, underscores `_`, hypens `-`, and decimal point `.`. If this parameter value is not specified, the default value is ScalingConfigurationId.
|
|
1971
2270
|
:param pulumi.Input[str] scaling_group_id: ID of the scaling group of a scaling configuration.
|
|
2271
|
+
:param pulumi.Input[str] security_enhancement_strategy: Specifies whether to enable Security Hardening. Valid values: Active, Deactive.
|
|
1972
2272
|
:param pulumi.Input[str] security_group_id: ID of the security group used to create new instance. It is conflict with `security_group_ids`.
|
|
1973
2273
|
:param pulumi.Input[Sequence[pulumi.Input[str]]] security_group_ids: List IDs of the security group used to create new instances. It is conflict with `security_group_id`.
|
|
2274
|
+
:param pulumi.Input[int] spot_duration: The protection period of preemptible instances. Unit: hours. Valid values: 1, 0.
|
|
1974
2275
|
:param pulumi.Input[Sequence[pulumi.Input[Union['ScalingConfigurationSpotPriceLimitArgs', 'ScalingConfigurationSpotPriceLimitArgsDict']]]] spot_price_limits: Sets the maximum price hourly for instance types. See `spot_price_limit` below for details.
|
|
1975
2276
|
|
|
1976
2277
|
> **NOTE:** Before enabling the scaling group, it must have a active scaling configuration.
|
|
@@ -1991,9 +2292,12 @@ class ScalingConfiguration(pulumi.CustomResource):
|
|
|
1991
2292
|
:param pulumi.Input[str] system_disk_auto_snapshot_policy_id: The id of auto snapshot policy for system disk.
|
|
1992
2293
|
:param pulumi.Input[str] system_disk_category: Category of the system disk. The parameter value options are `ephemeral_ssd`, `cloud_efficiency`, `cloud_ssd`, `cloud_essd` and `cloud`. `cloud` only is used to some no I/O optimized instance. Default to `cloud_efficiency`.
|
|
1993
2294
|
:param pulumi.Input[str] system_disk_description: The description of the system disk. The description must be 2 to 256 characters in length and cannot start with http:// or https://.
|
|
2295
|
+
:param pulumi.Input[str] system_disk_encrypt_algorithm: The algorithm that you want to use to encrypt the system disk. Valid values: AES-256, SM4-128.
|
|
1994
2296
|
:param pulumi.Input[bool] system_disk_encrypted: Whether to encrypt the system disk.
|
|
2297
|
+
:param pulumi.Input[str] system_disk_kms_key_id: The ID of the KMS key that you want to use to encrypt the system disk.
|
|
1995
2298
|
:param pulumi.Input[str] system_disk_name: The name of the system disk. It must be 2 to 128 characters in length. It must start with a letter and cannot start with http:// or https://. It can contain letters, digits, colons (:), underscores (_), and hyphens (-). Default value: null.
|
|
1996
2299
|
:param pulumi.Input[str] system_disk_performance_level: The performance level of the ESSD used as the system disk.
|
|
2300
|
+
:param pulumi.Input[int] system_disk_provisioned_iops: IOPS measures the number of read and write operations that an EBS device can process per second.
|
|
1997
2301
|
:param pulumi.Input[int] system_disk_size: Size of system disk, in GiB. Optional values: cloud: 20-500, cloud_efficiency: 20-500, cloud_ssd: 20-500, ephemeral_ssd: 20-500 The default value is max{40, ImageSize}. If this parameter is set, the system disk size must be greater than or equal to max{40, ImageSize}.
|
|
1998
2302
|
:param pulumi.Input[Mapping[str, pulumi.Input[str]]] tags: A mapping of tags to assign to the resource. It will be applied for ECS instances finally.
|
|
1999
2303
|
- Key: It can be up to 64 characters in length. It cannot begin with "aliyun", "http://", or "https://". It cannot be a null string.
|
|
@@ -2007,11 +2311,14 @@ class ScalingConfiguration(pulumi.CustomResource):
|
|
|
2007
2311
|
__props__.__dict__["active"] = active
|
|
2008
2312
|
__props__.__dict__["credit_specification"] = credit_specification
|
|
2009
2313
|
__props__.__dict__["data_disks"] = data_disks
|
|
2314
|
+
__props__.__dict__["deletion_protection"] = deletion_protection
|
|
2010
2315
|
__props__.__dict__["enable"] = enable
|
|
2011
2316
|
__props__.__dict__["force_delete"] = force_delete
|
|
2012
2317
|
__props__.__dict__["host_name"] = host_name
|
|
2013
2318
|
__props__.__dict__["image_id"] = image_id
|
|
2014
2319
|
__props__.__dict__["image_name"] = image_name
|
|
2320
|
+
__props__.__dict__["image_options_login_as_non_root"] = image_options_login_as_non_root
|
|
2321
|
+
__props__.__dict__["instance_description"] = instance_description
|
|
2015
2322
|
__props__.__dict__["instance_ids"] = instance_ids
|
|
2016
2323
|
__props__.__dict__["instance_name"] = instance_name
|
|
2017
2324
|
__props__.__dict__["instance_pattern_infos"] = instance_pattern_infos
|
|
@@ -2033,17 +2340,22 @@ class ScalingConfiguration(pulumi.CustomResource):
|
|
|
2033
2340
|
__props__.__dict__["role_name"] = role_name
|
|
2034
2341
|
__props__.__dict__["scaling_configuration_name"] = scaling_configuration_name
|
|
2035
2342
|
__props__.__dict__["scaling_group_id"] = scaling_group_id
|
|
2343
|
+
__props__.__dict__["security_enhancement_strategy"] = security_enhancement_strategy
|
|
2036
2344
|
__props__.__dict__["security_group_id"] = security_group_id
|
|
2037
2345
|
__props__.__dict__["security_group_ids"] = security_group_ids
|
|
2346
|
+
__props__.__dict__["spot_duration"] = spot_duration
|
|
2038
2347
|
__props__.__dict__["spot_price_limits"] = spot_price_limits
|
|
2039
2348
|
__props__.__dict__["spot_strategy"] = spot_strategy
|
|
2040
2349
|
__props__.__dict__["substitute"] = substitute
|
|
2041
2350
|
__props__.__dict__["system_disk_auto_snapshot_policy_id"] = system_disk_auto_snapshot_policy_id
|
|
2042
2351
|
__props__.__dict__["system_disk_category"] = system_disk_category
|
|
2043
2352
|
__props__.__dict__["system_disk_description"] = system_disk_description
|
|
2353
|
+
__props__.__dict__["system_disk_encrypt_algorithm"] = system_disk_encrypt_algorithm
|
|
2044
2354
|
__props__.__dict__["system_disk_encrypted"] = system_disk_encrypted
|
|
2355
|
+
__props__.__dict__["system_disk_kms_key_id"] = system_disk_kms_key_id
|
|
2045
2356
|
__props__.__dict__["system_disk_name"] = system_disk_name
|
|
2046
2357
|
__props__.__dict__["system_disk_performance_level"] = system_disk_performance_level
|
|
2358
|
+
__props__.__dict__["system_disk_provisioned_iops"] = system_disk_provisioned_iops
|
|
2047
2359
|
__props__.__dict__["system_disk_size"] = system_disk_size
|
|
2048
2360
|
__props__.__dict__["tags"] = tags
|
|
2049
2361
|
__props__.__dict__["user_data"] = user_data
|
|
@@ -2073,6 +2385,14 @@ class ScalingConfiguration(pulumi.CustomResource):
|
|
|
2073
2385
|
"""
|
|
2074
2386
|
return pulumi.get(self, "data_disks")
|
|
2075
2387
|
|
|
2388
|
+
@property
|
|
2389
|
+
@pulumi.getter(name="deletionProtection")
|
|
2390
|
+
def deletion_protection(self) -> pulumi.Output[Optional[bool]]:
|
|
2391
|
+
"""
|
|
2392
|
+
Specifies whether to enable the Release Protection feature for ECS instances. This parameter is applicable to only pay-as-you-go instances. You can use this parameter to specify whether an ECS instance can be directly released by using the ECS console or calling the DeleteInstance operation. Valid values: true, false. Default value: false.
|
|
2393
|
+
"""
|
|
2394
|
+
return pulumi.get(self, "deletion_protection")
|
|
2395
|
+
|
|
2076
2396
|
@property
|
|
2077
2397
|
@pulumi.getter
|
|
2078
2398
|
def enable(self) -> pulumi.Output[Optional[bool]]:
|
|
@@ -2113,6 +2433,22 @@ class ScalingConfiguration(pulumi.CustomResource):
|
|
|
2113
2433
|
"""
|
|
2114
2434
|
return pulumi.get(self, "image_name")
|
|
2115
2435
|
|
|
2436
|
+
@property
|
|
2437
|
+
@pulumi.getter(name="imageOptionsLoginAsNonRoot")
|
|
2438
|
+
def image_options_login_as_non_root(self) -> pulumi.Output[Optional[bool]]:
|
|
2439
|
+
"""
|
|
2440
|
+
Specifies whether to use ecs-user to log on to an ECS instance. For more information, see Manage the username used to log on to an ECS instance. Valid values: true, false. Default value: false.
|
|
2441
|
+
"""
|
|
2442
|
+
return pulumi.get(self, "image_options_login_as_non_root")
|
|
2443
|
+
|
|
2444
|
+
@property
|
|
2445
|
+
@pulumi.getter(name="instanceDescription")
|
|
2446
|
+
def instance_description(self) -> pulumi.Output[Optional[str]]:
|
|
2447
|
+
"""
|
|
2448
|
+
The description of ECS instances. The description must be 2 to 256 characters in length. It can contain letters but cannot start with http:// or https://.
|
|
2449
|
+
"""
|
|
2450
|
+
return pulumi.get(self, "instance_description")
|
|
2451
|
+
|
|
2116
2452
|
@property
|
|
2117
2453
|
@pulumi.getter(name="instanceIds")
|
|
2118
2454
|
@_utilities.deprecated("""Field 'instance_ids' has been deprecated from provider version 1.6.0. New resource 'alicloud_ess_attachment' replaces it.""")
|
|
@@ -2172,7 +2508,7 @@ class ScalingConfiguration(pulumi.CustomResource):
|
|
|
2172
2508
|
|
|
2173
2509
|
@property
|
|
2174
2510
|
@pulumi.getter(name="internetMaxBandwidthIn")
|
|
2175
|
-
def internet_max_bandwidth_in(self) -> pulumi.Output[int]:
|
|
2511
|
+
def internet_max_bandwidth_in(self) -> pulumi.Output[Optional[int]]:
|
|
2176
2512
|
"""
|
|
2177
2513
|
Maximum incoming bandwidth from the public network, measured in Mbps (Mega bit per second). The value range is [1,200].
|
|
2178
2514
|
"""
|
|
@@ -2283,6 +2619,14 @@ class ScalingConfiguration(pulumi.CustomResource):
|
|
|
2283
2619
|
"""
|
|
2284
2620
|
return pulumi.get(self, "scaling_group_id")
|
|
2285
2621
|
|
|
2622
|
+
@property
|
|
2623
|
+
@pulumi.getter(name="securityEnhancementStrategy")
|
|
2624
|
+
def security_enhancement_strategy(self) -> pulumi.Output[Optional[str]]:
|
|
2625
|
+
"""
|
|
2626
|
+
Specifies whether to enable Security Hardening. Valid values: Active, Deactive.
|
|
2627
|
+
"""
|
|
2628
|
+
return pulumi.get(self, "security_enhancement_strategy")
|
|
2629
|
+
|
|
2286
2630
|
@property
|
|
2287
2631
|
@pulumi.getter(name="securityGroupId")
|
|
2288
2632
|
def security_group_id(self) -> pulumi.Output[Optional[str]]:
|
|
@@ -2299,6 +2643,14 @@ class ScalingConfiguration(pulumi.CustomResource):
|
|
|
2299
2643
|
"""
|
|
2300
2644
|
return pulumi.get(self, "security_group_ids")
|
|
2301
2645
|
|
|
2646
|
+
@property
|
|
2647
|
+
@pulumi.getter(name="spotDuration")
|
|
2648
|
+
def spot_duration(self) -> pulumi.Output[Optional[int]]:
|
|
2649
|
+
"""
|
|
2650
|
+
The protection period of preemptible instances. Unit: hours. Valid values: 1, 0.
|
|
2651
|
+
"""
|
|
2652
|
+
return pulumi.get(self, "spot_duration")
|
|
2653
|
+
|
|
2302
2654
|
@property
|
|
2303
2655
|
@pulumi.getter(name="spotPriceLimits")
|
|
2304
2656
|
def spot_price_limits(self) -> pulumi.Output[Optional[Sequence['outputs.ScalingConfigurationSpotPriceLimit']]]:
|
|
@@ -2361,6 +2713,14 @@ class ScalingConfiguration(pulumi.CustomResource):
|
|
|
2361
2713
|
"""
|
|
2362
2714
|
return pulumi.get(self, "system_disk_description")
|
|
2363
2715
|
|
|
2716
|
+
@property
|
|
2717
|
+
@pulumi.getter(name="systemDiskEncryptAlgorithm")
|
|
2718
|
+
def system_disk_encrypt_algorithm(self) -> pulumi.Output[Optional[str]]:
|
|
2719
|
+
"""
|
|
2720
|
+
The algorithm that you want to use to encrypt the system disk. Valid values: AES-256, SM4-128.
|
|
2721
|
+
"""
|
|
2722
|
+
return pulumi.get(self, "system_disk_encrypt_algorithm")
|
|
2723
|
+
|
|
2364
2724
|
@property
|
|
2365
2725
|
@pulumi.getter(name="systemDiskEncrypted")
|
|
2366
2726
|
def system_disk_encrypted(self) -> pulumi.Output[Optional[bool]]:
|
|
@@ -2369,6 +2729,14 @@ class ScalingConfiguration(pulumi.CustomResource):
|
|
|
2369
2729
|
"""
|
|
2370
2730
|
return pulumi.get(self, "system_disk_encrypted")
|
|
2371
2731
|
|
|
2732
|
+
@property
|
|
2733
|
+
@pulumi.getter(name="systemDiskKmsKeyId")
|
|
2734
|
+
def system_disk_kms_key_id(self) -> pulumi.Output[Optional[str]]:
|
|
2735
|
+
"""
|
|
2736
|
+
The ID of the KMS key that you want to use to encrypt the system disk.
|
|
2737
|
+
"""
|
|
2738
|
+
return pulumi.get(self, "system_disk_kms_key_id")
|
|
2739
|
+
|
|
2372
2740
|
@property
|
|
2373
2741
|
@pulumi.getter(name="systemDiskName")
|
|
2374
2742
|
def system_disk_name(self) -> pulumi.Output[Optional[str]]:
|
|
@@ -2385,6 +2753,14 @@ class ScalingConfiguration(pulumi.CustomResource):
|
|
|
2385
2753
|
"""
|
|
2386
2754
|
return pulumi.get(self, "system_disk_performance_level")
|
|
2387
2755
|
|
|
2756
|
+
@property
|
|
2757
|
+
@pulumi.getter(name="systemDiskProvisionedIops")
|
|
2758
|
+
def system_disk_provisioned_iops(self) -> pulumi.Output[Optional[int]]:
|
|
2759
|
+
"""
|
|
2760
|
+
IOPS measures the number of read and write operations that an EBS device can process per second.
|
|
2761
|
+
"""
|
|
2762
|
+
return pulumi.get(self, "system_disk_provisioned_iops")
|
|
2763
|
+
|
|
2388
2764
|
@property
|
|
2389
2765
|
@pulumi.getter(name="systemDiskSize")
|
|
2390
2766
|
def system_disk_size(self) -> pulumi.Output[Optional[int]]:
|