pulumi-alicloud 3.74.0a1737989015__py3-none-any.whl → 3.75.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.

Files changed (165) hide show
  1. pulumi_alicloud/__init__.py +230 -0
  2. pulumi_alicloud/_inputs.py +33 -0
  3. pulumi_alicloud/_utilities.py +8 -4
  4. pulumi_alicloud/ackone/__init__.py +1 -0
  5. pulumi_alicloud/ackone/cluster.py +73 -8
  6. pulumi_alicloud/ackone/membership_attachment.py +223 -0
  7. pulumi_alicloud/alb/_inputs.py +217 -17
  8. pulumi_alicloud/alb/load_balancer.py +7 -35
  9. pulumi_alicloud/alb/load_balancer_security_group_attachment.py +69 -22
  10. pulumi_alicloud/alb/outputs.py +150 -12
  11. pulumi_alicloud/alb/server_group.py +197 -42
  12. pulumi_alicloud/aligreen/audit_callback.py +2 -2
  13. pulumi_alicloud/aligreen/biz_type.py +2 -2
  14. pulumi_alicloud/aligreen/callback.py +2 -2
  15. pulumi_alicloud/aligreen/image_lib.py +2 -2
  16. pulumi_alicloud/aligreen/keyword_lib.py +2 -2
  17. pulumi_alicloud/aligreen/oss_stock_task.py +77 -14
  18. pulumi_alicloud/apigateway/instance.py +51 -4
  19. pulumi_alicloud/cfg/aggregate_compliance_pack.py +6 -4
  20. pulumi_alicloud/cfg/aggregate_config_rule.py +6 -4
  21. pulumi_alicloud/cfg/aggregator.py +6 -4
  22. pulumi_alicloud/cloudcontrol/get_prices.py +2 -2
  23. pulumi_alicloud/cloudcontrol/get_products.py +2 -2
  24. pulumi_alicloud/cloudcontrol/get_resource_types.py +2 -2
  25. pulumi_alicloud/cloudcontrol/resource.py +2 -2
  26. pulumi_alicloud/cloudfirewall/__init__.py +2 -0
  27. pulumi_alicloud/cloudfirewall/get_nat_firewalls.py +315 -0
  28. pulumi_alicloud/cloudfirewall/get_vpc_cen_tr_firewalls.py +569 -0
  29. pulumi_alicloud/cloudfirewall/outputs.py +362 -0
  30. pulumi_alicloud/cloudphone/__init__.py +12 -0
  31. pulumi_alicloud/cloudphone/_inputs.py +175 -0
  32. pulumi_alicloud/cloudphone/image.py +323 -0
  33. pulumi_alicloud/cloudphone/key_pair.py +294 -0
  34. pulumi_alicloud/cloudphone/outputs.py +138 -0
  35. pulumi_alicloud/cloudphone/policy.py +522 -0
  36. pulumi_alicloud/cloudphoneinstance/__init__.py +9 -0
  37. pulumi_alicloud/cloudphoneinstance/cloud_phone_instance.py +209 -0
  38. pulumi_alicloud/cloudphoneinstance/group.py +961 -0
  39. pulumi_alicloud/cms/get_site_monitors.py +2 -2
  40. pulumi_alicloud/config/outputs.py +20 -0
  41. pulumi_alicloud/cs/_inputs.py +9 -9
  42. pulumi_alicloud/cs/get_kubernetes_clusters.py +5 -4
  43. pulumi_alicloud/cs/get_managed_kubernetes_clusters.py +5 -4
  44. pulumi_alicloud/cs/get_serverless_kubernetes_clusters.py +5 -4
  45. pulumi_alicloud/cs/managed_kubernetes.py +47 -35
  46. pulumi_alicloud/cs/node_pool.py +49 -21
  47. pulumi_alicloud/cs/outputs.py +6 -6
  48. pulumi_alicloud/ddos/ddos_bgp_instance.py +0 -4
  49. pulumi_alicloud/dfs/vsc_mount_point.py +28 -28
  50. pulumi_alicloud/dns/ddos_bgp_instance.py +0 -4
  51. pulumi_alicloud/ebs/replica_group_drill.py +2 -2
  52. pulumi_alicloud/ebs/replica_pair_drill.py +2 -2
  53. pulumi_alicloud/ecs/ecs_deployment_set.py +89 -67
  54. pulumi_alicloud/ecs/eip.py +1 -1
  55. pulumi_alicloud/ecs/eip_address.py +1 -1
  56. pulumi_alicloud/ecs/instance.py +43 -30
  57. pulumi_alicloud/eds/command.py +10 -2
  58. pulumi_alicloud/emrv2/__init__.py +1 -0
  59. pulumi_alicloud/emrv2/_inputs.py +47 -7
  60. pulumi_alicloud/emrv2/get_cluster_instances.py +537 -0
  61. pulumi_alicloud/emrv2/outputs.py +195 -5
  62. pulumi_alicloud/ens/instance_security_group_attachment.py +8 -4
  63. pulumi_alicloud/ens/nat_gateway.py +6 -6
  64. pulumi_alicloud/ens/vswitch.py +36 -36
  65. pulumi_alicloud/esa/__init__.py +19 -0
  66. pulumi_alicloud/esa/_inputs.py +431 -0
  67. pulumi_alicloud/esa/cache_rule.py +1405 -0
  68. pulumi_alicloud/esa/certificate.py +724 -0
  69. pulumi_alicloud/esa/client_ca_certificate.py +388 -0
  70. pulumi_alicloud/esa/client_certificate.py +452 -0
  71. pulumi_alicloud/esa/compression_rule.py +582 -0
  72. pulumi_alicloud/esa/get_sites.py +421 -0
  73. pulumi_alicloud/esa/http_request_header_modification_rule.py +2 -2
  74. pulumi_alicloud/esa/http_response_header_modification_rule.py +560 -0
  75. pulumi_alicloud/esa/https_application_configuration.py +925 -0
  76. pulumi_alicloud/esa/https_basic_configuration.py +1027 -0
  77. pulumi_alicloud/esa/image_transform.py +484 -0
  78. pulumi_alicloud/esa/kv_namespace.py +276 -0
  79. pulumi_alicloud/esa/list.py +2 -2
  80. pulumi_alicloud/esa/network_optimization.py +750 -0
  81. pulumi_alicloud/esa/origin_pool.py +485 -0
  82. pulumi_alicloud/esa/origin_rule.py +768 -0
  83. pulumi_alicloud/esa/outputs.py +425 -0
  84. pulumi_alicloud/esa/page.py +2 -2
  85. pulumi_alicloud/esa/rate_plan_instance.py +2 -2
  86. pulumi_alicloud/esa/record.py +2 -2
  87. pulumi_alicloud/esa/redirect_rule.py +734 -0
  88. pulumi_alicloud/esa/rewrite_url_rule.py +702 -0
  89. pulumi_alicloud/esa/site.py +307 -2
  90. pulumi_alicloud/esa/waiting_room.py +1257 -0
  91. pulumi_alicloud/esa/waiting_room_event.py +1392 -0
  92. pulumi_alicloud/esa/waiting_room_rule.py +504 -0
  93. pulumi_alicloud/ess/scaling_configuration.py +7 -7
  94. pulumi_alicloud/expressconnect/ec_failover_test_job.py +0 -2
  95. pulumi_alicloud/expressconnect/vbr_pconn_association.py +2 -2
  96. pulumi_alicloud/ga/get_basic_accelerators.py +31 -9
  97. pulumi_alicloud/ga/outputs.py +10 -4
  98. pulumi_alicloud/gpdb/db_resource_group.py +6 -6
  99. pulumi_alicloud/gpdb/external_data_service.py +6 -6
  100. pulumi_alicloud/gpdb/streaming_data_service.py +2 -2
  101. pulumi_alicloud/hbr/policy.py +67 -6
  102. pulumi_alicloud/hbr/vault.py +210 -9
  103. pulumi_alicloud/kms/get_keys.py +10 -0
  104. pulumi_alicloud/message/__init__.py +3 -0
  105. pulumi_alicloud/message/_inputs.py +149 -0
  106. pulumi_alicloud/message/outputs.py +112 -0
  107. pulumi_alicloud/message/service_endpoint.py +218 -0
  108. pulumi_alicloud/message/service_endpoint_acl.py +306 -0
  109. pulumi_alicloud/message/service_queue.py +49 -0
  110. pulumi_alicloud/message/service_subscription.py +91 -14
  111. pulumi_alicloud/mse/nacos_config.py +4 -0
  112. pulumi_alicloud/nlb/_inputs.py +114 -24
  113. pulumi_alicloud/nlb/listener.py +87 -20
  114. pulumi_alicloud/nlb/outputs.py +93 -16
  115. pulumi_alicloud/nlb/server_group.py +55 -20
  116. pulumi_alicloud/ots/_inputs.py +3 -3
  117. pulumi_alicloud/ots/outputs.py +2 -2
  118. pulumi_alicloud/pai/workspace_code_source.py +2 -2
  119. pulumi_alicloud/pai/workspace_dataset.py +2 -2
  120. pulumi_alicloud/pai/workspace_datasetversion.py +2 -4
  121. pulumi_alicloud/pai/workspace_experiment.py +2 -2
  122. pulumi_alicloud/pai/workspace_run.py +2 -2
  123. pulumi_alicloud/pai/workspace_workspace.py +2 -2
  124. pulumi_alicloud/privatelink/get_vpc_endpoints.py +21 -1
  125. pulumi_alicloud/privatelink/outputs.py +11 -0
  126. pulumi_alicloud/privatelink/vpc_endpoint.py +1 -1
  127. pulumi_alicloud/pulumi-plugin.json +1 -1
  128. pulumi_alicloud/ram/access_key.py +20 -4
  129. pulumi_alicloud/ram/user.py +10 -2
  130. pulumi_alicloud/rds/instance.py +7 -0
  131. pulumi_alicloud/simpleapplicationserver/get_server_plans.py +7 -7
  132. pulumi_alicloud/simpleapplicationserver/outputs.py +3 -3
  133. pulumi_alicloud/tag/__init__.py +1 -0
  134. pulumi_alicloud/tag/associated_rule.py +306 -0
  135. pulumi_alicloud/tag/policy.py +27 -36
  136. pulumi_alicloud/vpc/__init__.py +1 -0
  137. pulumi_alicloud/vpc/common_bandwith_package.py +107 -44
  138. pulumi_alicloud/vpc/common_bandwith_package_attachment.py +2 -2
  139. pulumi_alicloud/vpc/flow_log.py +184 -49
  140. pulumi_alicloud/vpc/forward_entry.py +8 -4
  141. pulumi_alicloud/vpc/get_enhanced_nat_available_zones.py +38 -2
  142. pulumi_alicloud/vpc/get_forward_entries.py +2 -2
  143. pulumi_alicloud/vpc/get_ipsec_servers.py +14 -2
  144. pulumi_alicloud/vpc/get_nat_gateways.py +48 -2
  145. pulumi_alicloud/vpc/get_prefix_lists.py +11 -2
  146. pulumi_alicloud/vpc/get_snat_entries.py +5 -2
  147. pulumi_alicloud/vpc/get_traffic_mirror_filters.py +14 -2
  148. pulumi_alicloud/vpc/ipam_ipam.py +2 -9
  149. pulumi_alicloud/vpc/ipam_ipam_pool.py +2 -30
  150. pulumi_alicloud/vpc/ipam_ipam_pool_allocation.py +6 -16
  151. pulumi_alicloud/vpc/ipam_ipam_pool_cidr.py +2 -2
  152. pulumi_alicloud/vpc/ipam_ipam_resource_discovery.py +489 -0
  153. pulumi_alicloud/vpc/ipam_ipam_scope.py +2 -9
  154. pulumi_alicloud/vpc/nat_gateway.py +8 -0
  155. pulumi_alicloud/vpc/outputs.py +12 -2
  156. pulumi_alicloud/vpc/router_interface_connection.py +4 -4
  157. pulumi_alicloud/vpc/traffic_mirror_filter.py +2 -2
  158. pulumi_alicloud/vpn/get_gateway_vco_routes.py +11 -2
  159. pulumi_alicloud/vpn/get_gateway_vpn_attachments.py +11 -2
  160. pulumi_alicloud/vpn/get_gateways.py +21 -1
  161. pulumi_alicloud/vpn/outputs.py +23 -12
  162. {pulumi_alicloud-3.74.0a1737989015.dist-info → pulumi_alicloud-3.75.0.dist-info}/METADATA +1 -1
  163. {pulumi_alicloud-3.74.0a1737989015.dist-info → pulumi_alicloud-3.75.0.dist-info}/RECORD +165 -128
  164. {pulumi_alicloud-3.74.0a1737989015.dist-info → pulumi_alicloud-3.75.0.dist-info}/WHEEL +1 -1
  165. {pulumi_alicloud-3.74.0a1737989015.dist-info → pulumi_alicloud-3.75.0.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,961 @@
1
+ # coding=utf-8
2
+ # *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
3
+ # *** Do not edit by hand unless you're certain you know what you are doing! ***
4
+
5
+ import copy
6
+ import warnings
7
+ import sys
8
+ import pulumi
9
+ import pulumi.runtime
10
+ from typing import Any, Mapping, Optional, Sequence, Union, overload
11
+ if sys.version_info >= (3, 11):
12
+ from typing import NotRequired, TypedDict, TypeAlias
13
+ else:
14
+ from typing_extensions import NotRequired, TypedDict, TypeAlias
15
+ from .. import _utilities
16
+
17
+ __all__ = ['GroupArgs', 'Group']
18
+
19
+ @pulumi.input_type
20
+ class GroupArgs:
21
+ def __init__(__self__, *,
22
+ image_id: pulumi.Input[str],
23
+ instance_group_spec: pulumi.Input[str],
24
+ amount: Optional[pulumi.Input[int]] = None,
25
+ auto_pay: Optional[pulumi.Input[bool]] = None,
26
+ auto_renew: Optional[pulumi.Input[bool]] = None,
27
+ charge_type: Optional[pulumi.Input[str]] = None,
28
+ gpu_acceleration: Optional[pulumi.Input[bool]] = None,
29
+ instance_group_name: Optional[pulumi.Input[str]] = None,
30
+ number_of_instances: Optional[pulumi.Input[int]] = None,
31
+ office_site_id: Optional[pulumi.Input[str]] = None,
32
+ period: Optional[pulumi.Input[int]] = None,
33
+ period_unit: Optional[pulumi.Input[str]] = None,
34
+ policy_group_id: Optional[pulumi.Input[str]] = None,
35
+ vswitch_id: Optional[pulumi.Input[str]] = None):
36
+ """
37
+ The set of arguments for constructing a Group resource.
38
+ :param pulumi.Input[str] image_id: The image ID.
39
+ :param pulumi.Input[str] instance_group_spec: Instance group specifications.
40
+ :param pulumi.Input[int] amount: The number of instance groups. The default value is 1 and the maximum value is 100.
41
+ :param pulumi.Input[bool] auto_pay: Whether to pay automatically. The default is false.
42
+ :param pulumi.Input[bool] auto_renew: Whether to enable automatic renewal. The default is false.
43
+ :param pulumi.Input[str] charge_type: The billing type.
44
+ :param pulumi.Input[bool] gpu_acceleration: Whether to enable GPU acceleration. The default value is false.
45
+ - true: On.
46
+ - false: closed.
47
+ :param pulumi.Input[str] instance_group_name: The instance group name
48
+
49
+ > **NOTE:** >
50
+
51
+ > **NOTE:** - The instance group name must be no more than 30 characters in length. Start with an uppercase/lowercase letter or Chinese. It cannot start with http:// or https://. Only Chinese, English, numbers, half-width colons (:), underscores (_), periods (.), or hyphens (-) are supported.
52
+ :param pulumi.Input[int] number_of_instances: The number of instances in the instance group. The maximum value is 100.
53
+ :param pulumi.Input[str] office_site_id: The network ID.
54
+ - Create a shared network instance: Network ID is optional. Enter the network ID whose type is **Shared Network** on the [cloud mobile phone console> Network](https://wya.wuying.aliyun.com/network) page. If the console does not have a shared network, you can fill it in. A shared network is automatically created when the instance group is created.
55
+ - Create a VPC instance: the network ID is required. Enter the network ID of `VPC` on the [cloud mobile phone console> Network](https://wya.wuying.aliyun.com/network) page. If the console does not have a VPC network, you need to create a network first.
56
+ :param pulumi.Input[int] period: The duration of the resource purchase. The unit is specified by PeriodUnit.
57
+ :param pulumi.Input[str] period_unit: The unit of time for purchasing resources.
58
+ :param pulumi.Input[str] policy_group_id: The policy ID. You can query the list of policies by calling ListPolicyGroups.
59
+ :param pulumi.Input[str] vswitch_id: The vSwitch ID.
60
+ """
61
+ pulumi.set(__self__, "image_id", image_id)
62
+ pulumi.set(__self__, "instance_group_spec", instance_group_spec)
63
+ if amount is not None:
64
+ pulumi.set(__self__, "amount", amount)
65
+ if auto_pay is not None:
66
+ pulumi.set(__self__, "auto_pay", auto_pay)
67
+ if auto_renew is not None:
68
+ pulumi.set(__self__, "auto_renew", auto_renew)
69
+ if charge_type is not None:
70
+ pulumi.set(__self__, "charge_type", charge_type)
71
+ if gpu_acceleration is not None:
72
+ pulumi.set(__self__, "gpu_acceleration", gpu_acceleration)
73
+ if instance_group_name is not None:
74
+ pulumi.set(__self__, "instance_group_name", instance_group_name)
75
+ if number_of_instances is not None:
76
+ pulumi.set(__self__, "number_of_instances", number_of_instances)
77
+ if office_site_id is not None:
78
+ pulumi.set(__self__, "office_site_id", office_site_id)
79
+ if period is not None:
80
+ pulumi.set(__self__, "period", period)
81
+ if period_unit is not None:
82
+ pulumi.set(__self__, "period_unit", period_unit)
83
+ if policy_group_id is not None:
84
+ pulumi.set(__self__, "policy_group_id", policy_group_id)
85
+ if vswitch_id is not None:
86
+ pulumi.set(__self__, "vswitch_id", vswitch_id)
87
+
88
+ @property
89
+ @pulumi.getter(name="imageId")
90
+ def image_id(self) -> pulumi.Input[str]:
91
+ """
92
+ The image ID.
93
+ """
94
+ return pulumi.get(self, "image_id")
95
+
96
+ @image_id.setter
97
+ def image_id(self, value: pulumi.Input[str]):
98
+ pulumi.set(self, "image_id", value)
99
+
100
+ @property
101
+ @pulumi.getter(name="instanceGroupSpec")
102
+ def instance_group_spec(self) -> pulumi.Input[str]:
103
+ """
104
+ Instance group specifications.
105
+ """
106
+ return pulumi.get(self, "instance_group_spec")
107
+
108
+ @instance_group_spec.setter
109
+ def instance_group_spec(self, value: pulumi.Input[str]):
110
+ pulumi.set(self, "instance_group_spec", value)
111
+
112
+ @property
113
+ @pulumi.getter
114
+ def amount(self) -> Optional[pulumi.Input[int]]:
115
+ """
116
+ The number of instance groups. The default value is 1 and the maximum value is 100.
117
+ """
118
+ return pulumi.get(self, "amount")
119
+
120
+ @amount.setter
121
+ def amount(self, value: Optional[pulumi.Input[int]]):
122
+ pulumi.set(self, "amount", value)
123
+
124
+ @property
125
+ @pulumi.getter(name="autoPay")
126
+ def auto_pay(self) -> Optional[pulumi.Input[bool]]:
127
+ """
128
+ Whether to pay automatically. The default is false.
129
+ """
130
+ return pulumi.get(self, "auto_pay")
131
+
132
+ @auto_pay.setter
133
+ def auto_pay(self, value: Optional[pulumi.Input[bool]]):
134
+ pulumi.set(self, "auto_pay", value)
135
+
136
+ @property
137
+ @pulumi.getter(name="autoRenew")
138
+ def auto_renew(self) -> Optional[pulumi.Input[bool]]:
139
+ """
140
+ Whether to enable automatic renewal. The default is false.
141
+ """
142
+ return pulumi.get(self, "auto_renew")
143
+
144
+ @auto_renew.setter
145
+ def auto_renew(self, value: Optional[pulumi.Input[bool]]):
146
+ pulumi.set(self, "auto_renew", value)
147
+
148
+ @property
149
+ @pulumi.getter(name="chargeType")
150
+ def charge_type(self) -> Optional[pulumi.Input[str]]:
151
+ """
152
+ The billing type.
153
+ """
154
+ return pulumi.get(self, "charge_type")
155
+
156
+ @charge_type.setter
157
+ def charge_type(self, value: Optional[pulumi.Input[str]]):
158
+ pulumi.set(self, "charge_type", value)
159
+
160
+ @property
161
+ @pulumi.getter(name="gpuAcceleration")
162
+ def gpu_acceleration(self) -> Optional[pulumi.Input[bool]]:
163
+ """
164
+ Whether to enable GPU acceleration. The default value is false.
165
+ - true: On.
166
+ - false: closed.
167
+ """
168
+ return pulumi.get(self, "gpu_acceleration")
169
+
170
+ @gpu_acceleration.setter
171
+ def gpu_acceleration(self, value: Optional[pulumi.Input[bool]]):
172
+ pulumi.set(self, "gpu_acceleration", value)
173
+
174
+ @property
175
+ @pulumi.getter(name="instanceGroupName")
176
+ def instance_group_name(self) -> Optional[pulumi.Input[str]]:
177
+ """
178
+ The instance group name
179
+
180
+ > **NOTE:** >
181
+
182
+ > **NOTE:** - The instance group name must be no more than 30 characters in length. Start with an uppercase/lowercase letter or Chinese. It cannot start with http:// or https://. Only Chinese, English, numbers, half-width colons (:), underscores (_), periods (.), or hyphens (-) are supported.
183
+ """
184
+ return pulumi.get(self, "instance_group_name")
185
+
186
+ @instance_group_name.setter
187
+ def instance_group_name(self, value: Optional[pulumi.Input[str]]):
188
+ pulumi.set(self, "instance_group_name", value)
189
+
190
+ @property
191
+ @pulumi.getter(name="numberOfInstances")
192
+ def number_of_instances(self) -> Optional[pulumi.Input[int]]:
193
+ """
194
+ The number of instances in the instance group. The maximum value is 100.
195
+ """
196
+ return pulumi.get(self, "number_of_instances")
197
+
198
+ @number_of_instances.setter
199
+ def number_of_instances(self, value: Optional[pulumi.Input[int]]):
200
+ pulumi.set(self, "number_of_instances", value)
201
+
202
+ @property
203
+ @pulumi.getter(name="officeSiteId")
204
+ def office_site_id(self) -> Optional[pulumi.Input[str]]:
205
+ """
206
+ The network ID.
207
+ - Create a shared network instance: Network ID is optional. Enter the network ID whose type is **Shared Network** on the [cloud mobile phone console> Network](https://wya.wuying.aliyun.com/network) page. If the console does not have a shared network, you can fill it in. A shared network is automatically created when the instance group is created.
208
+ - Create a VPC instance: the network ID is required. Enter the network ID of `VPC` on the [cloud mobile phone console> Network](https://wya.wuying.aliyun.com/network) page. If the console does not have a VPC network, you need to create a network first.
209
+ """
210
+ return pulumi.get(self, "office_site_id")
211
+
212
+ @office_site_id.setter
213
+ def office_site_id(self, value: Optional[pulumi.Input[str]]):
214
+ pulumi.set(self, "office_site_id", value)
215
+
216
+ @property
217
+ @pulumi.getter
218
+ def period(self) -> Optional[pulumi.Input[int]]:
219
+ """
220
+ The duration of the resource purchase. The unit is specified by PeriodUnit.
221
+ """
222
+ return pulumi.get(self, "period")
223
+
224
+ @period.setter
225
+ def period(self, value: Optional[pulumi.Input[int]]):
226
+ pulumi.set(self, "period", value)
227
+
228
+ @property
229
+ @pulumi.getter(name="periodUnit")
230
+ def period_unit(self) -> Optional[pulumi.Input[str]]:
231
+ """
232
+ The unit of time for purchasing resources.
233
+ """
234
+ return pulumi.get(self, "period_unit")
235
+
236
+ @period_unit.setter
237
+ def period_unit(self, value: Optional[pulumi.Input[str]]):
238
+ pulumi.set(self, "period_unit", value)
239
+
240
+ @property
241
+ @pulumi.getter(name="policyGroupId")
242
+ def policy_group_id(self) -> Optional[pulumi.Input[str]]:
243
+ """
244
+ The policy ID. You can query the list of policies by calling ListPolicyGroups.
245
+ """
246
+ return pulumi.get(self, "policy_group_id")
247
+
248
+ @policy_group_id.setter
249
+ def policy_group_id(self, value: Optional[pulumi.Input[str]]):
250
+ pulumi.set(self, "policy_group_id", value)
251
+
252
+ @property
253
+ @pulumi.getter(name="vswitchId")
254
+ def vswitch_id(self) -> Optional[pulumi.Input[str]]:
255
+ """
256
+ The vSwitch ID.
257
+ """
258
+ return pulumi.get(self, "vswitch_id")
259
+
260
+ @vswitch_id.setter
261
+ def vswitch_id(self, value: Optional[pulumi.Input[str]]):
262
+ pulumi.set(self, "vswitch_id", value)
263
+
264
+
265
+ @pulumi.input_type
266
+ class _GroupState:
267
+ def __init__(__self__, *,
268
+ amount: Optional[pulumi.Input[int]] = None,
269
+ auto_pay: Optional[pulumi.Input[bool]] = None,
270
+ auto_renew: Optional[pulumi.Input[bool]] = None,
271
+ charge_type: Optional[pulumi.Input[str]] = None,
272
+ gpu_acceleration: Optional[pulumi.Input[bool]] = None,
273
+ image_id: Optional[pulumi.Input[str]] = None,
274
+ instance_group_name: Optional[pulumi.Input[str]] = None,
275
+ instance_group_spec: Optional[pulumi.Input[str]] = None,
276
+ number_of_instances: Optional[pulumi.Input[int]] = None,
277
+ office_site_id: Optional[pulumi.Input[str]] = None,
278
+ period: Optional[pulumi.Input[int]] = None,
279
+ period_unit: Optional[pulumi.Input[str]] = None,
280
+ policy_group_id: Optional[pulumi.Input[str]] = None,
281
+ status: Optional[pulumi.Input[str]] = None,
282
+ vswitch_id: Optional[pulumi.Input[str]] = None):
283
+ """
284
+ Input properties used for looking up and filtering Group resources.
285
+ :param pulumi.Input[int] amount: The number of instance groups. The default value is 1 and the maximum value is 100.
286
+ :param pulumi.Input[bool] auto_pay: Whether to pay automatically. The default is false.
287
+ :param pulumi.Input[bool] auto_renew: Whether to enable automatic renewal. The default is false.
288
+ :param pulumi.Input[str] charge_type: The billing type.
289
+ :param pulumi.Input[bool] gpu_acceleration: Whether to enable GPU acceleration. The default value is false.
290
+ - true: On.
291
+ - false: closed.
292
+ :param pulumi.Input[str] image_id: The image ID.
293
+ :param pulumi.Input[str] instance_group_name: The instance group name
294
+
295
+ > **NOTE:** >
296
+
297
+ > **NOTE:** - The instance group name must be no more than 30 characters in length. Start with an uppercase/lowercase letter or Chinese. It cannot start with http:// or https://. Only Chinese, English, numbers, half-width colons (:), underscores (_), periods (.), or hyphens (-) are supported.
298
+ :param pulumi.Input[str] instance_group_spec: Instance group specifications.
299
+ :param pulumi.Input[int] number_of_instances: The number of instances in the instance group. The maximum value is 100.
300
+ :param pulumi.Input[str] office_site_id: The network ID.
301
+ - Create a shared network instance: Network ID is optional. Enter the network ID whose type is **Shared Network** on the [cloud mobile phone console> Network](https://wya.wuying.aliyun.com/network) page. If the console does not have a shared network, you can fill it in. A shared network is automatically created when the instance group is created.
302
+ - Create a VPC instance: the network ID is required. Enter the network ID of `VPC` on the [cloud mobile phone console> Network](https://wya.wuying.aliyun.com/network) page. If the console does not have a VPC network, you need to create a network first.
303
+ :param pulumi.Input[int] period: The duration of the resource purchase. The unit is specified by PeriodUnit.
304
+ :param pulumi.Input[str] period_unit: The unit of time for purchasing resources.
305
+ :param pulumi.Input[str] policy_group_id: The policy ID. You can query the list of policies by calling ListPolicyGroups.
306
+ :param pulumi.Input[str] status: Instance group status
307
+ :param pulumi.Input[str] vswitch_id: The vSwitch ID.
308
+ """
309
+ if amount is not None:
310
+ pulumi.set(__self__, "amount", amount)
311
+ if auto_pay is not None:
312
+ pulumi.set(__self__, "auto_pay", auto_pay)
313
+ if auto_renew is not None:
314
+ pulumi.set(__self__, "auto_renew", auto_renew)
315
+ if charge_type is not None:
316
+ pulumi.set(__self__, "charge_type", charge_type)
317
+ if gpu_acceleration is not None:
318
+ pulumi.set(__self__, "gpu_acceleration", gpu_acceleration)
319
+ if image_id is not None:
320
+ pulumi.set(__self__, "image_id", image_id)
321
+ if instance_group_name is not None:
322
+ pulumi.set(__self__, "instance_group_name", instance_group_name)
323
+ if instance_group_spec is not None:
324
+ pulumi.set(__self__, "instance_group_spec", instance_group_spec)
325
+ if number_of_instances is not None:
326
+ pulumi.set(__self__, "number_of_instances", number_of_instances)
327
+ if office_site_id is not None:
328
+ pulumi.set(__self__, "office_site_id", office_site_id)
329
+ if period is not None:
330
+ pulumi.set(__self__, "period", period)
331
+ if period_unit is not None:
332
+ pulumi.set(__self__, "period_unit", period_unit)
333
+ if policy_group_id is not None:
334
+ pulumi.set(__self__, "policy_group_id", policy_group_id)
335
+ if status is not None:
336
+ pulumi.set(__self__, "status", status)
337
+ if vswitch_id is not None:
338
+ pulumi.set(__self__, "vswitch_id", vswitch_id)
339
+
340
+ @property
341
+ @pulumi.getter
342
+ def amount(self) -> Optional[pulumi.Input[int]]:
343
+ """
344
+ The number of instance groups. The default value is 1 and the maximum value is 100.
345
+ """
346
+ return pulumi.get(self, "amount")
347
+
348
+ @amount.setter
349
+ def amount(self, value: Optional[pulumi.Input[int]]):
350
+ pulumi.set(self, "amount", value)
351
+
352
+ @property
353
+ @pulumi.getter(name="autoPay")
354
+ def auto_pay(self) -> Optional[pulumi.Input[bool]]:
355
+ """
356
+ Whether to pay automatically. The default is false.
357
+ """
358
+ return pulumi.get(self, "auto_pay")
359
+
360
+ @auto_pay.setter
361
+ def auto_pay(self, value: Optional[pulumi.Input[bool]]):
362
+ pulumi.set(self, "auto_pay", value)
363
+
364
+ @property
365
+ @pulumi.getter(name="autoRenew")
366
+ def auto_renew(self) -> Optional[pulumi.Input[bool]]:
367
+ """
368
+ Whether to enable automatic renewal. The default is false.
369
+ """
370
+ return pulumi.get(self, "auto_renew")
371
+
372
+ @auto_renew.setter
373
+ def auto_renew(self, value: Optional[pulumi.Input[bool]]):
374
+ pulumi.set(self, "auto_renew", value)
375
+
376
+ @property
377
+ @pulumi.getter(name="chargeType")
378
+ def charge_type(self) -> Optional[pulumi.Input[str]]:
379
+ """
380
+ The billing type.
381
+ """
382
+ return pulumi.get(self, "charge_type")
383
+
384
+ @charge_type.setter
385
+ def charge_type(self, value: Optional[pulumi.Input[str]]):
386
+ pulumi.set(self, "charge_type", value)
387
+
388
+ @property
389
+ @pulumi.getter(name="gpuAcceleration")
390
+ def gpu_acceleration(self) -> Optional[pulumi.Input[bool]]:
391
+ """
392
+ Whether to enable GPU acceleration. The default value is false.
393
+ - true: On.
394
+ - false: closed.
395
+ """
396
+ return pulumi.get(self, "gpu_acceleration")
397
+
398
+ @gpu_acceleration.setter
399
+ def gpu_acceleration(self, value: Optional[pulumi.Input[bool]]):
400
+ pulumi.set(self, "gpu_acceleration", value)
401
+
402
+ @property
403
+ @pulumi.getter(name="imageId")
404
+ def image_id(self) -> Optional[pulumi.Input[str]]:
405
+ """
406
+ The image ID.
407
+ """
408
+ return pulumi.get(self, "image_id")
409
+
410
+ @image_id.setter
411
+ def image_id(self, value: Optional[pulumi.Input[str]]):
412
+ pulumi.set(self, "image_id", value)
413
+
414
+ @property
415
+ @pulumi.getter(name="instanceGroupName")
416
+ def instance_group_name(self) -> Optional[pulumi.Input[str]]:
417
+ """
418
+ The instance group name
419
+
420
+ > **NOTE:** >
421
+
422
+ > **NOTE:** - The instance group name must be no more than 30 characters in length. Start with an uppercase/lowercase letter or Chinese. It cannot start with http:// or https://. Only Chinese, English, numbers, half-width colons (:), underscores (_), periods (.), or hyphens (-) are supported.
423
+ """
424
+ return pulumi.get(self, "instance_group_name")
425
+
426
+ @instance_group_name.setter
427
+ def instance_group_name(self, value: Optional[pulumi.Input[str]]):
428
+ pulumi.set(self, "instance_group_name", value)
429
+
430
+ @property
431
+ @pulumi.getter(name="instanceGroupSpec")
432
+ def instance_group_spec(self) -> Optional[pulumi.Input[str]]:
433
+ """
434
+ Instance group specifications.
435
+ """
436
+ return pulumi.get(self, "instance_group_spec")
437
+
438
+ @instance_group_spec.setter
439
+ def instance_group_spec(self, value: Optional[pulumi.Input[str]]):
440
+ pulumi.set(self, "instance_group_spec", value)
441
+
442
+ @property
443
+ @pulumi.getter(name="numberOfInstances")
444
+ def number_of_instances(self) -> Optional[pulumi.Input[int]]:
445
+ """
446
+ The number of instances in the instance group. The maximum value is 100.
447
+ """
448
+ return pulumi.get(self, "number_of_instances")
449
+
450
+ @number_of_instances.setter
451
+ def number_of_instances(self, value: Optional[pulumi.Input[int]]):
452
+ pulumi.set(self, "number_of_instances", value)
453
+
454
+ @property
455
+ @pulumi.getter(name="officeSiteId")
456
+ def office_site_id(self) -> Optional[pulumi.Input[str]]:
457
+ """
458
+ The network ID.
459
+ - Create a shared network instance: Network ID is optional. Enter the network ID whose type is **Shared Network** on the [cloud mobile phone console> Network](https://wya.wuying.aliyun.com/network) page. If the console does not have a shared network, you can fill it in. A shared network is automatically created when the instance group is created.
460
+ - Create a VPC instance: the network ID is required. Enter the network ID of `VPC` on the [cloud mobile phone console> Network](https://wya.wuying.aliyun.com/network) page. If the console does not have a VPC network, you need to create a network first.
461
+ """
462
+ return pulumi.get(self, "office_site_id")
463
+
464
+ @office_site_id.setter
465
+ def office_site_id(self, value: Optional[pulumi.Input[str]]):
466
+ pulumi.set(self, "office_site_id", value)
467
+
468
+ @property
469
+ @pulumi.getter
470
+ def period(self) -> Optional[pulumi.Input[int]]:
471
+ """
472
+ The duration of the resource purchase. The unit is specified by PeriodUnit.
473
+ """
474
+ return pulumi.get(self, "period")
475
+
476
+ @period.setter
477
+ def period(self, value: Optional[pulumi.Input[int]]):
478
+ pulumi.set(self, "period", value)
479
+
480
+ @property
481
+ @pulumi.getter(name="periodUnit")
482
+ def period_unit(self) -> Optional[pulumi.Input[str]]:
483
+ """
484
+ The unit of time for purchasing resources.
485
+ """
486
+ return pulumi.get(self, "period_unit")
487
+
488
+ @period_unit.setter
489
+ def period_unit(self, value: Optional[pulumi.Input[str]]):
490
+ pulumi.set(self, "period_unit", value)
491
+
492
+ @property
493
+ @pulumi.getter(name="policyGroupId")
494
+ def policy_group_id(self) -> Optional[pulumi.Input[str]]:
495
+ """
496
+ The policy ID. You can query the list of policies by calling ListPolicyGroups.
497
+ """
498
+ return pulumi.get(self, "policy_group_id")
499
+
500
+ @policy_group_id.setter
501
+ def policy_group_id(self, value: Optional[pulumi.Input[str]]):
502
+ pulumi.set(self, "policy_group_id", value)
503
+
504
+ @property
505
+ @pulumi.getter
506
+ def status(self) -> Optional[pulumi.Input[str]]:
507
+ """
508
+ Instance group status
509
+ """
510
+ return pulumi.get(self, "status")
511
+
512
+ @status.setter
513
+ def status(self, value: Optional[pulumi.Input[str]]):
514
+ pulumi.set(self, "status", value)
515
+
516
+ @property
517
+ @pulumi.getter(name="vswitchId")
518
+ def vswitch_id(self) -> Optional[pulumi.Input[str]]:
519
+ """
520
+ The vSwitch ID.
521
+ """
522
+ return pulumi.get(self, "vswitch_id")
523
+
524
+ @vswitch_id.setter
525
+ def vswitch_id(self, value: Optional[pulumi.Input[str]]):
526
+ pulumi.set(self, "vswitch_id", value)
527
+
528
+
529
+ class Group(pulumi.CustomResource):
530
+ @overload
531
+ def __init__(__self__,
532
+ resource_name: str,
533
+ opts: Optional[pulumi.ResourceOptions] = None,
534
+ amount: Optional[pulumi.Input[int]] = None,
535
+ auto_pay: Optional[pulumi.Input[bool]] = None,
536
+ auto_renew: Optional[pulumi.Input[bool]] = None,
537
+ charge_type: Optional[pulumi.Input[str]] = None,
538
+ gpu_acceleration: Optional[pulumi.Input[bool]] = None,
539
+ image_id: Optional[pulumi.Input[str]] = None,
540
+ instance_group_name: Optional[pulumi.Input[str]] = None,
541
+ instance_group_spec: Optional[pulumi.Input[str]] = None,
542
+ number_of_instances: Optional[pulumi.Input[int]] = None,
543
+ office_site_id: Optional[pulumi.Input[str]] = None,
544
+ period: Optional[pulumi.Input[int]] = None,
545
+ period_unit: Optional[pulumi.Input[str]] = None,
546
+ policy_group_id: Optional[pulumi.Input[str]] = None,
547
+ vswitch_id: Optional[pulumi.Input[str]] = None,
548
+ __props__=None):
549
+ """
550
+ Provides a Cloud Phone Instance Group resource.
551
+
552
+ For information about Cloud Phone Instance Group and how to use it, see [What is Instance Group](https://next.api.alibabacloud.com/document/eds-aic/2023-09-30/CreateAndroidInstanceGroup).
553
+
554
+ > **NOTE:** Available since v1.243.0.
555
+
556
+ ## Example Usage
557
+
558
+ Basic Usage
559
+
560
+ ```python
561
+ import pulumi
562
+ import pulumi_alicloud as alicloud
563
+
564
+ config = pulumi.Config()
565
+ name = config.get("name")
566
+ if name is None:
567
+ name = "terraform-example"
568
+ region_id = config.get("regionId")
569
+ if region_id is None:
570
+ region_id = "cn-hangzhou"
571
+ defaultj_z1gi0 = alicloud.cloudphone.Policy("defaultjZ1gi0",
572
+ lock_resolution="off",
573
+ resolution_width=720,
574
+ camera_redirect="on",
575
+ policy_group_name="defaultPolicyGroup",
576
+ resolution_height=1280,
577
+ clipboard="readwrite",
578
+ net_redirect_policy={
579
+ "net_redirect": "off",
580
+ "custom_proxy": "off",
581
+ })
582
+ default_h2a5_ks = alicloud.eds.SimpleOfficeSite("defaultH2a5KS",
583
+ office_site_name="InitOfficeSite",
584
+ cidr_block="172.16.0.0/12")
585
+ default = alicloud.cloudphoneinstance.Group("default",
586
+ instance_group_spec="acp.basic.small",
587
+ instance_group_name="AutoCreateGroupName",
588
+ period=1,
589
+ number_of_instances=1,
590
+ charge_type="PostPaid",
591
+ image_id="imgc-075cllfeuazh03tg9",
592
+ period_unit="Hour",
593
+ auto_renew=False,
594
+ amount=1,
595
+ auto_pay=False,
596
+ gpu_acceleration=False,
597
+ policy_group_id=defaultj_z1gi0.id,
598
+ office_site_id=default_h2a5_ks.id)
599
+ ```
600
+
601
+ ## Import
602
+
603
+ Cloud Phone Instance Group can be imported using the id, e.g.
604
+
605
+ ```sh
606
+ $ pulumi import alicloud:cloudphoneinstance/group:Group example <id>
607
+ ```
608
+
609
+ :param str resource_name: The name of the resource.
610
+ :param pulumi.ResourceOptions opts: Options for the resource.
611
+ :param pulumi.Input[int] amount: The number of instance groups. The default value is 1 and the maximum value is 100.
612
+ :param pulumi.Input[bool] auto_pay: Whether to pay automatically. The default is false.
613
+ :param pulumi.Input[bool] auto_renew: Whether to enable automatic renewal. The default is false.
614
+ :param pulumi.Input[str] charge_type: The billing type.
615
+ :param pulumi.Input[bool] gpu_acceleration: Whether to enable GPU acceleration. The default value is false.
616
+ - true: On.
617
+ - false: closed.
618
+ :param pulumi.Input[str] image_id: The image ID.
619
+ :param pulumi.Input[str] instance_group_name: The instance group name
620
+
621
+ > **NOTE:** >
622
+
623
+ > **NOTE:** - The instance group name must be no more than 30 characters in length. Start with an uppercase/lowercase letter or Chinese. It cannot start with http:// or https://. Only Chinese, English, numbers, half-width colons (:), underscores (_), periods (.), or hyphens (-) are supported.
624
+ :param pulumi.Input[str] instance_group_spec: Instance group specifications.
625
+ :param pulumi.Input[int] number_of_instances: The number of instances in the instance group. The maximum value is 100.
626
+ :param pulumi.Input[str] office_site_id: The network ID.
627
+ - Create a shared network instance: Network ID is optional. Enter the network ID whose type is **Shared Network** on the [cloud mobile phone console> Network](https://wya.wuying.aliyun.com/network) page. If the console does not have a shared network, you can fill it in. A shared network is automatically created when the instance group is created.
628
+ - Create a VPC instance: the network ID is required. Enter the network ID of `VPC` on the [cloud mobile phone console> Network](https://wya.wuying.aliyun.com/network) page. If the console does not have a VPC network, you need to create a network first.
629
+ :param pulumi.Input[int] period: The duration of the resource purchase. The unit is specified by PeriodUnit.
630
+ :param pulumi.Input[str] period_unit: The unit of time for purchasing resources.
631
+ :param pulumi.Input[str] policy_group_id: The policy ID. You can query the list of policies by calling ListPolicyGroups.
632
+ :param pulumi.Input[str] vswitch_id: The vSwitch ID.
633
+ """
634
+ ...
635
+ @overload
636
+ def __init__(__self__,
637
+ resource_name: str,
638
+ args: GroupArgs,
639
+ opts: Optional[pulumi.ResourceOptions] = None):
640
+ """
641
+ Provides a Cloud Phone Instance Group resource.
642
+
643
+ For information about Cloud Phone Instance Group and how to use it, see [What is Instance Group](https://next.api.alibabacloud.com/document/eds-aic/2023-09-30/CreateAndroidInstanceGroup).
644
+
645
+ > **NOTE:** Available since v1.243.0.
646
+
647
+ ## Example Usage
648
+
649
+ Basic Usage
650
+
651
+ ```python
652
+ import pulumi
653
+ import pulumi_alicloud as alicloud
654
+
655
+ config = pulumi.Config()
656
+ name = config.get("name")
657
+ if name is None:
658
+ name = "terraform-example"
659
+ region_id = config.get("regionId")
660
+ if region_id is None:
661
+ region_id = "cn-hangzhou"
662
+ defaultj_z1gi0 = alicloud.cloudphone.Policy("defaultjZ1gi0",
663
+ lock_resolution="off",
664
+ resolution_width=720,
665
+ camera_redirect="on",
666
+ policy_group_name="defaultPolicyGroup",
667
+ resolution_height=1280,
668
+ clipboard="readwrite",
669
+ net_redirect_policy={
670
+ "net_redirect": "off",
671
+ "custom_proxy": "off",
672
+ })
673
+ default_h2a5_ks = alicloud.eds.SimpleOfficeSite("defaultH2a5KS",
674
+ office_site_name="InitOfficeSite",
675
+ cidr_block="172.16.0.0/12")
676
+ default = alicloud.cloudphoneinstance.Group("default",
677
+ instance_group_spec="acp.basic.small",
678
+ instance_group_name="AutoCreateGroupName",
679
+ period=1,
680
+ number_of_instances=1,
681
+ charge_type="PostPaid",
682
+ image_id="imgc-075cllfeuazh03tg9",
683
+ period_unit="Hour",
684
+ auto_renew=False,
685
+ amount=1,
686
+ auto_pay=False,
687
+ gpu_acceleration=False,
688
+ policy_group_id=defaultj_z1gi0.id,
689
+ office_site_id=default_h2a5_ks.id)
690
+ ```
691
+
692
+ ## Import
693
+
694
+ Cloud Phone Instance Group can be imported using the id, e.g.
695
+
696
+ ```sh
697
+ $ pulumi import alicloud:cloudphoneinstance/group:Group example <id>
698
+ ```
699
+
700
+ :param str resource_name: The name of the resource.
701
+ :param GroupArgs args: The arguments to use to populate this resource's properties.
702
+ :param pulumi.ResourceOptions opts: Options for the resource.
703
+ """
704
+ ...
705
+ def __init__(__self__, resource_name: str, *args, **kwargs):
706
+ resource_args, opts = _utilities.get_resource_args_opts(GroupArgs, pulumi.ResourceOptions, *args, **kwargs)
707
+ if resource_args is not None:
708
+ __self__._internal_init(resource_name, opts, **resource_args.__dict__)
709
+ else:
710
+ __self__._internal_init(resource_name, *args, **kwargs)
711
+
712
+ def _internal_init(__self__,
713
+ resource_name: str,
714
+ opts: Optional[pulumi.ResourceOptions] = None,
715
+ amount: Optional[pulumi.Input[int]] = None,
716
+ auto_pay: Optional[pulumi.Input[bool]] = None,
717
+ auto_renew: Optional[pulumi.Input[bool]] = None,
718
+ charge_type: Optional[pulumi.Input[str]] = None,
719
+ gpu_acceleration: Optional[pulumi.Input[bool]] = None,
720
+ image_id: Optional[pulumi.Input[str]] = None,
721
+ instance_group_name: Optional[pulumi.Input[str]] = None,
722
+ instance_group_spec: Optional[pulumi.Input[str]] = None,
723
+ number_of_instances: Optional[pulumi.Input[int]] = None,
724
+ office_site_id: Optional[pulumi.Input[str]] = None,
725
+ period: Optional[pulumi.Input[int]] = None,
726
+ period_unit: Optional[pulumi.Input[str]] = None,
727
+ policy_group_id: Optional[pulumi.Input[str]] = None,
728
+ vswitch_id: Optional[pulumi.Input[str]] = None,
729
+ __props__=None):
730
+ opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
731
+ if not isinstance(opts, pulumi.ResourceOptions):
732
+ raise TypeError('Expected resource options to be a ResourceOptions instance')
733
+ if opts.id is None:
734
+ if __props__ is not None:
735
+ raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
736
+ __props__ = GroupArgs.__new__(GroupArgs)
737
+
738
+ __props__.__dict__["amount"] = amount
739
+ __props__.__dict__["auto_pay"] = auto_pay
740
+ __props__.__dict__["auto_renew"] = auto_renew
741
+ __props__.__dict__["charge_type"] = charge_type
742
+ __props__.__dict__["gpu_acceleration"] = gpu_acceleration
743
+ if image_id is None and not opts.urn:
744
+ raise TypeError("Missing required property 'image_id'")
745
+ __props__.__dict__["image_id"] = image_id
746
+ __props__.__dict__["instance_group_name"] = instance_group_name
747
+ if instance_group_spec is None and not opts.urn:
748
+ raise TypeError("Missing required property 'instance_group_spec'")
749
+ __props__.__dict__["instance_group_spec"] = instance_group_spec
750
+ __props__.__dict__["number_of_instances"] = number_of_instances
751
+ __props__.__dict__["office_site_id"] = office_site_id
752
+ __props__.__dict__["period"] = period
753
+ __props__.__dict__["period_unit"] = period_unit
754
+ __props__.__dict__["policy_group_id"] = policy_group_id
755
+ __props__.__dict__["vswitch_id"] = vswitch_id
756
+ __props__.__dict__["status"] = None
757
+ super(Group, __self__).__init__(
758
+ 'alicloud:cloudphoneinstance/group:Group',
759
+ resource_name,
760
+ __props__,
761
+ opts)
762
+
763
+ @staticmethod
764
+ def get(resource_name: str,
765
+ id: pulumi.Input[str],
766
+ opts: Optional[pulumi.ResourceOptions] = None,
767
+ amount: Optional[pulumi.Input[int]] = None,
768
+ auto_pay: Optional[pulumi.Input[bool]] = None,
769
+ auto_renew: Optional[pulumi.Input[bool]] = None,
770
+ charge_type: Optional[pulumi.Input[str]] = None,
771
+ gpu_acceleration: Optional[pulumi.Input[bool]] = None,
772
+ image_id: Optional[pulumi.Input[str]] = None,
773
+ instance_group_name: Optional[pulumi.Input[str]] = None,
774
+ instance_group_spec: Optional[pulumi.Input[str]] = None,
775
+ number_of_instances: Optional[pulumi.Input[int]] = None,
776
+ office_site_id: Optional[pulumi.Input[str]] = None,
777
+ period: Optional[pulumi.Input[int]] = None,
778
+ period_unit: Optional[pulumi.Input[str]] = None,
779
+ policy_group_id: Optional[pulumi.Input[str]] = None,
780
+ status: Optional[pulumi.Input[str]] = None,
781
+ vswitch_id: Optional[pulumi.Input[str]] = None) -> 'Group':
782
+ """
783
+ Get an existing Group resource's state with the given name, id, and optional extra
784
+ properties used to qualify the lookup.
785
+
786
+ :param str resource_name: The unique name of the resulting resource.
787
+ :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
788
+ :param pulumi.ResourceOptions opts: Options for the resource.
789
+ :param pulumi.Input[int] amount: The number of instance groups. The default value is 1 and the maximum value is 100.
790
+ :param pulumi.Input[bool] auto_pay: Whether to pay automatically. The default is false.
791
+ :param pulumi.Input[bool] auto_renew: Whether to enable automatic renewal. The default is false.
792
+ :param pulumi.Input[str] charge_type: The billing type.
793
+ :param pulumi.Input[bool] gpu_acceleration: Whether to enable GPU acceleration. The default value is false.
794
+ - true: On.
795
+ - false: closed.
796
+ :param pulumi.Input[str] image_id: The image ID.
797
+ :param pulumi.Input[str] instance_group_name: The instance group name
798
+
799
+ > **NOTE:** >
800
+
801
+ > **NOTE:** - The instance group name must be no more than 30 characters in length. Start with an uppercase/lowercase letter or Chinese. It cannot start with http:// or https://. Only Chinese, English, numbers, half-width colons (:), underscores (_), periods (.), or hyphens (-) are supported.
802
+ :param pulumi.Input[str] instance_group_spec: Instance group specifications.
803
+ :param pulumi.Input[int] number_of_instances: The number of instances in the instance group. The maximum value is 100.
804
+ :param pulumi.Input[str] office_site_id: The network ID.
805
+ - Create a shared network instance: Network ID is optional. Enter the network ID whose type is **Shared Network** on the [cloud mobile phone console> Network](https://wya.wuying.aliyun.com/network) page. If the console does not have a shared network, you can fill it in. A shared network is automatically created when the instance group is created.
806
+ - Create a VPC instance: the network ID is required. Enter the network ID of `VPC` on the [cloud mobile phone console> Network](https://wya.wuying.aliyun.com/network) page. If the console does not have a VPC network, you need to create a network first.
807
+ :param pulumi.Input[int] period: The duration of the resource purchase. The unit is specified by PeriodUnit.
808
+ :param pulumi.Input[str] period_unit: The unit of time for purchasing resources.
809
+ :param pulumi.Input[str] policy_group_id: The policy ID. You can query the list of policies by calling ListPolicyGroups.
810
+ :param pulumi.Input[str] status: Instance group status
811
+ :param pulumi.Input[str] vswitch_id: The vSwitch ID.
812
+ """
813
+ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
814
+
815
+ __props__ = _GroupState.__new__(_GroupState)
816
+
817
+ __props__.__dict__["amount"] = amount
818
+ __props__.__dict__["auto_pay"] = auto_pay
819
+ __props__.__dict__["auto_renew"] = auto_renew
820
+ __props__.__dict__["charge_type"] = charge_type
821
+ __props__.__dict__["gpu_acceleration"] = gpu_acceleration
822
+ __props__.__dict__["image_id"] = image_id
823
+ __props__.__dict__["instance_group_name"] = instance_group_name
824
+ __props__.__dict__["instance_group_spec"] = instance_group_spec
825
+ __props__.__dict__["number_of_instances"] = number_of_instances
826
+ __props__.__dict__["office_site_id"] = office_site_id
827
+ __props__.__dict__["period"] = period
828
+ __props__.__dict__["period_unit"] = period_unit
829
+ __props__.__dict__["policy_group_id"] = policy_group_id
830
+ __props__.__dict__["status"] = status
831
+ __props__.__dict__["vswitch_id"] = vswitch_id
832
+ return Group(resource_name, opts=opts, __props__=__props__)
833
+
834
+ @property
835
+ @pulumi.getter
836
+ def amount(self) -> pulumi.Output[Optional[int]]:
837
+ """
838
+ The number of instance groups. The default value is 1 and the maximum value is 100.
839
+ """
840
+ return pulumi.get(self, "amount")
841
+
842
+ @property
843
+ @pulumi.getter(name="autoPay")
844
+ def auto_pay(self) -> pulumi.Output[Optional[bool]]:
845
+ """
846
+ Whether to pay automatically. The default is false.
847
+ """
848
+ return pulumi.get(self, "auto_pay")
849
+
850
+ @property
851
+ @pulumi.getter(name="autoRenew")
852
+ def auto_renew(self) -> pulumi.Output[Optional[bool]]:
853
+ """
854
+ Whether to enable automatic renewal. The default is false.
855
+ """
856
+ return pulumi.get(self, "auto_renew")
857
+
858
+ @property
859
+ @pulumi.getter(name="chargeType")
860
+ def charge_type(self) -> pulumi.Output[Optional[str]]:
861
+ """
862
+ The billing type.
863
+ """
864
+ return pulumi.get(self, "charge_type")
865
+
866
+ @property
867
+ @pulumi.getter(name="gpuAcceleration")
868
+ def gpu_acceleration(self) -> pulumi.Output[Optional[bool]]:
869
+ """
870
+ Whether to enable GPU acceleration. The default value is false.
871
+ - true: On.
872
+ - false: closed.
873
+ """
874
+ return pulumi.get(self, "gpu_acceleration")
875
+
876
+ @property
877
+ @pulumi.getter(name="imageId")
878
+ def image_id(self) -> pulumi.Output[str]:
879
+ """
880
+ The image ID.
881
+ """
882
+ return pulumi.get(self, "image_id")
883
+
884
+ @property
885
+ @pulumi.getter(name="instanceGroupName")
886
+ def instance_group_name(self) -> pulumi.Output[Optional[str]]:
887
+ """
888
+ The instance group name
889
+
890
+ > **NOTE:** >
891
+
892
+ > **NOTE:** - The instance group name must be no more than 30 characters in length. Start with an uppercase/lowercase letter or Chinese. It cannot start with http:// or https://. Only Chinese, English, numbers, half-width colons (:), underscores (_), periods (.), or hyphens (-) are supported.
893
+ """
894
+ return pulumi.get(self, "instance_group_name")
895
+
896
+ @property
897
+ @pulumi.getter(name="instanceGroupSpec")
898
+ def instance_group_spec(self) -> pulumi.Output[str]:
899
+ """
900
+ Instance group specifications.
901
+ """
902
+ return pulumi.get(self, "instance_group_spec")
903
+
904
+ @property
905
+ @pulumi.getter(name="numberOfInstances")
906
+ def number_of_instances(self) -> pulumi.Output[Optional[int]]:
907
+ """
908
+ The number of instances in the instance group. The maximum value is 100.
909
+ """
910
+ return pulumi.get(self, "number_of_instances")
911
+
912
+ @property
913
+ @pulumi.getter(name="officeSiteId")
914
+ def office_site_id(self) -> pulumi.Output[Optional[str]]:
915
+ """
916
+ The network ID.
917
+ - Create a shared network instance: Network ID is optional. Enter the network ID whose type is **Shared Network** on the [cloud mobile phone console> Network](https://wya.wuying.aliyun.com/network) page. If the console does not have a shared network, you can fill it in. A shared network is automatically created when the instance group is created.
918
+ - Create a VPC instance: the network ID is required. Enter the network ID of `VPC` on the [cloud mobile phone console> Network](https://wya.wuying.aliyun.com/network) page. If the console does not have a VPC network, you need to create a network first.
919
+ """
920
+ return pulumi.get(self, "office_site_id")
921
+
922
+ @property
923
+ @pulumi.getter
924
+ def period(self) -> pulumi.Output[Optional[int]]:
925
+ """
926
+ The duration of the resource purchase. The unit is specified by PeriodUnit.
927
+ """
928
+ return pulumi.get(self, "period")
929
+
930
+ @property
931
+ @pulumi.getter(name="periodUnit")
932
+ def period_unit(self) -> pulumi.Output[Optional[str]]:
933
+ """
934
+ The unit of time for purchasing resources.
935
+ """
936
+ return pulumi.get(self, "period_unit")
937
+
938
+ @property
939
+ @pulumi.getter(name="policyGroupId")
940
+ def policy_group_id(self) -> pulumi.Output[Optional[str]]:
941
+ """
942
+ The policy ID. You can query the list of policies by calling ListPolicyGroups.
943
+ """
944
+ return pulumi.get(self, "policy_group_id")
945
+
946
+ @property
947
+ @pulumi.getter
948
+ def status(self) -> pulumi.Output[str]:
949
+ """
950
+ Instance group status
951
+ """
952
+ return pulumi.get(self, "status")
953
+
954
+ @property
955
+ @pulumi.getter(name="vswitchId")
956
+ def vswitch_id(self) -> pulumi.Output[Optional[str]]:
957
+ """
958
+ The vSwitch ID.
959
+ """
960
+ return pulumi.get(self, "vswitch_id")
961
+