pulumi-alicloud 3.84.0a1756507491__py3-none-any.whl → 3.85.0a1757389637__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 (283) hide show
  1. pulumi_alicloud/__init__.py +172 -0
  2. pulumi_alicloud/_inputs.py +635 -0
  3. pulumi_alicloud/ackone/membership_attachment.py +122 -0
  4. pulumi_alicloud/actiontrail/__init__.py +1 -0
  5. pulumi_alicloud/actiontrail/advanced_query_template.py +311 -0
  6. pulumi_alicloud/actiontrail/trail.py +303 -149
  7. pulumi_alicloud/actiontrail/trail_deprecated.py +131 -23
  8. pulumi_alicloud/alb/a_script.py +170 -0
  9. pulumi_alicloud/alb/get_rules.py +206 -0
  10. pulumi_alicloud/alb/listener.py +240 -0
  11. pulumi_alicloud/alb/listener_acl_attachment.py +180 -0
  12. pulumi_alicloud/alb/listener_additional_certificate_attachment.py +314 -0
  13. pulumi_alicloud/alb/load_balancer_access_log_config_attachment.py +136 -0
  14. pulumi_alicloud/alb/load_balancer_common_bandwidth_package_attachment.py +122 -0
  15. pulumi_alicloud/alb/load_balancer_zone_shifted_attachment.py +124 -0
  16. pulumi_alicloud/alb/rule.py +202 -0
  17. pulumi_alicloud/alikafka/sasl_user.py +2 -2
  18. pulumi_alicloud/amqp/get_instances.py +49 -20
  19. pulumi_alicloud/amqp/outputs.py +20 -20
  20. pulumi_alicloud/amqp/virtual_host.py +46 -20
  21. pulumi_alicloud/apig/environment.py +86 -0
  22. pulumi_alicloud/arms/__init__.py +6 -0
  23. pulumi_alicloud/arms/addon_release.py +174 -0
  24. pulumi_alicloud/arms/env_feature.py +158 -0
  25. pulumi_alicloud/arms/env_pod_monitor.py +206 -0
  26. pulumi_alicloud/arms/env_service_monitor.py +204 -0
  27. pulumi_alicloud/arms/environment.py +150 -0
  28. pulumi_alicloud/arms/get_addon_releases.py +354 -0
  29. pulumi_alicloud/arms/get_env_custom_jobs.py +268 -0
  30. pulumi_alicloud/arms/get_env_features.py +342 -0
  31. pulumi_alicloud/arms/get_env_pod_monitors.py +390 -0
  32. pulumi_alicloud/arms/get_env_service_monitors.py +388 -0
  33. pulumi_alicloud/arms/get_environments.py +282 -0
  34. pulumi_alicloud/arms/outputs.py +620 -0
  35. pulumi_alicloud/arms/prometheus_monitoring.py +190 -0
  36. pulumi_alicloud/cen/transit_router_multicast_domain_member.py +118 -0
  37. pulumi_alicloud/cen/transit_router_multicast_domain_source.py +160 -0
  38. pulumi_alicloud/cfg/aggregate_delivery.py +100 -0
  39. pulumi_alicloud/cfg/delivery_channel.py +54 -0
  40. pulumi_alicloud/cloudauth/face_config.py +48 -0
  41. pulumi_alicloud/cloudfirewall/nat_firewall_control_policy.py +236 -0
  42. pulumi_alicloud/cloudmonitor/__init__.py +1 -0
  43. pulumi_alicloud/cloudmonitor/get_service_metric_alarm_rules.py +333 -0
  44. pulumi_alicloud/cloudmonitor/outputs.py +696 -0
  45. pulumi_alicloud/cloudsso/__init__.py +1 -0
  46. pulumi_alicloud/cloudsso/access_configuration.py +12 -12
  47. pulumi_alicloud/cloudsso/access_configuration_provisioning.py +84 -0
  48. pulumi_alicloud/cloudsso/access_management.py +90 -0
  49. pulumi_alicloud/cloudsso/delegate_account.py +218 -0
  50. pulumi_alicloud/cloudsso/group.py +60 -0
  51. pulumi_alicloud/cloudsso/user.py +66 -0
  52. pulumi_alicloud/cloudsso/user_attachment.py +82 -0
  53. pulumi_alicloud/cloudstoragegateway/express_sync.py +154 -0
  54. pulumi_alicloud/cloudstoragegateway/express_sync_share_attachment.py +160 -0
  55. pulumi_alicloud/cloudstoragegateway/gateway.py +0 -13
  56. pulumi_alicloud/cloudstoragegateway/gateway_block_volume.py +132 -0
  57. pulumi_alicloud/cloudstoragegateway/gateway_cache_disk.py +92 -0
  58. pulumi_alicloud/cloudstoragegateway/gateway_file_share.py +130 -0
  59. pulumi_alicloud/cloudstoragegateway/gateway_logging.py +120 -0
  60. pulumi_alicloud/cloudstoragegateway/gateway_smb_user.py +92 -0
  61. pulumi_alicloud/cms/alarm.py +4 -4
  62. pulumi_alicloud/cms/get_site_monitors.py +20 -20
  63. pulumi_alicloud/cms/hybrid_monitor_fc_task.py +24 -24
  64. pulumi_alicloud/cms/hybrid_monitor_sls_task.py +164 -0
  65. pulumi_alicloud/cms/site_monitor.py +20 -20
  66. pulumi_alicloud/cms/sls_group.py +80 -0
  67. pulumi_alicloud/compute/nest_service_instance.py +10 -10
  68. pulumi_alicloud/cs/_inputs.py +565 -0
  69. pulumi_alicloud/cs/autoscaling_config.py +260 -35
  70. pulumi_alicloud/cs/get_cluster_credential.py +30 -0
  71. pulumi_alicloud/cs/get_kubernetes_addon_metadata.py +78 -0
  72. pulumi_alicloud/cs/get_kubernetes_addons.py +72 -0
  73. pulumi_alicloud/cs/get_kubernetes_node_pools.py +124 -0
  74. pulumi_alicloud/cs/kubernetes.py +296 -0
  75. pulumi_alicloud/cs/kubernetes_addon.py +108 -0
  76. pulumi_alicloud/cs/kubernetes_permission.py +162 -0
  77. pulumi_alicloud/cs/managed_kubernetes.py +583 -14
  78. pulumi_alicloud/cs/node_pool.py +423 -0
  79. pulumi_alicloud/cs/outputs.py +374 -0
  80. pulumi_alicloud/dataworks/data_source_shared_rule.py +116 -0
  81. pulumi_alicloud/dataworks/dw_resource_group.py +82 -0
  82. pulumi_alicloud/dataworks/network.py +100 -0
  83. pulumi_alicloud/ddos/bgp_ip.py +57 -48
  84. pulumi_alicloud/ddos/ddos_bgp_instance.py +246 -106
  85. pulumi_alicloud/ddos/domain_resource.py +6 -6
  86. pulumi_alicloud/directmail/mail_address.py +62 -0
  87. pulumi_alicloud/directmail/receivers.py +40 -0
  88. pulumi_alicloud/dms/__init__.py +1 -0
  89. pulumi_alicloud/dms/enterprise_workspace.py +354 -0
  90. pulumi_alicloud/dns/access_strategy.py +152 -0
  91. pulumi_alicloud/dns/address_pool.py +4 -4
  92. pulumi_alicloud/dns/ddos_bgp_instance.py +246 -106
  93. pulumi_alicloud/dts/job_monitor_rule.py +228 -0
  94. pulumi_alicloud/dts/migration_job.py +238 -0
  95. pulumi_alicloud/dts/synchronization_job.py +266 -14
  96. pulumi_alicloud/ebs/disk_replica_pair.py +112 -0
  97. pulumi_alicloud/ecs/ecs_network_interface_permission.py +84 -0
  98. pulumi_alicloud/ecs/image_import.py +2 -2
  99. pulumi_alicloud/ecs/ram_role_attachment.py +28 -28
  100. pulumi_alicloud/edas/k8s_application.py +124 -0
  101. pulumi_alicloud/edas/k8s_cluster.py +104 -0
  102. pulumi_alicloud/edas/k8s_slb_attachment.py +152 -0
  103. pulumi_alicloud/eflo/__init__.py +2 -0
  104. pulumi_alicloud/eflo/_inputs.py +94 -0
  105. pulumi_alicloud/eflo/er.py +487 -0
  106. pulumi_alicloud/eflo/node.py +54 -7
  107. pulumi_alicloud/eflo/node_group_attachment.py +604 -0
  108. pulumi_alicloud/eflo/outputs.py +75 -0
  109. pulumi_alicloud/emr/cluster.py +64 -64
  110. pulumi_alicloud/emr/get_clusters.py +16 -16
  111. pulumi_alicloud/emrv2/cluster.py +16 -16
  112. pulumi_alicloud/emrv2/get_cluster_instances.py +16 -16
  113. pulumi_alicloud/esa/__init__.py +7 -0
  114. pulumi_alicloud/esa/kv_account.py +145 -0
  115. pulumi_alicloud/esa/origin_ca_certificate.py +441 -0
  116. pulumi_alicloud/esa/origin_client_certificate.py +564 -0
  117. pulumi_alicloud/esa/origin_protection.py +290 -0
  118. pulumi_alicloud/esa/routine_related_record.py +226 -0
  119. pulumi_alicloud/esa/site_origin_client_certificate.py +515 -0
  120. pulumi_alicloud/esa/url_observation.py +352 -0
  121. pulumi_alicloud/eventbridge/rule.py +102 -0
  122. pulumi_alicloud/fc/_inputs.py +77 -3
  123. pulumi_alicloud/fc/custom_domain.py +14 -14
  124. pulumi_alicloud/fc/function.py +14 -14
  125. pulumi_alicloud/fc/function_async_invoke_config.py +48 -48
  126. pulumi_alicloud/fc/get_service.py +2 -2
  127. pulumi_alicloud/fc/outputs.py +63 -2
  128. pulumi_alicloud/fc/trigger.py +100 -100
  129. pulumi_alicloud/fc/v3_async_invoke_config.py +154 -0
  130. pulumi_alicloud/fc/v3_function.py +189 -3
  131. pulumi_alicloud/fc/v3_function_version.py +30 -2
  132. pulumi_alicloud/fnf/execution.py +14 -14
  133. pulumi_alicloud/fnf/flow.py +14 -14
  134. pulumi_alicloud/ga/additional_certificate.py +236 -0
  135. pulumi_alicloud/gpdb/hadoop_data_source.py +16 -16
  136. pulumi_alicloud/gpdb/streaming_job.py +4 -4
  137. pulumi_alicloud/gwlb/listener.py +172 -0
  138. pulumi_alicloud/gwlb/load_balancer.py +96 -0
  139. pulumi_alicloud/gwlb/server_group.py +160 -0
  140. pulumi_alicloud/hbr/ecs_backup_plan.py +4 -4
  141. pulumi_alicloud/hbr/ots_backup_plan.py +28 -28
  142. pulumi_alicloud/hbr/restore_job.py +4 -4
  143. pulumi_alicloud/hologram/instance.py +35 -0
  144. pulumi_alicloud/imm/project.py +14 -14
  145. pulumi_alicloud/kms/get_aliases.py +6 -6
  146. pulumi_alicloud/kms/get_instances.py +178 -0
  147. pulumi_alicloud/kms/instance.py +470 -16
  148. pulumi_alicloud/kms/policy.py +96 -0
  149. pulumi_alicloud/log/dashboard.py +40 -40
  150. pulumi_alicloud/log/ingestion.py +38 -38
  151. pulumi_alicloud/log/log_tail_attachment.py +20 -20
  152. pulumi_alicloud/log/log_tail_config.py +20 -20
  153. pulumi_alicloud/log/oss_export.py +6 -0
  154. pulumi_alicloud/log/project.py +20 -20
  155. pulumi_alicloud/log/resource.py +22 -22
  156. pulumi_alicloud/log/resource_record.py +40 -40
  157. pulumi_alicloud/maxcompute/get_service.py +2 -2
  158. pulumi_alicloud/message/__init__.py +1 -0
  159. pulumi_alicloud/message/_inputs.py +141 -0
  160. pulumi_alicloud/message/outputs.py +120 -0
  161. pulumi_alicloud/message/service_event_rule.py +490 -0
  162. pulumi_alicloud/message/service_subscription.py +48 -1
  163. pulumi_alicloud/mongodb/__init__.py +1 -0
  164. pulumi_alicloud/mongodb/global_security_ip_group.py +304 -0
  165. pulumi_alicloud/mongodb/instance.py +47 -0
  166. pulumi_alicloud/mongodb/sharding_instance.py +385 -0
  167. pulumi_alicloud/msc_sub_webhook.py +44 -0
  168. pulumi_alicloud/mse/cluster.py +47 -0
  169. pulumi_alicloud/mse/gateway.py +62 -0
  170. pulumi_alicloud/nas/access_group.py +46 -18
  171. pulumi_alicloud/nas/access_rule.py +28 -0
  172. pulumi_alicloud/nas/data_flow.py +114 -0
  173. pulumi_alicloud/nlb/listener_additional_certificate_attachment.py +328 -0
  174. pulumi_alicloud/nlb/server_group.py +28 -21
  175. pulumi_alicloud/oos/execution.py +30 -30
  176. pulumi_alicloud/oos/get_parameters.py +10 -10
  177. pulumi_alicloud/oos/get_secret_parameters.py +10 -10
  178. pulumi_alicloud/oos/template.py +28 -28
  179. pulumi_alicloud/oss/bucket.py +634 -0
  180. pulumi_alicloud/oss/bucket_replication.py +56 -56
  181. pulumi_alicloud/outputs.py +489 -0
  182. pulumi_alicloud/pai/flow_pipeline.py +70 -70
  183. pulumi_alicloud/pai/workspace_datasetversion.py +108 -0
  184. pulumi_alicloud/pai/workspace_run.py +62 -0
  185. pulumi_alicloud/polardb/cluster.py +7 -7
  186. pulumi_alicloud/privatelink/vpc_endpoint.py +21 -7
  187. pulumi_alicloud/privatelink/vpc_endpoint_service.py +11 -11
  188. pulumi_alicloud/pulumi-plugin.json +1 -1
  189. pulumi_alicloud/pvtz/endpoint.py +96 -0
  190. pulumi_alicloud/pvtz/rule.py +122 -0
  191. pulumi_alicloud/pvtz/rule_attachment.py +150 -0
  192. pulumi_alicloud/ram/get_policies.py +18 -18
  193. pulumi_alicloud/ram/get_policy_document.py +2 -2
  194. pulumi_alicloud/ram/get_role_policy_attachments.py +34 -34
  195. pulumi_alicloud/ram/get_users.py +32 -32
  196. pulumi_alicloud/ram/group_membership.py +74 -0
  197. pulumi_alicloud/ram/group_policy_attachment.py +18 -18
  198. pulumi_alicloud/ram/policy.py +18 -18
  199. pulumi_alicloud/ram/role.py +16 -16
  200. pulumi_alicloud/ram/role_attachment.py +14 -14
  201. pulumi_alicloud/ram/role_policy_attachment.py +34 -34
  202. pulumi_alicloud/ram/user_policy_attachment.py +18 -18
  203. pulumi_alicloud/rds/get_instance_classes.py +6 -4
  204. pulumi_alicloud/rds/outputs.py +4 -0
  205. pulumi_alicloud/rds/rds_clone_db_instance.py +8 -1
  206. pulumi_alicloud/resourcemanager/__init__.py +1 -0
  207. pulumi_alicloud/resourcemanager/auto_grouping_rule.py +24 -24
  208. pulumi_alicloud/resourcemanager/control_policy.py +18 -18
  209. pulumi_alicloud/resourcemanager/control_policy_attachment.py +18 -18
  210. pulumi_alicloud/resourcemanager/delegated_administrator.py +22 -50
  211. pulumi_alicloud/resourcemanager/folder.py +106 -29
  212. pulumi_alicloud/resourcemanager/get_accounts.py +35 -18
  213. pulumi_alicloud/resourcemanager/get_shared_resources.py +64 -0
  214. pulumi_alicloud/resourcemanager/message_contact.py +572 -0
  215. pulumi_alicloud/resourcemanager/outputs.py +31 -20
  216. pulumi_alicloud/resourcemanager/policy.py +16 -16
  217. pulumi_alicloud/resourcemanager/policy_attachment.py +82 -0
  218. pulumi_alicloud/resourcemanager/policy_version.py +32 -32
  219. pulumi_alicloud/resourcemanager/resource_directory.py +137 -46
  220. pulumi_alicloud/resourcemanager/role.py +14 -14
  221. pulumi_alicloud/resourcemanager/shared_resource.py +81 -45
  222. pulumi_alicloud/resourcemanager/shared_target.py +60 -24
  223. pulumi_alicloud/rocketmq/qos_policy.py +70 -0
  224. pulumi_alicloud/ros/_inputs.py +70 -18
  225. pulumi_alicloud/ros/outputs.py +59 -12
  226. pulumi_alicloud/ros/stack.py +14 -14
  227. pulumi_alicloud/ros/stack_group.py +342 -223
  228. pulumi_alicloud/ros/template.py +2 -2
  229. pulumi_alicloud/sag/qos_policy.py +70 -0
  230. pulumi_alicloud/sddp/data_limit.py +148 -0
  231. pulumi_alicloud/sddp/rule.py +10 -10
  232. pulumi_alicloud/servicecatalog/principal_portfolio_association.py +16 -16
  233. pulumi_alicloud/servicecatalog/product_portfolio_association.py +54 -0
  234. pulumi_alicloud/sls/__init__.py +5 -0
  235. pulumi_alicloud/sls/_inputs.py +128 -0
  236. pulumi_alicloud/sls/collection_policy.py +276 -0
  237. pulumi_alicloud/sls/get_etls.py +294 -0
  238. pulumi_alicloud/sls/get_logtail_configs.py +395 -0
  239. pulumi_alicloud/sls/get_machine_groups.py +229 -0
  240. pulumi_alicloud/sls/logtail_config.py +692 -0
  241. pulumi_alicloud/sls/machine_group.py +502 -0
  242. pulumi_alicloud/sls/oss_export_sink.py +134 -0
  243. pulumi_alicloud/sls/outputs.py +449 -0
  244. pulumi_alicloud/sslcertificatesservice/__init__.py +9 -0
  245. pulumi_alicloud/sslcertificatesservice/pca_certificate.py +646 -0
  246. pulumi_alicloud/star_rocks_instance.py +1425 -0
  247. pulumi_alicloud/tag/policy.py +2 -2
  248. pulumi_alicloud/tag/policy_attachment.py +2 -2
  249. pulumi_alicloud/threatdetection/__init__.py +1 -0
  250. pulumi_alicloud/threatdetection/_inputs.py +183 -0
  251. pulumi_alicloud/threatdetection/anti_brute_force_rule.py +50 -1
  252. pulumi_alicloud/threatdetection/attack_path_sensitive_asset_config.py +218 -0
  253. pulumi_alicloud/threatdetection/image_event_operation.py +191 -90
  254. pulumi_alicloud/threatdetection/oss_scan_config.py +257 -65
  255. pulumi_alicloud/threatdetection/outputs.py +147 -0
  256. pulumi_alicloud/vod/editing_project.py +8 -8
  257. pulumi_alicloud/vpc/_inputs.py +87 -54
  258. pulumi_alicloud/vpc/common_bandwith_package.py +28 -0
  259. pulumi_alicloud/vpc/dhcp_options_set.py +97 -58
  260. pulumi_alicloud/vpc/flow_log.py +117 -25
  261. pulumi_alicloud/vpc/gateway_endpoint.py +12 -12
  262. pulumi_alicloud/vpc/gateway_endpoint_route_table_attachment.py +12 -12
  263. pulumi_alicloud/vpc/ha_vip_attachment.py +41 -60
  264. pulumi_alicloud/vpc/ha_vipv2.py +100 -88
  265. pulumi_alicloud/vpc/ipam_ipam_pool.py +54 -0
  266. pulumi_alicloud/vpc/network_acl.py +34 -23
  267. pulumi_alicloud/vpc/outputs.py +58 -36
  268. pulumi_alicloud/vpc/route_entry.py +6 -2
  269. pulumi_alicloud/vpc/vbr_ha.py +100 -0
  270. pulumi_alicloud/vpc/vpc_network_acl_attachment.py +48 -0
  271. pulumi_alicloud/vpn/get_gateways.py +98 -0
  272. pulumi_alicloud/vpn/ssl_vpn_client_cert.py +82 -0
  273. pulumi_alicloud/vpn/ssl_vpn_server.py +76 -0
  274. pulumi_alicloud/wafv3/__init__.py +1 -0
  275. pulumi_alicloud/wafv3/_inputs.py +1318 -182
  276. pulumi_alicloud/wafv3/defense_rule.py +806 -0
  277. pulumi_alicloud/wafv3/defense_template.py +87 -124
  278. pulumi_alicloud/wafv3/domain.py +136 -35
  279. pulumi_alicloud/wafv3/outputs.py +925 -123
  280. {pulumi_alicloud-3.84.0a1756507491.dist-info → pulumi_alicloud-3.85.0a1757389637.dist-info}/METADATA +1 -1
  281. {pulumi_alicloud-3.84.0a1756507491.dist-info → pulumi_alicloud-3.85.0a1757389637.dist-info}/RECORD +283 -251
  282. {pulumi_alicloud-3.84.0a1756507491.dist-info → pulumi_alicloud-3.85.0a1757389637.dist-info}/WHEEL +0 -0
  283. {pulumi_alicloud-3.84.0a1756507491.dist-info → pulumi_alicloud-3.85.0a1757389637.dist-info}/top_level.txt +0 -0
@@ -256,6 +256,60 @@ class KubernetesAddon(pulumi.CustomResource):
256
256
 
257
257
  Basic Usage
258
258
 
259
+ ```python
260
+ import pulumi
261
+ import json
262
+ import pulumi_alicloud as alicloud
263
+ import pulumi_std as std
264
+
265
+ config = pulumi.Config()
266
+ name = config.get("name")
267
+ if name is None:
268
+ name = "terraform-example"
269
+ default = alicloud.get_zones(available_resource_creation="VSwitch")
270
+ default_network = alicloud.vpc.Network("default",
271
+ vpc_name=name,
272
+ cidr_block="10.4.0.0/16")
273
+ default_switch = alicloud.vpc.Switch("default",
274
+ vswitch_name=name,
275
+ cidr_block="10.4.0.0/24",
276
+ vpc_id=default_network.id,
277
+ zone_id=default.zones[0].id)
278
+ default_managed_kubernetes = alicloud.cs.ManagedKubernetes("default",
279
+ name_prefix=name,
280
+ cluster_spec="ack.pro.small",
281
+ worker_vswitch_ids=[default_switch.id],
282
+ new_nat_gateway=False,
283
+ pod_cidr=std.cidrsubnet(input="10.0.0.0/8",
284
+ newbits=8,
285
+ netnum=36).result,
286
+ service_cidr=std.cidrsubnet(input="172.16.0.0/16",
287
+ newbits=4,
288
+ netnum=7).result,
289
+ slb_internet_enabled=True,
290
+ addons=[{
291
+ "name": "logtail-ds",
292
+ "config": json.dumps({
293
+ "IngressDashboardEnabled": "true",
294
+ }),
295
+ "disabled": False,
296
+ }])
297
+ # data source provides the information of available addons
298
+ default_get_kubernetes_addons = alicloud.cs.get_kubernetes_addons_output(cluster_id=default_managed_kubernetes.id,
299
+ name_regex="logtail-ds")
300
+ # Manage addon resource
301
+ logtail_ds = alicloud.cs.KubernetesAddon("logtail-ds",
302
+ cluster_id=default_managed_kubernetes.id,
303
+ name="logtail-ds",
304
+ version="v1.6.0.0-aliyun",
305
+ config=json.dumps({}))
306
+ ```
307
+ **Installing of addon**
308
+ When a cluster is created, some system addons and those specified at the time of cluster creation will be installed, so when an addon resource is applied:
309
+ * If the addon already exists in the cluster and its version is the same as the specified version, it will be skipped and will not be reinstalled.
310
+ * If the addon already exists in the cluster and its version is different from the specified version, the addon will be upgraded.
311
+ * If the addon does not exist in the cluster, it will be installed.
312
+
259
313
  ## Import
260
314
 
261
315
  Cluster addon can be imported by cluster id and addon name. Then write the addon.tf file according to the result of `pulumi preview`.
@@ -283,6 +337,60 @@ class KubernetesAddon(pulumi.CustomResource):
283
337
 
284
338
  Basic Usage
285
339
 
340
+ ```python
341
+ import pulumi
342
+ import json
343
+ import pulumi_alicloud as alicloud
344
+ import pulumi_std as std
345
+
346
+ config = pulumi.Config()
347
+ name = config.get("name")
348
+ if name is None:
349
+ name = "terraform-example"
350
+ default = alicloud.get_zones(available_resource_creation="VSwitch")
351
+ default_network = alicloud.vpc.Network("default",
352
+ vpc_name=name,
353
+ cidr_block="10.4.0.0/16")
354
+ default_switch = alicloud.vpc.Switch("default",
355
+ vswitch_name=name,
356
+ cidr_block="10.4.0.0/24",
357
+ vpc_id=default_network.id,
358
+ zone_id=default.zones[0].id)
359
+ default_managed_kubernetes = alicloud.cs.ManagedKubernetes("default",
360
+ name_prefix=name,
361
+ cluster_spec="ack.pro.small",
362
+ worker_vswitch_ids=[default_switch.id],
363
+ new_nat_gateway=False,
364
+ pod_cidr=std.cidrsubnet(input="10.0.0.0/8",
365
+ newbits=8,
366
+ netnum=36).result,
367
+ service_cidr=std.cidrsubnet(input="172.16.0.0/16",
368
+ newbits=4,
369
+ netnum=7).result,
370
+ slb_internet_enabled=True,
371
+ addons=[{
372
+ "name": "logtail-ds",
373
+ "config": json.dumps({
374
+ "IngressDashboardEnabled": "true",
375
+ }),
376
+ "disabled": False,
377
+ }])
378
+ # data source provides the information of available addons
379
+ default_get_kubernetes_addons = alicloud.cs.get_kubernetes_addons_output(cluster_id=default_managed_kubernetes.id,
380
+ name_regex="logtail-ds")
381
+ # Manage addon resource
382
+ logtail_ds = alicloud.cs.KubernetesAddon("logtail-ds",
383
+ cluster_id=default_managed_kubernetes.id,
384
+ name="logtail-ds",
385
+ version="v1.6.0.0-aliyun",
386
+ config=json.dumps({}))
387
+ ```
388
+ **Installing of addon**
389
+ When a cluster is created, some system addons and those specified at the time of cluster creation will be installed, so when an addon resource is applied:
390
+ * If the addon already exists in the cluster and its version is the same as the specified version, it will be skipped and will not be reinstalled.
391
+ * If the addon already exists in the cluster and its version is different from the specified version, the addon will be upgraded.
392
+ * If the addon does not exist in the cluster, it will be installed.
393
+
286
394
  ## Import
287
395
 
288
396
  Cluster addon can be imported by cluster id and addon name. Then write the addon.tf file according to the result of `pulumi preview`.
@@ -118,6 +118,87 @@ class KubernetesPermission(pulumi.CustomResource):
118
118
 
119
119
  > **NOTE:** Available since v1.122.0.
120
120
 
121
+ ## Example Usage
122
+
123
+ ```python
124
+ import pulumi
125
+ import pulumi_alicloud as alicloud
126
+ import pulumi_random as random
127
+ import pulumi_std as std
128
+
129
+ default_integer = random.index.Integer("default",
130
+ max=99999,
131
+ min=10000)
132
+ config = pulumi.Config()
133
+ name = config.get("name")
134
+ if name is None:
135
+ name = "terraform-example"
136
+ # The cidr block used to launch a new vpc when 'vpc_id' is not specified.
137
+ vpc_cidr = config.get("vpcCidr")
138
+ if vpc_cidr is None:
139
+ vpc_cidr = "10.0.0.0/8"
140
+ # List of cidr blocks used to create several new vswitches when 'vswitch_ids' is not specified.
141
+ vswitch_cidrs = config.get_object("vswitchCidrs")
142
+ if vswitch_cidrs is None:
143
+ vswitch_cidrs = [
144
+ "10.1.0.0/16",
145
+ "10.2.0.0/16",
146
+ ]
147
+ # The kubernetes service cidr block. It cannot be equals to vpc's or vswitch's or service's and cannot be in them.
148
+ pod_cidr = config.get("podCidr")
149
+ if pod_cidr is None:
150
+ pod_cidr = "172.16.0.0/16"
151
+ # The kubernetes service cidr block. It cannot be equals to vpc's or vswitch's or pod's and cannot be in them.
152
+ service_cidr = config.get("serviceCidr")
153
+ if service_cidr is None:
154
+ service_cidr = "192.168.0.0/16"
155
+ enhanced = alicloud.vpc.get_enhanced_nat_available_zones()
156
+ default = alicloud.cs.get_kubernetes_version(cluster_type="ManagedKubernetes")
157
+ vpc = alicloud.vpc.Network("vpc", cidr_block=vpc_cidr)
158
+ # According to the vswitch cidr blocks to launch several vswitches
159
+ default_switch = []
160
+ for range in [{"value": i} for i in range(0, len(vswitch_cidrs))]:
161
+ default_switch.append(alicloud.vpc.Switch(f"default-{range['value']}",
162
+ vpc_id=vpc.id,
163
+ cidr_block=vswitch_cidrs[range["value"]],
164
+ zone_id=enhanced.zones[range["value"]].zone_id))
165
+ # Create a new RAM cluster.
166
+ default_managed_kubernetes = alicloud.cs.ManagedKubernetes("default",
167
+ name=f"{name}-{default_integer['result']}",
168
+ cluster_spec="ack.pro.small",
169
+ version=default.metadatas[0].version,
170
+ worker_vswitch_ids=std.join_output(separator=",",
171
+ input=[__item.id for __item in default_switch]).apply(lambda invoke: std.split_output(separator=",",
172
+ text=invoke.result)).apply(lambda invoke: invoke.result),
173
+ new_nat_gateway=False,
174
+ pod_cidr=pod_cidr,
175
+ service_cidr=service_cidr,
176
+ slb_internet_enabled=False)
177
+ # Create a new RAM user.
178
+ user = alicloud.ram.User("user", name=f"{name}-{default_integer['result']}")
179
+ # Create a cluster permission for user.
180
+ default_kubernetes_permission = alicloud.cs.KubernetesPermission("default",
181
+ uid=user.id,
182
+ permissions=[{
183
+ "cluster": default_managed_kubernetes.id,
184
+ "role_type": "cluster",
185
+ "role_name": "admin",
186
+ "namespace": "",
187
+ "is_custom": False,
188
+ "is_ram_role": False,
189
+ }])
190
+ attach = alicloud.cs.KubernetesPermission("attach",
191
+ uid=user.id,
192
+ permissions=[{
193
+ "cluster": default_managed_kubernetes.id,
194
+ "role_type": "namespace",
195
+ "role_name": "cs:dev",
196
+ "namespace": "default",
197
+ "is_custom": True,
198
+ "is_ram_role": False,
199
+ }])
200
+ ```
201
+
121
202
  :param str resource_name: The name of the resource.
122
203
  :param pulumi.ResourceOptions opts: Options for the resource.
123
204
  :param pulumi.Input[Sequence[pulumi.Input[Union['KubernetesPermissionPermissionArgs', 'KubernetesPermissionPermissionArgsDict']]]] permissions: A list of user permission. See `permissions` below.
@@ -141,6 +222,87 @@ class KubernetesPermission(pulumi.CustomResource):
141
222
 
142
223
  > **NOTE:** Available since v1.122.0.
143
224
 
225
+ ## Example Usage
226
+
227
+ ```python
228
+ import pulumi
229
+ import pulumi_alicloud as alicloud
230
+ import pulumi_random as random
231
+ import pulumi_std as std
232
+
233
+ default_integer = random.index.Integer("default",
234
+ max=99999,
235
+ min=10000)
236
+ config = pulumi.Config()
237
+ name = config.get("name")
238
+ if name is None:
239
+ name = "terraform-example"
240
+ # The cidr block used to launch a new vpc when 'vpc_id' is not specified.
241
+ vpc_cidr = config.get("vpcCidr")
242
+ if vpc_cidr is None:
243
+ vpc_cidr = "10.0.0.0/8"
244
+ # List of cidr blocks used to create several new vswitches when 'vswitch_ids' is not specified.
245
+ vswitch_cidrs = config.get_object("vswitchCidrs")
246
+ if vswitch_cidrs is None:
247
+ vswitch_cidrs = [
248
+ "10.1.0.0/16",
249
+ "10.2.0.0/16",
250
+ ]
251
+ # The kubernetes service cidr block. It cannot be equals to vpc's or vswitch's or service's and cannot be in them.
252
+ pod_cidr = config.get("podCidr")
253
+ if pod_cidr is None:
254
+ pod_cidr = "172.16.0.0/16"
255
+ # The kubernetes service cidr block. It cannot be equals to vpc's or vswitch's or pod's and cannot be in them.
256
+ service_cidr = config.get("serviceCidr")
257
+ if service_cidr is None:
258
+ service_cidr = "192.168.0.0/16"
259
+ enhanced = alicloud.vpc.get_enhanced_nat_available_zones()
260
+ default = alicloud.cs.get_kubernetes_version(cluster_type="ManagedKubernetes")
261
+ vpc = alicloud.vpc.Network("vpc", cidr_block=vpc_cidr)
262
+ # According to the vswitch cidr blocks to launch several vswitches
263
+ default_switch = []
264
+ for range in [{"value": i} for i in range(0, len(vswitch_cidrs))]:
265
+ default_switch.append(alicloud.vpc.Switch(f"default-{range['value']}",
266
+ vpc_id=vpc.id,
267
+ cidr_block=vswitch_cidrs[range["value"]],
268
+ zone_id=enhanced.zones[range["value"]].zone_id))
269
+ # Create a new RAM cluster.
270
+ default_managed_kubernetes = alicloud.cs.ManagedKubernetes("default",
271
+ name=f"{name}-{default_integer['result']}",
272
+ cluster_spec="ack.pro.small",
273
+ version=default.metadatas[0].version,
274
+ worker_vswitch_ids=std.join_output(separator=",",
275
+ input=[__item.id for __item in default_switch]).apply(lambda invoke: std.split_output(separator=",",
276
+ text=invoke.result)).apply(lambda invoke: invoke.result),
277
+ new_nat_gateway=False,
278
+ pod_cidr=pod_cidr,
279
+ service_cidr=service_cidr,
280
+ slb_internet_enabled=False)
281
+ # Create a new RAM user.
282
+ user = alicloud.ram.User("user", name=f"{name}-{default_integer['result']}")
283
+ # Create a cluster permission for user.
284
+ default_kubernetes_permission = alicloud.cs.KubernetesPermission("default",
285
+ uid=user.id,
286
+ permissions=[{
287
+ "cluster": default_managed_kubernetes.id,
288
+ "role_type": "cluster",
289
+ "role_name": "admin",
290
+ "namespace": "",
291
+ "is_custom": False,
292
+ "is_ram_role": False,
293
+ }])
294
+ attach = alicloud.cs.KubernetesPermission("attach",
295
+ uid=user.id,
296
+ permissions=[{
297
+ "cluster": default_managed_kubernetes.id,
298
+ "role_type": "namespace",
299
+ "role_name": "cs:dev",
300
+ "namespace": "default",
301
+ "is_custom": True,
302
+ "is_ram_role": False,
303
+ }])
304
+ ```
305
+
144
306
  :param str resource_name: The name of the resource.
145
307
  :param KubernetesPermissionArgs args: The arguments to use to populate this resource's properties.
146
308
  :param pulumi.ResourceOptions opts: Options for the resource.